eavz

Actions

Execute integration actions via the Weavz API.

Actions

Actions are operations performed against third-party services through their integrations. For example, sending a Slack message, creating a Google Sheet row, or fetching GitHub issues.

Execute Action

POST/api/v1/actions/execute

Execute an integration action with the provided input.

Request Body

FieldTypeRequiredDescription
integrationNamestringYesIntegration name (e.g., slack, gmail)
actionNamestringYesAction to execute (e.g., send_channel_message, send_email)
inputobjectNoAction input parameters (defaults to {})
connectionExternalIdstringNoExternal ID of the connection to use
workspaceIdstring (uuid)YesWorkspace scope for connection resolution
endUserIdstringNoYour end-user's identifier. Used for per-user connection resolution. KV Store and Storage actions use this for end_user scope (the default) — set the scope input property to control data isolation.
partialIdsstring[]NoPartial IDs to apply. If omitted, default partials auto-resolve.

If connectionExternalId is not provided, the system resolves a connection based on the workspace's integration configuration when a workspaceId is supplied.

Response

json
{
  "success": true,
  "output": {
    "ok": true,
    "channel": "C0123456789",
    "ts": "1234567890.123456",
    "message": {
      "text": "Hello from Weavz!"
    }
  }
}

Example

bash
curl -X POST https://api.weavz.io/api/v1/actions/execute \
  -H "Authorization: Bearer wvz_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "integrationName": "slack",
    "actionName": "send_channel_message",
    "input": {
      "channel": "C0123456789",
      "text": "Hello from Weavz!"
    },
    "connectionExternalId": "slack-main",
    "workspaceId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }'

Errors

StatusCodeDescription
400VALIDATION_ERRORMissing required fields
400ACTION_FAILEDThe action execution failed (error details in response)
400CONNECTION_REQUIREDAction requires a connection but none was found
400CONNECTION_NOT_FOUNDSpecified connection does not exist
400INTEGRATION_NOT_FOUNDIntegration not found
403QUOTA_EXCEEDEDMonthly action limit reached

Discovering Actions

Use the Integrations API to list available actions for each integration, including their input schemas and required properties.

bash
curl "https://api.weavz.io/api/v1/integrations?name=slack" \
  -H "Authorization: Bearer wvz_your_api_key"

The response includes an actions object with all available actions and their input property definitions.