Arguments are the values an action needs to run.
Each action defines its own argument keys. The Universal API keeps the outer request shape consistent, while the action fields come from the selected action page.
Pass action inputs as flat request fields beside the required Universal API fields.
{
"connectionId": "$CONNECTION_ID",
"channelId": "C0123456789",
"text": "Hello from MindCloud"
}Use the exact argument keys shown on the action page. Keys are case-sensitive.
For GET and DELETE requests, pass action fields as query parameters:
curl --request GET \
--url "https://embedded.mindcloud.co/v1/universal/linear/latest/actions/query" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--get \
--data-urlencode "connectionId=$CONNECTION_ID" \
--data-urlencode "query=query { viewer { id name } }"For object or array values in a query string, send the value as JSON in that field.
For POST, PUT, and PATCH requests, put connectionId and action fields in the JSON body:
curl --request POST \
--url "https://embedded.mindcloud.co/v1/universal/slack/latest/actions/send-message" \
--header "Authorization: Bearer $MINDCLOUD_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"connectionId": "$CONNECTION_ID",
"channelId": "C0123456789",
"text": "Hello from MindCloud"
}'This keeps request bodies readable for create and update actions, where arguments are often larger.
Some arguments are required by the action. If a required argument is missing or invalid, the request fails instead of guessing a value.
The action page marks required arguments with required. It also shows the argument type, description, and input control used by the docs runner.
Argument types describe the shape of the value you should send.
| Type | How to send it |
|---|---|
string | A JSON string, such as "engineering". |
number | A JSON number, such as 25. |
boolean | true or false. |
object | A JSON object. |
array | A JSON array. |
Fixed lists still send the underlying value. The docs runner shows a readable label when one exists, but your request should send the value expected by the action.
Arguments are different from Universal API controls.
| Piece | Where it goes |
|---|---|
| Action fields | Flat query parameters for GET and DELETE; flat JSON body fields for POST, PUT, and PATCH. |
connectionId | Query string for GET and DELETE; body for POST, PUT, and PATCH. |
limit, offset, where, sort, fields | Query string controls for supported list and response behavior. |
Keep Universal API controls at the top level of the request URL. Do not send an arguments object to the REST API.