L'API de la paperasse

Une seule API REST pour l'extraction, la lecture, le remplissage, les formulaires et la signature électronique. Pour les équipes plateforme qui livrent des flux documentaires, et les équipes de génie fatiguées d'entretenir une pile d'analyse maison.

  • 15 000 crédits gratuits
  • Aucune carte de crédit requise
  • Forfaits flexibles
La preuve, du début à la fin

De la réception à la signature en trois appels

Extrayez des champs ancrés à la source, remplissez le formulaire, envoyez-le à la signature. Copiez, collez, exécutez contre la vraie API.

import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

// 1 - Extract the fields you need, grounded to the source
const data = await client.extract({
  body: {
    file: { url: "https://www.irs.gov/pub/irs-pdf/fw9.pdf" },
    schema: {
      type: "object",
      properties: {
        business_name: { type: ["string", "null"] },
        tax_classification: { type: ["string", "null"] },
      },
    },
    citations: true,
  },
});

// 2 - Fill the template from your source documents
const filled = await client.fill({
  body: {
    template: { url: "https://www.irs.gov/pub/irs-pdf/fw9.pdf", name: "w9.pdf" },
    files: [{ id: "a04d6597-4e34-4a99-94ea-964c289a4c68" }],
    instructions: "Use the legal entity name, not the trade name.",
  },
});

// 3 - Send the result out for signature
const run = await client.sign({
  body: {
    file: { url: filled.output?.file?.url },
    signers: [{ name: "Jane Doe", email: "jane@example.com" }],
    message: "Please sign the completed W-9.",
  },
});
console.log(run.status); // "needs_input" - signers get emailed their links
from cloudraker import (
    V1FillBodyFilesItemId,
    V1FillBodyTemplateName,
    V1SignBodyFileName,
    V1SignBodySignersItem,
)
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

# 1 - Extract the fields you need, grounded to the source
data = client.extract(
    file={"url": "https://www.irs.gov/pub/irs-pdf/fw9.pdf"},
    schema={
        "type": "object",
        "properties": {
            "business_name": {"type": ["string", "null"]},
            "tax_classification": {"type": ["string", "null"]},
        },
    },
    citations=True,
)

# 2 - Fill the template from your source documents
filled = client.fill(
    template=V1FillBodyTemplateName(url="https://www.irs.gov/pub/irs-pdf/fw9.pdf", name="w9.pdf"),
    files=[V1FillBodyFilesItemId(id="a04d6597-4e34-4a99-94ea-964c289a4c68")],
    instructions="Use the legal entity name, not the trade name.",
)

# 3 - Send the result out for signature
run = client.sign(
    file=V1SignBodyFileName(url=filled.output.file.url),
    signers=[V1SignBodySignersItem(name="Jane Doe", email="jane@example.com")],
    message="Please sign the completed W-9.",
)
print(run.status)  # "needs_input" - signers get emailed their links

Chaque capacité est à un appel de distance

De vrais appels tirés des SDK officiels — pip install cloudraker, npm install @cloudraker/api. Appelez-les une à une ou combinez-les pour bâtir des flux documentaires de bout en bout.

import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

// Split a PDF into one file per page
const pages = await client.tools.splitFilePages({
  ref: "file_01JQ8ZKMRT4V6WXYZ0ABCDEF",
});

for (const page of pages.data) {
  console.log(page.id, page.name); // invoice.p1.pdf, invoice.p2.pdf, ...
}
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

# Split a PDF into one file per page
pages = client.tools.split_file_pages(
    ref="file_01JQ8ZKMRT4V6WXYZ0ABCDEF",
)

for page in pages.data:
    print(page.id, page.name)  # invoice.p1.pdf, invoice.p2.pdf, ...
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.parse({
  body: {
    file: { url: "https://www.irs.gov/pub/irs-pdf/fw9.pdf", name: "w9.pdf" },
  },
  output: "inline",
});

console.log(run.output?.markdown); // clean markdown, straight from the PDF
from cloudraker import V1ParseBodyFileName
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

run = client.parse(
    file=V1ParseBodyFileName(url="https://www.irs.gov/pub/irs-pdf/fw9.pdf", name="w9.pdf"),
    output="inline",
)

print(run.output.markdown)  # clean markdown, straight from the PDF
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.extract({
  body: {
    file: { url: "https://example.com/inbound-document.pdf" },
    schema: {
      type: "object",
      properties: {
        document_type: {
          type: ["string", "null"],
          enum: ["invoice", "contract", "receipt", "tax_form", null],
        },
      },
    },
  },
});

