> **Source:** https://knowledge.leegality.com/document-execution/api/check-pack-details > **Site:** Leegality Knowledge Base — https://knowledge.leegality.com > **About:** Leegality is a document execution platform covering eSigning, stamps, NeSL, workflows, and REST API integration. > **Navigation:** Every article on this site has a plain-text version at `.txt` (this format). To get an index of all articles with their `.txt` links, read: https://knowledge.leegality.com/llms.txt > **AI Guide:** For instructions on how to navigate this knowledge base as an AI agent, read: https://knowledge.leegality.com/ai-readable.txt --- # GET /v4/packs — Check Pack Details :::info[Sandbox endpoint] **Authentication:** `X-Auth-Token` header required on every request. ## Request URL ``` GET https://app1.leegality.com/api/v4/packs?packId=01HZWY9G3J7K2P5N4QXTRBVMDC&urn=loan-app-2024-001&workflowRunContextId=550e8400-e29b-41d4-a716-446655440000&payloadForPackEdit=true&workflowDetails={workflowDetails}&account={account}&sender={sender}&packFolder={packFolder}&sftp={sftp}&deleteOnComplete={deleteOnComplete}&signingOrder={signingOrder}&customFields={customFields}&cc={cc}&coordinates={coordinates}&documentFolder=true&file={file}&auditTrail={auditTrail}&referenceAttachments={referenceAttachments}&scheduledDeletionDate={scheduledDeletionDate}&stampDetails={stampDetails}&subDocuments={subDocuments}&subDocuments_template=true&combinationResponse={combinationResponse}&combinationResponse_supportingDocuments={combinationResponse_supportingDocuments}&combinationResponse_verificationResult={combinationResponse_verificationResult}&combinationResponse_verificationResult_cloudDscVerifyCertificateDetails={combinationResponse_verificationResult_cloudDscVerifyCertificateDetails}&combinationResponse_verificationResult_dscVerifyCertificateDetails={combinationResponse_verificationResult_dscVerifyCertificateDetails}&combinationResponse_verificationResult_faceMatch={combinationResponse_verificationResult_faceMatch}&combinationResponse_verificationResult_smartUserLiveliness={combinationResponse_verificationResult_smartUserLiveliness}&combinationConfig={combinationConfig}&combinationConfig_combinationSettings={combinationConfig_combinationSettings}&combinationConfig_combinationSettings_eSignPrioritisation={combinationConfig_combinationSettings_eSignPrioritisation}&combinationConfig_combinationSettings_signatureAppearance={combinationConfig_combinationSettings_signatureAppearance}&combinationConfig_combinationSettings_customConsent={combinationConfig_combinationSettings_customConsent}&combinationConfig_combinationSettings_webhooks={combinationConfig_combinationSettings_webhooks}&combinationConfig_combinationSettings_paymentCollect={combinationConfig_combinationSettings_paymentCollect}&combinationConfig_combinationSettings_reviewerConfig={combinationConfig_combinationSettings_reviewerConfig}&inviteeSettings={inviteeSettings}&inviteeSettings_securityOptions={inviteeSettings_securityOptions}&inviteeSettings_securityOptions_gps={inviteeSettings_securityOptions_gps}&inviteeSettings_securityOptions_faceCapture={inviteeSettings_securityOptions_faceCapture}&inviteeSettings_securityOptions_docDownloadLinkWithOtp={inviteeSettings_securityOptions_docDownloadLinkWithOtp}&inviteeSettings_securityOptions_maskContactDetails={inviteeSettings_securityOptions_maskContactDetails}&inviteeSettings_manageInviteInteractions={inviteeSettings_manageInviteInteractions}&inviteeSettings_manageInviteInteractions_supportingDocumentConfig={inviteeSettings_manageInviteInteractions_supportingDocumentConfig}&inviteeSettings_manageInviteInteractions_language=true&inviteeSettings_certificateVerification={inviteeSettings_certificateVerification}&inviteeSettings_certificateVerification_cloudDscVerifyCertificateDetails={inviteeSettings_certificateVerification_cloudDscVerifyCertificateDetails}&inviteeSettings_certificateVerification_dscVerifyCertificateDetails={inviteeSettings_certificateVerification_dscVerifyCertificateDetails} ``` **Environments:** - Production: `https://app1.leegality.com/api/v4/packs` - Sandbox: `https://sandbox.leegality.com/api/v4/packs` --- ## Parameters | Name | In | Required | Type | Description | Example | |------|----|----------|------|-------------|---------| | `packId` | query | No | string | Provide exactly one of `packId`, `urn`, or `workflowRunContextId` to select the pack. The Leegality pack ID (ULID) returned when the pack was created. | `01HZWY9G3J7K2P5N4QXTRBVMDC` | | `urn` | query | No | string | Provide exactly one of `packId`, `urn`, or `workflowRunContextId` to select the pack. Your Unique Reference Number (URN) set on the pack at creation time. | `loan-app-2024-001` | | `workflowRunContextId` | query | No | string | Provide exactly one of `packId`, `urn`, or `workflowRunContextId` to select the pack. The workflow run context ID returned by the Send Pack for eSigning (Async) API. | `550e8400-e29b-41d4-a716-446655440000` | | `payloadForPackEdit` | query | No | boolean | Master switch — set to `true` to include **every** section below at once (auto-enables all the other flags). | `true` | | `workflowDetails` | query | No | boolean | Set to `true` to include the `workflow` object on the pack (currently the workflow `name`). | — | | `account` | query | No | boolean | Set to `true` to include the `account` object on the pack — organisation `id`, `name`, department `label`, and `brandName`. | — | | `sender` | query | No | boolean | Set to `true` to include the `sender` object on the pack (`username` and `name`). | — | | `packFolder` | query | No | boolean | Set to `true` to include the `packFolder` object (folder `id` and `name`). | — | | `sftp` | query | No | boolean | Set to `true` to include the SFTP configuration (`enabled` flag and `profileId`). | — | | `deleteOnComplete` | query | No | boolean | Set to `true` to include the `deleteOnComplete` flag on the pack. | — | | `signingOrder` | query | No | boolean | Set to `true` to include the signing-order configuration (`setSigningOrder`, `preventChangesToSigningOrder`). | — | | `customFields` | query | No | boolean | Set to `true` to include Legal Entity Custom Fields (`lecf_*`). This single flag populates custom fields wherever they exist — on the pack, on each document (e.g. `lecf_documentCategory`), and on each invitation/invitee (e.g. `lecf_groupRegion`, `lecf_customerId`). | — | | `cc` | query | No | boolean | Set to `true` to include the top-level `cc` array — carbon-copy recipients and their notification settings. | — | | `coordinates` | query | No | boolean | Set to `true` to include the top-level `coordinates` array — signature appearance coordinates per invitee. | — | | `documentFolder` | query | No | boolean | Set to `true` to include each document's folder (`documentFolderId` and `documentFolderName`). | `true` | | `file` | query | No | boolean | Set to `true` to include the signed document download URL (`file`) on each document. | — | | `auditTrail` | query | No | boolean | Set to `true` to include the audit trail download URL (`auditTrail`). Returned only for documents whose `status` is `COMPLETED`. | — | | `referenceAttachments` | query | No | boolean | Set to `true` to include the `referenceAttachments` uploaded alongside each document. | — | | `scheduledDeletionDate` | query | No | boolean | Set to `true` to include the `scheduledDeletionDate` for each document. | — | | `stampDetails` | query | No | boolean | Set to `true` to include stamp details (revenue stamp, stamp series, stamp group, and stamp upload) on the document and its sub-documents. | — | | `subDocuments` | query | No | boolean | Set to `true` to include the `subDocuments` array on each document. Note: sub-documents are also returned automatically when `template` or `stampDetails` is enabled. | — | | `subDocuments_template` | query | No | boolean | Set to `true` to include template details on each sub-document (`template`: `id`, `name`, `version`, `allowFirstInviteeToFill`, `templateFieldValues`). Only takes effect when `subDocuments` is also `true`. | `true` | | `combinationResponse` | query | No | boolean | Set to `true` to include the `combinationResponse` array on each invitee — execution results per signing combination (assigned documents, signature options used, sign time). | — | | `combinationResponse_supportingDocuments` | query | No | boolean | Set to `true` to include `supportingDocuments` submitted by the invitee during signing. Requires all ancestor flags (`combinationResponse`) to also be `true`; otherwise it has no effect. | — | | `combinationResponse_verificationResult` | query | No | boolean | Set to `true` to include the `verificationResult` for each signed document (Aadhaar certificate details, smart-name match, verification status). Requires all ancestor flags (`combinationResponse`) to also be `true`; otherwise it has no effect. | — | | `combinationResponse_verificationResult_cloudDscVerifyCertificateDetails` | query | No | boolean | Set to `true` to include Cloud DSC certificate verification details within the verification result. Requires all ancestor flags (`combinationResponse`, `combinationResponse_verificationResult`) to also be `true`; otherwise it has no effect. | — | | `combinationResponse_verificationResult_dscVerifyCertificateDetails` | query | No | boolean | Set to `true` to include DSC certificate verification details within the verification result. Requires all ancestor flags (`combinationResponse`, `combinationResponse_verificationResult`) to also be `true`; otherwise it has no effect. | — | | `combinationResponse_verificationResult_faceMatch` | query | No | boolean | Set to `true` to include face-match verification results within the verification result. Requires all ancestor flags (`combinationResponse`, `combinationResponse_verificationResult`) to also be `true`; otherwise it has no effect. | — | | `combinationResponse_verificationResult_smartUserLiveliness` | query | No | boolean | Set to `true` to include smart user liveliness verification results within the verification result. Requires all ancestor flags (`combinationResponse`, `combinationResponse_verificationResult`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig` | query | No | boolean | Set to `true` to include the combination configuration (`combinationsConfigInfo`) for the invitee group — combinations, their assigned documents, and expiry. | — | | `combinationConfig_combinationSettings` | query | No | boolean | Set to `true` to include the `combinationSettings` for each combination (enabled eSign types and expiry). Requires all ancestor flags (`combinationConfig`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_eSignPrioritisation` | query | No | boolean | Set to `true` to include the eSign prioritisation configuration. Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_signatureAppearance` | query | No | boolean | Set to `true` to include the signature appearance configuration (name display, org seal). Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_customConsent` | query | No | boolean | Set to `true` to include the custom consent configuration. Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_webhooks` | query | No | boolean | Set to `true` to include the webhook configuration (success/error URLs, profile id, version). Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_paymentCollect` | query | No | boolean | Set to `true` to include the payment collection configuration. Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `combinationConfig_combinationSettings_reviewerConfig` | query | No | boolean | Set to `true` to include the reviewer configuration (`recordReviewerResponse`, `requireOtpToReview`). Requires all ancestor flags (`combinationConfig`, `combinationConfig_combinationSettings`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings` | query | No | boolean | Set to `true` to include `inviteeSettings`, starting with notification preferences (email, SMS, WhatsApp). | — | | `inviteeSettings_securityOptions` | query | No | boolean | Set to `true` to include the invitee `securityOptions` (authentication factors). Requires all ancestor flags (`inviteeSettings`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_securityOptions_gps` | query | No | boolean | Set to `true` to include GPS restriction settings. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_securityOptions`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_securityOptions_faceCapture` | query | No | boolean | Set to `true` to include face capture / liveliness settings. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_securityOptions`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_securityOptions_docDownloadLinkWithOtp` | query | No | boolean | Set to `true` to include the `docDownloadLinkWithOtp` flag. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_securityOptions`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_securityOptions_maskContactDetails` | query | No | boolean | Set to `true` to include the `maskContactDetails` flag. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_securityOptions`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_manageInviteInteractions` | query | No | boolean | Set to `true` to include invite interaction settings (base/redirect URLs, rejection, custom message, local language). Requires all ancestor flags (`inviteeSettings`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_manageInviteInteractions_supportingDocumentConfig` | query | No | boolean | Set to `true` to include the supporting-document request configuration. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_manageInviteInteractions`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_manageInviteInteractions_language` | query | No | boolean | Set to `true` to include the invitee's regional-language settings (`language`). Only takes effect when `inviteeSettings_manageInviteInteractions` is also `true`. | `true` | | `inviteeSettings_certificateVerification` | query | No | boolean | Set to `true` to include the certificate verification configuration bound to each recipient via `inviteeDetailsUuid`, with bare `verify*` keys. Requires all ancestor flags (`inviteeSettings`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_certificateVerification_cloudDscVerifyCertificateDetails` | query | No | boolean | Set to `true` to include Cloud DSC certificate verification entries. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_certificateVerification`) to also be `true`; otherwise it has no effect. | — | | `inviteeSettings_certificateVerification_dscVerifyCertificateDetails` | query | No | boolean | Set to `true` to include DSC certificate verification entries. Requires all ancestor flags (`inviteeSettings`, `inviteeSettings_certificateVerification`) to also be `true`; otherwise it has no effect. | — | --- ## Responses ### 200 — Pack details. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `data` | DocumentDetailsResponse | No | The pack payload (returned under `data`). By default it carries `pack`, `documents`, and `invitations` with their base fields; every other field is opt-in via the query flags. Send `payloadForPackEdit=true` to include everything. See **DocumentDetailsResponse** below. | — | #### DocumentDetailsResponse The pack payload (returned under `data`). By default it carries `pack`, `documents`, and `invitations` with their base fields; every other field is opt-in via the query flags. Send `payloadForPackEdit=true` to include everything. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `pack` | object | Yes | Top-line pack details. Always present. See **pack** below. | — | | `documents` | array\ | Yes | The documents in the pack. Always present. See **documents** below. | — | | `coordinates` | array\ | No | Signature placements, grouped per invitee. Present only when `coordinates=true`. See **coordinates** below. | — | | `invitations` | array\ | Yes | The invitee groups on the pack. Always present (empty for DRAFT packs). See **invitations** below. | — | | `cc` | array\ | No | CC recipients on the pack. Present only when `cc=true`. See **cc** below. | — | ##### pack Top-line pack details. Always present. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `packId` | string | No | Unique ID of the pack. | `01KZ8JV4Z7T3EZWMXGF3RNAYR5` | | `workflowId` | string | No | ID of the workflow the pack was created from. `null` for packs not tied to a workflow. | `a6295beb-650f-4dc0-81b4-df8e8faf2b7e` | | `status` | string | No | Current status of the pack. - `DRAFT` — Created but not yet sent. - `SENT` — Sent to invitees; signing is in progress. - `COMPLETED` — All required signing is done. - `EXPIRED` — The pack expired before it was completed. Allowed: `DRAFT`, `SENT`, `EXPIRED`, `COMPLETED`. | `COMPLETED` | | `createdAt` | string | No | When the pack was created (ISO 8601). | `2026-08-05T09:07:33Z` | | `completedAt` | string | No | When the pack was completed (ISO 8601). `null` until the pack completes. | `2026-08-05T09:12:00Z` | | `packName` | string | No | Display name of the pack. | `Home Loan Agreement` | | `packIrn` | string | No | Your Internal Reference Number for the pack. `null` if not set. | `IRN-2026-001234` | | `urn` | string | No | Your Unique Reference Number for the pack. `null` if not set. | `CLIENT-REF-001` | | `workflowRunContextId` | string | No | ID of the workflow run that produced this pack. | `8babd0af-a418-486e-b1cd-eb717fe97c35` | | `workflow` | object | No | Workflow details. Present only when `workflowDetails=true`. See **workflow** below. | — | | `account` | object | No | Account details. Present only when `account=true`. See **account** below. | — | | `sender` | object | No | The user who sent the pack. Present only when `sender=true`. See **sender** below. | — | | `packFolder` | object | No | The folder the pack is filed under. Present only when `packFolder=true` and a folder exists. See **packFolder** below. | — | | `sftp` | object | No | SFTP delivery configuration. Present only when `sftp=true`. See **sftp** below. | — | | `deleteOnComplete` | boolean | No | Whether the pack's documents are auto-deleted on completion. Present only when `deleteOnComplete=true`. | `false` | | `signingOrder` | object | No | Signing-order settings. Present only when `signingOrder=true`. See **signingOrder** below. | — | ###### workflow Workflow details. Present only when `workflowDetails=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `name` | string | No | Name of the workflow. | `Home Loan Workflow` | ###### account Account details. Present only when `account=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `id` | string | No | Account ID. | `acc_12345` | | `name` | string | No | Account name. | `Acme Corp` | | `label` | string | No | Account label (organisation subdomain). | `acme` | | `brandName` | string | No | Brand name shown to signers. `null` if not set. | `Acme` | ###### sender The user who sent the pack. Present only when `sender=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `username` | string | No | Sender's username (usually their email). | `ops@acme.com` | | `name` | string | No | Sender's display name. | `Operations Team` | ###### packFolder The folder the pack is filed under. Present only when `packFolder=true` and a folder exists. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `id` | string | No | Folder ID. | `6Ucvh0i` | | `name` | string | No | Folder name. | `V3` | ###### sftp SFTP delivery configuration. Present only when `sftp=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `enabled` | boolean | No | Whether SFTP delivery is enabled for this pack. | `true` | | `profileId` | string | No | ID of the SFTP profile used. `null` when none is set. | `sftp_9012` | ###### signingOrder Signing-order settings. Present only when `signingOrder=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `signingOrderType` | string | No | How signing order is applied. - `OFF` — All invitees can sign in parallel. - `ON` — Invitees sign in a strict sequence. - `ADVANCED` — Mixed — some invitees are parallel, some sequential. Allowed: `OFF`, `ON`, `ADVANCED`. | `ON` | | `preventChangesToSigningOrder` | boolean | No | Whether the signing order is locked. `null` when not set. | `false` | ##### documents | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `documentId` | string | No | Unique ID of the document. | `01KZ8JV503BJMY8QHCDS86DAR4` | | `documentName` | string | No | Display name of the document. | `Loan Agreement` | | `irn` | string | No | Your Internal Reference Number for the document. `null` if not set. | `DOC-IRN-001` | | `status` | string | No | Current status of the document. - `DRAFT` — The document is in draft state. - `SENT` — The document still has invitees who need to sign or review it. - `PACK_PENDING_COMPLETION` — Signing is done; the pack is finalising. - `COMPLETED` — Fully signed and complete. Allowed: `DRAFT`, `SENT`, `PACK_PENDING_COMPLETION`, `COMPLETED`. | `COMPLETED` | | `documentFolderId` | string | No | ID of the document's folder. Present only when `documentFolder=true`. | `uvwmVVk` | | `documentFolderName` | string | No | Name of the document's folder. Present only when `documentFolder=true`. | `testing` | | `file` | string | No | Download link for the document at its current signing stage. Present only when `file=true`. `null` if the preview could not be generated. | `https://downloads.leegality.com/export/…` | | `auditTrail` | string | No | Download link for the audit trail. Present only when `auditTrail=true` and the document is `COMPLETED`. | `https://downloads.leegality.com/export/…` | | `referenceAttachments` | array\ | No | Reference attachments on the document. Present only when `referenceAttachments=true`. See **referenceAttachments** below. | — | | `scheduledDeletionDate` | string | No | When the document is scheduled to be deleted (ISO 8601). Present only when `scheduledDeletionDate=true`. | `2026-09-01T00:00:00Z` | | `stamps` | array\ | No | Stamp details for the document. Present only when `stampDetails=true` and the document has stamps. One entry per document. See **stamps** below. | — | | `subDocuments` | array\ | No | Sub-documents that make up this document. Present only when `subDocuments=true`. See **subDocuments** below. | — | ###### referenceAttachments | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `file` | string | No | Download link for the attachment. | `https://downloads.leegality.com/export/…` | | `name` | string | No | Attachment name. | `reference-document` | | `type` | string | No | Attachment file type. | `PDF` | ###### stamps | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `documentUuid` | string | No | The document's runner UUID. | `95f24138-03e7-4669-a3dd-0588a8d007a0` | | `subDocumentUuid` | string | No | Always `null` — the stamp belongs to the document, not a sub-document. | — | | `stampState` | string | No | State the stamps were drawn from. | `Karnataka` | | `totalStampDutyAmount` | number | No | Total stamp duty across the affixed stamps (sum of their denominations). `null` when nothing is affixed. | `200` | | `stampsAffixed` | array\ | No | The stamps physically affixed to this document. See **stampsAffixed** below. | — | | `revenueStamp` | object | No | Revenue-stamp config. `null`/empty in this release (no v4 stamp-config source yet). See **revenueStamp** below. | — | | `stampSeries` | array\ | No | Always empty in this release (no v4 source yet). | — | | `stampUpload` | object | No | Uploaded-stamp config. `null`/empty in this release. See **stampUpload** below. | — | | `stampGroup` | object | No | Stamp-group config. `null`/empty in this release. See **stampGroup** below. | — | ###### stampsAffixed | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `series` | string | No | Stamp series the stamp came from. | `01` | | `amount` | string | No | Denomination of the stamp. | `100.0` | | `serialNumber` | string | No | Serial number of the affixed stamp. | `IN-DL1234567890` | | `associatedDocumentId` | string | No | ID of the stamp document that landed here. | `XR701AC977` | ###### revenueStamp Revenue-stamp config. `null`/empty in this release (no v4 stamp-config source yet). | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `revenueStampQuantity` | integer | No | Number of revenue stamps. | — | | `revenueStampId` | string | No | Revenue stamp ID. | — | ###### stampUpload Uploaded-stamp config. `null`/empty in this release. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `stampUploadSerialNumber` | string | No | Serial number. | — | | `stampUploadFirstPartyName` | string | No | First party name. | — | | `stampUploadDenomination` | string | No | Denomination. | — | | `stampUploadedFile` | object | No | The uploaded stamp file. See **stampUploadedFile** below. | — | | `stampUploadState` | string | No | State. | — | | `stampUploadSecondPartyName` | string | No | Second party name. | — | ###### stampUploadedFile The uploaded stamp file. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `mediaId` | string | No | Media ID of the uploaded file. | — | ###### stampGroup Stamp-group config. `null`/empty in this release. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `stampGroupId` | string | No | Stamp group ID. | — | | `stampGroupAmount` | string | No | Stamp group amount. | — | | `maximumValuePermitted` | string | No | Always `null` in v4. | — | ###### subDocuments | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | Sub-document UUID. | `795df69d-12c9-4959-be9a-9a73a2e1dd30` | | `mediaId` | string | No | Media ID of the sub-document's file. | `95ded759-0b03-4c6b-91bd-45f049893972` | | `subDocumentType` | string | No | Media type of the sub-document. - `PDF` — A PDF file. - `STAMP` — A stamp page. - `HTML_TEMPLATE` — An HTML template. - `PDF_TEMPLATE` — A PDF template. - `DOCX_TEMPLATE` — A Word (DOCX) template. Allowed: `PDF`, `STAMP`, `HTML_TEMPLATE`, `PDF_TEMPLATE`, `DOCX_TEMPLATE`. | `PDF` | | `template` | object | No | Template details. Present only when `subDocuments_template=true`. All fields are `null` (and `templateFieldValues` empty) for non-template sub-documents. See **template** below. | — | ###### template Template details. Present only when `subDocuments_template=true`. All fields are `null` (and `templateFieldValues` empty) for non-template sub-documents. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `id` | string | No | Template ID. | `tpl_mapping_abc123` | | `name` | string | No | Template display name. | `Loan Template` | | `version` | string | No | Template version pinned at pack creation. | `1` | | `allowFirstInviteeToFill` | boolean | No | Whether the first invitee fills the template fields during signing. | `true` | | `templateFieldValues` | array\ | No | The template's field values. See **templateFieldValues** below. | — | ###### templateFieldValues | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `id` | string | No | Field ID. | `f1a23456-78bc-4def-9012-3456789abcde` | | `name` | string | No | Field name. | `borrower name` | | `fieldType` | string | No | Type of the template field. - `text` — Single-line text. - `textarea` — Multi-line text. - `number` — A numeric value. - `checkbox` — A checkbox (true/false). - `radio` — A single choice from options. - `select` — A dropdown — single choice. - `multi-select` — A dropdown — multiple choices; the value is a JSON array string. - `file` — A file upload; the value is a mediaId. | `text` | | `value` | string | No | Field value. For `file`, the mediaId; for `multi-select`, a JSON array string. | `Rajesh Kumar` | | `isFilledBySender` | boolean | No | Whether the sender filled this field (read-only to the signer). | `true` | ##### coordinates | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `inviteeUuid` | string | No | ID of the invitee these placements belong to. | `8bc21487-b200-4130-8240-a5f1715244dc` | | `appearances` | array\ | No | The individual signature placements. See **appearances** below. | — | ###### appearances | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `documentUuid` | string | No | Runner UUID of the document. | `711abfff-2057-48ac-909e-519f3f7415a4` | | `subDocumentUuid` | string | No | Runner UUID of the sub-document. | `795df69d-12c9-4959-be9a-9a73a2e1dd30` | | `combinationUuid` | string | No | ID of the combination. | `29bdb6fd-99a9-4501-b74b-d482d7ad5062` | | `pageNo` | string | No | Page number. | `1` | | `rect` | object | No | Placement rectangle. See **rect** below. | — | ###### rect Placement rectangle. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `x1Axis` | string | No | X of the first corner. | `350` | | `y1Axis` | string | No | Y of the first corner. | `680` | | `x2Axis` | string | No | X of the opposite corner. | `550` | | `y2Axis` | string | No | Y of the opposite corner. | `720` | ##### invitations | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | ID of the invitee group. | `1342a359-2364-4e0a-9b21-6f3a2c1d4e5f` | | `groupName` | string | No | Name of the invitee group. `null` for an individual invitee. | `Borrower` | | `inviteeGroupThreshold` | integer | No | Minimum members required to complete the group's action. | `1` | | `inviteeType` | string | No | Type of invitee. - `signer` — Signs the document(s). - `reviewer` — Reviews and approves or rejects; does not sign. - `groupSigner` — A group where a threshold of members sign. - `groupReviewer` — A group where a threshold of members review. Allowed: `signer`, `reviewer`, `groupSigner`, `groupReviewer`. | `signer` | | `inviteeSigningLevel` | integer | No | Signing-order level (1 = first). | `1` | | `activationStatus` | string | No | Whether the invitation is active in the signing order. - `ACTIVE` — Currently actionable by the invitee. - `INACTIVE` — Waiting for its turn in the signing order. - `COMPLETE` — The invitee has finished their part. Allowed: `ACTIVE`, `INACTIVE`, `COMPLETE`. | `COMPLETE` | | `inviteeDetails` | array\ | No | The person(s) in this invitee group. See **inviteeDetails** below. | — | | `combinationsConfigInfo` | array\ | No | The invitee group's combinations. Present only when `combinationConfig=true`. See **combinationsConfigInfo** below. | — | | `inviteeSettings` | object | No | Per-invitee settings. Present only when `inviteeSettings=true`. `notifications` is always included; the other blocks each need their own flag. See **inviteeSettings** below. | — | ###### inviteeDetails | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | ID of this person. | `1aa11111-1111-4111-8111-111111111111` | | `inviteeName` | string | No | Full name of the invitee. | `Rajesh Kumar` | | `inviteeEmail` | string | No | Email address. `null` if not set. | `rajesh@example.com` | | `inviteeNumber` | string | No | Mobile number. `null` if not set. | `9820000001` | | `enableWhatsAppMandatoryNotifications` | boolean | No | Whether WhatsApp notification is mandatory for this person. `null` when no notification config exists. | `true` | | `invitationUrl` | string | No | The invitee's sign URL. `null` before the invitation is sent. | `https://app1.leegality.com/sign/abc123` | | `invitationStatus` | object | No | The invitee's current invitation status. See **invitationStatus** below. | — | | `combinationResponse` | array\ | No | The invitee's response per assigned document. Present only when `combinationResponse=true`. See **combinationResponse** below. | — | ###### invitationStatus The invitee's current invitation status. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `status` | string | No | The invitee's invitation status. - `PENDING` — Not yet acted on. - `SIGNED` — The invitee signed. - `EXPIRED` — The invitation expired. - `SIGNER_REJECTED` — The signer rejected the document. - `REVIEWER_APPROVED` — The reviewer approved the document. - `REVIEWER_REJECTED` — The reviewer rejected the document. Allowed: `PENDING`, `SIGNED`, `EXPIRED`, `REVIEWER_REJECTED`, `REVIEWER_APPROVED`, `SIGNER_REJECTED`. | `SIGNED` | | `failureReason` | string | No | Reason for failure, if any. `null` otherwise. | — | ###### combinationResponse | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `combinationConfigUuid` | string | No | ID of the combination this response belongs to. | `29bdb6fd-99a9-4501-b74b-d482d7ad5062` | | `assignedDocuments` | array\ | No | The documents assigned to this invitee in this combination. See **assignedDocuments** below. | — | | `supportingDocuments` | array\ | No | Supporting documents required of this invitee. Present only when `combinationResponse_supportingDocuments=true`. One entry per required document. See **supportingDocuments** below. | — | ###### assignedDocuments | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `documentUuid` | string | No | Runner UUID of the assigned document. | `711abfff-2057-48ac-909e-519f3f7415a4` | | `documentId` | string | No | Document ID of the assigned document. | `01KZ8JV503BJMY8QHCDS86DAR4` | | `rejectionMessage` | string | No | The invitee's rejection message for this document. `null` when not rejected. | — | | `status` | string | No | Signing status of this document for this invitee. - `PENDING` — Not yet acted on. - `SIGNED` — The invitee signed. - `REVIEWER_APPROVED` — The reviewer approved. - `REVIEWER_REJECTED` — The reviewer rejected. - `SIGNER_REJECTED` — The signer rejected. - `EXPIRED` — The invitation expired. Allowed: `PENDING`, `SIGNED`, `REVIEWER_APPROVED`, `REVIEWER_REJECTED`, `SIGNER_REJECTED`, `EXPIRED`. | `SIGNED` | | `signTime` | string | No | When the invitee signed this document (ISO 8601). `null` until signed. | `2026-08-05T09:11:20Z` | | `signatureOptionsUsed` | object | No | The signature type the invitee used. | — | | `verificationResult` | object | No | Verification outcome for this assigned document — the result of the checks configured in the invitee's `certificateVerification`. Present only when `combinationResponse_verificationResult=true`, and only on the **first** assigned document of each combination; every other assigned document omits it. `dscVerifyCertificateDetails` and `cloudDscVerifyCertificateDetails` mirror the sender's verify config, so they are present regardless of signing. The remaining fields populate only after the invitee signs: `aadhaarVerifyCertificateDetails` (values from the signer's Aadhaar certificate), `faceMatch`, `smartUserLiveliness`, `smartNamePercentage` and `smartNameThreshold` (the smart-name match score and its passing threshold), and `verificationFailed`. | — | ###### supportingDocuments | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `name` | string | No | Name of the required document. | `Aadhaar supporting doc` | | `file` | string | No | Download link for the submitted document. `null` if nothing has been submitted yet. | `https://downloads.leegality.com/export/…` | | `type` | string | No | Required file format. | `PDF` | ###### combinationsConfigInfo | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | Combination ID. | `29bdb6fd-99a9-4501-b74b-d482d7ad5062` | | `expiryDate` | string | No | When this combination expires (ISO 8601). `null` if not set. | `2026-08-25T10:30:00Z` | | `assignedDocuments` | array\ | No | Documents assigned in this combination. See **assignedDocuments** below. | — | | `combinationSettings` | object | No | Combination settings. Present only when `combinationConfig_combinationSettings=true`. `esignTypes` is always present; the other blocks each need their own flag. See **combinationSettings** below. | — | ###### assignedDocuments | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | Runner UUID of the assigned document. | `711abfff-2057-48ac-909e-519f3f7415a4` | | `documentId` | string | No | Document ID. | `01KZ8JV503BJMY8QHCDS86DAR4` | | `role` | string | No | The invitee's role on this document. - `signer` — Signs the document. - `reviewer` — Reviews the document. Allowed: `signer`, `reviewer`. | `signer` | ###### combinationSettings Combination settings. Present only when `combinationConfig_combinationSettings=true`. `esignTypes` is always present; the other blocks each need their own flag. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `esignTypes` | object | No | The eSign methods enabled for this combination. Each method present is an object of its options. See **esignTypes** below. | — | | `eSignPrioritisation` | object | No | eSign priority and retry policy. Present only when `combinationConfig_combinationSettings_eSignPrioritisation=true`. See **eSignPrioritisation** below. | — | | `signatureAppearance` | object | No | Signature appearance settings. Present only when `combinationConfig_combinationSettings_signatureAppearance=true`. See **signatureAppearance** below. | — | | `webhooks` | object | No | Webhook settings. Present only when `combinationConfig_combinationSettings_webhooks=true`. See **webhooks** below. | — | | `customConsent` | object | No | Custom consent settings. Present only when `combinationConfig_combinationSettings_customConsent=true`. See **customConsent** below. | — | | `paymentCollect` | object | No | Payment collection config and outcome. Present only when `combinationConfig_combinationSettings_paymentCollect=true`. `null` when no payment is configured. See **paymentCollect** below. | — | | `reviewerConfig` | object | No | Reviewer settings. Present only when `combinationConfig_combinationSettings_reviewerConfig=true`. Group type is not consulted — when the flag is on, the key is present for signer groups too (and may be `null`); when off, it is omitted entirely. See **reviewerConfig** below. | — | ###### esignTypes The eSign methods enabled for this combination. Each method present is an object of its options. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `virtualSign` | object | No | Virtual eSign options (shown as an example; other methods follow the same pattern). | — | ###### eSignPrioritisation eSign priority and retry policy. Present only when `combinationConfig_combinationSettings_eSignPrioritisation=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `orderLevelRetryCount` | boolean | No | Whether retry counts apply at the priority-order level. | `false` | | `enableAadhaarPriority` | boolean | No | Whether Aadhaar prioritisation is enabled. | `false` | | `aadhaarPriorityConfig` | object | No | Per-mode retry/order settings. Values are `null` when unconfigured. | — | ###### signatureAppearance Signature appearance settings. Present only when `combinationConfig_combinationSettings_signatureAppearance=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `allowEditingNameInSigningJourney` | boolean | No | Whether the signer can edit their name during signing. | `true` | | `displayNameInSignatureAppearances` | boolean | No | Whether the signer's name appears in the signature. | `false` | | `requireOrgSeal` | boolean | No | Whether an organisation seal is required. | `false` | | `orgNameInSeal` | string | No | Organisation name printed on the seal. `null` if not set. | — | | `orgSealType` | string | No | Type of organisation seal. `null` if not set. | — | ###### webhooks Webhook settings. Present only when `combinationConfig_combinationSettings_webhooks=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `successWebhook` | string | No | URL called on success. `null` if not set. | — | | `errorWebhook` | string | No | URL called on error. `null` if not set. | — | | `webhookProfileId` | string | No | ID of the webhook profile used. `null` if not set. | — | | `webhookVersion` | string | No | Webhook payload version. `null` if not set. | — | ###### customConsent Custom consent settings. Present only when `combinationConfig_combinationSettings_customConsent=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `customConsentInput` | string | No | Custom consent text shown to the invitee. `null` if not set. | — | ###### paymentCollect Payment collection config and outcome. Present only when `combinationConfig_combinationSettings_paymentCollect=true`. `null` when no payment is configured. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `paymentProfile` | string | No | ID of the payment profile. | `23931d8d-9edb-4895-adee-e296dcba07c9` | | `paymentAmount` | integer | No | Amount to collect. | `500` | | `customMessagePaymentPage` | string | No | Custom message on the payment page. | `Stamp duty payment required.` | | `status` | string | No | Payment status. - `paid` — The payment was completed (the gateway's paid status). - `notPaid` — A payment transaction exists but has not been paid. - `null` — The payment-service lookup failed. | `notPaid` | | `paymentId` | string | No | Payment transaction ID. `null` until paid. | — | | `eventDate` | string | No | When the payment was made (ISO 8601). `null` unless paid. | — | ###### reviewerConfig Reviewer settings. Present only when `combinationConfig_combinationSettings_reviewerConfig=true`. Group type is not consulted — when the flag is on, the key is present for signer groups too (and may be `null`); when off, it is omitted entirely. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `recordReviewerResponse` | boolean | No | Whether the reviewer's response is recorded. | `true` | | `requireOtpToReview` | boolean | No | Whether an OTP is required to review. | `false` | ###### inviteeSettings Per-invitee settings. Present only when `inviteeSettings=true`. `notifications` is always included; the other blocks each need their own flag. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `notifications` | object | No | Notification channel settings. See **notifications** below. | — | | `securityOptions` | object | No | Security settings. Present only when `inviteeSettings_securityOptions=true`. See **securityOptions** below. | — | | `manageInviteInteractions` | object | No | Interaction settings. Present only when `inviteeSettings_manageInviteInteractions=true`. See **manageInviteInteractions** below. | — | | `certificateVerification` | object | No | The certificate-verification settings the sender configured for this invitee (**input**). Present only when `inviteeSettings_certificateVerification=true`. The verification **outcome** is returned separately in each combination's `assignedDocuments[].verificationResult`. See **certificateVerification** below. | — | ###### notifications Notification channel settings. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `enableEmailNotifications` | boolean | No | Whether email notifications are enabled. | `true` | | `enableSmsNotifications` | boolean | No | Whether SMS notifications are enabled. | `true` | | `enableWhatsappNotifications` | boolean | No | Whether WhatsApp notifications are enabled for this invitee. | `true` | ###### securityOptions Security settings. Present only when `inviteeSettings_securityOptions=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `oneFactorAuthentication` | boolean | No | Whether single-factor authentication is required. | `false` | | `twoFactorAuthentication` | boolean | No | Whether two-factor authentication is required. | `false` | | `gps` | object | No | Location settings. Present only when `inviteeSettings_securityOptions_gps=true`. See **gps** below. | — | | `faceCapture` | object | No | Face capture / match settings. Present only when `inviteeSettings_securityOptions_faceCapture=true`. See **faceCapture** below. | — | | `docDownloadLinkWithOtp` | boolean | No | Whether the signed-document link is OTP-protected. | `false` | | `maskContactDetails` | boolean | No | Whether the invitee's contact details are masked. | `false` | ###### gps Location settings. Present only when `inviteeSettings_securityOptions_gps=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `enabled` | boolean | No | Whether location capture is enabled. | `false` | | `accuracyBasedRestriction` | boolean | No | Whether signing is blocked below an accuracy threshold. | `false` | | `accuracyThreshold` | integer | No | Accuracy threshold in metres. | `0` | | `locationBasedRestriction` | boolean | No | Whether signing is restricted to a location radius. | `false` | | `latitude` | number | No | Latitude of the allowed location. | `0` | | `longitude` | number | No | Longitude of the allowed location. | `0` | | `permissibleRadius` | integer | No | Allowed radius in metres. | `0` | | `restrictToIndia` | boolean | No | Whether signing is restricted to within India. | `false` | ###### faceCapture Face capture / match settings. Present only when `inviteeSettings_securityOptions_faceCapture=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `enabled` | boolean | No | Whether face capture is enabled. | `false` | | `smartUserLiveliness` | boolean | No | Whether smart liveliness is enabled. | `false` | | `smartUserLivelinessRetryAttempts` | integer | No | Liveliness retry attempts. | `0` | | `match` | boolean | No | Whether face match is enabled. | `false` | | `faceMatch` | array\ | No | Reference images the captured face is matched against. | — | ###### manageInviteInteractions Interaction settings. Present only when `inviteeSettings_manageInviteInteractions=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `baseUrl` | string | No | Base URL for the signing journey. `null` if not set. | — | | `redirectUrl` | string | No | Redirect URL after signing. `null` if not set. | — | | `enableRejection` | boolean | No | Whether the invitee can reject. | `false` | | `enforceRejectionMessage` | boolean | No | Whether a rejection message is required. | `false` | | `customMessageInput` | string | No | Custom message shown to the invitee. `null` if not set. | `Please review and sign.` | | `supportingDocumentConfig` | object | No | Supporting-document requirements. Present only when `inviteeSettings_manageInviteInteractions_supportingDocumentConfig=true`. See **supportingDocumentConfig** below. | — | | `language` | object | No | Regional-language settings. Present only when `inviteeSettings_manageInviteInteractions_language=true`. See **language** below. | — | ###### supportingDocumentConfig Supporting-document requirements. Present only when `inviteeSettings_manageInviteInteractions_supportingDocumentConfig=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `supportingDocuments` | array\ | No | The documents the invitee is asked to upload. | — | | `allowViewingSupportingDocs` | boolean | No | Whether other invitees can view the uploaded documents. | `false` | ###### language Regional-language settings. Present only when `inviteeSettings_manageInviteInteractions_language=true`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `enableLanguage` | boolean | No | Whether a local language is offered. | `false` | | `defaultLanguage` | boolean | No | Whether a default language is set. | `false` | | `defaultLanguageSelect` | string | No | The default language code. `null` if not set. | — | ###### certificateVerification The certificate-verification settings the sender configured for this invitee (**input**). Present only when `inviteeSettings_certificateVerification=true`. The verification **outcome** is returned separately in each combination's `assignedDocuments[].verificationResult`. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `aadhaarVerifyCertificateDetails` | array\ | No | Aadhaar verification rules configured for the invitee. | — | | `cloudDscVerifyCertificateDetails` | array\ | No | Cloud DSC verification rules. Present only when `inviteeSettings_certificateVerification_cloudDscVerifyCertificateDetails=true`. | — | | `dscVerifyCertificateDetails` | array\ | No | DSC verification rules. Present only when `inviteeSettings_certificateVerification_dscVerifyCertificateDetails=true`. | — | ##### cc | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `uuid` | string | No | Unique ID of the CC recipient. | `a1b2c3d4-5678-4abc-9def-012345678901` | | `name` | string | No | Name of the CC recipient. | `Rajesh Kumar` | | `email` | string | No | Email address of the CC recipient. | `rajesh@example.com` | | `invitationNotification` | boolean | No | Whether the CC recipient receives the invitation notification. | `true` | | `signingNotification` | boolean | No | Whether the CC recipient receives signing notifications. | `true` | | `completionNotification` | boolean | No | Whether the CC recipient receives the completion notification. | `true` | | `failureNotification` | boolean | No | Whether the CC recipient receives failure notifications. | `true` | | `sendInvitationUrl` | boolean | No | Whether the invitation URL is shared with the CC recipient. | `true` | | `shareDocAuditTrail` | boolean | No | Whether the document audit trail is shared with the CC recipient. | `false` | | `enforceOneFactorAuthentication` | boolean | No | Whether one-factor authentication is enforced for the CC recipient. | `false` | | `recordAuditTrail` | boolean | No | Whether the CC recipient's activity is recorded in the audit trail. | `true` | ### 400 — The request was rejected. Possible errors: - `LE_ERR_AP_002` — no identifier supplied (send exactly one of `packId`, `urn`, `workflowRunContextId`) - `LE_ERR_AP_003` — more than one identifier supplied - `LE_ERR_AP_024` — unknown or removed query parameter | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Top-level error code (matches the first entry in `errors`). | `LE_ERR_AP_007` | | `traceId` | string | No | Trace identifier for the request, or `null`. | `null` | | `errors` | array\ | No | One or more errors describing why the request failed. See **errors** below. | — | #### errors | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `message` | string | No | Human-readable error message. | `max must be >= 1` | | `path` | string | No | Request path that produced the error. | `/api/v4/packs/search` | | `code` | string | No | Error code. | `LE_ERR_AP_007` | ### 401 — Authentication failed. - `LE_ERR_AP_080` — missing or invalid authentication token | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Top-level error code (matches the first entry in `errors`). | `LE_ERR_AP_007` | | `traceId` | string | No | Trace identifier for the request, or `null`. | `null` | | `errors` | array\ | No | One or more errors describing why the request failed. See **errors** below. | — | #### errors | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `message` | string | No | Human-readable error message. | `max must be >= 1` | | `path` | string | No | Request path that produced the error. | `/api/v4/packs/search` | | `code` | string | No | Error code. | `LE_ERR_AP_007` | ### 403 — Access denied. - `LE_ERR_AP_081` — your account is not permitted to read this pack - `LE_ERR_AP_084` — your IP address is not whitelisted | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Top-level error code (matches the first entry in `errors`). | `LE_ERR_AP_007` | | `traceId` | string | No | Trace identifier for the request, or `null`. | `null` | | `errors` | array\ | No | One or more errors describing why the request failed. See **errors** below. | — | #### errors | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `message` | string | No | Human-readable error message. | `max must be >= 1` | | `path` | string | No | Request path that produced the error. | `/api/v4/packs/search` | | `code` | string | No | Error code. | `LE_ERR_AP_007` | ### 404 — Not found. - `LE_ERR_AP_004` — pack not found (also returned when the pack belongs to another account) | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Top-level error code (matches the first entry in `errors`). | `LE_ERR_AP_007` | | `traceId` | string | No | Trace identifier for the request, or `null`. | `null` | | `errors` | array\ | No | One or more errors describing why the request failed. See **errors** below. | — | #### errors | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `message` | string | No | Human-readable error message. | `max must be >= 1` | | `path` | string | No | Request path that produced the error. | `/api/v4/packs/search` | | `code` | string | No | Error code. | `LE_ERR_AP_007` | ### 500 — An unexpected error occurred while processing the request. | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `code` | string | No | Top-level error code (matches the first entry in `errors`). | `LE_ERR_AP_007` | | `traceId` | string | No | Trace identifier for the request, or `null`. | `null` | | `errors` | array\ | No | One or more errors describing why the request failed. See **errors** below. | — | #### errors | Field | Type | Required | Description | Example | |-------|------|----------|-------------|---------| | `message` | string | No | Human-readable error message. | `max must be >= 1` | | `path` | string | No | Request path that produced the error. | `/api/v4/packs/search` | | `code` | string | No | Error code. | `LE_ERR_AP_007` | ### Sample Response (200) ```json { "data": { "pack": { "packId": "01KZ8JV4Z7T3EZWMXGF3RNAYR5", "workflowId": "a6295beb-650f-4dc0-81b4-df8e8faf2b7e", "status": "COMPLETED", "createdAt": "2026-08-05T09:07:33Z", "completedAt": "2026-08-05T09:12:00Z", "packName": "Home Loan Agreement", "packIrn": "IRN-2026-001234", "urn": "CLIENT-REF-001", "workflowRunContextId": "8babd0af-a418-486e-b1cd-eb717fe97c35", "workflow": { "name": "Home Loan Workflow" }, "account": { "id": "acc_12345", "name": "Acme Corp", "label": "acme", "brandName": "Acme" }, "sender": { "username": "ops@acme.com", "name": "Operations Team" }, "packFolder": { "id": "6Ucvh0i", "name": "V3" }, "sftp": { "enabled": true, "profileId": "sftp_9012" }, "deleteOnComplete": false, "signingOrder": { "signingOrderType": "ON", "preventChangesToSigningOrder": false } }, "documents": [ { "documentId": "01KZ8JV503BJMY8QHCDS86DAR4", "documentName": "Loan Agreement", "irn": "DOC-IRN-001", "status": "COMPLETED", "documentFolderId": "uvwmVVk", "documentFolderName": "testing", "file": "https://downloads.leegality.com/export/…", "auditTrail": "https://downloads.leegality.com/export/…", "referenceAttachments": [ { "file": "https://downloads.leegality.com/export/…", "name": "reference-document", "type": "PDF" } ], "scheduledDeletionDate": "2026-09-01T00:00:00Z", "stamps": [ { "documentUuid": "95f24138-03e7-4669-a3dd-0588a8d007a0", "subDocumentUuid": "string", "stampState": "Karnataka", "totalStampDutyAmount": 200, "stampsAffixed": [ { "series": "01", "amount": "100.0", "serialNumber": "IN-DL1234567890", "associatedDocumentId": "XR701AC977" } ], "revenueStamp": { "revenueStampQuantity": 0, "revenueStampId": "string" }, "stampSeries": [ {} ], "stampUpload": { "stampUploadSerialNumber": "string", "stampUploadFirstPartyName": "string", "stampUploadDenomination": "string", "stampUploadedFile": { "mediaId": "string" }, "stampUploadState": "string", "stampUploadSecondPartyName": "string" }, "stampGroup": { "stampGroupId": "string", "stampGroupAmount": "string", "maximumValuePermitted": "string" } } ], "subDocuments": [ { "uuid": "795df69d-12c9-4959-be9a-9a73a2e1dd30", "mediaId": "95ded759-0b03-4c6b-91bd-45f049893972", "subDocumentType": "PDF", "template": { "id": "tpl_mapping_abc123", "name": "Loan Template", "version": "1", "allowFirstInviteeToFill": true, "templateFieldValues": [ { "id": "f1a23456-78bc-4def-9012-3456789abcde", "name": "borrower name", "fieldType": "text", "value": "Rajesh Kumar", "isFilledBySender": true } ] } } ] } ], "coordinates": [ { "inviteeUuid": "8bc21487-b200-4130-8240-a5f1715244dc", "appearances": [ { "documentUuid": "711abfff-2057-48ac-909e-519f3f7415a4", "subDocumentUuid": "795df69d-12c9-4959-be9a-9a73a2e1dd30", "combinationUuid": "29bdb6fd-99a9-4501-b74b-d482d7ad5062", "pageNo": "1", "rect": { "x1Axis": "350", "y1Axis": "680", "x2Axis": "550", "y2Axis": "720" } } ] } ], "invitations": [ { "uuid": "1342a359-2364-4e0a-9b21-6f3a2c1d4e5f", "groupName": "Borrower", "inviteeGroupThreshold": 1, "inviteeType": "signer", "inviteeSigningLevel": 1, "activationStatus": "COMPLETE", "inviteeDetails": [ { "uuid": "1aa11111-1111-4111-8111-111111111111", "inviteeName": "Rajesh Kumar", "inviteeEmail": "rajesh@example.com", "inviteeNumber": "9820000001", "enableWhatsAppMandatoryNotifications": true, "invitationUrl": "https://app1.leegality.com/sign/abc123", "invitationStatus": { "status": "SIGNED", "failureReason": "string" }, "combinationResponse": [ { "combinationConfigUuid": "29bdb6fd-99a9-4501-b74b-d482d7ad5062", "assignedDocuments": [ { "documentUuid": "711abfff-2057-48ac-909e-519f3f7415a4", "documentId": "01KZ8JV503BJMY8QHCDS86DAR4", "rejectionMessage": "string", "status": "SIGNED", "signTime": "2026-08-05T09:11:20Z", "signatureOptionsUsed": { "signatureType": "AADHAAR", "signatureSubType": "OTP" }, "verificationResult": { "aadhaarVerifyCertificateDetails": { "name": "Rajesh Kumar", "yob": "1990", "gender": "M", "title": "string", "pincode": "560001", "state": "Karnataka", "uid": "XXXXXXXX1234" }, "verificationFailed": false, "smartNamePercentage": 92.5, "smartNameThreshold": 80, "cloudDscVerifyCertificateDetails": { "verifyName": false, "verifySmartName": false, "verifyYob": "string", "verifyTitle": "string", "verifyState": "string", "verifyPincode": "string", "verifyGender": "string" }, "dscVerifyCertificateDetails": { "verifyName": false, "verifyState": "string", "verifyPincode": "string" }, "faceMatch": { "percentage": 87.3, "success": true, "acceptancePercentage": 70, "error": "string", "attemptsLeft": 0 }, "smartUserLiveliness": { "percentage": 95, "success": true, "acceptancePercentage": 80, "attemptsLeft": 0 } } } ], "supportingDocuments": [ { "name": "Aadhaar supporting doc", "file": "https://downloads.leegality.com/export/…", "type": "PDF" } ] } ] } ], "combinationsConfigInfo": [ { "uuid": "29bdb6fd-99a9-4501-b74b-d482d7ad5062", "expiryDate": "2026-08-25T10:30:00Z", "assignedDocuments": [ { "uuid": "711abfff-2057-48ac-909e-519f3f7415a4", "documentId": "01KZ8JV503BJMY8QHCDS86DAR4", "role": "signer" } ], "combinationSettings": { "esignTypes": { "virtualSign": { "enableAffixFingerprint": true, "enableChoose": true, "enableDraw": true, "enablePhysicalSignature": true, "id": "8678413c-3597-41bb-a529-7928d02ff72d" } }, "eSignPrioritisation": { "orderLevelRetryCount": false, "enableAadhaarPriority": false, "aadhaarPriorityConfig": { "prioritisationOtpRetryAttempts": 0, "prioritisationOtpOrder": 0, "prioritisationBioRetryAttempts": 0, "prioritisationBioOrder": 0, "prioritisationIrisRetryAttempts": 0, "prioritisationIrisOrder": 0, "prioritisationFaceAuthRetryAttempts": 0, "prioritisationFaceAuthOrder": 0 } }, "signatureAppearance": { "allowEditingNameInSigningJourney": true, "displayNameInSignatureAppearances": false, "requireOrgSeal": false, "orgNameInSeal": "string", "orgSealType": "string" }, "webhooks": { "successWebhook": "string", "errorWebhook": "string", "webhookProfileId": "string", "webhookVersion": "string" }, "customConsent": { "customConsentInput": "string" }, "paymentCollect": { "paymentProfile": "23931d8d-9edb-4895-adee-e296dcba07c9", "paymentAmount": 500, "customMessagePaymentPage": "Stamp duty payment required.", "status": "notPaid", "paymentId": "string", "eventDate": "string" }, "reviewerConfig": { "recordReviewerResponse": true, "requireOtpToReview": false } } } ], "inviteeSettings": { "notifications": { "enableEmailNotifications": true, "enableSmsNotifications": true, "enableWhatsappNotifications": true }, "securityOptions": { "oneFactorAuthentication": false, "twoFactorAuthentication": false, "gps": { "enabled": false, "accuracyBasedRestriction": false, "accuracyThreshold": 0, "locationBasedRestriction": false, "latitude": 0, "longitude": 0, "permissibleRadius": 0, "restrictToIndia": false }, "faceCapture": { "enabled": false, "smartUserLiveliness": false, "smartUserLivelinessRetryAttempts": 0, "match": false, "faceMatch": [ { "faceMatchImage": { "mediaId": "string" }, "faceMatchRetryAttempts": 0 } ] }, "docDownloadLinkWithOtp": false, "maskContactDetails": false }, "manageInviteInteractions": { "baseUrl": "string", "redirectUrl": "string", "enableRejection": false, "enforceRejectionMessage": false, "customMessageInput": "Please review and sign.", "supportingDocumentConfig": { "supportingDocuments": [ { "uuid": "1c94a8a9-c75e-49c4-83e0-3870a6880b40", "supportingDocName": "Aadhaar supporting doc", "supportingDocFormat": "PDF" } ], "allowViewingSupportingDocs": false }, "language": { "enableLanguage": false, "defaultLanguage": false, "defaultLanguageSelect": "string" } }, "certificateVerification": { "aadhaarVerifyCertificateDetails": [ {} ], "cloudDscVerifyCertificateDetails": [ {} ], "dscVerifyCertificateDetails": [ {} ] } } } ], "cc": [ { "uuid": "a1b2c3d4-5678-4abc-9def-012345678901", "name": "Rajesh Kumar", "email": "rajesh@example.com", "invitationNotification": true, "signingNotification": true, "completionNotification": true, "failureNotification": true, "sendInvitationUrl": true, "shareDocAuditTrail": false, "enforceOneFactorAuthentication": false, "recordAuditTrail": true } ] } } ```