Skip to content
Webhooks
  1. REST reference
  2. Account
  3. Webhooks

Create a webhook

POST/public/v1/webhooks

Subscribe an HTTPS URL to events. Test deliveries only today: subscriptions can be created and tested, but no live events are sent yet. Up to 5 active subscriptions per account.

PremiumAnnualLifetime
Test deliveries only today. Subscriptions can be created, edited and tested, but no live events are sent yet. The event names are reserved for when live delivery starts.

Request

curl -X POST "https://api.tradeeasyai.net/public/v1/webhooks" \
  -H "X-API-Key: $TRADEEASY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://example.com/hooks/tradeeasy", "events": ["breaking_news.alert"]}'

Response shape

Field names and types; no sample values.

201 · application/json
{
  "success": true,
  "data": {
    "id": "<string>",
    "secret": "<string>"
  },
  "meta": { "timestamp": "<string>", "request_id": "<string>" }
}

Parameters#

  • urlstringbodyRequired

    HTTPS URL, up to 2,048 characters. Not localhost or a private network.

  • eventsstring[]bodyRequired

    At least one of sentiment.flip, breaking_news.alert, prediction.update, risk.alert, signal.new, market_regime.change.

Response fields#

  • idstring · UUID

    The subscription id.

  • url · events · is_activemixed

    As created.

  • secretstring

    Signing secret. Shown once, in this response only.

  • failure_count · max_failuresinteger

    Delivery health.

Errors#

  • 400INVALID_URL

    Not HTTPS, or a localhost, private or internal address.

  • 400INVALID_EVENTS

    An event name is not in the list.

  • 400MAX_WEBHOOKS_REACHED

    You already have 5 active subscriptions.

  • 401detail

    Missing, invalid or revoked key, or a locked account. FastAPI {"detail": …} body, not the envelope.

  • 403detail

    The plan does not include the REST API, or the subscription is not active.

  • 422detail[]

    A query value is outside its range (FastAPI validation).

  • 429RATE_LIMIT_EXCEEDED

    Per-key minute or day bucket spent. Honour Retry-After.

  • 500CREATE_FAILED

    Our side. Retry with backoff.