GoRunner

Resolve a dropdown property's options

Requires scope workflow:read
POST
/api/pieces/{id}/actions/{actionId}/options/{propertyName}

Fetches the legal values for a property the schema marks dynamic — the fields listed in dynamicFields on the action/trigger detail, i.e. those whose propertyType is DROPDOWN, MULTI_SELECT or DYNAMIC. Their values are NOT in the schema; this endpoint is the only way to learn them.

POST because the request carries the partially-filled configuration (values), the connectionId whose credentials the piece needs, and an optional searchQuery for pickers that filter server-side. Resolution runs on a worker (the API never decrypts credentials), except for the workspace pickers below.

THERE IS NO TRIGGERS/OPTIONS ROUTE. A dropdown that belongs to a TRIGGER must still be fetched through this actions path; the piece id and property name are what select the handler. The two workspace pickers served directly by the API — errortrigger/runfinishedtrigger with propertyName=watch_workflow (returns All workflows plus every workflow in the workspace) and subflow with propertyName=workflow_id (returns the workspace's workflows, callable ones first, each label stating its trigger and whether it is unpublished) — accept any actionId in the path.

A piece that declares no dynamic options answers 400 NOT_SUPPORTED.

Send Content-Type: application/json.

Requires workflow:read. Resolving a dynamic value is not a catalog read: it can return tenant data (the subflow piece's workflow_id option is this workspace's whole workflow list) and, when the request carries a connectionId, the credential is resolved and decrypted on a worker so the piece can call the third party.

Authorization

bearerAuth
AuthorizationBearer <token>

An API token: Authorization: Bearer grt_…. Mint one in the app under Settings → Workspace → API tokens; the raw value is shown once. Scopes confine the token — see x-permission on each operation.

In: header

Path Parameters

id*string

Piece id.

actionId*string

Action id the property belongs to. Ignored by the two workspace pickers (subflow.workflow_id, errortrigger/runfinishedtrigger watch_workflow), which are keyed on piece id and property name.

propertyName*string

The dropdown property whose options are being fetched.

Request Body

application/json

The configuration so far, the connection to use, and an optional search term. An empty object is legal.

TypeScript Definitions

Use the request body type in TypeScript.

Context for resolving a dropdown's options.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/api/pieces/subflow/actions/run_workflow/options/workflow_id" \  -H "Content-Type: application/json" \  -d '{}'
{  "data": {    "options": [      {        "label": "string",        "value": "string"      }    ],    "disabled": true,    "placeholder": "string"  }}