Twitter Remove List Member API | Prune an X List
Remove an account from a List owned by your registered X session. Returns the List's member_count as proof the membership change landed. Cost: $0.0008 per call.
Remove List Member removes one account from a Twitter/X List you own. Like its add counterpart it runs as your registered X session, returns the List's member_count as proof the write landed, and returns the same field layout with a 422 and a machine-readable reason when the write does not apply. One $0.0008 write, billed only when it applies.
Authorization
bearerAuth Pass your API key as a bearer token on every request: Authorization: Bearer <API_KEY>.
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/list/remove_member" \ -H "Content-Type: application/json" \ -d '{ "list_id": "1234567890123456789", "user_id": "745273" }'{ "ok": true, "action": "remove_member", "list_id": "1234567890123456789", "user_id": "745273", "member_count": 41, "list": { "id": "1234567890123456789", "name": "Founders", "member_count": 41 }}{ "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": "forbidden", "message": "The acting account is not authorized for this write action, or has no logged-in session."}{ "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 |
One $0.0008 write, and you are not charged when the write does not apply.
When to use
Use it to prune a List programmatically, for example dropping accounts that have gone inactive from a curated feed.
Related endpoints
- Add List Member: Add one account to a Twitter/X List you own.
- Create List: Create a new Twitter/X List owned by your session.
- List Members: Page through the members of a public Twitter/X List.
FAQ
Does this need my own X session?
Yes. Removing someone from a List is an action attributable to a specific account, so it runs as your registered session rather than a pooled one.
What if the account was never a member?
The write does not apply, so you get a 422 with the same field layout plus a reason, and you are not billed.
How do I confirm the removal?
Read member_count in the 200 body. It is the List's count after the write, read back from X rather than assumed.
Add List Member POST
Add an account to a List owned by your registered X session. Returns the List's member_count as proof the membership change landed. Cost: $0.0008 per call.
Create List POST
Create a List owned by your registered X session, with a name and an optional description and privacy flag. Populate it afterwards with Add List Member. Cost: $0.0016 per call.