Get a collection request with its submission
get
https://api.expiryedge.com/v1/getCollectionRequestany role (admin, editor or viewer) in the organization60/min
Request
curl 'https://api.expiryedge.com/v1/getCollectionRequest?id=req_9WkT' \
-H "Authorization: Bearer $EXPIRYEDGE_API_KEY"Response
{
"request": {
"id": "req_9WkT",
"organization_id": "org_northwind",
"name": "Q4 insurance refresh",
"due_date": "2026-10-15T00:00:00.000Z",
"template_id": "tpl_W9onboard",
"template_name": "New client onboarding - Northwind Dental",
"contact_id": "c_8Hk2pQ",
"contact_name": "Dana Whitfield",
"contact_email": "dana@northwinddental.com",
"expiry_id": "exp_4Tq9sLm2",
"group_id": null,
"has_password": false,
"expires_at": "2026-10-31T23:59:59.000Z",
"status": "completed",
"archived": false,
"paused": false,
"sent_at": "2026-09-27T14:05:00.000Z",
"viewed_at": "2026-09-27T15:10:00.000Z",
"completed_at": "2026-09-28T09:12:00.000Z",
"cancelled_at": null,
"resend_count": 0,
"last_resent_at": null,
"draft_filled_count": 3,
"draft_total_fields": 5,
"draft_updated_at": "2026-09-27T15:20:00.000Z",
"next_reminder_at": "2026-09-28T13:00:00.000Z",
"reminders_sent_count": 0,
"email_stats": {
"sent_count": 1,
"delivered_count": 1,
"opened_count": 1,
"last_event_at": "2026-09-27T15:09:30.000Z"
},
"reply_received": false,
"reply_at": null,
"reply_snippet": null,
"latest_review_status": "pending",
"review_approved_count": 0,
"review_total_fields": 3,
"completed_field_count": 3,
"created_by": "u_71bXq",
"created_by_name": "Priya Shah",
"created_at": "2026-09-27T14:05:00.000Z",
"updated_at": "2026-09-27T15:20:00.000Z"
},
"submission": {
"id": "sub_Qm3r",
"request_id": "req_9WkT",
"organization_id": "org_northwind",
"template_id": "tpl_W9onboard",
"responses": {
"fld_company_name": "Northwind Dental LLC",
"fld_entity": "LLC"
},
"files": [
{
"field_id": "fld_insurance",
"original_filename": "liability-certificate-2026.pdf",
"storage_path": "organizations/org_northwind/collection-submissions/req_9WkT/fld_insurance-6c1e-liability-certificate-2026.pdf",
"content_type": "application/pdf",
"size_bytes": 482113
}
],
"submitted_at": "2026-09-28T09:12:00.000Z",
"review_status": "pending",
"field_reviews": {},
"review_history": [],
"revision": 1
},
"template": {
"id": "tpl_W9onboard",
"name": "New client onboarding - Northwind Dental",
"description": "Documents we need before the first engagement.",
"pages": [
{
"id": "p_company",
"title": "Company details",
"order": 0,
"description_html": "<p>Tell us about your practice.</p>",
"sections": [
{
"id": "s_basics",
"title": "Basics",
"order": 0,
"description_html": "",
"fields": [
{
"id": "fld_company_name",
"type": "short_text",
"label": "Legal company name",
"required": true,
"help_text": ""
},
{
"id": "fld_entity",
"type": "dropdown",
"label": "Entity type",
"required": true,
"help_text": "",
"options": [
"LLC",
"Corporation",
"Sole proprietor"
]
},
{
"id": "fld_insurance",
"type": "file_upload",
"label": "Liability insurance certificate",
"required": true,
"help_text": "PDF or image, current policy year.",
"allowed_types": [
"pdf",
"jpg",
"png"
],
"max_size_bytes": 26214400,
"reference_file": {
"storage_path": "organizations/org_northwind/collection-templates/tpl_W9onboard/fields/fld_insurance/reference-1b2c-sample.pdf",
"original_filename": "sample-certificate.pdf",
"content_type": "application/pdf",
"size_bytes": 120331
}
}
]
}
]
}
]
},
"reminders": [
{
"id": "rem_5Gh1",
"request_id": "req_9WkT",
"organization_id": "org_northwind",
"user_id": "u_71bXq",
"amount": 3,
"time_unit": "day",
"period": "after",
"time": "09:00",
"timezone": "America/New_York",
"reminder_date": "2026-09-30T14:05:00.000Z",
"scheduled_at": "2026-09-30T13:00:00.000Z",
"status": "skipped",
"sent_at": null,
"error_message": "Request completed before this reminder was due",
"created_at": "2026-09-27T14:05:00.000Z",
"updated_at": "2026-09-28T09:12:01.000Z"
}
],
"email_events": [
{
"id": "resend_msg_81f_sent",
"request_id": "req_9WkT",
"reminder_id": null,
"organization_id": "org_northwind",
"recipient_email": "dana@northwinddental.com",
"provider": "resend",
"provider_message_id": "msg_81f",
"event_type": "sent",
"timestamp": "2026-09-27T14:05:00.000Z",
"metadata": {
"subject": "Northwind Dental requested documents from you",
"source": "send_call"
}
}
]
}Returns the request plus its submission (or null), a template snapshot, its reminders and up to 100 email events (newest first). The handler does not check the HTTP method. The id is read from the query string only.
idstringrequiredRequest id.
200
Request details.
requestobjectrequiredOne recipient's request (one per contact per send). All fields are server-owned exceptnameanddue_date(updateCollectionRequest).submissionobject | nullrequiredtemplateobject | nullrequiredThe template (or request draft) the request was sent from; null if it was deleted.remindersarray of objectsrequiredemail_eventsarray of objectsrequired
400 | The request is missing required fields or contains invalid values. |
401 | Missing, expired or invalid bearer token. |
403 | Your role does not allow this, or the record belongs to another organization ( {"error": "Access denied"}). |
404 | The record does not exist or is not in your organization. |
429 | Too many requests for this endpoint from your IP. Wait Retry-After seconds. |
