Back to monitors

x

X API

Breaking AI classification

X Chat API: operationId renamed, schema fields changed/removed

Several breaking and additive changes to the X Chat API:

  • operationId renamed from initializeChatConversationKeys to addConversationKeys — any SDK or code generation tooling referencing the old operation ID will break.
  • ChatPublicKey schema removed — clients referencing this schema directly will break; its content has been merged into the PublicKey schema.
  • PublicKey schema restructured: the token_map / version fields are removed; juicebox_config (a $ref) and public_key_version are added. The version enum value in the public-key fields parameter is replaced by public_key_version.
  • New ChatActionMessageEventSignature schema added (additive).
  • New conversation_id response field added to the Add Conversation Keys response (additive).
  • Multiple id path parameter descriptions clarified to include the hyphen-separated 1:1 conversation ID format (informational).

Alert history

  • Breaking

    X Chat API: operationId renamed, schema fields changed/removed

    Several breaking and additive changes to the X Chat API:

    • operationId renamed from initializeChatConversationKeys to addConversationKeys — any SDK or code generation tooling referencing the old operation ID will break.
    • ChatPublicKey schema removed — clients referencing this schema directly will break; its content has been merged into the PublicKey schema.
    • PublicKey schema restructured: the token_map / version fields are removed; juicebox_config (a $ref) and public_key_version are added. The version enum value in the public-key fields parameter is replaced by public_key_version.
    • New ChatActionMessageEventSignature schema added (additive).
    • New conversation_id response field added to the Add Conversation Keys response (additive).
    • Multiple id path parameter descriptions clarified to include the hyphen-separated 1:1 conversation ID format (informational).
  • Additive

    Add post.mention.create webhook activity type

    A new webhook activity type post.mention.create has been added to the X API, allowing clients to subscribe to mentions being created. This is a new optional event type that expands the webhook capabilities without breaking existing integrations.

  • Additive

    Add like.read/like.create OAuth2 scopes and Like event support

    X API adds support for likes in two subscription endpoints: like.read OAuth2 scope is now available on two GET endpoints, and a new like.create event type with corresponding LikeWithTweetAuthor schema is added to activity subscriptions. Additionally, the article content block schema is enhanced with detailed property definitions for cashtags, hashtags, mentions, and URLs metadata, with additionalProperties: false constraints added throughout for stricter validation.

  • Additive

    OAuth2 scope tightening and expansion type support

    Two changes to the X API: OAuth2 scopes for two POST endpoints now require only tweet.write instead of tweet.read, tweet.write, and users.read; and a schema field supporting expansions now accepts place and poll in addition to the existing options. The scope reduction is a breaking change that narrows required auth permissions, while the new expansion types are additive.

  • Breaking

    X API v2.166: new Articles endpoints added; enum values removed from Problem type

    Two new Articles endpoints are added (POST /2/articles/draft and POST /2/articles/{article_id}/publish) along with supporting schemas (ArticleDraftCreateRequest, ArticleDraftCreateResponse, ArticlePublishResponse, ArticleId) and query parameter definitions (ArticleExpansionsParameter, ArticleFieldsParameter). Additionally, the enum on a Problem-related schema (likely ResourceType or similar) has had place and poll removed, leaving only ["user","tweet","media","list","space"] — clients that send or match against "place" or "poll" as valid values in that field will break.

  • Additive

    Add place and poll types to X API enum

    The OpenAPI schema adds two new enum values, place and poll, to a type field, allowing clients to handle additional entity types. This is backward-compatible; existing integrations continue to work and can now optionally handle these new types.

  • Additive

    Add post event types and schemas to activity streaming

    New event types post.create and post.delete are added to the activity streaming API, along with their corresponding response schemas. A new optional includes field for Expansions is also added to the streaming response. These changes are purely additive and backward-compatible with existing integrations.

  • Additive

    Add paid_partnership field to Tweet object

    The X API now exposes a new optional paid_partnership boolean field on Tweet objects, indicating whether a post discloses paid promotion. This is purely additive and does not affect existing integrations.

  • Additive

    Add identity_public_key_signature field to chat public key schemas

    Added optional identity_public_key_signature field to ChatPublicKey and PublicKey schemas to carry DER-encoded signatures proving the signing key is bound to the identity key. This is a purely additive change that does not affect existing integrations.

  • Breaking

    max_results maximum raised from 100 to 1000, default set to 1000

    The max_results query parameter schema has changed: its maximum was raised from 100 to 1000, and a default of 1000 was added. This is additive in the sense that larger page sizes are now permitted, but it is potentially breaking for clients that relied on the previous cap of 100 to limit response payload size — they may now receive up to 1000 results per page if they omit max_results or if server-side enforcement changed. The description also now documents pagination via pagination_token from meta.next_token.

  • Additive

    Add note_request_suggestions field to tweet schema

    The X API OpenAPI spec adds a new note_request_suggestions object field to the tweet schema and includes it in the list of available tweet fields. This is a purely additive change that introduces a new optional response field containing note request suggestion data (with source_link, suggestion, and suggestion_id properties), allowing clients to opt-in to receiving this information without breaking existing integrations.

  • Additive

    Add GET endpoints for chat conversations and events

    Two new read-only endpoints were added to the Chat API: GET /2/chat/conversations/{id} to retrieve conversation metadata and GET /2/chat/conversations/{id}/events to retrieve messages and key change events. These are purely additive and require OAuth2 or UserToken scopes that already exist (dm.read, tweet.read, users.read).