Skip to content

Forms MCP tools

78 tools.

forms_me_get

Get current Forms user · read-only

The authenticated Yandex Forms user (a safe auth probe).

forms_surveys_list

List Forms surveys · read-only

Every form (survey) the caller can see, auto-paginated over the API's offset pages.

Capped at the configured item cap unless limit is given. Each item's id is the form id you pass to surveys_get / questions_list / answers_list.

Parameter Type Required Description
limit integer Max forms to return; 0 means the configured cap (YCLI__HTTP__MAX_ITEMS).
name string Keep the forms whose name matches.
published boolean or null Only published (true) or only unpublished (false).
ownership string mine (created by the caller) or shared (open to them).
group string Keep the forms of this group.
favourite boolean or null Only favourites (true) or only the others (false).
show_all boolean For an administrator, every form of the organization.
orderby string Sort, a comma list such as name,-modified,-count.

forms_surveys_get

Get Forms survey · read-only

One form's settings by id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_surveys_create

Create Forms survey · write

Create a new form from the given settings; returns the created Survey (note its id).

Only the fields you set are sent. Follow up with questions_create to add questions and surveys_publish to make the form fillable.

Parameter Type Required Description
body object yes Typed request body for creating a form (POST /surveys). Every setting the API publishes is a field. The CLI has an option for the common ones and takes the rest through its repeatable --field key=value JSON escape, merged onto this body. Unset (None) fields are dropped before the request is sent. language, is_published and is_public are accepted and ignored by the API (checked live on 2026-10-04): they stay for callers that send them, and setting one logs a warning.

forms_surveys_update

Modify Forms survey · idempotent write

Patch a form's settings — only the fields set in body change; returns the Survey.

Untouched settings keep their current values, so a partial patch is safe to repeat.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes Typed request body for modifying a form (PATCH /surveys/{survey_id}). Same optional fields as :class:SurveyCreate; only the fields you set are sent, so a partial patch never disturbs untouched settings.

forms_surveys_delete

Delete Forms survey · destructive write

Delete a form permanently — IRREVERSIBLE: its questions and collected answers are lost.

The API answers 204 No Content; the returned record confirms the accepted action.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_surveys_publish

Publish Forms survey · write

Publish a form so respondents can fill it; fails if the form is blocked or at its cap.

The API answers a bare 200 OK; the returned record confirms the accepted action. Reverse with surveys_unpublish.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_surveys_unpublish

Unpublish Forms survey · write

Take a published form offline (respondents can no longer fill it); reversible via publish.

The API answers a bare 200 OK; the returned record confirms the accepted action.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_questions_list

List Forms questions · read-only

A form's questions, grouped into pages (the {pages} envelope).

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_questions_get

Get Forms question · read-only

One question's settings by id — label, slug, type and common presentation flags.

