Skip to main content
Checklists define the documents and information required to complete a process (loan application, onboarding, etc.). The AI automatically works these into the conversation — asking for missing items naturally without bombarding the lead.

Configure Requirements

POST /accounts/:id/requirements Define what documents or data points need to be collected.
name
string
required
Requirement name (e.g., “Government ID”)
type
string
required
document, text, email, phone, number, date
description
string
Instructions for the AI on how to collect this
required
boolean
default:"true"
Whether this is mandatory
curl -X POST https://api.recoverbiz.com/v1/accounts/acc_8f3a1b2c/requirements \
  -H "X-Partner-Key: pk_live_abc123def456..." \
  -H "Content-Type: application/json" \
  -d '{
    "name": "3 Months Bank Statements",
    "type": "document",
    "description": "PDF or photos of the last 3 months of bank statements from primary account",
    "required": true
  }'
Response: 201 Created
{
  "id": "req_005",
  "name": "3 Months Bank Statements",
  "type": "document",
  "description": "PDF or photos of the last 3 months of bank statements from primary account",
  "required": true,
  "created_at": "2026-02-15T10:30:00Z"
}

List Requirements

GET /accounts/:id/requirements Returns all configured requirements for the account.
{
  "requirements": [
    { "id": "req_001", "name": "Government ID", "type": "document", "required": true },
    { "id": "req_002", "name": "3 Months Bank Statements", "type": "document", "required": true },
    { "id": "req_003", "name": "T4 Slip", "type": "document", "required": true },
    { "id": "req_004", "name": "Employment Start Date", "type": "date", "required": false }
  ]
}

Update Requirement

PATCH /accounts/:id/requirements/:requirement_id
curl -X PATCH https://api.recoverbiz.com/v1/accounts/acc_8f3a1b2c/requirements/req_001 \
  -H "X-Partner-Key: pk_live_abc123def456..." \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Valid government-issued photo ID (passport, driver's license)",
    "required": true
  }'

Delete Requirement

DELETE /accounts/:id/requirements/:requirement_id Removes a requirement from the checklist. Existing collected data for this requirement on leads is preserved.
curl -X DELETE https://api.recoverbiz.com/v1/accounts/acc_8f3a1b2c/requirements/req_005 \
  -H "X-Partner-Key: pk_live_abc123def456..."

Get Lead Checklist

GET /accounts/:id/leads/:phone/checklist Returns the checklist status for a specific lead — which items have been collected, which are still pending.
{
  "checklist": [
    {
      "requirement_id": "req_001",
      "name": "Government ID",
      "type": "document",
      "required": true,
      "status": "completed",
      "file_url": "https://storage.recoverbiz.com/docs/id_john_doe.pdf",
      "collected_at": "2026-02-12T14:00:00Z"
    },
    {
      "requirement_id": "req_002",
      "name": "3 Months Bank Statements",
      "type": "document",
      "required": true,
      "status": "completed"
    },
    {
      "requirement_id": "req_003",
      "name": "T4 Slip",
      "type": "document",
      "required": true,
      "status": "pending"
    },
    {
      "requirement_id": "req_004",
      "name": "Employment Start Date",
      "type": "date",
      "required": false,
      "status": "completed",
      "value": "2023-06-15"
    }
  ],
  "completed_count": 3,
  "total_count": 4,
  "progress": 0.75
}

How Document Collection Works Over SMS

1

Lead receives a message

A follow-up sequence message triggers a conversation, or the lead texts in.
2

AI asks naturally

The AI weaves missing checklist items into the conversation naturally — it doesn’t dump a list of requirements all at once.
3

Lead sends documents

The lead can text back a photo or PDF. Recover automatically downloads the file and matches it to the correct requirement.
4

Data extracted automatically

Text-based requirements (email, phone, date) are extracted from the conversation automatically — no manual entry needed.
5

Real-time updates

The checklist updates in real-time. The embed and API reflect changes immediately.
6

Completion webhook

When all required items are collected, a checklist.completed webhook fires so your system knows the lead is ready.