Add an action to the end of the list

kind defaults to forward, which needs a url. A notify needs an alertChannelId naming one of the workspace's alert channels. A subrequest needs an apiRequestId naming one of the workspace's saved requests, plus a slotMapping covering every field that request declares. Saved requests and their connections are created in the dashboard Library; no API operation lists or creates them, so add a subrequest action once in the dashboard and read its apiRequestId back from listActions.

A kind the plan does not include is refused with code: kind_not_available. A forward url is checked against the same SSRF policy the dispatcher enforces at connect time, so a private or internal address is refused here; a subrequest is checked the same way against its connection's base URL.

POST
/api/v1/endpoints/{endpointId}/actions
AuthorizationBearer <token>

API key in the Authorization header: Authorization: Bearer wv_live_…. Keys are created on the API keys page in the app, shown once, and scoped to your workspace. X-Api-Key: wv_live_… is accepted as a fallback for tools that can't set Authorization.

In: header

Path Parameters

endpointId*string

The endpoint id (also the capture token in its URL).

Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

{
  "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  "kind": "forward",
  "name": "string",
  "position": 0,
  "url": "string",
  "isActive": true,
  "suspendedByPlan": true,
  "condition": {},
  "conditionDescription": "string",
  "signing": {
    "signed": true,
    "setAt": "2019-08-24T14:15:22Z"
  },
  "ruleCount": 0,
  "alertChannelId": "48f8dcc3-fd9c-427f-bf34-54017ef3c9a6",
  "alertChannelName": "string",
  "messageTemplate": "string",
  "channelUnavailable": true,
  "apiRequestId": "6ecc081a-ed69-4059-83bc-ec5b8abdbb90",
  "apiRequestName": "string",
  "slotMapping": {
    "property1": "string",
    "property2": "string"
  },
  "requestUnavailable": true
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "code": "string",
  "traceId": "string"
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "code": "string",
  "traceId": "string"
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "code": "string",
  "traceId": "string"
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "code": "string",
  "traceId": "string"
}
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "code": "string",
  "traceId": "string"
}

On this page