Skip to main content
PATCH
Twitter monitoring alerts: how to set Twitter alerts
Free - does not consume credits
Learn how to set Twitter alerts for one saved X profile. This Twitter monitoring tool replaces tweet and profile filters. It can also pause or resume the same monitor. The response shows the updated account and event filter. This route cannot change the profile, keyword query, webhook URL, alert threshold, or sentiment rule. Manage webhook delivery separately.
The Node.js, Python, and Go examples print one reusable monitor record. Store monitor_id, event_types, is_active, next_billing_at, verify_endpoint, list_endpoint, events_endpoint, event_detail_endpoint_pattern, webhooks_endpoint, and deliveries_endpoint_pattern before resuming alerts or webhook checks.

Path parameters

string
required
The unique monitor ID.

Headers

string
required
Your API key. Session cookie authentication is also supported. Generate a key from the dashboard.
string
required
Must be application/json.

Body

At least 1 field is required.
string[]
Updated array of event types. Must contain at least 1 valid account monitor type: tweet.new, tweet.quote, tweet.reply, tweet.retweet, tweet.media, tweet.link, tweet.poll, tweet.mention, tweet.hashtag, tweet.longform, profile.avatar.changed, profile.banner.changed, profile.name.changed, profile.username.changed, profile.bio.changed, profile.location.changed, profile.url.changed, profile.verified.changed, profile.protected.changed, profile.pinned_tweet.changed, profile.unavailable.changed.
boolean
Set to false to pause monitoring, or true to resume. Paused account monitors do not consume hourly monitor credits.

How to set Twitter alerts for an existing account monitor

Read the monitor before changing its Twitter alert settings. Save its id, username, xUserId, eventTypes, isActive, and nextBillingAt. Send the complete eventTypes array when coverage changes. The new array replaces every existing event type. Omit it when only isActive changes. Set false to pause monitoring. Set true to resume monitoring. If the profile is unavailable, the API returns 409 monitor_profile_unavailable. Wait for profile recovery, then retry. Finally, compare the returned account, filter, and active state with the approved request.

Which Twitter alert settings can this endpoint change?

Account filters select future tweet and profile events. Webhook subscriptions select events for an HTTPS receiver. Your receiver can notify Slack, update a CRM record, or add work to a queue.

How do Twitter account alert settings work in this Twitter monitoring tool?

Twitter account alert settings choose captured tweet and profile changes. Authenticate with an API key or bearer token. To receive notifications, subscribe a webhook to the same event types. Webhook notification settings choose the HTTPS receiver. They do not change the Twitter account or event filter. Use keyword alerts for brand mentions, hashtags, products, or campaign phrases. Manage keyword monitoring through Update Keyword Monitor.

How do I send Twitter account alerts to Slack or a CRM?

Update the account filter, then compare it with List Webhooks. Subscribe the receiver to every required event type. Run Test Webhook before waiting for account activity. Validate each signature and acknowledge valid requests quickly. Process slower Slack or CRM work after acknowledgment. List Events confirms event storage. List Deliveries confirms delivery attempts.

How do I reduce high-volume Twitter alert noise?

Select only required tweet and profile events. Select mention and reply events when those interactions matter. Add repost, quote, media, or link events only when your workflow uses those payloads. Use a keyword monitor for words, hashtags, products, or campaigns. Account monitor event types do not express Boolean search rules, languages, sensitivity, or sentiment. Keep webhook subscriptions aligned. Join delivery attempts to stored events with streamEventId.

Update handoff

Use this endpoint to change event scope. You can also pause or resume an account alert without creating another monitor ID.

Returned state

Store returned id, username, xUserId, eventTypes, isActive, createdAt, and nextBillingAt as the current account monitor configuration.

Inventory sync

Refresh List Monitors after the PATCH and compare Get Monitor for the same id before updating queues, CRM records, or support notes.

Event filter

eventTypes replaces the current filter. Keep List Webhooks subscriptions aligned with the monitor event types you expect to deliver.

Pause monitoring

isActive: false pauses future account checks, stored events, future webhook deliveries, and hourly monitor billing for this monitor.

Resume monitoring

isActive: true resumes checks for matching future account activity. Check nextBillingAt, then run Test Webhook before relying on production alerts.

Account identity

PATCH cannot change username or xUserId. Delete this monitor and create a new account monitor when the tracked account changes.

Downstream join

Keep using monitorId and username from List Events to reconcile stored events after the update. Use returned event IDs with Get Event when a workflow needs the full tweet payload.

Delivery audit

Use List Deliveries for each webhook and join delivery streamEventId to event IDs. Do not use x_event_id as the delivery join key.

Change one account monitor safely

Read the current monitor first. Send every approved eventTypes value. Use isActive: false for a temporary stop. Check credits before sending true. Then verify id, username, xUserId, eventTypes, and nextBillingAt. PATCH changes future monitoring only. It never rewrites stored events or past deliveries. Create another monitor when the tracked profile changes.

Prepare a reversible account monitor change

Record the current ID, username, events, active state, and billing time. Add the approved future values beside them. Send only supported PATCH fields. If verification fails, read the monitor again. Do not send an automatic rollback. Another approved update may already exist.

Separate pausing, filtering, and deletion

Pause when the monitor may resume. Replace eventTypes to change future scope. Delete only for permanent removal. Create another monitor for another profile. This does not change past account events.

Verify the first event after resuming

Read the monitor and confirm isActive: true. Then inspect the first matching event’s type and timestamp. Check deliveries separately. A successful PATCH is not delivery proof.

Response

200 OK

string
Unique monitor ID.
string
Normalized X username.
string
Resolved X user ID.
string[]
Updated event types.
boolean
Current active status after update.
string
ISO 8601 creation timestamp.
string
Next hourly credit charge time for active monitor billing.

400 Invalid input

Empty body, invalid eventTypes values, or invalid isActive type.
The provided monitor ID is not a valid format.

401 Unauthenticated

Missing or invalid API key.

404 Not found

No monitor exists with this ID, or it belongs to a different account.

409 Profile unavailable

The X profile is unavailable. Wait for profile recovery, then resume the monitor. You can still pause it or change its event filters.

429 Rate limited

Too many requests. Wait for the Retry-After header before retrying.
isActive: false pauses future checks, stored events, webhook deliveries, and hourly monitor billing for this monitor. isActive: true resumes future checks with the returned eventTypes.
Related. List Monitors to refresh inventory, Get Monitor to verify this monitor, List Events to audit stored events, Get Event to inspect one event, List Webhooks to compare subscriptions, or List Deliveries to audit webhook delivery status.