Zapier
Zapier connects AIDA to thousands of apps (Google Sheets, Gmail, Google Drive, Slack, your ERP and more), in both directions (beta):
- the Zapier Destination sends every document approved in AIDA to a Zap, so you can forward its data and PDF (Connect AIDA to Zapier);
- the Zapier Input receives files from a Zap, so documents arriving in other apps are uploaded to AIDA and processed (Upload documents from Zapier).
Connect AIDA to Zapier
- In AIDA, open the document type, add the Zapier destination and save.
- Copy the destination's key.
- In Zapier, create a Zap with the trigger AIDA → Document Approved. When asked to connect, paste the key. The connection is labeled with the document type name, for example
Invoice (Zapier destination). - Test the trigger: Zapier loads the three most recent processed documents of that type as samples. Upload at least one document first.
- Add the actions you need, map the fields and publish the Zap.
From now on, every document approved with this destination is sent to the Zap. The Open your Zaps button in the destination opens your Zaps in Zapier.
note
Each Zapier destination feeds one Zap: connecting a new Zap with the same key replaces the previous one. To feed several Zaps, add several Zapier destinations. Regenerating the key disconnects the Zap.
If the Zap is turned off or deleted, the destination is disconnected and new approvals end with the error zapierNotConnected until a Zap is connected again.
Payload
Each approved document is sent as a JSON object. The sample records shown in Zapier have the same format.
| Field | Type | Description |
|---|---|---|
id | string | The AIDA document ID. |
documentName | string | The document name. |
documentConfigurationName | string | The document type name. |
documentURL | string | A permanent link to view the document within the AIDA web application. |
downloadURL | string | A temporary, secure link to download the document's PDF file. It expires after 7 days. |
The extracted properties follow the same rules as the Webhook destination: the key is the property's Field name in integrations or, if not set, its Label, values are cast to their JSON type and tables become arrays. Unlike the webhook, dates are ISO-8601 UTC strings (for example 2025-10-14T00:00:00Z).
{
"Invoice number": "INV-2025-042",
"invoiceDate": "2025-10-14T00:00:00Z",
"total": 122.00,
"lines": [
{ "description": "Product A", "qty": 2, "unitPrice": 50.00 }
],
"id": "12345",
"documentName": "invoice-042.pdf",
"documentConfigurationName": "Invoice",
"documentURL": "https://www.aidacloud.com/app/web/archive/12345",
"downloadURL": "https://api.aidacloud.com/asset/document/generated-auth-token"
}
Upload documents from Zapier
- In AIDA, open the document type, go to Input and enable the Zapier input.
- Copy the input's key.
- In Zapier, create a Zap with the trigger you need (for example Google Drive → New File in Folder or Gmail → New Attachment) and add the action AIDA → Upload Document. When asked to connect, paste the key. The connection is labeled with the document type name, for example
Invoice (Zapier input). - Map the fields, test the action and publish the Zap.
Every file the Zap sends is uploaded to the document type and processed like a document from any other input. The Open your Zaps button in the input opens your Zaps in Zapier.
| Field | Required | Description |
|---|---|---|
| File | yes | The file to process (PDF or image). |
| File Name | no | The document name. Defaults to the file's own name. |
| Property values | no | Values to prefill, one per property: the key is the property's Field name in integrations or its Label. Unknown keys are ignored. |
The action returns the new document: id, documentConfigurationId, documentConfigurationName and documentName.
note
The Zapier input and the Zapier destination have different keys: use the input key for Upload Document and the destination key for Document Approved. A key of the wrong type is rejected with a message that names the right one. While the input is disabled, uploads fail with the error inputFlowNotEnabled.
If a document type has no Zapier input, contact us .
API reference
The AIDA Zapier app uses the following endpoints. The base URL is https://api.aidacloud.com/api/v1/zapier.
Authentication: every request sends the key of the Zapier destination or of the Zapier input in the X-API-Key header. A missing or unknown key returns 401 Unauthorized; a key of the other type returns 403 Forbidden. GET /me accepts both keys, POST /documents the input key, the other endpoints the destination key.
| Method | Path | Purpose | Body | Response |
|---|---|---|---|---|
GET | /me | Tests the connection. type is destination or input. | - | { "id", "documentConfigurationId", "documentConfigurationName", "username", "type", "connectionLabel" } |
POST | /hooks | Subscribes the Zap (REST hook). The URL must start with https://hooks.zapier.com/, otherwise 400. | { "hookUrl": "…" } | { "id" } |
DELETE | /hooks | Unsubscribes the Zap. It only disconnects the destination if hookUrl is the one currently connected. | { "hookUrl": "…" } | empty |
GET | /documents/sample | Returns up to three recent processed documents of the document type, in the payload format. | - | array of payloads |
POST | /documents | Uploads a file to the document type. Without file, 400; with the input disabled, 403 inputFlowNotEnabled. | multipart/form-data: file (with a file name) and one field per property value | { "id", "documentConfigurationId", "documentConfigurationName", "documentName" } |
Delivery: when a document is approved, AIDA sends an HTTP POST with the payload to the subscribed hook, with Content-Type: application/json. If Zapier answers 410 Gone, AIDA disconnects the destination.