Docs
Api referenceWebhooks

Create a webhook endpoint

POST
/v1/webhooks

Events are POSTed to url as JSON — { id, type, createdAt, data } — signed in the fxapis-signature header with the returned secret. The secret is returned once, here. Retried for about 45 hours on failure; switched off after 20 failures in a row. Up to 10 endpoints per workspace.

Authorization

apiKey
AuthorizationBearer <token>

Authorization: Bearer fx_live_<id>_<secret>.

A key is shown once, at creation. We cannot show it again or recover it for you. Keys carry a label (live or test) in the key itself, so each configuration is easy to tell apart. Both reach real brokers: test with a broker demo account.

Scopes are per key. A key without accounts:write can read accounts and nothing else.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/webhooks" \  -H "Content-Type: application/json" \  -d '{    "url": "https://example.com/fxapis/webhooks"  }'
{  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "url": "https://example.com/fxapis/webhooks",    "description": "Copier",    "events": [      "order.filled"    ],    "enabled": true,    "disabledAt": null,    "disabledReason": "20 deliveries in a row failed",    "consecutiveFailures": 0,    "secretHint": "whsec_…Qx4w",    "previousSecretExpiresAt": null,    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "secret": "whsec_3q2-7ZkT0d8m1sQe9yVbW4nX6pLr5aHcUgJf0oKxQx4w"  }}