X Community About API | Moderators and Members With Full Profiles
The About tab for one community: its moderators, and a preview of its members, both returned as FULL user profiles with bio, follower and following counts, tweet counts, location, website, banner and join date. Community Members and Community Moderators return a reduced row instead, so this is the endpoint that answers who runs a community in one call rather than one call plus a profile lookup per person. It is not paginated, because the upstream operation is not. Billed at $0.0008 per call. Cost: $0.0008 per call.
GET community/about returns an X Community's moderators plus a preview of its members, each as a FULL user profile: bio, follower and following counts, tweet counts, location, website, banner and account creation date. That is the difference from Community Members and Community Moderators, which return a reduced row carrying only id, handle, name, avatar and three booleans. This endpoint does NOT return community metadata: for name, description, rules, member count, topic or join policy, call Community Info. It is not paginated. members_truncated and moderators_truncated tell you when X only sent a preview, which is the signal to page the full roster endpoints. $0.0008 per call.
Authorization
bearerAuth Pass your API key as a bearer token on every request: Authorization: Bearer <API_KEY>.
In: header
Query Parameters
The numeric X community id, the digits in x.com/i/communities/.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/community/about?community_id=1493446837214187523"{ "moderators": [ { "id": "88403351", "username": "iuditg", "name": "Udit Goenka", "description": "Building in public.", "followers_count": 60868, "following_count": 372, "tweet_count": 46535, "location": "India", "url": "https://example.com", "created_at": "Sun Nov 08 11:49:55 +0000 2009", "profile_image_url": "https://pbs.twimg.com/profile_images/.../photo_normal.jpg", "is_blue_verified": true } ], "members": [ { "id": "2535083002", "username": "sachikantaraul", "name": "Sachikanta Raul", "description": "Indie hacker.", "followers_count": 41, "following_count": 300, "tweet_count": 1204, "location": "India", "url": null, "created_at": "Thu May 08 13:15:44 +0000 2014", "profile_image_url": "https://pbs.twimg.com/profile_images/.../photo_normal.jpg", "is_blue_verified": true } ], "moderators_truncated": false, "members_truncated": true, "other_sections": []}{ "error": "bad_request", "message": "Missing or malformed parameter. Fix the request before retrying."}{ "error": "unauthorized", "message": "The API key is missing, malformed, or revoked. Check the Authorization header."}{ "error": "insufficient_credits", "message": "Your balance is exhausted. Top up your credits to continue."}{ "error": "not_found", "message": "The resource does not exist, for example a deleted tweet or a private account."}{ "error": "rate_limited", "message": "Too many requests. Back off and retry with exponential backoff."}{ "error": "server_error", "message": "Something failed on our side. Retry with backoff; if it persists, contact support."}Pricing
| Unit | Price |
|---|---|
| Per call | $0.0008 |
| Per 1,000 calls | $0.80 |
When to use
Use it when you need to judge the people, not count them: vetting who moderates a community before pitching it, or sizing up the audience from real profiles rather than handles. Switch to Community Members when you need the whole roster.
Notes
- THIS ENDPOINT DOES NOT RETURN COMMUNITY METADATA, despite its name. It carries no name, description, rules, member count, topic or join policy, because the X operation behind it carries none of them. Call Community Info for those.
- The profiles here are FULL, which is the reason this endpoint exists alongside Community Members and Community Moderators. Those two are served by a different X operation whose rows have no bio, no follower or following counts, no location, no website and no created_at. Use this one when you need to evaluate people, and those two when you need to enumerate them.
- IT IS NOT PAGINATED, and there is no cursor to pass. X sends a fixed preview. members_truncated and moderators_truncated are the signal to switch to the paginated roster endpoints.
- A community id that does not resolve returns 404, not an empty 200. If X returns a shape this API does not recognise you get a 502 parse_failed instead, and that call is not billed to you.
- Fields describing a viewer's own relationship to these accounts are never returned, for the same pooled-read reason the community objects null role and can_join: the account making the upstream call is one of ours and rotates per request.
Related endpoints
- Community Info: Metadata, rules and banners for one X Community.
- Community Members: Page through a community's member roster, each row carrying that member's role.
- Community Moderators: Page through a community's moderators and admins.
- Community Search: Search X Communities by keyword.
FAQ
Why does this not return the community's name or rules?
Because the X operation behind the About tab does not send them. Its payload is the moderator and member modules and nothing else. Community Info is the endpoint that returns name, description, rules, counts, topic and policies.
How is this different from Community Moderators?
The profiles. Community Moderators is paginated and returns a reduced row: id, handle, name, avatar and three booleans. This returns the full profile, including bio, follower and following counts, tweet counts, location, website and join date, in one call. Use Community Moderators when you need to walk a long list, and this when you need to evaluate the people on it.
Can I page through all the members here?
No. There is no cursor, and X sends a capped preview. members_truncated tells you when there are more; Community Members is the paginated endpoint for the full roster.
What is other_sections for?
Anything X puts on the About tab that this API does not yet model. It is empty for every community we have seen. It exists so that if X adds a section, you receive it instead of it being quietly discarded by a parser that only knows two shapes.
Community Memberships GET
The inverse relation: given a numeric X user id, list the communities that account belongs to, cursor-paginated. Each row is the FULL community object, and it is the most populated form of it this API returns: admin, invites_policy, question, search_tags, members_facepile_ids and a real moderator_count all arrive here and do not on Community Info. Profiling an account's community footprint takes one call per page rather than a follow-up lookup per community. Billed at $0.0008 per call. Cost: $0.0008 per call.
Community Search GET
Find communities by keyword, cursor-paginated. This is the discovery step the rest of this family assumes: every other community endpoint starts from a community id, and this is the one that produces one. Each hit is a compact record, id, name, member count, nsfw flag, topic name, banners and the facepile avatars, which is exactly what X's search operation sends and nothing more. Billed at $0.0008 per call. Cost: $0.0008 per call.