FruxonDocs
IntegrationsWebhooks

List webhooks, optionally filtered by provider.

Returns every webhook in the tenant, or just those for one provider when `provider` is supplied (e.g. `github`, `stripe`). Subscription details are not embedded — fetch them per webhook via `GET WebhookSubscriptions`.

GET
/v1/tenants/{tenant}/webhooks
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

tenant*string

The tenant identifier

Query Parameters

provider?string

Optional provider name to filter by.

Response Body

curl -X GET "https://api.fruxon.com/v1/tenants/string/webhooks"
[
  {
    "id": "string",
    "provider": "string",
    "authMode": "API_KEY",
    "status": "ACTIVE",
    "expiresAt": 0,
    "createdAt": 0,
    "modifiedAt": 0,
    "webhookUrl": "string",
    "signingSecret": "string"
  }
]
Empty
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}

Runs a tool with the provided parameters.

Resolves the tool by ID within the integration and executes it. When `configId` is set the tool runs against that config's currently published revision — the server resolves its (encrypted) credentials internally, so no secret ever travels in the request. Omit `configId` for SYSTEM / no-auth tools (e.g. File Tools), which run against an empty placeholder config. An optional `resultSelect` previews the agent runtime's `result_select` field projection over a JSON result; it is preview-only and never persisted. Every value in `parameters` must be sent as a JSON <b>string</b>, whatever the parameter's declared type — `"count": "3"`, `"dryRun": "true"`, `"rows": "[[1,2]]"`. The bag is typed server-side against the tool's declared parameters; sending a bare number, boolean or object fails model binding with 400 `"The JSON value could not be converted to System.String"`. The result comes back both ways: `response` is the flattened string form (unchanged), and `resultType` / `jsonValue` / `fileLink` carry the shape the tool actually returned, so a caller need not sniff `response` nor fetch the tool's metadata to learn its type.

Delete a webhook and deregister it from the external system if applicable.

Removes the webhook and cascades the delete to all subscriptions attached to it; any agent triggers wired through those subscriptions stop firing immediately. When the provider supports remote registration the external listener is also torn down — if that call fails the local delete is still attempted. After this, the inbound URL returns 404.