# NextSign API Documentation > Official NextSign API documentation for authentication, forms, cases, documents, webhooks, and test integrations. NextSign publishes API documentation for authentication, forms, cases, documents, file handling, test integrations, versioning, rate limits, idempotency, and webhooks. Important notes: - Cases and forms are primarily documented under `https://www.nextsign.dk/api/v2/...`. - File upload and file retrieval endpoints are documented under `https://api.nextsign.dk/v3/...`. - Use the exact endpoint path documented for each operation instead of assuming that all resources share the same version or host. - Older `v2` endpoints can return application-level errors in the JSON body, so integrations should validate both HTTP status codes and the response payload. ## Start Here - [Introduction](https://docs.nextsign.dk/docs): Overview of the NextSign API surface, integration model, and reference index. - [Authorization](https://docs.nextsign.dk/docs/authorization): How to create an API key, send bearer tokens, and locate the company ID. - [API Versioning](https://docs.nextsign.dk/docs/versioning): How documented `v2` and `v3` endpoints differ and why they should be treated as separate contracts. - [Test Environment](https://docs.nextsign.dk/docs/testenv): How to test safely before sending production traffic. - [OpenAPI JSON](https://docs.nextsign.dk/openapi.json): Beta machine-readable contract for the documented API surface. ## Getting Started Authentication, environments, and the fastest way to make your first request. - [Introduction](https://docs.nextsign.dk/docs): Complete API documentation for automating forms, cases, document signing, and file retrieval using NextSign. - [Authorization](https://docs.nextsign.dk/docs/authorization): Find your API key and companyId, and authenticate requests to the NextSign API. - [Test Environment](https://docs.nextsign.dk/docs/testenv): Build and validate your NextSign integration safely without affecting production data. ## Platform Versioning, rate limits, and idempotency guidance for reliable integrations. - [API Versioning](https://docs.nextsign.dk/docs/versioning): Understand how NextSign versions endpoints and how to safely work with both v2 and v3 routes. - [Rate Limits](https://docs.nextsign.dk/docs/rate-limits): Understand the current NextSign API request limit and how to build retry-safe clients around it. - [Idempotency](https://docs.nextsign.dk/docs/idempotency): Understand the difference between request idempotency, resource IDs, and webhook deduplication in NextSign. ## Reference Template syntax, shared payload objects, and lifecycle values reused across the API. - [Template Tags](https://docs.nextsign.dk/docs/template-tags): The {tag} placeholder syntax used in .docx templates — values, conditions, lists, empty-state companions, dropdown options, recipient tags, global fields and the company logo tag. - [Objects](https://docs.nextsign.dk/docs/objects): Shared request and response objects used across cases, forms, and document endpoints. ## Forms Retrieve templates, inspect tags, and submit forms to create signing cases. - [Forms Get](https://docs.nextsign.dk/docs/forms-get): Get a form by ID using GET /api/v2/{company}/forms/{form_id}/get. - [Forms Tags](https://docs.nextsign.dk/docs/forms-tags): Get form tags using GET /api/v2/{company}/forms/{form_id}/tags/get. - [Forms Submit](https://docs.nextsign.dk/docs/forms-submit): Submit a form using POST /api/v2/{company}/forms/{form_id}/submit. ## Cases Create, list, inspect, and manage signing cases across their lifecycle. - [Case List](https://docs.nextsign.dk/docs/cases): List cases with filters using GET /api/v2/{company}/cases/get. - [Case Get Multiple](https://docs.nextsign.dk/docs/cases-get-multiple): Get multiple cases by ID using GET /api/v2/{company}/cases/{case_ids}/get. - [Case Get](https://docs.nextsign.dk/docs/case): Get a single case by ID using GET /api/v2/{company}/case/{case_id}/get. - [Case Create](https://docs.nextsign.dk/docs/case-create): Create a case using POST /api/v2/{company}/case/create. - [Case Update](https://docs.nextsign.dk/docs/case-update): Update an existing case using PATCH /api/v2/{company}/case/{case_id}/update. - [Case Delete](https://docs.nextsign.dk/docs/case-delete): Delete a case using GET /api/v2/{company}/case/{case_id}/delete. ## Documents Upload larger files, retrieve signed files, and convert source documents before they are sent. - [Document Upload](https://docs.nextsign.dk/docs/documents-upload): Upload a file using POST /v3/company/{company}/file/upload. - [Document Retrieve](https://docs.nextsign.dk/docs/documents): Retrieve a pre-signed document URL using POST /v3/company/{company}/file/view-presigned-url. - [Document Convert](https://docs.nextsign.dk/docs/documents-convert): Convert documents using POST /api/v2/document/convert. ## Events Subscribe to lifecycle notifications and understand webhook delivery retries. - [Webhooks](https://docs.nextsign.dk/docs/webhooks): Receive real-time notifications when case and flow events occur in NextSign. - [Webhook Retry Logic](https://docs.nextsign.dk/docs/webhook-retry-logic): Understand how NextSign retries failed webhook deliveries and how to build duplicate-safe handlers. ## Getting Started What the v3 beta covers, and how to authenticate against it. - [Overview](https://docs.nextsign.dk/docs/v3): Create and send documents for signing from your own system, with the NextSign API. - [Authorization](https://docs.nextsign.dk/docs/v3/authorization): Create an API key, send it with every request, and understand why some keys are rejected. ## Cases Create and read signing cases with strict validation and explicit responses. - [Create a Case](https://docs.nextsign.dk/docs/v3/case-create): Create and send a signing case with POST /v3/api/cases — full request and response reference. - [List Cases](https://docs.nextsign.dk/docs/v3/case-list): Page through your company's cases with GET /v3/api/cases — filters, cursor pagination and the response shape. - [Retrieve a Case](https://docs.nextsign.dk/docs/v3/case-get): Fetch one case by id with GET /v3/api/cases/{id}, including its signing links and document downloads. ## Documents Browse your document library and create cases from your own templates. - [List Documents](https://docs.nextsign.dk/docs/v3/documents-list): Page through your document library with GET /v3/api/documents — which documents your key can use as the source of a case. - [Retrieve a Document](https://docs.nextsign.dk/docs/v3/documents-get): Fetch one library document with GET /v3/api/documents/{id} — its versions and, for a .docx, the exact fields you can fill when creating a case. - [Create a Case from a Document](https://docs.nextsign.dk/docs/v3/documents-create-case): Fill a library document and send it for signing with POST /v3/api/documents/{id}/cases — the document-first way to create a case. ## Platform Error handling and retry semantics for the v3 surface. - [Errors](https://docs.nextsign.dk/docs/v3/errors): The v3 error envelope, the full list of error slugs, and what is safe to retry. ## Getting Started What the NextSign MCP server is, and how to connect it to your AI assistant. - [Overview](https://docs.nextsign.dk/docs/mcp): Let your AI assistant create and send NextSign signing cases for you — connect once, then just ask in plain language. - [Connect Your Assistant](https://docs.nextsign.dk/docs/mcp/connect): Add the NextSign MCP server to Claude or ChatGPT, sign in, and check that it works. - [Using It](https://docs.nextsign.dk/docs/mcp/usage): Example prompts, what happens when the assistant creates a case, and habits that keep you safe. ## Tools The tools the server exposes, and every field they accept. - [create_case](https://docs.nextsign.dk/docs/mcp/create-case): Every field the create_case tool accepts, and what it returns — the same payload as POST /v3/api/cases. - [list_documents](https://docs.nextsign.dk/docs/mcp/list-documents): The list_documents tool — the documents in your library that the assistant can turn into a signing case. - [get_document](https://docs.nextsign.dk/docs/mcp/get-document): The get_document tool — one library document, its versions, and the exact fields to fill when creating a case from it. - [create_case_from_document](https://docs.nextsign.dk/docs/mcp/create-case-from-document): Every field the create_case_from_document tool accepts — fill a library document and send it for signing, the same as POST /v3/api/documents/{id}/cases. ## Help Common errors, what they mean, and current limitations. - [Troubleshooting](https://docs.nextsign.dk/docs/mcp/troubleshooting): Common errors when connecting or creating cases, and the current limitations of the beta. ## More Additional reference pages. - [Company Status](https://docs.nextsign.dk/docs/company-status): Retrieve your remaining credit balance and credit usage using GET /v3/company/{company}/status. - [Get a Webflow](https://docs.nextsign.dk/docs/v3/webflows-get): Retrieve webflow progress, recipient links and non-sensitive answers. - [Migrating from v2](https://docs.nextsign.dk/docs/v3/migration): Field-by-field mapping from POST /api/v2/{company}/case/create to POST /v3/api/cases, and every behavioural difference. - [Send a Webflow](https://docs.nextsign.dk/docs/v3/webflows-create): Request information using a published webflow and email invitations. - [White-Label Partner Program](https://docs.nextsign.dk/docs/partner-program): Offer e-signing that looks like your own, on your domain and brand. Refer customers, earn a kickback, and get an API key for every new account.