Formbricks

App · 19 actions

Create and run Formbricks surveys, read and record responses, and start workflows when people answer.

Actions

ActionWhat it does
Create a responseRecord a response to a survey, such as feedback collected somewhere else.
Create a surveyCreate a link survey from a list of questions, ready to share.
Create a user actionAdd an event your app tracks, so an in-app survey can show when it happens.
Create a webhookHave Formbricks send responses to an address of your own as they arrive.
Create single-use linksMake survey links that each accept one response, to send to people one by one.
Delete a responsePermanently delete one response.
Delete a surveyPermanently delete a survey and all of its responses.
Delete a user actionRemove a user action.
Delete a webhookStop a webhook sending events, and remove it.
Get a responseFetch one response and all of its answers.
Get a surveyFetch one survey: its status, link and questions.
Get a webhookFetch one webhook: where it sends, what, and for which surveys.
List responsesList survey responses, newest first, with every answer.
List surveysList the surveys in your Formbricks workspace, with their questions and links.
List user actionsList the user actions that can show an in-app survey, such as a page view or an event your app tracks.
List webhooksList the webhooks that send this workspace's responses elsewhere.
Update a responseChange answers on a response, or mark it completed.
Update a surveyRename a survey, open, pause or close it, or turn its single-use links on or off.
Update a webhookChange a webhook's name, address, events or surveys.

Create a response

Record a response to a survey, such as feedback collected somewhere else. Formbricks runs its usual follow-ups and webhooks.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.
AnswersanswersobjectRequired
An answer for each question to fill in. Leave a question empty to skip it. For multiple choice, separate the choices with commas.
Completedcompletedtrue/false
Whether the response is finished. Defaults to yes.Default: true.
Submitted atsubmitted_atdate and time
When it was collected. Defaults to now.
Languagelanguagetext
The language code it was answered in, such as de, if the survey is translated.

Outputs

answersobject
The answers keyed by question, such as {'How likely are you to recommend us?': 9}. The quickest way to read one answer.
answers_by_idobject
The same answers keyed by question ID, with hidden field values under their own IDs
completedtrue/false
Whether the person finished the survey
contact_idtext
The Formbricks contact who answered, if known
created_attext
When it was started
languagetext
The language code the survey was taken in, if set
metadataobject
Where the response came from: the page url, source, country and the person's browser, OS and device
response_idtext
Response ID. Use with Get, Update or Delete a response.
survey_idtext
The survey it answers
updated_attext
When it last changed
variablesobject
The survey's variables, such as a calculated score
Example output
{
  "answers": {
    "How likely are you to recommend us?": 9,
    "What should we improve?": "Faster exports",
    "source": "newsletter"
  },
  "answers_by_id": {
    "q1": 9,
    "q2": "Faster exports",
    "source": "newsletter"
  },
  "completed": true,
  "contact_id": "",
  "created_at": "2026-10-19T10:02:11.000Z",
  "language": "",
  "metadata": {
    "url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh"
  },
  "response_id": "cm2wr8d1k0003abcd5678ijkl",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "updated_at": "2026-10-19T10:03:40.000Z",
  "variables": {}
}

Create a survey

Create a link survey from a list of questions, ready to share. Finish styling or logic in Formbricks' editor if you need them.

Inputs

Survey namenametextRequired
The name people see at the top of the survey.
QuestionsquestionslistRequired
The questions to ask, in order.
Statusstatustext
Active opens the survey to responses straight away. Defaults to Active.One of: inProgress (Active), draft. Default: inProgress.

Outputs

created_attext
When it was created
hidden_fieldslist
The IDs of the survey's hidden fields
nametext
The survey's name
questionslist
The survey's questions, in order
single_use_linkstrue/false
Whether the survey only accepts single-use links
statustext
draft, scheduled, inProgress, paused or completed
survey_idtext
Survey ID. Use with the other survey and response steps.
survey_urltext
The link people open to take the survey. Empty for an in-app survey.
typetext
link for a shareable link survey, app for an in-app one
updated_attext
When it last changed
Example output
{
  "created_at": "2026-10-19T09:30:00.000Z",
  "hidden_fields": [
    "source"
  ],
  "name": "Customer feedback",
  "questions": [
    {
      "choices": [],
      "headline": "How likely are you to recommend us?",
      "question_id": "q1",
      "range": 10,
      "required": true,
      "type": "nps"
    },
    {
      "choices": [],
      "headline": "What should we improve?",
      "question_id": "q2",
      "required": false,
      "type": "openText"
    }
  ],
  "single_use_links": false,
  "status": "inProgress",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "survey_url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh",
  "type": "link",
  "updated_at": "2026-10-19T09:30:00.000Z"
}

