> ## Documentation Index
> Fetch the complete documentation index at: https://x-preview-oauth-2-ios.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

The X Activity API (XAA) endpoint group allows developers to tap in to activity events happening on the X Platform.

A developer can subscribe to events they are interested in such as `ProfileBioUpdate`, `ProfilePictureUpdate` etc. and filter for the User ID whose events they want. The matching events for that User ID will be delivered to your app with sub-second latency.

<Warning>
  The X Activity API is available as an open beta. While in open beta, please expect potential bugs, breaking changes, or incomplete features.

  Your feedback is invaluable—report issues via our [developer community forums](https://devcommunity.x.com/).
</Warning>

## Delivery Mechanisms

The X Activity API currently supports the following delivery mechanisms to send events to your app:

* Persistent HTTP stream
* [Webhook](/x-api/webhooks/introduction)

## Supported Event Types

Currently, X Activity API supports the following event types, organized by category:

### Profile Events

Profile events are triggered when a user makes changes to their profile information.

| Event Name                   | Description                                         | Filters   |
| ---------------------------- | --------------------------------------------------- | --------- |
| `ProfileBioUpdate`           | Fired when a user updates their profile bio         | `user_id` |
| `ProfilePictureUpdate`       | Fired when a user updates their profile picture     | `user_id` |
| `ProfileBannerUpdate`        | Fired when a user updates their profile banner      | `user_id` |
| `ProfileGeoUpdate`           | Fired when a user updates their profile location    | `user_id` |
| `ProfileUrlUpdate`           | Fired when a user updates their profile website URL | `user_id` |
| `ProfileScreennameUpdate`    | Fired when a user updates their display name        | `user_id` |
| `ProfileVerifiedBadgeUpdate` | Fired when a user updates their verified badge      | `user_id` |

### Trends Events

Trends events provide updates on trending topics and headlines curated by Grok.

| Event Name  | Description                           | Filters   |
| ----------- | ------------------------------------- | --------- |
| `TrendsNew` | New grok-curated trends and headlines | `keyword` |

<Note>
  **Enterprise Only:** The `TrendsNew` event is only available to Enterprise and Partner tier accounts at this time.
</Note>

In future releases, XAA will expand to support additional event types including social interactions, content engagement, monetization features, and more. We will continue to update our docs when new event types become available.

<Note>
  **Note:** XAA does not deliver posts. For real-time post delivery, see our [Filtered Stream](/x-api/posts/filtered-stream/introduction) endpoint, which allows developers to filter for and stream posts in real-time.
</Note>

## Event Privacy and Authentication

The X Activity API distinguishes between **public events** and **private events** as at parity with the X app as explained below.

### Public Events

Public events are activities that a public user account perform publicly that are visible to all X users. These events are visible to all users on the X platform and don't require OAuth authentication from the user in order to view.

**Current public events:**

* Profile updates (bio, picture, banner, location, URL, username changes)

For these public events, you can create subscriptions by specifying the user ID in your filter and receive them via XAA.

### Private Events

Private events are activities that require explicit user consent through OAuth authentication. A User has to authenticate via X and give explicit permission to a developer app to access these events.

**Authentication requirements for private events:**

* The user must authenticate your application via OAuth 2.0
* Your application must obtain appropriate OAuth scopes
* The user must explicitly grant permission for your app to access these events
* Subscriptions for private events can only be created for users who have authorized your application

## Subscription Limits

The X Activity API has different subscription limits based on your account tier:

| Package Tier | Maximum Subscriptions |
| ------------ | --------------------- |
| Free         | Not Available         |
| Basic        | 50                    |
| Pro          | 2500                  |
| Enterprise   | 50,000                |
| Partner      | 100,000               |

<Note>
  **Account setup**

  To access these endpoints, you will need:

  * An approved [developer account](https://developer.x.com/en/portal/petition/essential/basic-info).
  * To authenticate using the keys and tokens from a [developer App](/resources/fundamentals/developer-apps) that is located within a [Project](/resources/fundamentals/projects).

  Learn more about getting access to the X API v2 endpoints in our [getting started guide](/x-api/getting-started/getting-access).
</Note>

<div className="flex">
  <Button href="/x-api/posts/filtered-stream/quickstart">
    Quick start
  </Button>
</div>
