Skip to main content
POST
/
agent_api_keys
/
webhook-trigger
Create Webhook Trigger
curl --request POST \
  --url https://api.example.com/agent_api_keys/webhook-trigger \
  --header 'Content-Type: application/json' \
  --data '
{
  "agent_name": "<string>",
  "name": "<string>",
  "forward_path": "<string>",
  "source": "github",
  "secret": "<string>",
  "base_url": "<string>"
}
'
{
  "key_id": "<string>",
  "agent_name": "<string>",
  "name": "<string>",
  "secret": "<string>",
  "webhook_path": "<string>",
  "webhook_url": "<string>"
}

Body

application/json

One-call setup for a webhook trigger: register the source's signature key and get back the ready-to-paste forward webhook URL.

agent_name
string
required

The agent the webhook drives.

name
string
required

Signature-lookup key: the repo full_name (github) or api_app_id (slack) that the forward ingress matches the incoming webhook against.

forward_path
string
required

Subpath the agent's own route handles, e.g. 'github-pr/'. Appended to /agents/forward/name/{agent_name}/ to form the webhook URL.

source
enum<string>
default:github

Webhook source whose signature is verified (github or slack).

Available options:
internal,
external,
github,
slack
secret
string | null

Signing secret. For GitHub, omit to generate one, or provide an existing webhook secret. For Slack, this is required and must be the Slack app's Signing Secret.

base_url
string | null

Optional public agentex base URL for the returned webhook_url; defaults to the AGENTEX_PUBLIC_URL env var.

Response

Successful Response

key_id
string
required

The created agent API key id.

agent_name
string
required

The agent the webhook drives.

source
enum<string>
required

Webhook source (github or slack).

Available options:
internal,
external,
github,
slack
name
string
required

Signature-lookup key (repo full_name / api_app_id).

secret
string
required

The signing secret — shown once; paste into the source's webhook config.

webhook_path
string
required

The forward path to POST webhooks to.

webhook_url
string | null

Full webhook URL to paste into the source (None if no base URL configured).