Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.corsa.finance/llms.txt

Use this file to discover all available pages before exploring further.

Checklists let your compliance team track required documents and approval steps against any Corsa entity — alerts, cases, or clients. Define a reusable checklist template once, and Corsa automatically attaches a checklist to the relevant entities when triggered. Full API reference is available in the API Reference.

Checklist Templates

Templates define the standard items your team must complete for a given entity type. Each template belongs to a specific entityType and contains one or more items. Templates can be toggled active or inactive — inactive templates are not used for new checklists.

Create a Checklist Template

Endpoint: POST /v1/checklist-templates
POST /v1/checklist-templates
Content-Type: application/json

{
  "entityType": "ALERT",
  "name": "Sanctions Alert Review",
  "description": "Standard checklist for reviewing sanctions screening alerts.",
  "isActive": true,
  "items": [
    {
      "name": "Verify client identity documents",
      "note": "Confirm passport or national ID is valid and not expired.",
      "category": "IDENTITY"
    },
    {
      "name": "Review sanctions list match",
      "note": "Cross-reference match with OFAC and UN lists.",
      "category": "SCREENING"
    }
  ]
}

Request Fields

FieldRequiredDescription
entityTypeYesEntity type this template applies to: ALERT, CASE, INDIVIDUAL_CLIENT, or CORPORATE_CLIENT.
nameYesDisplay name for the template.
descriptionNoOptional description visible to analysts.
isActiveNoWhether the template is active. Defaults to true.
itemsNoInitial checklist items to include (see item fields below).

Checklist Item Fields

FieldRequiredDescription
nameYesName of the checklist item.
noteNoGuidance note shown to the analyst.
categoryNoClassification label (e.g., IDENTITY, SCREENING, FINANCIAL).
statusOptionsNoCustom status options for this item.

List Checklist Templates

Endpoint: GET /v1/checklist-templates Returns all checklist templates for the platform.
GET /v1/checklist-templates

Get a Checklist Template

Endpoint: GET /v1/checklist-templates/{id}
GET /v1/checklist-templates/tmpl_abc123

Update a Checklist Template

Endpoint: PUT /v1/checklist-templates/{id} Update the template name, description, or active state. Updating a template does not affect checklists already created from it.
PUT /v1/checklist-templates/tmpl_abc123
Content-Type: application/json

{
  "name": "Sanctions Alert Review — Enhanced",
  "isActive": true
}

Delete a Checklist Template

Endpoint: DELETE /v1/checklist-templates/{id} Deletes the template. This does not affect checklists already created from it.
DELETE /v1/checklist-templates/tmpl_abc123

Add an Item to a Template

Endpoint: POST /v1/checklist-templates/{id}/items Add a new item to an existing template.
POST /v1/checklist-templates/tmpl_abc123/items
Content-Type: application/json

{
  "name": "Confirm source of funds",
  "note": "Review bank statements or proof of income submitted by the client.",
  "category": "FINANCIAL"
}

Update a Template Item

Endpoint: PUT /v1/checklist-templates/items/{itemId}
PUT /v1/checklist-templates/items/item_xyz789
Content-Type: application/json

{
  "name": "Confirm source of funds — updated",
  "note": "Review bank statements, payslips, or audited accounts.",
  "category": "FINANCIAL"
}

Delete a Template Item

Endpoint: DELETE /v1/checklist-templates/items/{itemId}
DELETE /v1/checklist-templates/items/item_xyz789

Working with Checklists

Once a template is active, Corsa creates checklists for the matching entity type. You can retrieve and update checklist items through the following endpoints.

Get a Checklist for an Entity

Endpoint: GET /v1/checklists/entity Returns the active checklist for a given entity. Pass the entity ID and type as query parameters.
GET /v1/checklists/entity?entityId=alert-uuid-123&entityType=ALERT

Query Parameters

ParameterRequiredDescription
entityIdYesID of the entity to retrieve the checklist for.
entityTypeYesEntity type: ALERT, CASE, INDIVIDUAL_CLIENT, or CORPORATE_CLIENT.

Response

{
  "id": "checklist_abc123",
  "entityId": "alert-uuid-123",
  "entityType": "ALERT",
  "referenceId": "ALT-2024-001",
  "name": "Sanctions Alert Review",
  "description": "Standard checklist for reviewing sanctions screening alerts.",
  "status": "IN_PROGRESS",
  "items": [
    {
      "id": "item_001",
      "name": "Verify client identity documents",
      "note": "Confirm passport or national ID is valid and not expired.",
      "category": "IDENTITY",
      "status": "PENDING",
      "documentUrl": null,
      "attachmentId": null,
      "expirationDate": null,
      "isArchived": false,
      "createdAt": "2024-01-20T11:00:00.000Z",
      "updatedAt": "2024-01-20T11:00:00.000Z"
    }
  ],
  "createdAt": "2024-01-20T11:00:00.000Z",
  "updatedAt": "2024-01-20T11:00:00.000Z"
}

Update a Checklist Item

Endpoint: PUT /v1/checklists/{checklistId}/items/{itemId} Mark an item as completed, attach a document, set an expiration date, or add custom fields.
PUT /v1/checklists/checklist_abc123/items/item_001
Content-Type: application/json

{
  "status": "APPROVED",
  "documentUrl": "https://storage.example.com/docs/passport-john-doe.pdf",
  "documentMimeType": "application/pdf",
  "documentSubmissionDate": "2024-01-21T09:00:00.000Z",
  "expirationDate": "2029-01-21T00:00:00.000Z",
  "note": "Passport verified — expires Jan 2029."
}

Request Fields

FieldRequiredDescription
statusNoItem status (e.g., PENDING, APPROVED, REJECTED). Available values depend on the template’s statusOptions.
documentUrlNoURL of the supporting document.
attachmentIdNoID of an attachment already uploaded to Corsa (see Managing Attachments).
documentMimeTypeNoMIME type of the document (e.g., application/pdf, image/jpeg).
documentSubmissionDateNoISO 8601 timestamp of when the document was submitted.
expirationDateNoISO 8601 timestamp of when the document expires.
noteNoAnalyst note for this item.
customFieldsNoKey-value custom fields.
isArchivedNoSet to true to archive the item without deleting it.

What’s Next?

Managing Attachments

Upload and link documents to checklist items, alerts, and cases.

Managing Alerts & Cases

Bulk operations, status updates, and entity associations for alerts and cases.