Skip to main content
GET
/
monitors
/
keywords
/
{id}
Get keyword monitor
curl --request GET \
  --url https://xquik.com/api/v1/monitors/keywords/{id} \
  --header 'x-api-key: <api-key>'
Free - does not consume credits
curl -X GET https://xquik.com/api/v1/monitors/keywords/21 \
  -H "x-api-key: xq_YOUR_KEY_HERE" |
  jq -c '{
    keyword_monitor_id: .id,
    query: .query,
    event_types: .eventTypes,
    is_active: .isActive,
    next_billing_at: .nextBillingAt,
    update_endpoint: "/api/v1/monitors/keywords/\(.id)",
    delete_endpoint: "/api/v1/monitors/keywords/\(.id)",
    events_endpoint: "/api/v1/events?keywordMonitorId=\(.id)",
    event_detail_endpoint_pattern: "/api/v1/events/{event_id}",
    webhooks_endpoint: "/api/v1/webhooks",
    deliveries_endpoint_pattern: "/api/v1/webhooks/{webhook_id}/deliveries"
  }'
The cURL, Node.js, Python, and Go examples convert the fetched keyword monitor into one state snapshot row. Store keyword_monitor_id, query, event_types, is_active, next_billing_at, update_endpoint, delete_endpoint, events_endpoint, event_detail_endpoint_pattern, webhooks_endpoint, and deliveries_endpoint_pattern before changing filters, pausing alerts, or reconciling webhooks.

State handoff

Use GET /monitors/keywords/{id} before changing routing, billing checks, or alert state for one keyword monitor. The endpoint returns the current stored monitor for your account only; deleted or cross-account IDs return 404.

Current Filter

Treat query and eventTypes as the active matching contract. Mirror eventTypes into List Webhooks before relying on signed alerts.

Active State

Use isActive to decide whether the monitor should poll and bill. Use Update Keyword Monitor to pause or resume it.

Billing Check

Read nextBillingAt before credit alerts, budget checks, or account handoffs. Paused monitors stay visible but do not add hourly monitor burn.

Event Join

Use id as keywordMonitorId with List Events to reconcile stored events and webhook deliveries for this query. Use Get Event for one event’s full payload.

Delivery Audit

Use List Deliveries when webhook delivery evidence must be retained. Join delivery streamEventId to event IDs. Do not use x_event_id as the delivery join key.

Delete Path

Use Delete Keyword Monitor only when the query should stop permanently. Export event and delivery evidence first when support or audit workflows need history.

Path parameters

id
string
required
The unique keyword monitor ID. Returned when you create a keyword monitor or list keyword monitors.

Headers

x-api-key
string
required
Your API key. Session cookie authentication is also supported. Generate a key from the dashboard.

Response

id
string
Unique keyword monitor ID.
query
string
Normalized X search query.
eventTypes
string[]
Subscribed event types.
isActive
boolean
Whether the monitor is currently active.
createdAt
string
ISO 8601 creation timestamp.
nextBillingAt
string
Next hourly credit charge time for active monitor billing.
{
  "id": "21",
  "query": "xquik OR \"x api\"",
  "eventTypes": ["tweet.new"],
  "isActive": true,
  "createdAt": "2026-02-24T10:30:00.000Z",
  "nextBillingAt": "2026-02-24T11:30:00.000Z"
}
Last modified on May 24, 2026