Documentation Index

Fetch the complete documentation index at: /llms.txt

Use this file to discover all available pages before exploring further.

Skip to main content
DELETE
/
x
/
tweets
/
{id}
/
retweet
Unretweet
curl --request DELETE \
  --url https://xquik.com/api/v1/x/tweets/{id}/retweet \
  --header 'Content-Type: <content-type>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --header 'x-api-key: <api-key>' \
  --data '
{
  "account": "<string>"
}
'
import requests

url = "https://xquik.com/api/v1/x/tweets/{id}/retweet"

payload = { "account": "<string>" }
headers = {
"x-api-key": "<api-key>",
"Idempotency-Key": "<idempotency-key>",
"Content-Type": "<content-type>"
}

response = requests.delete(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'DELETE',
headers: {
'x-api-key': '<api-key>',
'Idempotency-Key': '<idempotency-key>',
'Content-Type': '<content-type>'
},
body: JSON.stringify({account: '<string>'})
};

fetch('https://xquik.com/api/v1/x/tweets/{id}/retweet', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://xquik.com/api/v1/x/tweets/{id}/retweet"

payload := strings.NewReader("{\n \"account\": \"<string>\"\n}")

req, _ := http.NewRequest("DELETE", url, payload)

req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Idempotency-Key", "<idempotency-key>")
req.Header.Add("Content-Type", "<content-type>")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
{
  "object": "<string>",
  "id": "<string>",
  "writeActionId": "<string>",
  "action": "<string>",
  "status": "<string>",
  "terminal": true,
  "retryable": true,
  "safeToRetry": true,
  "statusUrl": "<string>",
  "pollAfterMs": {},
  "charged": true,
  "chargedCredits": "<string>",
  "billing": {},
  "request": {},
  "account": {},
  "target": {},
  "targetId": {},
  "result": {},
  "nextAction": {},
  "requestHash": "<string>",
  "requestId": "<string>",
  "idempotent": true,
  "error": "<string>",
  "message": "<string>",
  "sendDispatched": true,
  "sendDispatchedAt": "<string>",
  "createdAt": "<string>",
  "updatedAt": "<string>",
  "completedAt": "<string>",
  "expiresAt": "<string>",
  "confirmedAt": "<string>",
  "confirmationCheckedAt": "<string>",
  "confirmationAttempts": 123,
  "tweetId": "<string>",
  "messageId": "<string>",
  "mediaId": "<string>",
  "mediaUrl": "<string>",
  "communityId": "<string>",
  "communityName": "<string>",
  "resultId": "<string>",
  "media": {},
  "details": {},
  "success": true
}
10 credits per call · All plans from $0.00012/credit
curl -X DELETE https://xquik.com/api/v1/x/tweets/1895432178065391234/retweet \
  -H "x-api-key: xq_YOUR_KEY_HERE" \
  -H "Idempotency-Key: unretweet-1895432178065391234" \
  -H "Content-Type: application/json" \
  -d '{
    "account": "elonmusk"
  }' | jq
const tweetId = "1895432178065391234";
const response = await fetch(`https://xquik.com/api/v1/x/tweets/${tweetId}/retweet`, {
  method: "DELETE",
  headers: {
    "x-api-key": "xq_YOUR_KEY_HERE",
    "Idempotency-Key": "unretweet-1895432178065391234",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    account: "elonmusk",
  }),
});
const data = await response.json();
import requests

tweet_id = "1895432178065391234"
response = requests.delete(
    f"https://xquik.com/api/v1/x/tweets/{tweet_id}/retweet",
    headers={
        "x-api-key": "xq_YOUR_KEY_HERE",
        "Idempotency-Key": "unretweet-1895432178065391234",
    },
    json={
        "account": "elonmusk",
    },
)
data = response.json()
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "net/http"
)

func main() {
    tweetID := "1895432178065391234"
    body, _ := json.Marshal(map[string]interface{}{
        "account": "elonmusk",
    })

    req, err := http.NewRequest("DELETE", "https://xquik.com/api/v1/x/tweets/"+tweetID+"/retweet", bytes.NewReader(body))
    if err != nil {
        panic(err)
    }
    req.Header.Set("x-api-key", "xq_YOUR_KEY_HERE")
    req.Header.Set("Idempotency-Key", "unretweet-1895432178065391234")
    req.Header.Set("Content-Type", "application/json")

    resp, err := http.DefaultClient.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    var data map[string]interface{}
    if err := json.NewDecoder(resp.Body).Decode(&data); err != nil {
        panic(err)
    }
    fmt.Println(data)
}

Headers

string
required
Your API key. Session cookie authentication is also supported. Generate a key from the dashboard.
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 unretweet.

Body

string
required
X username or account ID identifying which connected X account will unretweet. The @ prefix is automatically stripped if included.

Response

Durable lifecycle responses

Send one unique Idempotency-Key per intended write. Reuse it only for the exact same account, target, payload, and media.
Store the X-Request-Id response header with every action record.
  1. Store id, request.hash, account, target, and billing.
  2. Stop only when terminal is true.
  3. Poll statusUrl after Retry-After or pollAfterMs.
  4. Retry only when safeToRetry is true.
  5. Use a new key only for a newly approved write.
  • 200 Terminal
  • 202 Active
  • 400 Invalid Input
  • 401 Unauthenticated
  • 402 Billing Required
  • 403 Account Blocked
  • 409 Idempotency conflict
  • 422 Write Rejected
  • 429 Rate Limited
  • 500 Write Failed
  • 503 Write Unavailable
The action reached success, failed, or expired. Trust terminal, result, billing, and nextAction over the HTTP class.
{
  "object": "x_write_action",
  "id": "xwa_01JY6V7F8M9N0P1Q2R3S4T5U6V",
  "status": "success",
  "terminal": true,
  "safeToRetry": false,
  "billing": { "status": "charged", "chargedCredits": "10" },
  "result": { "confirmed": true },
  "nextAction": null
}
string
Always x_write_action.
string
Durable action ID.
string
Compatibility alias for id.
string
Exact write operation.
string
Current lifecycle status.
boolean
Whether polling can stop.
boolean
Whether a later attempt could succeed.
boolean
Whether a new attempt is safe.
string
Relative polling URL.
number | null
Recommended polling delay.
boolean
Whether billing settled as charged.
string
Settled credits charged.
object
Planned and settled billing state.
object
Stable hash and exact sanitized payload.
object
Exact connected account selected.
object | null
Exact target type and ID.
string | null
Compatibility target ID.
object | null
Confirmed result or desired state.
object | null
Required poll, retry, or verification step.
string
Stable request fingerprint.
string
Correlation ID.
boolean
Whether this response replayed an existing action.
string
Machine-readable error code.
string
Actionable status or error message.
boolean
Whether dispatch occurred.
string
ISO 8601 dispatch time.
string
ISO 8601 creation time.
string
ISO 8601 latest update time.
string
ISO 8601 terminal time.
string
Nonterminal resolution deadline.
string
ISO 8601 confirmation time.
string
ISO 8601 latest confirmation check.
number
Confirmation attempt count.
string
Confirmed tweet ID when available.
string
Confirmed direct message ID when available.
string
Confirmed media ID when available.
string
Public media URL when available.
string
Confirmed community ID when available.
string
Confirmed community name when available.
string
Compatibility result ID.
object
Media details when used.
object
Structured recovery context.
boolean
Whether status is success.
Last modified on July 21, 2026
Morty Proxy This is a proxified and sanitized view of the page, visit original site.