# squiggli > squiggli is the e-signature API built for AI agents and the apps they make. Send a document for signing with one API call; a person signs it in the browser; you get the signed PDF and a completion certificate. Australian business (prices in AUD ex GST). - API base: https://squiggli.billy-965.workers.dev/v1 (Bearer API key: sq_live_... or sq_test_...) - OpenAPI: https://squiggli.billy-965.workers.dev/openapi.json - MCP server (Streamable HTTP, OAuth or Bearer key): https://squiggli.billy-965.workers.dev/mcp - Sign up (free test key at once): https://squiggli.billy-965.workers.dev/app/signup - Embed script: https://squiggli.billy-965.workers.dev/embed.js (Squiggli.sign, Squiggli.editor) ## Pricing - $1.00 per document sent, $1.50 fully white-labelled. A document is one envelope, however many files or signers. - The first 15 documents a business sends are free. Test documents are always free and unlimited. - Drafts, templates, reminders, resends and downloads are free. Signers never pay or need an account. - Over $5,000 a month: rates are negotiated. ## Core objects - Envelope: documents + signers + fields. Status draft, sent, viewed, signed (complete), declined, voided or expired. - Signer: name, email, delivery (email or link), order for sequential signing. Each has a signing_url. - Field: signature, initials, date_signed, name, email, text or checkbox, on a page at x/y points from the top-left. - Template: a block document (headings, paragraphs, lists, tables, fields, signature blocks, {{variables}}) or a PDF with fields by role. - Webhook events: envelope.sent, envelope.viewed, envelope.signed, envelope.completed, envelope.declined, envelope.voided, envelope.expired. ## Connect your agent (MCP server: https://squiggli.billy-965.workers.dev/mcp) - Claude Code: claude mcp add --transport http --scope user squiggli https://squiggli.billy-965.workers.dev/mcp --header "Authorization: Bearer $SQUIGGLI_API_KEY" - Codex: in ~/.codex/config.toml add [mcp_servers.squiggli] with url = "https://squiggli.billy-965.workers.dev/mcp" and bearer_token_env_var = "SQUIGGLI_API_KEY" - Cursor: ~/.cursor/mcp.json { "mcpServers": { "squiggli": { "url": "https://squiggli.billy-965.workers.dev/mcp", "headers": { "Authorization": "Bearer sq_test_..." } } } } - VS Code (Copilot): .vscode/mcp.json server { "type": "http", "url": "https://squiggli.billy-965.workers.dev/mcp" } with an Authorization header from a promptString input - Windsurf: ~/.codeium/windsurf/mcp_config.json with "serverUrl": "https://squiggli.billy-965.workers.dev/mcp" and the Authorization header - Gemini CLI: ~/.gemini/settings.json with "httpUrl": "https://squiggli.billy-965.workers.dev/mcp" and the Authorization header - Claude app and ChatGPT: add a custom connector with the URL https://squiggli.billy-965.workers.dev/mcp and sign in (OAuth). No key needed. - Keys: sign up at https://squiggli.billy-965.workers.dev/app/signup for a test key, or create one with the squiggli_create_api_key tool. Keep it in SQUIGGLI_API_KEY, never in the repo. ## Electronic signatures and the law - Signatures meet the Electronic Transactions Act 1999 (Cth) s 10 and the state Acts: each signer is identified by their own link (optionally plus an access code: signers[].access_code), must open the document first, agrees to sign electronically, and confirms an intent statement. Document hashes are checked at every signature, and the certificate records it all. - Some documents need more than an e-signature (wills, powers of attorney, documents that must be witnessed, land title documents). See https://squiggli.billy-965.workers.dev/legal/electronic-signatures. - Anyone can check a signed PDF hasn't changed at https://squiggli.billy-965.workers.dev/verify. ## Comparisons - [squiggli vs DocuSign](https://squiggli.billy-965.workers.dev/compare/docusign): No seats and no envelope caps. Pay $1.00 when a document goes out. - [squiggli vs PandaDoc](https://squiggli.billy-965.workers.dev/compare/pandadoc): API documents never pause. No credit packs to top up. - [squiggli vs Dropbox Sign](https://squiggli.billy-965.workers.dev/compare/dropbox-sign): The API has no monthly plan. Send one document for $1.00. - [squiggli vs Adobe Acrobat Sign](https://squiggli.billy-965.workers.dev/compare/adobe-acrobat-sign): Signing from code, without an Acrobat licence for everyone. - [squiggli vs SignNow](https://squiggli.billy-965.workers.dev/compare/signnow): Pay per document, not per user. - [squiggli vs Zoho Sign](https://squiggli.billy-965.workers.dev/compare/zoho-sign): No credits to buy in blocks of 500. Pay for what you send. - [squiggli vs Annature](https://squiggli.billy-965.workers.dev/compare/annature): $1.00 a document instead of $1.75, and built for software to send. - [squiggli vs Documenso](https://squiggli.billy-965.workers.dev/compare/documenso): Unlimited API access without a US$250 a month plan. - [squiggli vs BoldSign](https://squiggli.billy-965.workers.dev/compare/boldsign): Made for AI agents, from the first call. ## Docs - [Documentation](https://squiggli.billy-965.workers.dev/docs): 19 pages, from the quickstart to the full API reference - [Quickstart](https://squiggli.billy-965.workers.dev/docs/quickstart): Get a key, send a test document, sign it, and get the signed PDF back. About five minutes. - [Connect your AI](https://squiggli.billy-965.workers.dev/docs/ai-agents): Give Claude Code, Codex, Cursor, Copilot, Windsurf, Gemini CLI, the Claude app or ChatGPT access to squiggli, then let it add signing to your app. - [How squiggli works](https://squiggli.billy-965.workers.dev/docs/concepts): Envelopes, documents, signers and fields, the statuses they move through, and the difference between test and live. - [Send a document](https://squiggli.billy-965.workers.dev/docs/sending): Upload PDFs or use templates, place fields, choose how signers get their link, and set the order, deadline and reminders. - [Templates](https://squiggli.billy-965.workers.dev/docs/templates): Reusable documents with variables: written as blocks that squiggli lays out, or a PDF with fields placed by role. - [The signing experience](https://squiggli.billy-965.workers.dev/docs/signing): What signers see, how they are identified, access codes, branding, white-label, and what happens after they sign. - [Tracking and the audit trail](https://squiggli.billy-965.workers.dev/docs/tracking): See who opened what, from which link, and every event in order. - [Webhooks](https://squiggli.billy-965.workers.dev/docs/webhooks): Have squiggli tell your server when documents are sent, viewed, signed, completed, declined, voided or expire. - [Embed signing and the editor](https://squiggli.billy-965.workers.dev/docs/embedding): Put the signing page, the template editor or an envelope view inside your own app with one script. - [Signed PDFs and certificates](https://squiggli.billy-965.workers.dev/docs/completion): What you get when everyone signs, how to download it, and how anyone can check a signed PDF. - [Authentication](https://squiggli.billy-965.workers.dev/docs/authentication): API keys, test and live, embed tokens, OAuth for the MCP server, and platform credentials. - [API reference](https://squiggli.billy-965.workers.dev/docs/api): Every endpoint of the squiggli API, with parameters, bodies and responses. - [Errors, retries and pagination](https://squiggli.billy-965.workers.dev/docs/errors): Every error code, how Idempotency-Key makes retries safe, and how to page through lists. - [MCP server](https://squiggli.billy-965.workers.dev/docs/mcp): The tools squiggli gives AI agents, generated from the server itself. - [Chesterman's apps](https://squiggli.billy-965.workers.dev/docs/platform): How Kiewa Trades, Patch and Kiewa send documents for a business, billed to that business. - [Pricing and usage](https://squiggli.billy-965.workers.dev/docs/pricing): Pay per document sent. No seats, no monthly fee. Billed on your Kiewa statement. - [Electronic signatures and the law](https://squiggli.billy-965.workers.dev/docs/compliance): How squiggli signatures meet the Electronic Transactions Act 1999 (Cth), and which documents may need more. - [Limits](https://squiggli.billy-965.workers.dev/docs/limits): Sizes, counts and timings, in one place. - [Integration guide for agents](https://squiggli.billy-965.workers.dev/llms-full.txt): copy-ready code for Node, Next.js, Python, PHP and curl - [OpenAPI document](https://squiggli.billy-965.workers.dev/openapi.json)