Where questions_list returns every question grouped into pages, this fetches a single question keyed by question_id (take it from an item's id in questions_list). Type-specific detail (validators, options, conditions) is lenient-ignored.

Parameter Type Required Description
survey_id string yes Form id (hex ObjectId) the question belongs to.
question_id string yes Question id (integer) to fetch.
with_slugs boolean Refer to other questions by slug instead of id.

forms_questions_create

Create Forms question · write

Append a question to a form; returns the created Question (note its id).

body is one of the 12 typed question schemas discriminated by type (string, enum, matrix, …). The new question lands at the end of the form — reposition it afterwards with questions_move.

Parameter Type Required Description
survey_id string yes Form id (hex ObjectId) to add the question to.
body any yes Typed question body; the type tag selects the question schema.

forms_questions_update

Modify Forms question · idempotent write

Replace a question's settings (same typed body as create); returns the updated Question.

The body's type must match the existing question's type; look it up with questions_get first.

Parameter Type Required Description
survey_id string yes Form id (hex ObjectId) the question belongs to.
question_id string yes Question id (integer) to modify.
body any yes Typed question body; type must match the existing question.

forms_questions_delete

Delete Forms question · destructive write

Delete a question from a form; one that a display condition refers to is refused.

Delete the condition first (conditions_question_delete).

The API answers 204 No Content; the returned record confirms the accepted action.

Parameter Type Required Description
survey_id string yes Form id (hex ObjectId) the question belongs to.
question_id string yes Question id (integer) to delete.
force boolean Ignored by the API: a question that a display condition refers to is refused all the same.

forms_questions_move

Move Forms question · write

Reposition a question on the form (target page + position); returns the moved question's id.

body.position needs a page target to take effect — the underlying API silently ignores a bare position (200, nothing moves) — so QuestionMove raises a validation error if position is set with no page / page_id / question / create_page target; pass one explicitly (e.g. page=1). Display-condition consistency is validated server-side — moving a question above one its conditions depend on is rejected.

Parameter Type Required Description
survey_id string yes Form id (hex ObjectId) the question belongs to.
question_id string yes Question id (integer) to reposition.
body object yes Target placement: page / page_id / create_page and position.

forms_conditions_question_list

List Forms question show conditions · read-only

A question's show conditions: the {operator, items} envelope of condition groups.

The top-level operator joins the GROUPS; each group has its own operator joining its clauses. A group's integer id is what the get/modify/delete tools take.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.

forms_conditions_question_get

Get Forms question show condition · read-only

One condition group of a question by id — its operator and clause items.

Clauses have no ids of their own: edit one by replacing the whole group via conditions_question_update.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_question_create

Create Forms question show condition · write

Add a condition group to a question — it shows only when its conditions match.

The group operator joins the clauses WITHIN it; at least one clause is required. Returns the created group with its server-assigned integer id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.
body object yes The new group: operator + at least one clause.

forms_conditions_question_update

Modify Forms question show condition · idempotent write

Replace a question's condition group — a FULL replacement, not a partial update.

Despite the PATCH verb the API validates a complete group: operator and at least one clause are both required; the group id is never sent.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.
body object yes FULL replacement (PATCH validates the complete group).

forms_conditions_question_delete

Delete Forms question show condition · destructive write

Delete one condition group from a question; the other groups stay untouched.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_question_set_operator

Set Forms question conditions operator · idempotent write

Set the boolean operator BETWEEN a question's condition groups; returns the envelope.

Group-internal operators are untouched — change those via conditions_question_update.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
question_id string yes Question id (integer) from questions_list.
operator and · or yes Boolean operator joining the condition groups.

forms_conditions_page_list

List Forms page show conditions · read-only

A page's show conditions: the {operator, items} envelope of condition groups.

The top-level operator joins the GROUPS; each group has its own operator joining its clauses. A group's integer id is what the get/modify/delete tools take.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.

forms_conditions_page_get

Get Forms page show condition · read-only

One condition group of a page by id — its operator and clause items.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_page_create

Create Forms page show condition · write

Add a condition group to a page — the page shows only when its conditions match.

Page clauses still reference QUESTION slugs (type=question + question). Returns the created group with its server-assigned integer id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.
body object yes The new group: operator + at least one clause.

forms_conditions_page_update

Modify Forms page show condition · idempotent write

Replace a page's condition group — a FULL replacement, not a partial update.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.
condition_id integer yes Condition group id (integer) from the matching *_list tool.
body object yes FULL replacement (PATCH validates the complete group).

forms_conditions_page_delete

Delete Forms page show condition · destructive write

Delete one condition group from a page; the other groups stay untouched.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_page_set_operator

Set Forms page conditions operator · idempotent write

Set the boolean operator BETWEEN a page's condition groups; returns the envelope.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
page_id integer yes Page id (integer) from questions_list pages.
operator and · or yes Boolean operator joining the condition groups.

forms_conditions_submit_list

List Forms submit-button show conditions · read-only

The submit button's show conditions: the {operator, items} envelope of groups.

These hang directly on the survey (GET /surveys/{id}/conditions).

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_conditions_submit_get

Get Forms submit-button show condition · read-only

One condition group of the submit button by id — its operator and clauses.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_submit_create

Create Forms submit-button show condition · write

Add a condition group gating the form's submit button; returns it with its id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes The new group: operator + at least one clause.

forms_conditions_submit_update

Modify Forms submit-button show condition · idempotent write

Replace a submit-button condition group — a FULL replacement, not a partial update.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.
body object yes FULL replacement (PATCH validates the complete group).

forms_conditions_submit_delete

Delete Forms submit-button show condition · destructive write

Delete one condition group from the submit button; the other groups stay untouched.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_submit_set_operator

Set Forms submit-button conditions operator · idempotent write

Set the boolean operator BETWEEN the submit button's condition groups.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
operator and · or yes Boolean operator joining the condition groups.

forms_conditions_hook_list

List Forms integration-group conditions · read-only

An integration group's conditions: the {operator, items} envelope of groups.

The group's integrations run on a new answer only when these conditions match.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.

forms_conditions_hook_get

Get Forms integration-group condition · read-only

One condition group of an integration group by id — its operator and clauses.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_hook_create

Create Forms integration-group condition · write

Add a condition group to an integration group; returns it with its id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
body object yes The new group: operator + at least one clause.

forms_conditions_hook_update

Modify Forms integration-group condition · idempotent write

Replace an integration group's condition group — a FULL replacement.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.
body object yes FULL replacement (PATCH validates the complete group).

forms_conditions_hook_delete

Delete Forms integration-group condition · destructive write

Delete one condition group from an integration group; the others stay untouched.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
condition_id integer yes Condition group id (integer) from the matching *_list tool.

forms_conditions_hook_set_operator

Set Forms integration-group conditions operator · idempotent write

Set the boolean operator BETWEEN an integration group's condition groups.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
operator and · or yes Boolean operator joining the condition groups.

forms_access_get

Get Forms survey access · read-only

Who may edit (change) and who may fill (submit) a form, one entry per action.

access is owner, restricted (the listed users/groups), common (the whole organization) or public (anyone with the link).

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_access_set

Set Forms survey access level · idempotent write

Set the access level of one action (change or submit); returns every permission.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes The action and its new access level.

forms_access_grant

Grant Forms survey access · idempotent write

Let a user or a group perform an action on a form; returns every permission.

Granting someone who already has the action changes nothing.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes The action and the user or group to add.

forms_access_revoke

Revoke Forms survey access · destructive write

Stop a user or a group performing an action on a form; returns every permission.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes The action and the user or group to remove.

forms_history_list

List Forms change log · read-only

The changes made to a form — who changed which part, when — across pages.

Capped at the configured item cap unless limit is given.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).
ordering asc · desc or null desc (newest first, the API default) or asc.
limit integer Most events to return (0 = the configured cap).

