Skip to main content
Triggers define the conditions that start a workflow run. Each trigger is attached to a single workflow and fires based on one of four types: a cron schedule, an inbound webhook call, an event from a connected integration, or a manual invocation. The Triggers API lets you list existing triggers and create new ones programmatically.

List triggers

Retrieve all triggers in your account, optionally filtered by workflow or trigger type.
GET /triggers

Query parameters

workflow_id
string
Filter triggers to those belonging to a specific workflow. Pass the workflow’s id (for example, wf_9kLmNpQrStUv).
type
string
Filter by trigger type. Accepted values: schedule, webhook, app_event, manual.

Response fields

data
object[]
Array of trigger objects.
meta
object
Pagination metadata.

Example

curl --request GET \
  --url 'https://api.rcbautomation.com/v1/triggers?workflow_id=wf_9kLmNpQrStUv' \
  --header 'Authorization: Bearer rcb_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6'
Response
{
  "data": [
    {
      "id": "trg_2aB3cD4eF5gH",
      "workflow_id": "wf_9kLmNpQrStUv",
      "type": "schedule",
      "config": {
        "cron": "0 9 * * 1"
      },
      "status": "active",
      "created_at": "2026-02-14T09:05:00Z"
    }
  ],
  "meta": {
    "total": 1,
    "page": 1,
    "per_page": 20
  }
}

Create a trigger

Attach a new trigger to a workflow. The config object shape depends on the trigger type.
POST /triggers

Body parameters

workflow_id
string
required
ID of the workflow to attach this trigger to.
type
string
required
Trigger type. Accepted values: schedule, webhook, app_event, manual.
config
object
Type-specific configuration object. Required for schedule and app_event types. See config shapes below.

Config shapes by type

schedule — fires on a cron expression evaluated in UTC:
{
  "cron": "0 9 * * 1"
}
The example above fires every Monday at 09:00 UTC. Use standard five-field cron syntax (minute hour day month weekday). webhook — no config required. RCB Automation generates a unique inbound URL and returns it in the webhook_url field of the response. Send a POST request to that URL (with any JSON body) to fire the trigger. app_event — fires when a specific event occurs in a connected integration:
{
  "integration_id": "int_7hJkLmNoPqRs",
  "event": "row.created"
}
The available event values depend on the connected integration type. Retrieve your connected integrations from GET /integrations. manual — no config required. The workflow can be fired on demand from the dashboard or via the Run API. Useful for testing or on-demand automation.

Response fields

id
string
Unique identifier for the new trigger.
workflow_id
string
ID of the workflow this trigger belongs to.
type
string
Trigger type.
config
object
The configuration object as provided.
status
string
Initial status. Always active for newly created triggers.
webhook_url
string
The inbound URL to fire this trigger. Only present when type is webhook.
created_at
string
ISO 8601 timestamp of creation.

Examples

curl --request POST \
  --url https://api.rcbautomation.com/v1/triggers \
  --header 'Authorization: Bearer rcb_live_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6' \
  --header 'Content-Type: application/json' \
  --data '{
    "workflow_id": "wf_9kLmNpQrStUv",
    "type": "schedule",
    "config": {
      "cron": "0 9 * * 1"
    }
  }'
Schedule trigger response (201 Created)
{
  "id": "trg_2aB3cD4eF5gH",
  "workflow_id": "wf_9kLmNpQrStUv",
  "type": "schedule",
  "config": {
    "cron": "0 9 * * 1"
  },
  "status": "active",
  "created_at": "2026-04-20T10:30:00Z"
}
Webhook trigger response (201 Created)
{
  "id": "trg_6iJ7kL8mN9oP",
  "workflow_id": "wf_3xYzAbCdEfGh",
  "type": "webhook",
  "config": {},
  "status": "active",
  "webhook_url": "https://hooks.rcbautomation.com/t/trg_6iJ7kL8mN9oP/rcb_whk_s3cr3tk3y",
  "created_at": "2026-04-20T10:31:05Z"
}