Create a user action

Add an event your app tracks, so an in-app survey can show when it happens.

Inputs

NamenametextRequired
What the action is called in Formbricks.
KeykeytextRequired
The name your app tracks the event by, such as checkout-completed. It must be new in this workspace.
Descriptiondescriptiontext
What the action means, for your team.

Outputs

action_idtext
User action ID. Use with Delete a user action.
created_attext
When it was created
descriptiontext
What the action means
keytext
The key your app tracks, for a code action
nametext
The action's name
typetext
code for an action your app tracks, noCode for one set up in Formbricks
Example output
{
  "action_id": "cm2wt4b2c0007abcd3456qrst",
  "created_at": "2026-10-19T11:30:00.000Z",
  "description": "Fires when a customer finishes paying",
  "key": "checkout-completed",
  "name": "Checkout completed",
  "type": "code"
}

Create a webhook

Have Formbricks send responses to an address of your own as they arrive.

Inputs

Endpoint URLurltextRequired
The public https address Formbricks should send events to.
Eventseventslist
What to send. Defaults to completed responses.One or more of: responseFinished (Response completed), responseCreated (Response started), responseUpdated (Response updated).
Surveyssurvey_idslist
Only send events for these surveys. Leave empty for every survey.
Namenametext
A name to recognise the webhook by in Formbricks.

Outputs

all_surveystrue/false
Whether it sends for every survey in the workspace
created_attext
When it was created
eventslist
What it sends: responseFinished, responseCreated or responseUpdated
nametext
The webhook's name
signing_secrettext
The secret your endpoint uses to check that a delivery came from Formbricks. Formbricks shows it only this once.
survey_idslist
The surveys it sends for. Empty means every survey.
updated_attext
When it last changed
urltext
Where Formbricks sends events
webhook_idtext
Webhook ID. Use with Update or Delete a webhook.
Example output
{
  "all_surveys": true,
  "created_at": "2026-10-19T11:00:00.000Z",
  "events": [
    "responseFinished"
  ],
  "name": "Responses to the CRM",
  "signing_secret": "whsec_c2VjcmV0",
  "survey_ids": [],
  "updated_at": "2026-10-19T11:00:00.000Z",
  "url": "https://example.com/hooks/formbricks",
  "webhook_id": "cm2ws0p7e0005abcd9012mnop"
}

Make survey links that each accept one response, to send to people one by one. The survey's single-use links must be on.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.
How manycountnumber
How many links to make, 1 to 5000.From 1 to 5000. Default: 1.

Outputs

linkslist
The links, each good for one response
survey_idtext
The survey the links open
Example output
{
  "links": [
    "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh?suId=1a2b3c&suToken=4d5e6f"
  ],
  "survey_id": "cm2wq3k9x0001abcd1234efgh"
}

Delete a response

Permanently delete one response. This cannot be undone.

Inputs

Response IDresponse_idtextRequired
The response's ID, from 'List responses', a trigger or an earlier step.

Outputs

deletedtrue/false
True once Formbricks has deleted it
response_idtext
The response that was deleted
Example output
{
  "deleted": true,
  "response_id": "cm2wr8d1k0003abcd5678ijkl"
}

Delete a survey

Permanently delete a survey and all of its responses. This cannot be undone.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.

Outputs

deletedtrue/false
True once Formbricks has deleted it
survey_idtext
The survey that was deleted
Example output
{
  "deleted": true,
  "survey_id": "cm2wq3k9x0001abcd1234efgh"
}

Delete a user action

Remove a user action. Surveys it shows stop showing on that action.

Inputs

User actionaction_idtextRequired
The user action. Pick one, or give its ID from an earlier step.

Outputs

action_idtext
The user action that was deleted
deletedtrue/false
True once Formbricks has deleted it
Example output
{
  "action_id": "cm2wt4b2c0007abcd3456qrst",
  "deleted": true
}

