Overview
The Simplicity AI API lets you programmatically upload documents, trigger AI-powered form filling, and retrieve completed results. This guide walks you through authenticating and making your first API call. Base URLStep 1: Authenticate
Simplicity AI supports two authentication methods depending on your use case.Option A — API Key (Recommended for server-to-server)
- (a) Visit simplicity.ai and create an account

- (b) Generate an API key from your dashboard under Integrations → API Keys. Pass it as the
X-API-Keyheader on every request.

Keep your API key secret. Never expose it in client-side code or public repositories. Regenerate it immediately from the dashboard if it is ever compromised.
Option B — External User ID (For user-scoped requests)
If you are building a multi-user application, you can scope API requests to a specific user by passing their unique identifier in theexternal-user-id. This allows you to attribute document uploads and form submissions to individual users within your platform.
Step 2: Upload a Document
Upload the PDF form you want to fill. The API returns atask_id you can use to track the upload progress.
You can upload a document with the param of document_type which could be:
(a) SOURCE_DOCUMENT: These are documents that are used as knowledge bases or data source for the AI agent when filling a form document.
task_id and status. You can then query the /tasks/:task_id endpoint to check the upload status.
Step 3: Autofill the Form
Pass theform_file_document_id from your upload withdocument_type set toFORM_DOCUMENT (from step 2b above), along with optional source documents, instructions, and context to let the AI agent fill the form automatically.
task_id to poll for completion.
| Field | Type | Description |
|---|---|---|
form_file_document_id | string | The document_id of the form to be filled. |
source_document_ids | string[] | Optional IDs of documents the AI agent uses as a knowledge source to extract fill data from. This is Optional if context is provided. |
instructions | string | Optional plain-text instructions to guide how the form should be filled. |
context | string | Optional additional context or raw data the AI agent can use when filling the form. This is Optional if source_document_ids is provided. |
Step 4: Retrieve the Result
Poll the Tasks API with yourtask_id until the status is completed, then use the document_id in the response to download your filled form.
| Field | Type | Description |
|---|---|---|
task_id | string | Unique identifier for the task. |
task_type | string | The type of operation (e.g. document-upload, form-autofill). |
status | string | Current task status: processing, completed, or failed. |
progress | number | Completion percentage from 0 to 100. |
result_data | object | Output data when the task completes successfully. |
document_id | string | The ID of the resulting document once processing is complete. |
error_message | string | Details of what went wrong if the task failed. |
estimated_completion | string | ISO 8601 timestamp estimating when the task will finish. |
Authentication Quick Reference
| Method | Header | When to Use |
|---|---|---|
| API Key | X-API-Key: YOUR_API_KEY | Server-to-server integrations |
| External User ID | external-user-id: A_USER_ID | Multi-user platforms, user-scoped activity |
Next Steps
Document Management
Learn how to list, retrieve, update, and delete your uploaded documents.
AI Form Autofill
Explore advanced autofill options including source document upload and field mapping.
Task Monitoring
Understand how to track and manage asynchronous operations with the Tasks API.
Webhooks
Receive real-time notifications when form submissions are complete.