Docs / Reference
API Reference
The ZippedScript REST API lets you trigger workflows, check document status, and manage templates from your own systems.
API Reference
The ZippedScript REST API is available on Team and Business plans. It uses bearer token authentication and returns JSON. The base URL for all requests is https://api.tryzippedscript.com/v1.
Authentication
All API requests require a bearer token. Generate an API key from your workspace settings under Integrations > API Keys.
Authorization: Bearer zsc_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
API keys are workspace-scoped. Treat them as secrets; do not expose them in client-side code.
Endpoints
Trigger a new workflow. Drafts the document from the specified template, fills fields with the provided data, and starts routing.
/workflows
Request body
{
"template_id": "tpl_abc123",
"routing_rule_id": "rr_xyz789",
"fields": {
"vendor_name": "Acme Supplies Ltd",
"effective_date": "2026-09-01",
"contract_value": 42000
}
}
Response
{
"workflow_id": "wf_def456",
"status": "active",
"current_step": 1,
"created_at": "2026-08-15T10:22:00Z",
"document_url": "https://tryzippedscript.com/documents/doc_ghi789"
}
Retrieve the current status and audit log for a workflow.
/workflows/{workflow_id}
Response
{
"workflow_id": "wf_def456",
"status": "pending_approval",
"current_step": 2,
"steps": [
{
"step": 1,
"type": "review",
"assignee": "[email protected]",
"status": "complete",
"completed_at": "2026-08-15T14:05:00Z"
},
{
"step": 2,
"type": "approve",
"assignee": "[email protected]",
"status": "pending"
}
]
}
List all templates in your workspace.
/templates
Response
{
"templates": [
{
"template_id": "tpl_abc123",
"name": "Vendor NDA",
"fields": ["vendor_name", "effective_date", "jurisdiction"],
"created_at": "2026-07-10T08:00:00Z"
}
]
}
Webhooks
Configure a webhook URL in your workspace settings to receive events when workflow status changes. ZippedScript sends a POST request to your URL with a JSON payload for the following events:
workflow.step_complete- a routing step was completedworkflow.complete- all steps complete, document fully executedworkflow.rejected- a step was rejected by an approverworkflow.overdue- a step missed its deadline
Webhook payload example:
{
"event": "workflow.step_complete",
"workflow_id": "wf_def456",
"step": 1,
"completed_by": "[email protected]",
"timestamp": "2026-08-15T14:05:00Z"
}
Error codes
| Code | Meaning |
|---|---|
400 |
Bad request. Check required fields and field types. |
401 |
Unauthorized. API key missing or invalid. |
403 |
Forbidden. Your plan does not include API access. |
404 |
Not found. Template or workflow ID does not exist in your workspace. |
429 |
Rate limited. Maximum 120 requests per minute per workspace. |
500 |
Server error. Retry with exponential backoff. Contact support if it persists. |
API access is available on Team and Business plans. See pricing for plan details. Questions? Contact support.