Delete a webhook

Stop a webhook sending events, and remove it.

Inputs

Webhookwebhook_idtextRequired
The webhook. Pick one, or give its ID from an earlier step.

Outputs

deletedtrue/false
True once Formbricks has deleted it
webhook_idtext
The webhook that was deleted
Example output
{
  "deleted": true,
  "webhook_id": "cm2ws0p7e0005abcd9012mnop"
}

Get a response

Fetch one response and all of its answers.

Inputs

Response IDresponse_idtextRequired
The response's ID, from 'List responses', a trigger or an earlier step.

Outputs

answersobject
The answers keyed by question, such as {'How likely are you to recommend us?': 9}. The quickest way to read one answer.
answers_by_idobject
The same answers keyed by question ID, with hidden field values under their own IDs
completedtrue/false
Whether the person finished the survey
contact_idtext
The Formbricks contact who answered, if known
created_attext
When it was started
languagetext
The language code the survey was taken in, if set
metadataobject
Where the response came from: the page url, source, country and the person's browser, OS and device
response_idtext
Response ID. Use with Get, Update or Delete a response.
survey_idtext
The survey it answers
updated_attext
When it last changed
variablesobject
The survey's variables, such as a calculated score
Example output
{
  "answers": {
    "How likely are you to recommend us?": 9,
    "What should we improve?": "Faster exports",
    "source": "newsletter"
  },
  "answers_by_id": {
    "q1": 9,
    "q2": "Faster exports",
    "source": "newsletter"
  },
  "completed": true,
  "contact_id": "",
  "created_at": "2026-10-19T10:02:11.000Z",
  "language": "",
  "metadata": {
    "url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh"
  },
  "response_id": "cm2wr8d1k0003abcd5678ijkl",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "updated_at": "2026-10-19T10:03:40.000Z",
  "variables": {}
}

Get a survey

Fetch one survey: its status, link and questions.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.

Outputs

created_attext
When it was created
hidden_fieldslist
The IDs of the survey's hidden fields
nametext
The survey's name
questionslist
The survey's questions, in order
single_use_linkstrue/false
Whether the survey only accepts single-use links
statustext
draft, scheduled, inProgress, paused or completed
survey_idtext
Survey ID. Use with the other survey and response steps.
survey_urltext
The link people open to take the survey. Empty for an in-app survey.
typetext
link for a shareable link survey, app for an in-app one
updated_attext
When it last changed
Example output
{
  "created_at": "2026-10-19T09:30:00.000Z",
  "hidden_fields": [
    "source"
  ],
  "name": "Customer feedback",
  "questions": [
    {
      "choices": [],
      "headline": "How likely are you to recommend us?",
      "question_id": "q1",
      "range": 10,
      "required": true,
      "type": "nps"
    },
    {
      "choices": [],
      "headline": "What should we improve?",
      "question_id": "q2",
      "required": false,
      "type": "openText"
    }
  ],
  "single_use_links": false,
  "status": "inProgress",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "survey_url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh",
  "type": "link",
  "updated_at": "2026-10-19T09:30:00.000Z"
}

Get a webhook

Fetch one webhook: where it sends, what, and for which surveys.

Inputs

Webhookwebhook_idtextRequired
The webhook. Pick one, or give its ID from an earlier step.

Outputs

all_surveystrue/false
Whether it sends for every survey in the workspace
created_attext
When it was created
eventslist
What it sends: responseFinished, responseCreated or responseUpdated
nametext
The webhook's name
survey_idslist
The surveys it sends for. Empty means every survey.
updated_attext
When it last changed
urltext
Where Formbricks sends events
webhook_idtext
Webhook ID. Use with Update or Delete a webhook.
Example output
{
  "all_surveys": true,
  "created_at": "2026-10-19T11:00:00.000Z",
  "events": [
    "responseFinished"
  ],
  "name": "Responses to the CRM",
  "survey_ids": [],
  "updated_at": "2026-10-19T11:00:00.000Z",
  "url": "https://example.com/hooks/formbricks",
  "webhook_id": "cm2ws0p7e0005abcd9012mnop"
}

List responses

List survey responses, newest first, with every answer.

Inputs

