Skip to main content

Endpoint

Authentication

This endpoint requires an OAuth access token. Send it as a bearer token:
Required scope: workflows:write
The task is created as the access token’s user, who must be at least a requester on the workflow. The user field on the request body is ignored.

Path Parameters

Request Body

The request body must be a JSON object with the following fields:

Required Fields

Optional Fields

InputValue Types

Each variable value must include variable_id, type, and value. The type determines the value format:

File InputValue

For file inputs, you have two options: Option 1: Reference previously uploaded file
Option 2: Include base64 content

Multiple Files InputValue

For variables that accept several files, use type: "multiple_files" and provide a files array. Each entry has the same shape as a single File InputValue - value (the filename) plus either a file_id reference or file_extension + base64_content. You can mix references and uploads within the same array.

Number With Currency InputValue

For monetary fields, use type: "number_with_currency". Send value as a plain amount to use the field’s default currency:
To set the currency explicitly, send value as an object with value and currency:
A plain amount uses the field’s default_currency. If the field has no default currency, the amount is saved without a currency, so send the object form when the currency matters.
USD, EUR, GBP, JPY, AUD, CAD, CHF, CNY, SEK, NZD, MXN, SGD, HKD, NOK, KRW, TRY, INR, RUB, BRL, ZAR, DKK, PLN, TWD, THB, MYR, IDR, HUF, CZK, ILS, CLP, PHP, AED, COP, SAR, RON, BGN, ARS, VND, UAH, PKR, EGP, NGN, BDT, QAR, KWD, OMR, BHD, PEN, CRC, DOP
A code outside this list fails request validation with a 422. A supported code that the field doesn’t allow, or a currency on a variable that isn’t part of the workflow, returns a 400.

Dynamic Table InputValue

For table fields, use type: "dynamic_table" and send value as an array of rows. The column names and their order come from the variable’s columns in the workflow schema. Each row can be an object keyed by column name:
Or a list of cells in column order. A list row must have exactly one cell per column, including formula columns, so pass null for those. In this example Total is a formula column:
You can mix both row forms in the same table. Cells can be strings, numbers, booleans, or null. Each cell is saved as a string: booleans become "true" or "false", and null becomes an empty string.
A list row whose cell count doesn’t match the table’s columns returns a 400.

Request Example

Response

Success Response

Status Code: 200 OK

Response Fields

Error Responses

400 Bad Request

Returned when the version format is invalid, when a currency or table value fails the workflow’s rules, or when the access token has no user behind it. client_credentials tokens act as the admin who created the application, so this applies only to tokens issued before application creators were recorded.

401 Unauthorized

Returned when the access token is missing, unknown, revoked, or expired, or when an X-API-Key was sent instead of a bearer token. See OAuth error responses.

403 Forbidden

Returned when the token lacks the required scope:
Or when the user is not permitted to request this workflow:

404 Not Found

Returned when the workflow or version does not exist.

422 Validation Error

Returned when the request body is invalid or variables don’t match the workflow schema.

429 Too Many Requests

Returned when your organization exceeds its per-minute request limit.

500 Internal Server Error

Returned when workflow initiation fails due to a server error.

Notes

Save the task_id from the response to track the workflow’s progress using the Get Task endpoint, or hand task_url to the user to open the task in Chamelio.
The access token’s user must be at least a requester on the workflow. If they are not, the request returns 403 - you cannot initiate on behalf of someone else here.
All required variables from the workflow schema must be provided in the variables array. Missing required variables result in a 422 error.
Use the metadata field to add custom tracking information like source system, request ID, or priority level for filtering and reporting.

Use Cases

This endpoint is useful for:
  • User-initiated actions - Let a user start a workflow from your own interface, as themselves
  • Integration workflows - Trigger Chamelio workflows from your applications
  • Correct attribution - Ensure the requester recorded on the task is the real person
  • Permission-safe automation - Rely on Chamelio to reject workflows the user may not request