Make.com API documentation
SEA Survey provides a Make.com integration that triggers scenarios in real time whenever a customer submits a survey response.
Full interactive API reference: API Reference (Redoc) · OpenAPI spec (JSON)
Quick Start
Open the Make integration from SEA Survey
Connect the Make app from the Integrations section in the sidebar.
Generate an API key
Go to Integrations > Make, click Generate API Key, and copy the key.
Create a connection in Make
Create a new connection for the SEA Post Purchase Survey app in Make and paste your API key.
Add the instant trigger
Add the Watch survey responses trigger to your scenario — it fires instantly whenever a new survey response is submitted.
Turn on your scenario
Map the response fields to your action apps (Google Sheets, Slack, email...) and switch the scenario on.
Authentication
All API requests require an API Key, passed as a Bearer token (recommended) or via the X-API-Key header:
Authorization: Bearer YOUR_API_KEYBase URL:
https://survey.avada.io/makeTest Connection
GET /shop/statusResponse (200 OK):
{
"success": true,
"data": {
"shopId": "my-awesome-store.myshopify.com",
"shopName": "My Awesome Store",
"email": "owner@my-awesome-store.com",
"authenticated": true
},
"message": "Connection successful"
}| Status | Description |
|---|---|
| 401 | Missing or invalid API key, or key is not a Make key |
| 500 | Internal server error |
Instant Trigger — Watch survey responses
Type: webhook (real-time). When a scenario is switched on, Make subscribes a webhook URL; SEA Survey sends a POST request to that URL for every new survey response.
Trigger Output Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique response ID (Firestore document ID) |
surveyId | string | Survey ID the response belongs to |
surveyTitle | string | Name of the survey |
surveyType | string | Survey type (e.g., survey, surveyForm) |
customerId | string or null | Shopify customer ID |
customerEmail | string or null | Customer email address |
customerName | string or null | Customer display name |
answers | array | List of question-answer pairs |
answers[].question | string | The question text |
answers[].answer | string or null | Answer value. Multiple-choice answers are joined with ", "; null when skipped |
answers[].answerType | string | Question type (see Answer Types) |
createdAt | string | ISO 8601 date-time of when the response was submitted |
channelType | string or null | Delivery channel (see Channel Types) |
Example Trigger Payload
{
"id": "aB3dE5fG7hI9jK1LmN0p",
"surveyId": "Qw8rT2yU4iO6pA1sD3fG",
"surveyTitle": "Post Purchase Satisfaction Survey",
"surveyType": "survey",
"customerId": "6789012345",
"customerEmail": "jane.smith@example.com",
"customerName": "Jane Smith",
"answers": [
{
"question": "How satisfied are you with your purchase?",
"answer": "Extremely satisfied",
"answerType": "single"
},
{
"question": "Which aspects did you like?",
"answer": "Product Quality, Fast Shipping",
"answerType": "multiple"
},
{
"question": "Product quality rating",
"answer": "5",
"answerType": "star_rating"
}
],
"createdAt": "2025-12-23T08:30:45.123Z",
"channelType": "postPurchasePage"
}Answer Types
| Type | Description | Answer Format |
|---|---|---|
single | Single-choice question | string — selected option |
multiple | Multi-select question | string — selected options joined with ", " |
star_rating | Star rating (1-5) | string — numeric value (e.g., "4") |
number_scale | Numeric scale (e.g., 0-10) | string — numeric value (e.g., "7") |
satisfaction | Satisfaction level | string — e.g., "satisfied", "neutral", "dissatisfied" |
short_answer | Free-text response | string — user's text input |
date | Date picker | string — date value |
consent_email | Email consent checkbox | string — "true" or "false" |
text_image | Text & image question | string — selected option |
email | Email capture | string — email address |
upload | File upload | string — uploaded file URL |
Channel Types
dedicatedPageSurvey, siteWidget, postPurchasePage, exitIntent, postPurchaseEmail, hyperLink, embedSurvey, embedEmail, surveyForm
Webhook API
These endpoints are used internally by Make to manage webhook subscriptions. They are documented here for reference.
Subscribe (ATTACH)
POST /webhooksBody:
{
"url": "https://hook.eu1.make.com/abc123xyz789",
"event": "response.created"
}Response (200 OK) — the returned data.id is the externalHookId used to unsubscribe:
{
"success": true,
"data": {
"id": "Zx7cV5bN3mQ1wE9rT2yU"
}
}Unsubscribe (DETACH)
DELETE /webhooks/{externalHookId}| Status | Description |
|---|---|
| 200 | Webhook unsubscribed successfully |
| 404 | Subscription not found (unknown ID, already deleted, or not your shop's) |
Test webhook delivery
POST /webhooks/testBody: {"targetUrl": "https://hook.eu1.make.com/abc123xyz789"} — sends a sample payload to the URL for testing.
For the complete request/response schemas, see the interactive API reference or download the OpenAPI 3.0 spec.