Surveysurvey_idtext
Only responses to this survey. Leave empty for every survey.
Fromstart_datedate and time
Only responses on or after this moment.
Untilend_datedate and time
Only responses on or before this moment.
Dates meandate_fieldtext
Whether From, Until and the order go by when a response was started or last changed. Defaults to started.One of: createdAt (When it was started), updatedAt (When it was last changed).
Orderordertext
Which end of the list to start from.One of: desc (Newest first), asc (Oldest first). Default: desc.
Maximum responseslimitnumber
How many to return, 1 to 250.From 1 to 250. Default: 50.
Skipskipnumber
Skip this many before returning any, to read the next page.At least 0.

Outputs

responseslist
The matching responses
totalnumber
How many responses match in total. Walk them with Skip.
Example output
{
  "responses": [
    {
      "answers": {
        "How likely are you to recommend us?": 9,
        "What should we improve?": "Faster exports",
        "source": "newsletter"
      },
      "answers_by_id": {
        "q1": 9,
        "q2": "Faster exports",
        "source": "newsletter"
      },
      "completed": true,
      "contact_id": "",
      "created_at": "2026-10-19T10:02:11.000Z",
      "language": "",
      "metadata": {
        "url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh"
      },
      "response_id": "cm2wr8d1k0003abcd5678ijkl",
      "survey_id": "cm2wq3k9x0001abcd1234efgh",
      "updated_at": "2026-10-19T10:03:40.000Z",
      "variables": {}
    }
  ],
  "total": 1
}

List surveys

List the surveys in your Formbricks workspace, with their questions and links.

Inputs

Maximum surveyslimitnumber
How many to return, 1 to 250. Leave empty for all.From 1 to 250.
Skipskipnumber
Skip this many before returning any, to read the next page.At least 0.

Outputs

surveyslist
The workspace's surveys, newest first
Example output
{
  "surveys": [
    {
      "created_at": "2026-10-19T09:30:00.000Z",
      "hidden_fields": [
        "source"
      ],
      "name": "Customer feedback",
      "questions": [
        {
          "choices": [],
          "headline": "How likely are you to recommend us?",
          "question_id": "q1",
          "range": 10,
          "required": true,
          "type": "nps"
        },
        {
          "choices": [],
          "headline": "What should we improve?",
          "question_id": "q2",
          "required": false,
          "type": "openText"
        }
      ],
      "single_use_links": false,
      "status": "inProgress",
      "survey_id": "cm2wq3k9x0001abcd1234efgh",
      "survey_url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh",
      "type": "link",
      "updated_at": "2026-10-19T09:30:00.000Z"
    }
  ]
}

List user actions

List the user actions that can show an in-app survey, such as a page view or an event your app tracks.

Inputs

None.

Outputs

actionslist
The workspace's user actions
Example output
{
  "actions": [
    {
      "action_id": "cm2wt4b2c0007abcd3456qrst",
      "created_at": "2026-10-19T11:30:00.000Z",
      "description": "Fires when a customer finishes paying",
      "key": "checkout-completed",
      "name": "Checkout completed",
      "type": "code"
    }
  ]
}

List webhooks

List the webhooks that send this workspace's responses elsewhere.

Inputs

None.

Outputs

webhookslist
The workspace's webhooks
Example output
{
  "webhooks": [
    {
      "all_surveys": true,
      "created_at": "2026-10-19T11:00:00.000Z",
      "events": [
        "responseFinished"
      ],
      "name": "Responses to the CRM",
      "survey_ids": [],
      "updated_at": "2026-10-19T11:00:00.000Z",
      "url": "https://example.com/hooks/formbricks",
      "webhook_id": "cm2ws0p7e0005abcd9012mnop"
    }
  ]
}

Update a response

Change answers on a response, or mark it completed. Answers left empty keep their current value.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.
Response IDresponse_idtextRequired
The response's ID, from 'List responses', a trigger or an earlier step.
Answersanswersobject
The answers to change. Leave a question empty to keep its answer. For multiple choice, separate the choices with commas.
Statuscompletedtext
Mark the response completed or in progress.One of: true (Completed), false (In progress).

Outputs

