Skip to main content
POST
/
api
/
webhook-subscriptions
Create Webhook Subscription
curl --request POST \
  --url https://auth.exchangeratesapi.com.au/api/webhook-subscriptions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "https://hooks.example.com/rba",
  "currencies": [
    "USD",
    "JPY"
  ],
  "description": "Prod hook"
}
'
{
  "success": true,
  "signingSecret": "3f9c4e2a1b7d8f60a5c3e1d9b2f4a6c83f9c4e2a1b7d8f60a5c3e1d9b2f4a6c8",
  "warning": "Store this signing secret securely. It will not be shown again.",
  "subscription": {
    "id": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6",
    "url": "https://hooks.example.com/rba",
    "currencies": [
      "USD",
      "JPY"
    ],
    "description": "Prod hook"
  }
}

Overview

Registers a webhook subscription. The response includes a signing secret shown only once - store it securely; you’ll need it to verify deliveries.
Authenticate with your API key - the same Authorization: Bearer YOUR_API_KEY you use for the rest of the API. You can also create and manage webhooks from your dashboard. Professional plan or higher is required.
currencies is optional - omit it to receive every supported currency, or pass a list (e.g. ["USD","JPY"]) to receive only those. The url must be a public HTTPS endpoint.

Authorizations

Authorization
string
header
required

API key authentication using Bearer token

Body

application/json
url
string<uri>
required

HTTPS endpoint to receive deliveries. Public host only (no localhost/private IPs).

currencies
string[]

Optional list of currency codes to receive. Omit for all currencies.

description
string

Optional label.

Response

Subscription created