Skip to main content
DELETE
Remove Twitter likes API: unlike a tweet by ID
10 credits per call · All plans from $0.00012/credit
Use this Remove Twitter Likes API to unlike 1 tweet by ID. This Twitter unlike API changes 1 connected account’s like state. Use it to delete Twitter likes 1 approved Tweet ID at a time. Use this route to delete likes on Twitter without deleting tweets. Clean up your Twitter likes without deleting tweets, replies, or reposts. It never deletes the tweet or another account’s likes. Learn how to remove a like on Twitter through REST below. Compare X’s separate Unlike Post endpoint.

Remove one Twitter like by ID

Put the exact Tweet ID in the path. Put its connected X account in the body. This endpoint accepts 1 Tweet ID per request. Store Tweet IDs as strings to preserve large identifiers.

Authenticate the Twitter account

Send an Xquik API key or OAuth 2.1 bearer token. The request never accepts an X password or session cookie. Keep credentials in server-side code. Reconnect the account after account_needs_reauth.

Approve the exact like removal

Show the tweet, author, Tweet ID, and acting account. Store the approver, approval time, and removal reason. Handle missing, private, or deleted tweets separately. Never replace an approved ID with another tweet.

Save a durable unlike receipt

Save the action before changing your local like record.

Confirm like removal

A 200 response is terminal. A 202 response still needs polling through statusUrl. Never resend an active action. After success, match the returned and requested Tweet IDs. If X reports no existing like, mark the account as unliked. Keep the prior state while terminal is false. Store the settled billing object after completion. Close already-unliked actions without another request.

Remove Twitter likes in a controlled queue

This route has no mass-delete request. Process approved Tweet IDs separately. Give each account and Tweet ID a unique key. Use User Likes to collect candidate IDs. Follow every cursor before approving the list. After 429, wait for Retry-After. Never rotate accounts to bypass limits. Review X’s separate Unlike rate limits.

Prevent duplicate unlike requests

Create one idempotency key per account and Tweet ID. Reuse it only after an interrupted response. A 409 means that key protects another payload. Create a new key only for a new removal intent.

Handle remove Twitter likes errors

Never infer failure from a client timeout. Poll the returned action before another request.
  • 400: Correct the Tweet ID or account.
  • 401: Replace invalid Xquik authentication.
  • 402: Add credits before another unlike.
  • 403: Reconnect the selected X account.
  • 409: Keep the original action and payload.
  • 422: Review X’s rejection.
  • 429: Honor Retry-After before retrying.
  • 500 or 503: Follow safeToRetry and terminal.

Choose unlike, delete, or unretweet

Use this route only to remove one account’s like. Use Like Tweet to restore a like. Use Delete Tweet for an owned tweet. Use Unretweet for a repost. Unlike never removes replies, follows, bookmarks, or accounts.

Remove Twitter likes questions

How to remove a like on Twitter with an API?

Send the Tweet ID and connected account. Poll the durable action until it becomes terminal.

Can I remove all Twitter likes at once?

No. Process each approved Tweet ID separately. Store one key and action per removal.

Can I remove likes for multiple Twitter accounts?

Yes. Name one connected account per request. Keep its approval, key, and receipt together.

What are the risks of third-party like removal tools?

Never share your X password or session cookie. Review every account and Tweet ID.

Can I schedule Twitter like removal?

Use your scheduler for approved Tweet IDs. This endpoint stores no future schedule.

Does unliking delete the original tweet?

No. It changes only the connected account’s like state.

Can I restore a removed like?

Yes. Call Like Tweet after new approval. Use a new key.

Does removing a like erase every historical record?

No. Earlier logs, exports, screenshots, or audits may remain. Do not treat a Twitter archive as proof of the current like state.

Headers

string
Send your Xquik API key in this header. Alternatively, send an OAuth 2.1 bearer token.
string
Send Bearer <token> instead of x-api-key when using OAuth 2.1.
string
required
Unique key for this intended write. Reuse it only for an exact network replay.
string
required
Must be application/json.

Path parameters

string
required
The ID of the tweet to unlike.

Body

string
required
X username or account ID for the connected account. Xquik removes an included @ prefix.

Response

Durable write recovery

Send one unique Idempotency-Key per intended write. Reuse it only for the same account, target, payload, and media.
  1. Store id, the nested hash in request, billing, and statusUrl.
  2. Poll after Retry-After or pollAfterMs when terminal is false.
  3. Trust safeToRetry and nextAction before any new write.

200 Terminal or 202 active

Store terminal results. Poll active actions without creating another write.
  • After HTTP 200, store the result and settled billing.
  • After HTTP 202, poll the same action. Never submit another write.
  • After HTTP 400, fix the named field. Use a new idempotency key.
  • After HTTP 401, fix authentication. Do not retry unchanged.
  • After HTTP 402, fund the account before another write.
  • After HTTP 403, reconnect the account.
  • After HTTP 409, keep the original action. Use a new key for new input.
  • After HTTP 422, fix the rejected request before retrying.
  • After HTTP 429, wait for Retry-After. Preserve the same key.
  • After HTTP 500, retry only when safeToRetry is true.
  • After HTTP 503, poll while terminal is false.
See Get Write Action Status for every lifecycle field, terminal state, billing field, and retry rule.