answersobject
The answers keyed by question, such as {'How likely are you to recommend us?': 9}. The quickest way to read one answer.
answers_by_idobject
The same answers keyed by question ID, with hidden field values under their own IDs
completedtrue/false
Whether the person finished the survey
contact_idtext
The Formbricks contact who answered, if known
created_attext
When it was started
languagetext
The language code the survey was taken in, if set
metadataobject
Where the response came from: the page url, source, country and the person's browser, OS and device
response_idtext
Response ID. Use with Get, Update or Delete a response.
survey_idtext
The survey it answers
updated_attext
When it last changed
variablesobject
The survey's variables, such as a calculated score
Example output
{
  "answers": {
    "How likely are you to recommend us?": 9,
    "What should we improve?": "Faster exports",
    "source": "newsletter"
  },
  "answers_by_id": {
    "q1": 9,
    "q2": "Faster exports",
    "source": "newsletter"
  },
  "completed": true,
  "contact_id": "",
  "created_at": "2026-10-19T10:02:11.000Z",
  "language": "",
  "metadata": {
    "url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh"
  },
  "response_id": "cm2wr8d1k0003abcd5678ijkl",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "updated_at": "2026-10-19T10:03:40.000Z",
  "variables": {}
}

Update a survey

Rename a survey, open, pause or close it, or turn its single-use links on or off. Empty fields stay as they are.

Inputs

Surveysurvey_idtextRequired
The survey. Pick one, or give its ID from an earlier step.
New namenametext
The survey's new name.
Statusstatustext
Active collects responses, Paused stops for now, and Closed ends the survey.One of: inProgress (Active), paused, completed (Closed).
Single-use linkssingle_use_linkstext
On makes the survey accept only links made by Create single-use links, each good for one response.One of: on, off.

Outputs

created_attext
When it was created
hidden_fieldslist
The IDs of the survey's hidden fields
nametext
The survey's name
questionslist
The survey's questions, in order
single_use_linkstrue/false
Whether the survey only accepts single-use links
statustext
draft, scheduled, inProgress, paused or completed
survey_idtext
Survey ID. Use with the other survey and response steps.
survey_urltext
The link people open to take the survey. Empty for an in-app survey.
typetext
link for a shareable link survey, app for an in-app one
updated_attext
When it last changed
Example output
{
  "created_at": "2026-10-19T09:30:00.000Z",
  "hidden_fields": [
    "source"
  ],
  "name": "Customer feedback",
  "questions": [
    {
      "choices": [],
      "headline": "How likely are you to recommend us?",
      "question_id": "q1",
      "range": 10,
      "required": true,
      "type": "nps"
    },
    {
      "choices": [],
      "headline": "What should we improve?",
      "question_id": "q2",
      "required": false,
      "type": "openText"
    }
  ],
  "single_use_links": false,
  "status": "inProgress",
  "survey_id": "cm2wq3k9x0001abcd1234efgh",
  "survey_url": "https://app.formbricks.com/s/cm2wq3k9x0001abcd1234efgh",
  "type": "link",
  "updated_at": "2026-10-19T09:30:00.000Z"
}

Update a webhook

Change a webhook's name, address, events or surveys. Empty fields stay as they are.

Inputs

Webhookwebhook_idtextRequired
The webhook. Pick one, or give its ID from an earlier step.
Endpoint URLurltext
The new public https address to send events to.
Eventseventslist
What to send from now on.One or more of: responseFinished (Response completed), responseCreated (Response started), responseUpdated (Response updated).
Surveyssurvey_idslist
Only send events for these surveys from now on.
Namenametext
The webhook's new name.

Outputs

all_surveystrue/false
Whether it sends for every survey in the workspace
created_attext
When it was created
eventslist
What it sends: responseFinished, responseCreated or responseUpdated
nametext
The webhook's name
survey_idslist
The surveys it sends for. Empty means every survey.
updated_attext
When it last changed
urltext
Where Formbricks sends events
webhook_idtext
Webhook ID. Use with Update or Delete a webhook.
Example output
{
  "all_surveys": true,
  "created_at": "2026-10-19T11:00:00.000Z",
  "events": [
    "responseFinished"
  ],
  "name": "Responses to the CRM",
  "survey_ids": [],
  "updated_at": "2026-10-19T11:00:00.000Z",
  "url": "https://example.com/hooks/formbricks",
  "webhook_id": "cm2ws0p7e0005abcd9012mnop"
}

On this page