Submissions

Operations related to form submissions

Get submissions list

get
Authorizations
Query parameters
pagenumberOptional

Page number (default: 1)

perPagenumberOptional

Items per page (default: 10)

sortstring · enumOptional

Sort field (default: createdAt)

Possible values:
sortDirstring · enumOptional

Sort direction (default: desc)

Possible values:
statusstringOptional

Comma-separated list of statuses to filter by

Responses
200

Returns a paginated list of submissions

No content

get
/api/submission
GET /api/submission HTTP/1.1
Host: 
Accept: */*
200

Returns a paginated list of submissions

No content

Create a new submission

post
Authorizations
Body
idstringOptional

Unique identifier for the submission

namestringOptional

Submission name

templateIdnumberOptional

ID of the associated template

uploaderUserIdstringOptional

ID of the user who uploaded the submission

userIdstringOptional

ID of the user associated with the submission

emailSenderstringOptional

Email address of the sender

emailBodystringOptional

Email body or additional context

emailMessageIdstringOptional

Email message ID

payloadobjectOptional

Submission payload data

manualPayloadobjectOptional

Manual payload data

metaPayloadobjectOptional

Metadata payload

Responses
post
/api/submission
POST /api/submission HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 195

{
  "id": "text",
  "name": "text",
  "templateId": 1,
  "uploaderUserId": "text",
  "userId": "text",
  "emailSender": "text",
  "emailBody": "text",
  "emailMessageId": "text",
  "payload": {},
  "manualPayload": {},
  "metaPayload": {}
}
201

The submission has been successfully created

{
  "id": "text",
  "submissionNumber": 1,
  "name": "text",
  "template": {
    "id": 1,
    "templateId": "text",
    "name": "text",
    "description": "text",
    "version": 1,
    "schema": {},
    "vendorSchemaName": "text",
    "vendorSchemaVersion": 1,
    "vendorSchema": {},
    "dereferencedVendorSchema": {},
    "aiGenerated": true,
    "emailAlias": "text",
    "extractionStrategyId": "text",
    "extractionStrategy": {
      "id": "text",
      "identifier": "extraction-claude-3-7",
      "type": "extraction",
      "displayName": "text",
      "description": "text",
      "createdAt": "2025-12-05T22:20:07.895Z",
      "updatedAt": "2025-12-05T22:20:07.895Z"
    },
    "referenceStrategy": {
      "id": "text",
      "identifier": "extraction-claude-3-7",
      "type": "extraction",
      "displayName": "text",
      "description": "text",
      "createdAt": "2025-12-05T22:20:07.895Z",
      "updatedAt": "2025-12-05T22:20:07.895Z"
    },
    "state": "published",
    "parsingInstructions": {}
  },
  "templateId": 1,
  "uploaderUserId": "text",
  "userId": "text",
  "files": [
    "text"
  ],
  "status": "created",
  "emailSender": "text",
  "emailBody": "text",
  "emailMessageId": "text",
  "payload": {},
  "manualPayload": {},
  "metaPayload": {},
  "OBEExtraction": "text",
  "NBEExtraction": "text",
  "createdAt": "2025-12-05T22:20:07.895Z",
  "updatedAt": "2025-12-05T22:20:07.895Z"
}

Get submission

get
Authorizations
Path parameters
idstringRequired
Responses
200Success

No content

get
/api/submission/{id}
GET /api/submission/{id} HTTP/1.1
Host: 
Accept: */*
200Success

No content

Update submission

patch
Authorizations
Path parameters
idstringRequired

Submission ID

Body
idstringOptional

Unique identifier for the submission

submissionNumbernumberOptional

Submission sequence number

namestringOptional

Submission name

templateIdnumberOptional

ID of the associated template

uploaderUserIdstringOptional

ID of the user who uploaded the submission

userIdstringOptional

ID of the user associated with the submission

statusall ofOptional

Current status of the submission

Example: created
string · enumOptionalPossible values:
emailSenderstringOptional

Email address of the sender

emailBodystringOptional

Email body or additional context

emailMessageIdstringOptional

Email message ID

payloadobjectOptional

Submission payload data

manualPayloadobjectOptional

Manual payload data

metaPayloadobjectOptional

Metadata payload

createdAtstring · date-timeOptional

Timestamp when the submission was created

updatedAtstring · date-timeOptional

Timestamp when the submission was last updated

Responses
200

The submission has been successfully updated

application/json
patch
/api/submission/{id}
PATCH /api/submission/{id} HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 313

{
  "id": "text",
  "submissionNumber": 1,
  "name": "text",
  "templateId": 1,
  "uploaderUserId": "text",
  "userId": "text",
  "status": "created",
  "emailSender": "text",
  "emailBody": "text",
  "emailMessageId": "text",
  "payload": {},
  "manualPayload": {},
  "metaPayload": {},
  "createdAt": "2025-12-05T22:20:07.895Z",
  "updatedAt": "2025-12-05T22:20:07.895Z"
}
200

The submission has been successfully updated

{
  "id": "text",
  "submissionNumber": 1,
  "name": "text",
  "templateId": 1,
  "uploaderUserId": "text",
  "userId": "text",
  "status": "created",
  "emailSender": "text",
  "emailBody": "text",
  "emailMessageId": "text",
  "payload": {},
  "manualPayload": {},
  "metaPayload": {},
  "createdAt": "2025-12-05T22:20:07.895Z",
  "updatedAt": "2025-12-05T22:20:07.895Z"
}

Get references for submission

get
Authorizations
Path parameters
idstringRequired
Responses
200

Returns references for a specific submission

No content

get
/api/submission/{id}/references
GET /api/submission/{id}/references HTTP/1.1
Host: 
Accept: */*
200

Returns references for a specific submission

No content

Get all events for a submission

get
Authorizations
Path parameters
idstringRequired

Submission ID to retrieve events for

Responses
200

Returns all events and their current status for the specified submission

application/json
get
/api/submission/{id}/events
GET /api/submission/{id}/events HTTP/1.1
Host: 
Accept: */*
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "submissionId": "123e4567-e89b-12d3-a456-426614174001",
    "type": "upload",
    "state": "succeed",
    "createdAt": "2023-01-01T12:00:00.000Z",
    "updatedAt": "2023-01-01T12:30:00.000Z"
  }
]

Get temporary S3 URL for client-side upload

post
Authorizations
Path parameters
idstringRequired

Submission ID

Body
fileNamestringRequired

Name of the file to upload

Example: document.pdf
contentTypestringRequired

MIME type of the file

Example: application/pdf
Responses
post
/api/submission/{id}/upload
POST /api/submission/{id}/upload HTTP/1.1
Host: 
Content-Type: application/json
Accept: */*
Content-Length: 59

{
  "fileName": "document.pdf",
  "contentType": "application/pdf"
}
201Success

No content

Export submission to ledger

post
Authorizations
Path parameters
idstringRequired

Submission ID

Responses
200

Submission successfully exported

No content

post
/api/submission/{id}/export
POST /api/submission/{id}/export HTTP/1.1
Host: 
Accept: */*

No content

Last updated

Was this helpful?