Create Tweet
curl --request POST \
--url https://api.omnixapi.com/api/v1/twitter/tweet/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"auth_token": "YOUR_X_AUTH_TOKEN",
"text": "Hello from OmniX 👋",
"reply_to_tweet_id": "<string>",
"quote_tweet_id": "<string>",
"quote_tweet_url": "<string>",
"media_ids": [
"<string>"
],
"media_urls": [
"<string>"
],
"proxy": "http://user:pass@host:8080"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
auth_token: 'YOUR_X_AUTH_TOKEN',
text: 'Hello from OmniX 👋',
reply_to_tweet_id: '<string>',
quote_tweet_id: '<string>',
quote_tweet_url: '<string>',
media_ids: ['<string>'],
media_urls: ['<string>'],
proxy: 'http://user:pass@host:8080'
})
};
fetch('https://api.omnixapi.com/api/v1/twitter/tweet/create', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.omnixapi.com/api/v1/twitter/tweet/create"
payload = {
"auth_token": "YOUR_X_AUTH_TOKEN",
"text": "Hello from OmniX 👋",
"reply_to_tweet_id": "<string>",
"quote_tweet_id": "<string>",
"quote_tweet_url": "<string>",
"media_ids": ["<string>"],
"media_urls": ["<string>"],
"proxy": "http://user:pass@host:8080"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"status": true,
"data": {
"id": "<string>",
"text": "<string>",
"createdAt": "<string>",
"pending_moderation": true,
"community_id": "<string>"
},
"error": null
}{
"status": false,
"data": null,
"error": "Missing required field: text"
}{
"status": false,
"data": null,
"error": "Status is a duplicate."
}Tweets
Create Tweet
Post a tweet as the auth_token owner. Optionally a reply, a quote, and with media (by id, URL, or inline base64).
POST
/
tweet
/
create
Create Tweet
curl --request POST \
--url https://api.omnixapi.com/api/v1/twitter/tweet/create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"auth_token": "YOUR_X_AUTH_TOKEN",
"text": "Hello from OmniX 👋",
"reply_to_tweet_id": "<string>",
"quote_tweet_id": "<string>",
"quote_tweet_url": "<string>",
"media_ids": [
"<string>"
],
"media_urls": [
"<string>"
],
"proxy": "http://user:pass@host:8080"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
auth_token: 'YOUR_X_AUTH_TOKEN',
text: 'Hello from OmniX 👋',
reply_to_tweet_id: '<string>',
quote_tweet_id: '<string>',
quote_tweet_url: '<string>',
media_ids: ['<string>'],
media_urls: ['<string>'],
proxy: 'http://user:pass@host:8080'
})
};
fetch('https://api.omnixapi.com/api/v1/twitter/tweet/create', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.omnixapi.com/api/v1/twitter/tweet/create"
payload = {
"auth_token": "YOUR_X_AUTH_TOKEN",
"text": "Hello from OmniX 👋",
"reply_to_tweet_id": "<string>",
"quote_tweet_id": "<string>",
"quote_tweet_url": "<string>",
"media_ids": ["<string>"],
"media_urls": ["<string>"],
"proxy": "http://user:pass@host:8080"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"status": true,
"data": {
"id": "<string>",
"text": "<string>",
"createdAt": "<string>",
"pending_moderation": true,
"community_id": "<string>"
},
"error": null
}{
"status": false,
"data": null,
"error": "Missing required field: text"
}{
"status": false,
"data": null,
"error": "Status is a duplicate."
}Authorizations
Your OmniX API key, e.g. omnix_live_.... Billed per call.
Body
application/json
The X account auth_token cookie the action runs as.
Example:
"YOUR_X_AUTH_TOKEN"
Tweet body.
Example:
"Hello from OmniX 👋"
Reply to this tweet ID.
Quote this tweet ID.
Quote tweet by URL (id is parsed from it).
Pre-uploaded media ids (see Upload Media).
Image/video URLs to upload and attach.
Optional outbound proxy for this call (http:// or https://, optionally user:pass@host:port). The X request runs through it — useful for geo-routing or spreading calls across IPs. SOCKS proxies are not supported.
Example:
"http://user:pass@host:8080"