console.log(run.output?.value);
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

run = client.extract(
    file={"url": "https://example.com/inbound-document.pdf"},
    schema={
        "type": "object",
        "properties": {
            "document_type": {
                "type": ["string", "null"],
                "enum": ["invoice", "contract", "receipt", "tax_form", None],
            }
        },
    },
)

print(run.output.value)
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.extract({
  body: {
    file: { url: "https://www.irs.gov/pub/irs-pdf/fw9.pdf" },
    schema: {
      type: "object",
      properties: {
        business_name: { type: ["string", "null"] },
        tax_classification: { type: ["string", "null"] },
      },
    },
    citations: true,
  },
});
console.log(run.output?.value);
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

run = client.extract(
    file={"url": "https://www.irs.gov/pub/irs-pdf/fw9.pdf"},
    schema={
        "type": "object",
        "properties": {
            "business_name": {"type": ["string", "null"]},
            "tax_classification": {"type": ["string", "null"]},
        },
    },
    citations=True,
)
print(run.output.value)
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.redact({
  body: {
    file: { url: "https://example.com/w9.pdf" },
    categories: ["ssn", "ein"],
    mode: "targeted",
  },
});

console.log(run.output.files[0].url); // the redacted PDF
from cloudraker import V1RedactBodyFileName
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

run = client.redact(
    file=V1RedactBodyFileName(url="https://example.com/w9.pdf"),
    categories=["ssn", "ein"],
    mode="targeted",
)

print(run.output.files[0].url)  # the redacted PDF
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.fill({
  body: {
    template: { url: "https://www.irs.gov/pub/irs-pdf/fw9.pdf", name: "w9.pdf" },
    files: [{ id: "a04d6597-4e34-4a99-94ea-964c289a4c68" }],
    instructions: "Use the legal entity name, not the trade name.",
  },
});

console.log(run.status, run.output?.file?.url);
from cloudraker import V1FillBodyFilesItemId, V1FillBodyTemplateName
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

run = client.fill(
    template=V1FillBodyTemplateName(url="https://www.irs.gov/pub/irs-pdf/fw9.pdf", name="w9.pdf"),
    files=[V1FillBodyFilesItemId(id="a04d6597-4e34-4a99-94ea-964c289a4c68")],
    instructions="Use the legal entity name, not the trade name.",
)

print(run.status, run.output.file.url)
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

await client.compose.create({
  template: "invoice",
  data: { customer: "Acme Manufacturing Co.", number: "0042", total: 1240 },
});
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

client.compose.create(
    template="invoice",
    data={"customer": "Acme Manufacturing Co.", "number": "0042", "total": 1240},
)
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

// Convert a registered Word doc into a PDF
const pdf = await client.tools.convertFileToPdf({ ref: "msa.docx" });

console.log(pdf.id);
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

# Convert a registered Word doc into a PDF
pdf = client.tools.convert_file_to_pdf(ref="msa.docx")

print(pdf.id)
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const merged = await client.tools.stitchFiles({
  files: ["contract-part1.pdf", "contract-part2.pdf"],
});

console.log(merged.id, merged.name); // contract-part1.merged.pdf
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

merged = client.tools.stitch_files(
    files=["contract-part1.pdf", "contract-part2.pdf"],
)

print(merged.id, merged.name)  # contract-part1.merged.pdf
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

// Open a redlining session on a Word document (tracked changes)
const session = await client.tools.redlineFile({
  ref: "msa.docx", // file id or file name in your corpus
  body: { ttl: 86400 }, // session lifetime in seconds
});

console.log(session.id); // e.g. "rdl_01K9Z6P2R4"
from cloudraker.client import CloudRaker

client = CloudRaker(token="YOUR_API_KEY")

# Open a redlining session on a Word document (tracked changes)
session = client.tools.redline_file(
    ref="msa.docx",   # file id or file name in your corpus
    ttl=86400,        # session lifetime in seconds
)

print(session.id)  # e.g. "rdl_01K9Z6P2R4"
import { CloudRakerClient } from "@cloudraker/api";

const client = new CloudRakerClient({ token: "YOUR_API_KEY" });

const run = await client.sign({
  body: {
    file: { url: "https://example.com/msa.pdf" },
    signers: [{ name: "Jane Doe", email: "jane@example.com" }],
    message: "Please sign the master services agreement.",
  },
});
console.log(run.status); // "needs_input" — signers get emailed their links
from cloudraker.client import CloudRaker
from cloudraker import V1SignBodySignersItem, V1SignBodyFileName