forms_answers_get

Get Forms answer · read-only

One full form response by answer_id or answer_key (exactly one required).

A flat query-param route (GET /v1/answers) — no survey id needed. Each data item is a self-describing question record ({id, label, type, value, …}).

Parameter Type Required Description
answer_id integer or null Numeric answer id (from answers_list; needs form-edit access).
answer_key string or null Answer key hash — works without form-edit access.

forms_answers_list

List Forms answers · read-only

A form's responses, capped at config.http.max_items (drains pages via the next cursor).

Returns the {columns, answers, next} envelope; next is always None in the merged result. Use the CLI --all flag for an uncapped drain.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
questions string Comma-separated question ids to return answers for.
use_slugs boolean Name questions and options by slug instead of id.
date_from string ISO-8601: answers given at or after.
date_to string ISO-8601: answers given at or before.
ordering string asc (oldest first) or desc (the default).
page_size integer or null Answers per request (the API's default is 25).
answer_format string default (cells aligned to columns) or raw (each answer's data as stored, with no columns).

forms_answers_export

Export Forms answers · write

Start an async export of a form's answers (csv/xlsx); returns the operation to poll.

An empty body exports every answer as xlsx. Poll the returned id with operations_get until the status is terminal; download the finished file with the forms answers export --wait CLI command (binary payload — not exposed over MCP).

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes Typed request body for POST /v1/surveys/{id}/answers/export (start an async export). Every field is optional — the API defaults format to xlsx and upload to default. Unset (None) fields are dropped before the request is sent, so a bare AnswerExport() exports every answer of the form in xlsx.

forms_answers_integrations_list

List Forms answer integrations · read-only

The integration runs one answer triggered, by answer_id or answer_key (exactly one).

Each entry has the run's status and the field of its type (issue_key, link, to_address, url, ...); notifications_get has the full run.

Parameter Type Required Description
answer_id integer or null Numeric answer id (from answers_list; needs form-edit access).
answer_key string or null Answer key hash — works without form-edit access.

forms_answers_delete

Delete a Forms answer · destructive write

Delete one answer of a form; answers_restore brings it back.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).
answer_id integer yes Answer id (integer) from answers_list.

forms_answers_restore

Restore a deleted Forms answer · write

Bring a deleted answer of a form back.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).
answer_id integer yes Id of the deleted answer (integer).

forms_keysets_list

List Forms key sets · read-only

Every personal-link key set on a form, as a flat array.

A key set is a batch of single-use keys that become personal form-filling links; each item's integer id is what you pass to keysets_get. Use surveys_list to find the survey_id first. Downloading the actual keys is a binary payload — CLI/SDK-only.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), e.g. 6818ceffe010db4f59d11329.

forms_keysets_get

Get Forms key set · read-only

