---
title: "Intelligence Webhooks Subscribe"
method: POST
path: "/api/intelligence/v1/webhooks/subscribe"
tags: ["Intelligence API"]
---

# Intelligence Webhooks Subscribe

`POST /api/intelligence/v1/webhooks/subscribe`

## Request

- Base URL: `https://api.xfinlab.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.xfinlab.com/api/intelligence/v1/webhooks/subscribe`
- Auth: none declared

Pro-tier feature (2026-08-28, AJ: "重有咩賺錢位" -> Webhook Pro專屬):
push notifications instead of polling, for real Data Factory
events -- see services/webhook_service.py's VALID_EVENT_TYPES for
the exact list. Most are backed by a daily scheduled job that already
ran for another reason (honest same-cadence delivery, never a
fabricated "real-time" claim); recall_match (2026-09-14) is the first
exception -- see backend/main.py's recall_alert_scan job, added
specifically to back this event type. To watch a brand/product
keyword for new recalls: event_type="recall_match", ticker="<your
keyword>" (the `ticker` field doubles as the free-text keyword here --
see that event type's comment in webhook_service.py). Does NOT spend
quota -- this is a management action, not a data read.

## Headers

- `X-API-Key` string

## Request body

- WebhookSubscribeRequest
  - `event_type` string, required
  - `url` string, required
  - `ticker` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/xfinlab/apis/xfinlab-api.md) · [All operations](https://skmtc.dev/xfinlab/apis/xfinlab-api/llms.txt) · [OpenAPI document](https://skmtc.dev/xfinlab/apis/xfinlab-api/revisions/205f85614bc6?raw)
