Questionnaires
- get/v1/questionnaires
- post/v1/questionnaires
- get/v1/questionnaires/{id}
- patch/v1/questionnaires/{id}
- post/v1/questionnaires/{id}/status
- get/v1/questionnaires/{id}/links
- post/v1/questionnaires/{id}/links
- del/v1/questionnaire-links/{id}
- get/v1/questionnaires/{id}/responses
- get/v1/questionnaires/{id}/export
- get/v1/questionnaire-responses/{id}
- post/v1/questionnaire-responses/{id}/apply
- get/v1/questionnaire-templates
- post/v1/questionnaire-templates
- get/v1/questionnaire-templates/{id}
- patch/v1/questionnaire-templates/{id}
- post/v1/questionnaire-templates/{id}/archive
List questionnaires
get/v1/questionnaires
List the workspace's client questionnaires (onboarding forms) with link and response counts, without their question definitions. Archived ones are left out unless includeArchived is true. Requires questionnaires:view.
Query parameters
includeArchivedstringOne of
truefalse
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
curl "https://api.posty.social/v1/questionnaires" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"data": [
{
"id": "string",
"workspaceId": "string",
"templateId": "string",
"templateVersion": 1,
"name": "string",
"description": "string",
"definitionVersion": 1,
"status": "draft",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"linkCount": 1,
"responseCount": 1
}
]
}Create questionnaire
post/v1/questionnaires
Create a draft questionnaire in the workspace, blank or copied from one of the organization's templates (templateId from list_questionnaire_templates). Counts against the plan's questionnaire limit and needs an agency organization. Requires questionnaires:create.
Request body
templateIdstringnullableMin length 1
namestringMin length 1 · Max length 200
Response 201
Questionnaire created
idstringrequiredworkspaceIdstringrequiredtemplateIdstringrequirednullabletemplateVersionintegerrequirednullablenamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstatusstringrequiredOne of
draftactivearchivedcreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequiredlinkCountintegerrequiredresponseCountintegerrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 402
- The plan's questionnaire limit is reached
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X POST "https://api.posty.social/v1/questionnaires" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "string",
"name": "string"
}'{
"id": "string",
"workspaceId": "string",
"templateId": "string",
"templateVersion": 1,
"name": "string",
"description": "string",
"definitionVersion": 1,
"status": "draft",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"linkCount": 1,
"responseCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Get questionnaire
get/v1/questionnaires/{id}
Get one questionnaire with its full definition (sections and question blocks), every link sent for it and a summary of each response. Requires questionnaires:view.
Path parameters
idstringrequiredMin length 1
Response 200
Questionnaire
delegatedConnectAvailablebooleanrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaires/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"questionnaire": {
"id": "string",
"workspaceId": "string",
"templateId": "string",
"templateVersion": 1,
"name": "string",
"description": "string",
"definitionVersion": 1,
"status": "draft",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"linkCount": 1,
"responseCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
null
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
},
"links": [
{
"id": "string",
"questionnaireId": "string",
"workspaceId": "string",
"recipientEmail": "string",
"recipientName": "string",
"note": "string",
"expiresAt": "2026-01-15T09:30:00.000Z",
"revokedAt": "2026-01-15T09:30:00.000Z",
"lastUsedAt": "2026-01-15T09:30:00.000Z",
"reminderDays": [
1
],
"lastReminderAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"definitionVersion": 1,
"state": "open"
}
],
"responses": [
{
"id": "string",
"linkId": "string",
"status": "draft",
"respondentName": "string",
"respondentEmail": "string",
"startedAt": "2026-01-15T09:30:00.000Z",
"submittedAt": "2026-01-15T09:30:00.000Z",
"appliedAt": "2026-01-15T09:30:00.000Z"
}
],
"delegatedConnectAvailable": true
}Update questionnaire
patch/v1/questionnaires/{id}
Rename a questionnaire, change its description, or replace its whole definition (intro, sections of question blocks, outro). Links already sent keep the form they were sent with. Archived questionnaires cannot be edited. Requires questionnaires:update.
Path parameters
idstringrequiredMin length 1
Request body
namestringMin length 1 · Max length 200
descriptionstringnullableMax length 2000
definitionQuestionnaireDefinition
Response 200
Questionnaire updated
idstringrequiredworkspaceIdstringrequiredtemplateIdstringrequirednullabletemplateVersionintegerrequirednullablenamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstatusstringrequiredOne of
draftactivearchivedcreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequiredlinkCountintegerrequiredresponseCountintegerrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
- 409
- Not allowed in this state
curl -X PATCH "https://api.posty.social/v1/questionnaires/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "string",
"description": "string",
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}'{
"id": "string",
"workspaceId": "string",
"templateId": "string",
"templateVersion": 1,
"name": "string",
"description": "string",
"definitionVersion": 1,
"status": "draft",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"linkCount": 1,
"responseCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Set questionnaire status
post/v1/questionnaires/{id}/status
Set a questionnaire to draft, active (it can be sent) or archived. Archiving stops every link already sent for it from opening; restoring an archived one counts against the plan's questionnaire limit again. Requires questionnaires:update.
Path parameters
idstringrequiredMin length 1
Request body
statusstringrequiredOne of
draftactivearchived
Response 200
Questionnaire status set
idstringrequiredworkspaceIdstringrequiredtemplateIdstringrequirednullabletemplateVersionintegerrequirednullablenamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstatusstringrequiredOne of
draftactivearchivedcreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequiredlinkCountintegerrequiredresponseCountintegerrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 402
- The plan's questionnaire limit is reached
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X POST "https://api.posty.social/v1/questionnaires/$ID/status" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "draft"
}'{
"id": "string",
"workspaceId": "string",
"templateId": "string",
"templateVersion": 1,
"name": "string",
"description": "string",
"definitionVersion": 1,
"status": "draft",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"linkCount": 1,
"responseCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}List questionnaire links
get/v1/questionnaires/{id}/links
List the links sent for a questionnaire, each with its state (open, submitted, revoked or expired). The link URL itself is never returned again after create_questionnaire_link. Requires questionnaires:view.
Path parameters
idstringrequiredMin length 1
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaires/$ID/links" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"data": [
{
"id": "string",
"questionnaireId": "string",
"workspaceId": "string",
"recipientEmail": "string",
"recipientName": "string",
"note": "string",
"expiresAt": "2026-01-15T09:30:00.000Z",
"revokedAt": "2026-01-15T09:30:00.000Z",
"lastUsedAt": "2026-01-15T09:30:00.000Z",
"reminderDays": [
1
],
"lastReminderAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"definitionVersion": 1,
"state": "open"
}
]
}Create questionnaire link
post/v1/questionnaires/{id}/links
Create a public link a client opens to fill in an active questionnaire, without an account. The response carries the URL exactly once: share it with the client yourself, because this API sends no email and the URL cannot be fetched again. Requires questionnaires:send.
Path parameters
idstringrequiredMin length 1
Request body
recipientNamestringnullableMax length 200
notestringnullableMax length 2000
expiresAtstring (date-time)Defaults to 30 days from now; capped at 180 days.
Response 201
Link created
idstringrequiredquestionnaireIdstringrequiredworkspaceIdstringrequiredrecipientEmailstringrequirednullablerecipientNamestringrequirednullablenotestringrequirednullableexpiresAtstring (date-time)requiredrevokedAtstring (date-time)requirednullablelastUsedAtstring (date-time)requirednullablereminderDaysarray of integerrequiredMax items 5
lastReminderAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requireddefinitionVersionintegerrequiredstatestringrequiredOne of
opensubmittedrevokedexpiredurlstring (uri)requiredThe public form. Returned only here: Posty stores a hash of the token, so the URL cannot be fetched again.
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
- 409
- Not allowed in this state
curl -X POST "https://api.posty.social/v1/questionnaires/$ID/links" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"recipientName": "string",
"note": "string",
"expiresAt": "2026-01-15T09:30:00.000Z"
}'{
"id": "string",
"questionnaireId": "string",
"workspaceId": "string",
"recipientEmail": "string",
"recipientName": "string",
"note": "string",
"expiresAt": "2026-01-15T09:30:00.000Z",
"revokedAt": "2026-01-15T09:30:00.000Z",
"lastUsedAt": "2026-01-15T09:30:00.000Z",
"reminderDays": [
1
],
"lastReminderAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"definitionVersion": 1,
"state": "open",
"url": "https://example.com"
}Revoke questionnaire link
del/v1/questionnaire-links/{id}
Revoke a questionnaire link so the client can no longer open it. A response the client already submitted is kept. Requires questionnaires:send.
Path parameters
idstringrequiredMin length 1
Response 204
Link revoked
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X DELETE "https://api.posty.social/v1/questionnaire-links/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY"No contentList questionnaire responses
get/v1/questionnaires/{id}/responses
List the responses to a questionnaire: who answered, and whether each is a draft in progress, submitted or applied. Read the answers with get_questionnaire_response. Requires questionnaires:view.
Path parameters
idstringrequiredMin length 1
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaires/$ID/responses" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"data": [
{
"id": "string",
"linkId": "string",
"status": "draft",
"respondentName": "string",
"respondentEmail": "string",
"startedAt": "2026-01-15T09:30:00.000Z",
"submittedAt": "2026-01-15T09:30:00.000Z",
"appliedAt": "2026-01-15T09:30:00.000Z"
}
]
}Export questionnaire responses
get/v1/questionnaires/{id}/export
Every submitted response to a questionnaire as a table: one column per question, one row per respondent, each answer as text. A question added after a link was sent is an empty cell for that respondent. Requires questionnaires:view.
Path parameters
idstringrequiredMin length 1
Response 200
Responses as rows
columnsarray of objectrequiredChild attributes
idstringrequiredlabelstringrequired
rowsarray of objectrequiredChild attributes
respondentNamestringrequirednullablerespondentEmailstringrequirednullablesubmittedAtstring (date-time)requirednullablecellsarray of stringrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaires/$ID/export" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"columns": [
{
"id": "string",
"label": "string"
}
],
"rows": [
{
"respondentName": "string",
"respondentEmail": "string",
"submittedAt": "2026-01-15T09:30:00.000Z",
"cells": [
"string"
]
}
]
}Get questionnaire response
get/v1/questionnaire-responses/{id}
Get one questionnaire response: its answers keyed by question id, the form exactly as it was sent, signed download URLs for uploaded files, the channels the client connected, and what has been applied. Requires questionnaires:view.
Path parameters
idstringrequiredMin length 1
Response 200
Response
mediaarray of objectrequiredChild attributes
idstringrequiredurlstringrequirednullabletitlestringrequiredcontentTypestringrequired
channelsarray of objectrequiredChild attributes
idstringrequiredproviderstringrequiredOne of
blueskydiscordfacebookinstagramlinkedinpinterestthreadstiktokwordpressyoutubenamestringrequiredavatarUrlstringrequirednullableconnectedHerebooleanrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaire-responses/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"response": {
"id": "string",
"linkId": "string",
"status": "draft",
"respondentName": "string",
"respondentEmail": "string",
"startedAt": "2026-01-15T09:30:00.000Z",
"submittedAt": "2026-01-15T09:30:00.000Z",
"appliedAt": "2026-01-15T09:30:00.000Z",
"questionnaireId": "string",
"workspaceId": "string",
"questionnaireName": "string",
"answers": {
"key": {
"kind": "short_text",
"value": "string"
}
},
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
null
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
},
"appliedBy": "string",
"appliedTargets": [
{
"blockId": "string",
"target": "string",
"value": "string",
"appliedAt": 1
}
],
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z"
},
"media": [
{
"id": "string",
"url": "string",
"title": "string",
"contentType": "string"
}
],
"channels": [
{
"id": "string",
"provider": "bluesky",
"name": "string",
"avatarUrl": "string",
"connectedHere": true
}
]
}Apply questionnaire response
post/v1/questionnaire-responses/{id}/apply
Write chosen answers of a submitted response into the workspace: only the listed blockIds whose questions carry a mapping. Overwrites the workspace name, logo and brand voice or competitors, and adds personas and objectives; campaign answers come back as campaignPrefill instead of being written. Answers already applied are skipped. Requires questionnaires:update.
Path parameters
idstringrequiredMin length 1
Request body
blockIdsarray of stringrequiredMax items 200
Response 200
Response applied
campaignPrefillobjectrequiredChild attributes
creativeDirectionstringmonthlyPostTargetintegerobjectiveIdsarray of stringrequiredpersonaIdsarray of stringrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
- 409
- Not allowed in this state
curl -X POST "https://api.posty.social/v1/questionnaire-responses/$ID/apply" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"blockIds": [
"string"
]
}'{
"response": {
"id": "string",
"linkId": "string",
"status": "draft",
"respondentName": "string",
"respondentEmail": "string",
"startedAt": "2026-01-15T09:30:00.000Z",
"submittedAt": "2026-01-15T09:30:00.000Z",
"appliedAt": "2026-01-15T09:30:00.000Z",
"questionnaireId": "string",
"workspaceId": "string",
"questionnaireName": "string",
"answers": {
"key": {
"kind": "short_text",
"value": "string"
}
},
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
null
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
},
"appliedBy": "string",
"appliedTargets": [
{
"blockId": "string",
"target": "string",
"value": "string",
"appliedAt": 1
}
],
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z"
},
"campaignPrefill": {
"creativeDirection": "string",
"monthlyPostTarget": 1,
"objectiveIds": [
"string"
],
"personaIds": [
"string"
]
}
}List questionnaire templates
get/v1/questionnaire-templates
List the organization's questionnaire templates (without definitions) and the built-in starters a template can be created from. Templates belong to the selected workspace's organization and need a signed-in user (OAuth), not an API key, plus questionnaires:view in the workspace. Requires organization:view.
Query parameters
includeArchivedstringOne of
truefalse
Response 200
Templates
startersarray of objectrequiredChild attributes
keystringrequirednamestringrequireddescriptionstringrequiredsectionCountintegerrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaire-templates" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"data": [
{
"id": "string",
"organizationId": "string",
"name": "string",
"description": "string",
"definitionVersion": 1,
"starterKey": "string",
"archived": true,
"archivedAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1
}
],
"starters": [
{
"key": "string",
"name": "string",
"description": "string",
"sectionCount": 1
}
]
}Create questionnaire template
post/v1/questionnaire-templates
Create an organization questionnaire template, blank, from a starterKey listed by list_questionnaire_templates, or from a full definition. Templates belong to the selected workspace's organization and need a signed-in user (OAuth), not an API key, plus questionnaires:view in the workspace. Requires organization:manage_templates (organization owners and admins).
Request body
namestringMin length 1 · Max length 200
descriptionstringnullableMax length 2000
definitionQuestionnaireDefinitionstarterKeystringMax length 100
Response 201
Template created
idstringrequiredorganizationIdstringrequirednamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstarterKeystringrequirednullablearchivedbooleanrequiredarchivedAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X POST "https://api.posty.social/v1/questionnaire-templates" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "string",
"description": "string",
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
},
"starterKey": "string"
}'{
"id": "string",
"organizationId": "string",
"name": "string",
"description": "string",
"definitionVersion": 1,
"starterKey": "string",
"archived": true,
"archivedAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Get questionnaire template
get/v1/questionnaire-templates/{id}
Get one questionnaire template with its full definition. Templates belong to the selected workspace's organization and need a signed-in user (OAuth), not an API key, plus questionnaires:view in the workspace. Requires organization:view.
Path parameters
idstringrequiredMin length 1
Response 200
Template
idstringrequiredorganizationIdstringrequirednamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstarterKeystringrequirednullablearchivedbooleanrequiredarchivedAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl "https://api.posty.social/v1/questionnaire-templates/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"id": "string",
"organizationId": "string",
"name": "string",
"description": "string",
"definitionVersion": 1,
"starterKey": "string",
"archived": true,
"archivedAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Update questionnaire template
patch/v1/questionnaire-templates/{id}
Rename a questionnaire template, change its description or replace its definition. Questionnaires already copied from it do not change. Templates belong to the selected workspace's organization and need a signed-in user (OAuth), not an API key, plus questionnaires:view in the workspace. Requires organization:manage_templates.
Path parameters
idstringrequiredMin length 1
Request body
namestringMin length 1 · Max length 200
descriptionstringnullableMax length 2000
definitionQuestionnaireDefinition
Response 200
Template updated
idstringrequiredorganizationIdstringrequirednamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstarterKeystringrequirednullablearchivedbooleanrequiredarchivedAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequired
Errors
- 400
- Invalid input
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X PATCH "https://api.posty.social/v1/questionnaire-templates/$ID" \
-H "Authorization: Bearer $POSTY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "string",
"description": "string",
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}'{
"id": "string",
"organizationId": "string",
"name": "string",
"description": "string",
"definitionVersion": 1,
"starterKey": "string",
"archived": true,
"archivedAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Archive questionnaire template
post/v1/questionnaire-templates/{id}/archive
Archive a questionnaire template so it is no longer offered. Questionnaires already copied from it keep working. Templates belong to the selected workspace's organization and need a signed-in user (OAuth), not an API key, plus questionnaires:view in the workspace. Requires organization:manage_templates.
Path parameters
idstringrequiredMin length 1
Response 200
Template archived
idstringrequiredorganizationIdstringrequirednamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstarterKeystringrequirednullablearchivedbooleanrequiredarchivedAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequired
Errors
- 401
- Unauthenticated
- 403
- Missing permission, a client-visibility member, or an organization that is not an agency
- 404
- Not found in this workspace
curl -X POST "https://api.posty.social/v1/questionnaire-templates/$ID/archive" \
-H "Authorization: Bearer $POSTY_API_KEY"{
"id": "string",
"organizationId": "string",
"name": "string",
"description": "string",
"definitionVersion": 1,
"starterKey": "string",
"archived": true,
"archivedAt": "2026-01-15T09:30:00.000Z",
"createdBy": "string",
"createdAt": "2026-01-15T09:30:00.000Z",
"updatedAt": "2026-01-15T09:30:00.000Z",
"sectionCount": 1,
"questionCount": 1,
"definition": {
"version": 1,
"intro": {
"heading": "string",
"body": "string"
},
"sections": [
{
"id": "string",
"title": "string",
"description": "string",
"blocks": [
{
"id": null,
"label": null,
"helpText": null,
"required": false,
"showWhen": null,
"mapping": null,
"kind": "short_text",
"maxLength": 200
}
]
}
],
"outro": {
"heading": "string",
"body": "string"
}
}
}Models
Objects referenced by the endpoints above.
Questionnaire
idstringrequiredworkspaceIdstringrequiredtemplateIdstringrequirednullabletemplateVersionintegerrequirednullablenamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstatusstringrequiredOne of
draftactivearchivedcreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequiredlinkCountintegerrequiredresponseCountintegerrequired
QuestionnaireDefinition
versionnumberrequiredOne of
1introobjectrequiredChild attributes
headingstringrequiredMin length 1 · Max length 300
bodystringMax length 2000
sectionsarray of objectrequiredMin items 1 · Max items 20
Child attributes
idstringrequiredMin length 1 · Max length 40
titlestringrequiredMin length 1 · Max length 300
descriptionstringMax length 2000
blocksarray of object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or objectrequiredMax items 50
Option 1
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
short_textmaxLengthintegerDefault 200 · Min 1 · Max 500
Option 2
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
long_textmaxLengthintegerDefault 5000 · Min 1 · Max 10000
Option 3
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
email
Option 4
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
url
Option 5
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
url_listmaxItemsintegerDefault 10 · Min 1 · Max 50
Option 6
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
numberminnumbermaxnumber
Option 7
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
date
Option 8
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
single_choiceoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
allowOtherbooleanDefault false
Option 9
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
multi_choiceoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
allowOtherbooleanDefault false
Option 10
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
dropdownoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
Option 11
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
yes_no
Option 12
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
scaleminintegerDefault 1
maxintegerDefault 5
minLabelstringMax length 60
maxLabelstringMax length 60
Option 13
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
color_listmaxItemsintegerDefault 6 · Min 1 · Max 12
Option 14
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
file_uploadacceptarray of stringrequiredMin items 1 · Max items 20
maxFilesintegerDefault 5 · Min 1 · Max 20
Option 15
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
statementbodystringrequiredMax length 2000
confirmLabelstringMax length 300
Option 16
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
connect_channelsplatformsarray of stringrequiredOne of
blueskydiscordfacebookinstagramlinkedinpinterestthreadstiktokwordpressyoutubeMin items 1
minimumintegerDefault 0 · Min 0
outroobjectrequiredChild attributes
headingstringrequiredMin length 1 · Max length 300
bodystringMax length 2000
QuestionnaireLink
idstringrequiredquestionnaireIdstringrequiredworkspaceIdstringrequiredrecipientEmailstringrequirednullablerecipientNamestringrequirednullablenotestringrequirednullableexpiresAtstring (date-time)requiredrevokedAtstring (date-time)requirednullablelastUsedAtstring (date-time)requirednullablereminderDaysarray of integerrequiredMax items 5
lastReminderAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requireddefinitionVersionintegerrequiredstatestringrequiredOne of
opensubmittedrevokedexpired
QuestionnaireResponse
idstringrequiredlinkIdstringrequiredstatusstringrequiredOne of
draftsubmittedappliedrespondentNamestringrequirednullablerespondentEmailstringrequirednullablestartedAtstring (date-time)requiredsubmittedAtstring (date-time)requirednullableappliedAtstring (date-time)requirednullablequestionnaireIdstringrequiredworkspaceIdstringrequiredquestionnaireNamestringrequiredanswersmap of object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or objectrequiredOption 1
kindstringrequiredOne of
short_textvaluestringrequired
Option 2
kindstringrequiredOne of
long_textvaluestringrequired
Option 3
kindstringrequiredOne of
emailvaluestringrequired
Option 4
kindstringrequiredOne of
urlvaluestringrequired
Option 5
kindstringrequiredOne of
url_listvaluesarray of stringrequired
Option 6
kindstringrequiredOne of
numbervaluenumberrequired
Option 7
kindstringrequiredOne of
datevaluestringrequired
Option 8
kindstringrequiredOne of
single_choiceoptionIdstringrequirednullableotherstring
Option 9
kindstringrequiredOne of
multi_choiceoptionIdsarray of stringrequiredotherstring
Option 10
kindstringrequiredOne of
dropdownoptionIdstringrequired
Option 11
kindstringrequiredOne of
yes_novaluebooleanrequired
Option 12
kindstringrequiredOne of
scalevalueintegerrequired
Option 13
kindstringrequiredOne of
color_listvaluesarray of stringrequired
Option 14
kindstringrequiredOne of
file_uploadmediaIdsarray of stringrequired
Option 15
kindstringrequiredOne of
statementconfirmedbooleanrequired
Option 16
kindstringrequiredOne of
connect_channelschannelIdsarray of stringrequired
definitionanyrequiredChild attributes
versionnumberrequiredOne of
1introobjectrequiredChild attributes
headingstringrequiredMin length 1 · Max length 300
bodystringMax length 2000
sectionsarray of objectrequiredMin items 1 · Max items 20
Child attributes
idstringrequiredMin length 1 · Max length 40
titlestringrequiredMin length 1 · Max length 300
descriptionstringMax length 2000
blocksarray of object or object or object or object or object or object or object or object or object or object or object or object or object or object or object or objectrequiredMax items 50
Option 1
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
short_textmaxLengthintegerDefault 200 · Min 1 · Max 500
Option 2
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
long_textmaxLengthintegerDefault 5000 · Min 1 · Max 10000
Option 3
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
email
Option 4
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
url
Option 5
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
url_listmaxItemsintegerDefault 10 · Min 1 · Max 50
Option 6
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
numberminnumbermaxnumber
Option 7
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
date
Option 8
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
single_choiceoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
allowOtherbooleanDefault false
Option 9
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
multi_choiceoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
allowOtherbooleanDefault false
Option 10
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
dropdownoptionsarray of objectrequiredMin items 2 · Max items 50
Child attributes
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
Option 11
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
yes_no
Option 12
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
scaleminintegerDefault 1
maxintegerDefault 5
minLabelstringMax length 60
maxLabelstringMax length 60
Option 13
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
color_listmaxItemsintegerDefault 6 · Min 1 · Max 12
Option 14
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
file_uploadacceptarray of stringrequiredMin items 1 · Max items 20
maxFilesintegerDefault 5 · Min 1 · Max 20
Option 15
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
statementbodystringrequiredMax length 2000
confirmLabelstringMax length 300
Option 16
idstringrequiredMin length 1 · Max length 40
labelstringrequiredMin length 1 · Max length 300
helpTextstringMax length 2000
requiredbooleanDefault false
showWhenobjectChild attributes
blockIdstringrequiredMin length 1 · Max length 40
opstringrequiredOne of
equalsnot_equalsincludesis_answeredvaluestringMax length 300
mappingobject or object or object or object or object or object or object or objectOption 1
targetstringrequiredOne of
workspace.name
Option 2
targetstringrequiredOne of
workspace.logo
Option 3
targetstringrequiredOne of
brand.voice
Option 4
targetstringrequiredOne of
brand.competitors
Option 5
targetstringrequiredOne of
persona
Option 6
targetstringrequiredOne of
objectivemetricKeystringMax length 100
Option 7
targetstringrequiredOne of
campaign.creativeDirection
Option 8
targetstringrequiredOne of
campaign.monthlyPostTarget
kindstringrequiredOne of
connect_channelsplatformsarray of stringrequiredOne of
blueskydiscordfacebookinstagramlinkedinpinterestthreadstiktokwordpressyoutubeMin items 1
minimumintegerDefault 0 · Min 0
outroobjectrequiredChild attributes
headingstringrequiredMin length 1 · Max length 300
bodystringMax length 2000
appliedBystringrequirednullableappliedTargetsarray of objectrequiredChild attributes
blockIdstringrequiredtargetstringrequiredvaluestringrequiredappliedAtnumberrequired
createdAtstring (date-time)requiredupdatedAtstring (date-time)required
QuestionnaireResponseSummary
idstringrequiredlinkIdstringrequiredstatusstringrequiredOne of
draftsubmittedappliedrespondentNamestringrequirednullablerespondentEmailstringrequirednullablestartedAtstring (date-time)requiredsubmittedAtstring (date-time)requirednullableappliedAtstring (date-time)requirednullable
QuestionnaireSummary
idstringrequiredworkspaceIdstringrequiredtemplateIdstringrequirednullabletemplateVersionintegerrequirednullablenamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstatusstringrequiredOne of
draftactivearchivedcreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequiredlinkCountintegerrequiredresponseCountintegerrequired
QuestionnaireTemplateSummary
idstringrequiredorganizationIdstringrequirednamestringrequireddescriptionstringrequirednullabledefinitionVersionintegerrequiredstarterKeystringrequirednullablearchivedbooleanrequiredarchivedAtstring (date-time)requirednullablecreatedBystringrequirednullablecreatedAtstring (date-time)requiredupdatedAtstring (date-time)requiredsectionCountintegerrequiredquestionCountintegerrequired