One key set's settings and usage (total keys, used count, is_enabled).

Look up keyset_id via keysets_list. To download the actual keys use the forms keysets download CLI command (binary payload — not exposed over MCP).

Parameter Type Required Description
survey_id string yes Form id (24-char hex) the key set belongs to.
keyset_id integer yes Key set id (integer) from keysets_list.

forms_keysets_create

Create Forms key set · write

Create a batch of single-use personal-link keys on a form; returns the created Keyset.

The API rejects a body without is_enabled, so set it explicitly alongside name and total. Download the generated keys via the forms keysets download CLI command (binary payload — not exposed over MCP).

Parameter Type Required Description
survey_id string yes Form id (24-char hex) to add the key set to.
body object yes Key set settings; the API requires is_enabled on create.

forms_keysets_update

Modify Forms key set · idempotent write

Replace a key set's settings; returns the updated Keyset.

Despite the PATCH verb, the API validates the body as a full record: name, total and is_enabled must all be set or the request is rejected with 400.

Parameter Type Required Description
survey_id string yes Form id (24-char hex) the key set belongs to.
keyset_id integer yes Key set id (integer) from keysets_list.
body object yes Full key set record — name, total and is_enabled are all required.

forms_keysets_delete

Delete Forms key set · destructive write

Delete a key set — its unused keys (personal fill links) stop working.

The API answers 200 OK with no body, so a typed acknowledgement is returned.

Parameter Type Required Description
survey_id string yes Form id (24-char hex) the key set belongs to.
keyset_id integer yes Key set id (integer) to delete.

forms_operations_get

Get Forms operation · read-only

The status of a long-running Forms operation — poll this to watch an async export finish.

Returns {id, status, message} where status is one of ok (finished, result ready), fail, wait (still running) or not_running. Take the operation_id from the id an async trigger returned (e.g. the answers_export tool or ycli forms answers export … --no-wait); re-call until status is ok or fail.

Parameter Type Required Description
operation_id string yes Operation id returned by an async trigger (e.g. an answers export).

forms_notifications_list

List Forms integration runs · read-only

Runs of a form's integrations (one per answer and integration), across pages.

Capped at the configured item cap unless limit is given. Read one run's context, response and error with notifications_get.

Parameter Type Required Description
survey_id string or null Only this form's runs (24-char hex).
hook_id integer or null Only this integration group.
subscription_id integer or null Only this integration.
answer_id integer or null Only runs for this answer.
status array of pending · success · error · canceled or null Only runs in these states.
created_since string or null ISO-8601: queued at or after.
created_until string or null ISO-8601: queued at or before.
finished_since string or null ISO-8601: ended at or after.
finished_until string or null ISO-8601: ended at or before.
visible boolean or null True: only shown runs; false: only hidden ones.
integration_type email · tracker · tracker_comment · wiki · jsonrpc · post · put · http · function or null Only runs of this integration type.
ordering asc · desc or null asc (oldest first, the API default) or desc.
limit integer Most runs to return (0 = the configured cap).

forms_notifications_get

Get a Forms integration run · read-only

One integration run with what the integration was given, answered and failed with.

Parameter Type Required Description
notification_id integer yes Notification id (integer) from notifications_list.

forms_notifications_status_get

Get a Forms integration run state · read-only

The state of one integration run: pending, success, error or canceled.

Parameter Type Required Description
notification_id integer yes Notification id (integer) from notifications_list.

forms_notifications_restart

Restart a Forms integration run · write

Run the integration again for that answer.

A result.status of operation means it runs in the background: poll result.operation_id with operations_get.

Parameter Type Required Description
notification_id integer yes Notification id (integer) from notifications_list.

forms_notifications_cancel

Cancel a Forms integration run · write

Stop an integration run that has not finished.

A run that is already canceled or finished answers result.status skip.

Parameter Type Required Description
notification_id integer yes Notification id (integer) from notifications_list.

forms_notifications_errors_list

List a Forms survey's failed integration runs · read-only

Ids of a form's failed integration runs that are still shown.

Read each with notifications_get.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).

forms_files_verify

Verify Forms files · read-only

Check the upload/scan status and download access of already-uploaded form-filling files.

A read done via POST — nothing is mutated. Each returned item's check_status is one of check, ready, infected, error, deleted. Uploading and downloading the files themselves are binary payloads — CLI/SDK-only.

Parameter Type Required Description
survey_id string yes Form id (24-char hex) the files belong to.
files array of object yes File references to check — each a {path, url} from an upload.

