New: CloudRaker Run. The home for all the agents your team will build. New: CloudRaker Run Meet Run
Rakesign for developers

Every signature is an API call.

Send envelopes from your product, a script or an AI agent. The sign API is on every plan.

POST /v1/sign

Send an envelope in one call.

Give a file and a list of signers. Rakesign emails each signer and returns the sealed PDF when all sign.

curl -X POST https://api.cloudraker.com/v1/sign \
  -H "Authorization: Bearer $CLOUDRAKER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "file": {"url": "https://example.com/agreement.pdf"},
    "signers": [{"name": "Ada Lovelace", "email": "ada@example.com"}],
    "message": "Please countersign by Friday.",
    "placement": "page"
  }'
import { CloudRakerClient } from "@cloudraker/api";

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

const run = await client.sign({
  body: {
    file: { url: "https://example.com/agreement.pdf" },
    signers: [
      { name: "Ada Lovelace", email: "ada@example.com" },
    ],
    message: "Please countersign by Friday.",
    placement: "page",
  },
});
console.log(run.status); // "needs_input": signers get emailed their links
console.log(run.envelopeUrl);
from cloudraker import CloudRaker, V1SignBodySignersItem, V1SignBodyFileName

client = CloudRaker(token="YOUR_API_KEY")

run = client.sign(
    file=V1SignBodyFileName(url="https://example.com/agreement.pdf"),
    signers=[
        V1SignBodySignersItem(
            name="Ada Lovelace",
            email="ada@example.com",
        ),
    ],
    message="Please countersign by Friday.",
    placement="page",
)
print(run.status)  # "needs_input": signers get emailed their links
print(run.envelope_url)
Surfaces

Four ways in, one envelope.

REST API
POST /v1/sign with a file and signers. SDKs for Python and TypeScript.
Read the docs
MCP server
Claude, ChatGPT and other agents send envelopes as a tool call.
Set up MCP
CLI
Send and track envelopes from a terminal or a CI job.
See the CLI
Agent skills
Skills teach a coding agent how to prepare, send and track an envelope.
Install the skills
How it works

Signers sign. CloudRaker seals.

We keep the two apart on purpose. A person performs a legal act. The system proves a cryptographic fact.

  1. 01

    Define who needs to sign

    Sign takes a file and a list of signers. Each one gets a role, an order if sequence matters, and the fields they're responsible for. Nothing goes out until that list is right.

    POST /v1/signsigners[]order: sequential
  2. 02

    Preview costs nothing to change

    Set send to false and you get the field layout back. No email goes out and nothing is billed. Move a signature block, fix a name or cancel before any signer gets a notice.

    send: falsefield preview
  3. 03

    Verify the signer before they act

    Before a signature lands, each signer types a one-time code that we send to their email address. Only the invited person can fill fields and move the envelope forward.

    email one-time codeidentity verificationinvited signers
  4. 04

    Sign seals. It doesn't touch the file.

    When a signer completes their fields, Rakesign does not make a new document. It seals the original with a tamper-evident signature and a timestamp. A change to one byte after that breaks the seal.

    tamper-evident sealsha-256timestamp
  5. 05

    Every action becomes proof

    Views, sends, opens and signatures each go to the log with a timestamp and the signer identity. Nobody rebuilds the audit trail from emails later. It is one record, from the first click to the last signature.

    audit trailsigner identityevent log
FAQ

Questions and answers

Is the sign API on the Free plan?

Yes. The API, the MCP server and the CLI are on every plan. The open envelope limit of the plan applies to API sends too.

Can I check the fields before signers get an email?

Yes. Set send to false. The API returns the field layout, sends no email and bills nothing.

What happens when my organization reaches its limit?

The document fails with the error code concurrent_envelope_limit. After an open envelope completes, or after an upgrade, you send it again.

Can an AI agent send documents for signature?

Yes. Connect the CloudRaker MCP server or install the agent skills. A human signer still signs. The agent only prepares and sends.

Build signing into your product.

Create a free account and get an API key in two minutes.