v1

latestOpenAPI 3.1.02026-07-26180242448.0 KB
Stream Monitors

Create stream monitor

Create a new stream monitor to track one or more Twitter accounts in real time. New tweets from monitored accounts are delivered via WebSocket and optionally via webhook. Each monitored account consumes credits per day based on volume pricing.

post/v1/twitter/stream/monitors

Request body

namestring required

Human-readable name for the stream monitor.

usernamesstring[] required

List of Twitter usernames to monitor (without @ symbol).

webhook_urlstring nullable

HTTPS URL to receive webhook deliveries. Must use HTTPS.

webhook_secretstring nullable

Secret used to sign webhook payloads with HMAC-SHA256.

filter_typesstring[] nullable

Filter which tweet types to deliver. Null or omitted means all types.

Example request

{
  "name": "Tech Leaders Monitor",
  "usernames": [
    "elonmusk",
    "sama"
  ],
  "webhook_url": "https://example.com/webhooks/twitter"
}

Response

Stream monitor created successfully.

idstring required

Unique stream monitor identifier.

namestring required

Human-readable name of the monitor.

usernamesstring[] required

List of monitored Twitter usernames.

status'active' | 'paused' | 'suspended' required

Current status of the monitor. Suspended indicates the monitor was auto-paused due to insufficient credits.

status_reasonstring nullable

Reason for the current status, if applicable (e.g., "insufficient_credits").

webhook_urlstring nullable

HTTPS URL receiving webhook deliveries.

webhook_secret_setboolean

Whether a webhook secret is configured. The actual secret is never returned.

filter_typesstring[] nullable

Tweet types being delivered. Null means all types.

credits_per_account_per_daynumber

Credit cost per monitored account per day.

estimated_credits_per_daynumber

Estimated total credit cost per day based on current account count.

pricing_tierstring

Current pricing tier label.

created_atstring date-time required

Timestamp when the monitor was created.

updated_atstring date-time required

Timestamp when the monitor was last updated.

Example response

{
  "name": "Tech Leaders Monitor",
  "usernames": [
    "elonmusk",
    "sama"
  ],
  "pricing_tier": "Standard"
}