forms_files_delete

Delete Forms file · destructive write

Delete a stored form-filling file, identified by its path and/or url.

At least one of path / url must identify the file. The API answers 200 OK with no useful body, so the returned record confirms the accepted action.

Parameter Type Required Description
path string or null File download path (from the upload response).
url string or null File download URL.

forms_images_clone

Clone a Forms image · write

Copy an existing image into a form; returns the new image with its integer id.

Reference the returned id from a question's, option's or form style's image.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).
body object yes The image to copy and the clone's name.

forms_filling_get

Get Forms fillable form · read-only

The form's fill-time settings — the pages/questions to fill, submit conditions, and values.

Use this to discover a form's fillable structure: pages[].items[] are the questions (each a polymorphic question schema) and their id values are the slug keys a response is posted under. Complements surveys_get (admin settings) and questions_list (authoring view). Post a response with filling_submit.

Parameter Type Required Description
survey string yes Form id, its slug, or an id+verification-key combination.
key string or null Personal-link fill key, when the form uses one.

forms_filling_suggest

Get Forms fill suggestions · read-only

Autocomplete prompts for a suggest-type question while filling a form.

Pass the question slug (from filling_get) plus the search text; each returned item's id/text is a candidate value for the answer.

Parameter Type Required Description
survey string yes Form id or slug.
question string or null Question slug to suggest for.
text string or null Search text typed so far.
suggest_id string or null Comma-separated suggestion-object ids to resolve (the API's id).
parent_id string or null Parent object id scoping a Master/Detail lookup.

forms_filling_submit

Submit Forms response · write

Submit a response to a published form — this saves a REAL answer unless dry_run is set.

body maps each question slug (discover them via filling_get) to its answer — a scalar, a string list, a {begin, end} date range, or matrix {row, column} items. Returns the success-page payload (answer_id confirms the save).

Parameter Type Required Description
survey string yes Form id or slug of a published form.
body object yes Answer map keyed by question slug (see filling_get for the slugs).
dry_run boolean Validate only — saves nothing and fires no integrations.
key string or null Personal-link fill key, when the form uses one.

forms_hooks_list

List Forms integration groups · read-only

A form's integration groups, each with its conditions and integrations.

An integration group (hook) runs its active integrations on every new answer that matches its conditions; conditions_hook_* edit the conditions, subscriptions_* the integrations.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.

forms_hooks_get

Get Forms integration group · read-only

One integration group by id, with its conditions and integrations.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.

forms_hooks_create

Create Forms integration group · write

Create an empty integration group on a form; returns it with its integer id.

Add integrations with subscriptions_create and conditions with conditions_hook_create.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
body object yes Group name and active flag (both optional).

forms_hooks_update

Modify Forms integration group · idempotent write

Rename an integration group or switch it on or off; only the fields set change.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
body object yes Fields to change; unset ones stay.

forms_hooks_delete

Delete Forms integration group · destructive write

Delete an integration group together with its integrations and conditions.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.

forms_subscriptions_list

List Forms integrations · read-only

Every integration of an integration group (hook), each tagged by type.

Types: email, tracker, tracker_comment, wiki, jsonrpc, http, function. hooks_list returns the same integrations nested in each hook.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.

forms_subscriptions_get

Get Forms integration · read-only

One integration of a hook by id, with its type-specific settings.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
subscription_id integer yes Integration id (integer) from subscriptions_list.

forms_subscriptions_create

Create Forms integration · write

Add an integration to a hook; it runs on every new answer while active is true.

Create it with active: false to configure it without sending anything yet. Returns the integration with its integer id.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
body any yes The integration; type selects its schema.

forms_subscriptions_update

Modify Forms integration · idempotent write

Change an integration: only the fields set in body change.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
subscription_id integer yes Integration id (integer) from subscriptions_list.
body any yes Fields to change; type must match the integration's type.

forms_subscriptions_delete

Delete Forms integration · destructive write

Delete one integration from a hook; the hook's other integrations stay.

Parameter Type Required Description
survey_id string yes Form id (24-char hex), from surveys_list.
hook_id integer yes Integration group id (integer) from hooks_list.
subscription_id integer yes Integration id (integer) from subscriptions_list.

forms_variables_list

List Forms integration variables · read-only

The variable types a form's integrations can reference in their texts.

Each item names a type (e.g. form.answer_url, form.question_answer), the arguments it takes and the renderers it supports; put one into a subscription's variables to use it.

Parameter Type Required Description
survey_id string yes Form id (24-char hex).