Skip to main content

API reference — all operations

The DocJacket REST API lets your own systems read and act on transactions, contacts, tasks, key dates, documents, extractions, disclosures, and templates. This page lists all 115 operations in one place, grouped by resource, so the whole surface is readable without running JavaScript or parsing the raw specification.

For request and response schemas, read the raw specification or the interactive reference — this page is the index, not the full contract.

Authentication

Every request carries an API key as a bearer token:

Authorization: Bearer mcp_at_YOUR_KEY

Two credential types:

KeyPrefixUse
Organization keymcp_at_…Acts within a single organization. Mint one under Settings → AI & API Access. Covers every section except Organizations (Partner).
Partner keyrsk_…Cross-tenant provisioning and read for white-label partners. Accepted only on the /api/v1/orgs/* operations.

Organization keys carry one or more scopes, listed per operation in the tables below:

ScopeGrants
readRead operations (GET).
draftLow-risk writes — completing a task, logging activity, applying a checklist.
actionsSide-effecting writes — sending email, creating and deleting records, provisioning.

See Authentication & API keys for creating, scoping, rotating, and revoking keys.

Your first three calls

The documented starting sequence — each answers a question you need before writing real integration code:

# 1. Does my key work? Echoes your organization and granted scopes.
curl https://api.docjacket.com/api/v1/health \
-H "Authorization: Bearer mcp_at_YOUR_KEY"

# 2. What can this key call? Every operation, with a per-key "callable" flag.
curl https://api.docjacket.com/api/v1/catalog \
-H "Authorization: Bearer mcp_at_YOUR_KEY"

# 3. What have I been calling? Volume, top operations, and error rate.
curl https://api.docjacket.com/api/v1/usage \
-H "Authorization: Bearer mcp_at_YOUR_KEY"

Conventions

  • Errors use one envelope: { "error": { "code", "message", "fields"? } }. Cross-tenant lookups return 404 rather than 403, so the existence of another organization's data is never disclosed.
  • Rate limits are per key, per minute, in a fixed window: 300 reads (GET) and 60 writes (POST/PUT/PATCH/DELETE). Exceeding a bucket returns 429 with Retry-After: 60 and code: "rate_limited".
  • Idempotency: send an Idempotency-Key header on side-effecting writes so retries are safe.
  • Versioning is additive by default. New fields and operations can appear at any time, so ignore unknown response fields and do not depend on property order. Breaking changes ship as a new major version at a new path (/api/v2) — /api/v1 is never broken in place. A deprecated version stays available for at least 6 months after its successor ships.

See Making requests for the full conventions and Versioning & changes for the deprecation policy.

Operations

115 operations across 14 sections.

Meta

Start here. Verify your key, discover the operations it can call, and see your own call volume.

MethodPathDescriptionScope
GET/api/v1/catalogList operations available to your API keyread
GET/api/v1/healthCheck API key authentication and service healthread
GET/api/v1/next-actionsGet the ranked next-actions feed (tasks + key dates)read
GET/api/v1/usageGet call-volume, daily breakdown, top operations, and error rate for your API keyread

Transactions

The transaction record itself — create, list, read, and update deals, and manage the checklists, contingencies, notes, and reminders attached to them.

MethodPathDescriptionScope
GET/api/v1/transactionsList or search transactionsread
POST/api/v1/transactionsApply a completed extraction — create a new transaction, or attach to an existing one via transactionIdactions
GET/api/v1/transactions/{transactionId}Get a transaction by IDread
POST/api/v1/transactions/{transactionId}/activityLog an activity on a transactiondraft
GET/api/v1/transactions/{transactionId}/checklistGet aggregate checklist status for a transactionread
POST/api/v1/transactions/{transactionId}/checklistApply a checklist template to a transactiondraft
POST/api/v1/transactions/{transactionId}/contactsLink an existing contact to a transaction with a roleactions
GET/api/v1/transactions/{transactionId}/contingenciesList open contingencies for a transactionread
POST/api/v1/transactions/{transactionId}/documents/{documentId}/shareShare a document to a party on a deal via secure SMS linkactions
POST/api/v1/transactions/{transactionId}/documents/reorderSet the order of a transaction's documentsdraft
GET/api/v1/transactions/{transactionId}/form-linksList form links sent on a transactionread
GET/api/v1/transactions/{transactionId}/intake-statusGet the intake-progress snapshot for a transactionread
GET/api/v1/transactions/{transactionId}/key-datesList key dates for a transactionread
POST/api/v1/transactions/{transactionId}/key-datesAdd key dates to a transaction (batch)draft
PATCH/api/v1/transactions/{transactionId}/key-dates/{keyDateType}Update a key date on a transactiondraft
GET/api/v1/transactions/{transactionId}/merge-fieldsGet all merge field values for a transactionread
GET/api/v1/transactions/{transactionId}/missing-documentsList documents missing against the purchase baselineread
PATCH/api/v1/transactions/{transactionId}/notesSet or clear a transaction's general notesdraft
GET/api/v1/transactions/{transactionId}/portal-linkGet the active client-portal link for a transactionread
POST/api/v1/transactions/{transactionId}/remindersSchedule a reminder on a transactionactions
POST/api/v1/transactions/{transactionId}/render-templateRender an email template against a transaction (preview-only)read
PATCH/api/v1/transactions/{transactionId}/statusChange a transaction's status (runs the same cascade as the web app)actions
POST/api/v1/transactions/{transactionId}/status-summarySave a status summary on a transactiondraft
POST/api/v1/transactions/{transactionId}/tasksCreate a task on a transactiondraft
GET/api/v1/transactions/resolveResolve a property reference to ranked transaction matchesread

Messaging

Email and messaging on a deal — send client updates and document requests, draft and schedule messages, and read the communication log.

MethodPathDescriptionScope
GET/api/v1/conversationsList the organization's message threadsread
POST/api/v1/conversations/{threadId}/documentsShare a document into an existing conversation via secure SMS linkactions
GET/api/v1/conversations/{threadId}/messagesList messages in a conversation threadread
POST/api/v1/conversations/{threadId}/messagesReply with an SMS in an existing conversation threadactions
DELETE/api/v1/scheduled-messages/{messageId}Cancel a pending scheduled messageactions
GET/api/v1/transactions/{transactionId}/communicationsList every message for a transaction across channels (SMS + email + in-app)read
POST/api/v1/transactions/{transactionId}/conversationsStart a conversation by sending the first SMS on a dealactions
POST/api/v1/transactions/{transactionId}/draft-messageGenerate an AI message draft (never sends)draft
POST/api/v1/transactions/{transactionId}/emails/agentSend an email to an agent on the dealactions
POST/api/v1/transactions/{transactionId}/emails/agent-followupSend a follow-up email to an agent or vendoractions
POST/api/v1/transactions/{transactionId}/emails/client-updateSend a status-update email to a deal partyactions
POST/api/v1/transactions/{transactionId}/emails/document-requestSend a document-request email to a deal partyactions
POST/api/v1/transactions/{transactionId}/messagesSend an email on a deal (appears in the merged thread as channel=email)actions
GET/api/v1/transactions/{transactionId}/recipientsList a deal's participants with role and per-channel availabilityread
GET/api/v1/transactions/{transactionId}/reports/communication-logExport a transaction's communication log (email + SMS) as a PDF, ZIP (with documents), or JSONread
GET/api/v1/transactions/{transactionId}/scheduled-messagesList active scheduled messages on a dealread
POST/api/v1/transactions/{transactionId}/scheduled-messagesSchedule an email to send later on a dealactions

Key Dates

Deadlines across your book of business. Key dates for a single transaction live under Transactions.

MethodPathDescriptionScope
GET/api/v1/key-dates/upcomingList upcoming key dates across active transactionsread

Tasks

Task lists on a deal — create, list, comment on, complete, and delete tasks.

MethodPathDescriptionScope
GET/api/v1/tasksList open tasksread
POST/api/v1/tasks/{taskId}/assignReassign a task to a team memberdraft
GET/api/v1/tasks/{taskId}/commentsList a task's comment threadread
POST/api/v1/tasks/{taskId}/commentsAdd a comment to a taskdraft
DELETE/api/v1/tasks/{taskId}/comments/{commentId}Delete a task comment (author only)draft
POST/api/v1/tasks/{taskId}/completeMark a task completedraft
POST/api/v1/tasks/{taskId}/rescheduleReschedule (postpone) a task's due datedraft
POST/api/v1/tasks/deleteDelete tasks (bulk, permanent)actions

Documents

Files on a deal — request an upload URL, list and classify documents, share them, and manage versions.

MethodPathDescriptionScope
GET/api/v1/documentsList recently-uploaded documents with extraction stateread
POST/api/v1/documentsUpload a document (base64) and start extractionactions
PATCH/api/v1/documents/{documentId}Rename or re-classify a documentdraft
DELETE/api/v1/documents/{documentId}Soft-delete a documentdraft
POST/api/v1/documents/{documentId}/extractStart extraction for a document already in DocJacketactions
POST/api/v1/documents/{documentId}/splitSplit a multi-page PDF into separate documentsdraft
POST/api/v1/documents/{documentId}/versionsReplace a document with a new uploaded versiondraft
GET/api/v1/documents/{documentId}/view-urlGet a short-lived presigned URL to view a documentread
POST/api/v1/documents/classifyClassify a document by filename and/or content previewread
GET/api/v1/documents/typesList the canonical document-type vocabularyread
POST/api/v1/documents/upload-urlGet a presigned PUT URL for a document uploadactions

Extractions

AI contract extraction — kick off a run, poll results, and apply extracted fields to a transaction.

MethodPathDescriptionScope
POST/api/v1/extractionsStart extraction from a presigned uploadactions
GET/api/v1/extractions/{jobId}Get the state and results of an extraction jobread
GET/api/v1/extractions/{jobId}/source-urlGet a short-lived presigned URL to view an extraction's source PDFread

Contacts

People and companies — search, create, and update contacts, and read the role vocabulary they are assigned to.

MethodPathDescriptionScope
POST/api/v1/contact-rolesCreate a custom contact roleactions
GET/api/v1/contactsList or search contactsread
POST/api/v1/contactsCreate a contactactions
GET/api/v1/contacts/{contactId}Get a contact by IDread
GET/api/v1/contacts/by-emailFind contacts by exact email, with their transactionsread
GET/api/v1/contacts/searchFuzzy-search contacts by name, email, phone, or companyread

Disclosure Packages

Seller disclosure packages — assemble documents, activate, invite and revoke recipients, and read access activity.

MethodPathDescriptionScope
POST/api/v1/disclosure-packagesCreate a disclosure package (optionally attach documents and activate)actions
GET/api/v1/disclosure-packages/{packageId}Get a disclosure package with items and recipientsread
POST/api/v1/disclosure-packages/{packageId}/activateActivate a disclosure package (idempotent)actions
GET/api/v1/disclosure-packages/{packageId}/activityGet the recipient-activity report for a disclosure packageread
PUT/api/v1/disclosure-packages/{packageId}/documentsReplace a disclosure package's document listactions
POST/api/v1/disclosure-packages/{packageId}/recipientsInvite a recipient to a disclosure package (sends the share email)actions
DELETE/api/v1/disclosure-packages/{packageId}/recipients/{recipientId}Revoke a disclosure recipient's access (idempotent)actions

Proposals

AI-generated proposals awaiting human review — list, inspect, approve, and reject.

MethodPathDescriptionScope
GET/api/v1/proposalsList pending AI proposals for the organizationread
GET/api/v1/proposals/{id}Get one AI proposal with its evidenceread
POST/api/v1/proposals/{id}/approveApprove an AI proposalactions
PUT/api/v1/proposals/{id}/payloadEdit a proposal's proposed value before approvingactions
POST/api/v1/proposals/{id}/rejectReject an AI proposalactions

Templates & Forms

Reusable content — email templates, checklist templates, intake forms, and the submissions they produce.

MethodPathDescriptionScope
GET/api/v1/checklist-templatesList timeline/checklist templates (org + system)read
GET/api/v1/email-templatesList email templates (org + system, active only)read
POST/api/v1/email-templatesCreate an email templateactions
GET/api/v1/email-templates/{idOrSlug}Get an email template by ID or slugread
GET/api/v1/form-submissionsList form submissions (org-wide or per transaction)read
GET/api/v1/form-submissions/{submissionId}Get field-level detail for a form submissionread
GET/api/v1/forms/{formId}Get a form template with its field listread

Webhooks

Push instead of poll — subscribe to events, manage subscriptions, and read the event catalog.

MethodPathDescriptionScope
GET/api/v1/webhook-eventsList the webhook event types you can subscribe toread
GET/api/v1/webhooksList your webhook subscriptionsread
POST/api/v1/webhooksCreate a webhook subscriptionactions
GET/api/v1/webhooks/{id}Get a webhook subscription by IDread
PUT/api/v1/webhooks/{id}Update a webhook subscriptionactions
DELETE/api/v1/webhooks/{id}Delete a webhook subscriptionactions
GET/api/v1/webhooks/{id}/deliveriesList recent delivery attempts for a webhook subscriptionread
POST/api/v1/webhooks/{id}/regenerate-secretRotate a webhook subscription's signing secretactions
POST/api/v1/webhooks/{id}/testSend a test delivery to a webhook subscriptionactions

Organization

Your own organization — settings, the transaction-status vocabulary, notifications, and registered devices.

MethodPathDescriptionScope
POST/api/v1/devices/registerRegister or refresh a mobile device for the authenticated useractions
GET/api/v1/notificationsList the signed-in user's notification inboxread
GET/api/v1/notifications/unread-countUnread notification count for the signed-in userread
GET/api/v1/org/usersList the organization's assignable team membersread
GET/api/v1/transaction-statusesList the organization's selectable transaction statusesread

Organizations (Partner)

White-label partner tier. Provision and read the organizations in your book of business. Requires a partner key (rsk_…), not an organization key.

MethodPathDescriptionScope
GET/api/v1/orgsList your customer organizations
POST/api/v1/orgsProvision a customer organization
GET/api/v1/orgs/{orgId}Get a customer organization
GET/api/v1/orgs/{orgId}/entitlementsGet an organization's plan, seats, and AI fair-use pool state
GET/api/v1/orgs/{orgId}/summaryGet an organization's activity summary (active deals, tasks due, last activity)
POST/api/v1/orgs/{orgId}/usersInvite a seat into an organization
DELETE/api/v1/orgs/{orgId}/users/{userId}Remove a seat from an organization

Where to go next