client = CloudRaker(token="YOUR_API_KEY")

run = client.sign(
    file=V1SignBodyFileName(url="https://example.com/msa.pdf"),
    signers=[
        V1SignBodySignersItem(name="Jane Doe", email="jane@example.com"),
    ],
    message="Please sign the master services agreement.",
)
print(run.status)  # "needs_input" — signers get emailed their links
Conçu pour l'entreprise

Faites-le approuver par votre équipe de sécurité.

Déployez-le à votre façon, prouvez-le à ceux qui doivent l'approuver, et gardez l'œil sur ce qui tourne en dessous.

Résidence des données
Choisissez la région où vos documents sont traités et stockés. Par région, pas par défaut.
Votre propre modèle
Utilisez vos propres clés de fournisseur, choisissez un modèle préféré, ou gardez notre sélection. Le contrat de l'API reste le même.
Déployez où vous voulez
Notre infonuagique, la vôtre, ou sur vos serveurs — les mêmes points d'accès et les mêmes réponses dans les trois cas.
Chaque exécution tracée
Capacité, durée, crédits, statut, approbations et code d'erreur, consignés à chaque requête.
Isolation des tenants
L'observabilité est réservée aux administrateurs et limitée à votre organisation. Un tenant par jeton, et les données ne franchissent jamais la frontière.
SOC 2 Type II
Rapport sur demande, avec SSO/SAML et rapports d'audit et de conformité complets sur le forfait Entreprise.
Ressources

Tout ce qu’il vous faut pour créer

  1. 01

    Guide pour développeurs

    Créez avec CloudRaker. Authentifiez-vous, traitez vos documents et automatisez vos flux de travail via l’API.

  2. 02

    Documentation API

    L’API de CloudRaker : espaces, fichiers, actions, workflows, objets et graphes de connaissances. Un tenant par jeton.

  3. 03

    Exemples de cas

    Découvrez comment CloudRaker automatise la paperasse dans des processus d’affaires concrets, de l’extraction de données et la révision de documents jusqu’aux formulaires, signatures et flux de travail de bout en bout.

  4. 04

    Mises à jour

    Suivez les dernières nouveautés de CloudRaker, des nouvelles capacités et améliorations aux correctifs et évolutions de la plateforme.

  5. 05

    Blogue

    Recherches, comparatifs, actualités et analyses sur l’automatisation de la paperasse, l’IA et les technologies qui transforment le travail des entreprises.

Des forfaits pour chaque besoin.

Gratuit

Pour les développeurs qui explorent l'automatisation de la paperasse.

$0
15 000 crédits gratuits / mois
  • 15 000 crédits/mois, aucune carte requise
  • Toutes les capacités pendant 2 semaines
  • 25 requêtes/min · concurrence au mieux
  • Annulez à tout moment, sans contrat
  • Soutien par courriel

Départ

Pour les équipes qui font tourner des flux documentaires.

$30 /mois
30 000 crédits / mois
  • 30 000 crédits/mois + dépassement à l'usage
  • Toutes les capacités incluses, avec limites d'utilisation
  • 25 requêtes/min · concurrence au mieux
  • Mois par mois, résiliation en 30 jours
  • Soutien par courriel

Pro

Pour les entreprises qui font tourner plusieurs flux de travail.

$500 /mois
500 000 crédits / mois
  • 500 000 crédits/mois + dépassement à l'usage
  • 100 requêtes/min, concurrence 5×
  • Mois par mois, résiliation en 30 jours
  • Rapport SOC 2 Type II sur demande
  • Accompagnement guidé + soutien Slack

Entreprise

Pour les besoins d'automatisation avancés.

Sur mesure
Allocation sur mesure
  • Tarification par volume / contrat pluriannuel
  • Limites de débit, SLA et résidence des données sur mesure
  • Déploiement auto-hébergé ou en VPC
  • SSO/SAML + rapports d'audit et de conformité complets
  • Accompagnement dédié
Autres portes d'entrée

L'API n'est pas la seule porte d'entrée.

Les mêmes capacités en dessous. Choisissez la surface qui correspond à votre façon de travailler.

Espace de travail
Exécutez et révisez le travail dans CloudRaker, avec files d'attente, approbations et historique pour toute l'équipe.
Voir l'espace de travail
Commencer

Obtenez votre accès API. Sans appel de vente.

Inscription en libre-service, une réponse qui fonctionne en quelques minutes, et vous construisez. Aucune carte de crédit pour commencer. Aucun engagement pour continuer.