List members lookup: Standard v1.1 compared to X API v2
If you have been working with the standard v1.1 GET lists/members and GET lists/memberships endpoints, the goal of this guide is to help you understand the similarities and differences between the standard v1.1 and X API v2 List member endpoints.- Similarities
- Authentication methods
- Differences
- Endpoint URLs
- Rate limits
- App and Project requirements
- Data objects per request limits
- Response data formats
- Request parameters
Similarities
Authentication Both endpoint versions support both OAuth 1.0a User Context and App only. Therefore, if you were previously using one of the standard v1.1 List members endpoints, you can continue using the same authentication method if you migrate to the X API v2 version. Depending on your authentication library/package of choice, App only authentication is probably the easiest way to get started and can be set with a simple request header. To learn how to generate an App only Access Token, see this App only guide.Differences
Endpoint URLs- Standard v1.1 endpoints:
- GET https://api.x.com/1.1/lists/members.json (Lookup members of a specified List)
- GET https://api.x.com/1.1/lists/memberships.json (Lookup Lists a user is a member of)
- X API v2 endpoint:
- GET https://api.x.com/2/lists/:id/members (Lookup members of a specified List)
- GET https://api.x.com/2/users/:id/list_memberships (Lookup Lists a user is a member of)
| Standard v1.1 | X API v2 |
| /1.1/lists/members.json 900 requests per 15-minute window with OAuth 1.0a User Context 15 requests per 15-minute window with App only | /2/lists/:id/members 900 requests per 15-minute window with OAuth 1.0a User Context 900 requests per 15-minute window with OAuth 2.0 Authorization Code with PKCE 900 requests per 15-minute window with App only |
| /1.1/lists/memberships.json 15 requests per 15-minute window with OAuth 1.0a User Context 15 requests per 15-minute window with App only | /2/users/:id/list_memberships 15 requests per 15-minute window with OAuth 1.0a User Context 15 requests per 15-minute window with OAuth 2.0 Authorization Code with PKCE 15 requests per 15-minute window with App only |
- created_at
- follower_count
- member_count
- owner_id
- description
- private
| Endpoint | Expansion |
| /2/lists/:id/members | pinned_tweet_id |
| /2/users/:id/list_memberships | owner_id |
- At the JSON root level, the standard endpoints return Post objects in a statuses array, while X API v2 returns a data array.
- Instead of referring to Retweeted and Quoted “statuses”, X API v2 JSON refers to Retweeted and Quoted Tweets. Many legacy and deprecated fields, such as contributors and user.translator_type are being removed.
- Instead of using both favorites (in Post object) and favourites (in user object), X API v2 uses the term like.
- X is adopting the convention that JSON values with no value (for example, null) are not written to the payload. Post and user attributes are only included if they have non-null values.
| Standard v1.1 | X API v2 |
| list_id | id |
| slug | No equivalent |
| owner_screen_name | No equivalent |
| owner_id | No equivalent |
| count | max_results |
| cursor | pagination_token |
| include_entities | No equivalent |
| skip_status | No equivalent |
| Standard v1.1 | X API v2 |
| user_id | id |
| screen_name | No equivalent |
| count | max_results |
| cursor | pagination_token |