List creatives
Changed onReturns a workspace's creatives, most recently updated first. Session cookie, x-api-key, or a Bearer token, with read access to the workspace.
Archived creatives are left out unless filter[displayStatus][in] asks for archived. filter[displayStatus][in] filters on the derived displayStatus, so it matches what each row shows: a creative whose survey is paused matches paused, one whose schedule has ended matches closed. surveyId keeps the creatives that open that survey.
Pagination is keyset on the sort field and id. The cursor is opaque and bound to the sort order and the filters it was issued for; changing either answers 400. meta.nextCursor being null is the only end-of-collection signal.
Request
- Base URLhttps://app.formbricks.com
- URLhttps://app.formbricks.com/api/v3/creatives
- Auth
- API key in cookie next-auth.session-token
- or API key in header x-api-key
- or HTTP bearer
Query parameters
Workspace identifier. This is the canonical container ID for v3 APIs.
Page size. A value above the maximum is rejected with 400 rather than silently reduced to it — v3 rejects unusable input instead of substituting its own, the same way it rejects unrecognized query parameters. The server may still return fewer items than requested, so treat meta.nextCursor as the only end-of-collection signal rather than comparing the page length against limit.
Opaque cursor returned as meta.nextCursor from the previous page. Omit on the first request.
Case-insensitive substring match on the creative's name.
Creative types to include. Repeat the parameter or use comma-separated values.
Derived statuses to include. Repeat the parameter or use comma-separated values. Omit for every status but archived.
Only creatives whose Destination is this survey.
Sort order: updatedAt and createdAt newest first, name alphabetically. The cursor is bound to it.
Response
Creatives retrieved successfully
Example response
{
"data": [
{
"defaultLanguage": "en-US",
"languages": [
{
"code": "en-US"
}
],
"distribution": {
"showOn": "pageView",
"triggers": [],
"conditions": null,
"displayPercentage": null
},
"schedule": {
"startAt": "2026-11-01T02:00:00.000Z",
"endAt": "2026-11-01T04:00:00.000Z"
},
"content": {
"label": {
"en-US": "Feedback",
"de-DE": "Feedback geben"
}
},
"styling": {
"position": {
"desktop": {
"edge": "right",
"offset": 50
},
"phone": null
},
"theme": {
"customStyles": false,
"backgroundColor": null,
"textColor": null,
"borderColor": null,
"borderRadius": null,
"fontWeight": null,
"fontSize": {
"desktop": null,
"phone": null
},
"paddingX": {
"desktop": null,
"phone": null
},
"paddingY": {
"desktop": null,
"phone": null
}
}
}
}
]
}Changes
- info
added the required property
//////////to the response with the status - info
added the required property
//////////to the response with the status
- info
- warning
added the new
chart_in_useenum value to theresponse property for the response status - warning
added the new
chart_in_useenum value to theresponse property for the response status - warning
added the new
chart_in_useenum value to theresponse property for the response status - warning
added the new
chart_in_useenum value to theresponse property for the response status - warning
added the new
chart_in_useenum value to theresponse property for the response status - warning
added the new
dashboards_plan_requiredenum value to theresponse property for the response status - warning
added the new
dashboards_plan_requiredenum value to theresponse property for the response status - warning
added the new
dashboards_plan_requiredenum value to theresponse property for the response status - warning
added the new
dashboards_plan_requiredenum value to theresponse property for the response status - warning
added the new
dashboards_plan_requiredenum value to theresponse property for the response status - warning
added the new
limit_exceededenum value to the//response property for the response status - warning
added the new
limit_exceededenum value to the//response property for the response status - warning
added the new
limit_exceededenum value to the//response property for the response status - warning
added the new
limit_exceededenum value to the//response property for the response status - warning
added the new
limit_exceededenum value to the//response property for the response status
- warning