Platform guide · Text & media
X
Post to X with a single call to the v2 tweets endpoint. Bearer token in, tweet id back — no v1.1 archaeology for the common case.
At a glance
| API | X API v2 |
| Connection | OAuth — supply an access token |
| Formats | Video, Image, Text |
| Character limit | 280 |
| Media | Text-first; media optional |
Connect X
X connects over OAuth. Complete the network’s OAuth to mint an access token, then connect X from the dashboard’s Accounts page. These are the fields it needs:
| Field | Send as | Required | Where to find it |
|---|---|---|---|
| Access tokensecret | accessToken | Required | OAuth 2 user token, tweet.write scope |
Everything marked secret is sealed with AES-256-GCM before storage — see Connecting accounts.
Publish to X
Once connected, X is just another id in your platforms array. One call publishes:
curl https://postmyish.com/api/v1/posts \
-H "Authorization: Bearer $POSTMYISH_KEY" \
-H "Content-Type: application/json" \
-d '{"caption":"We just shipped v2 🚀","platforms":["x"]}'The same request can fan out to LinkedIn, Threads, Bluesky and more — add their ids to the array. See Publish everywhere at once.
What you can do
- Text posts. POST /2/tweets with your caption, trimmed to 280 where needed.
- Scheduling. Queue with schedule_at and we post it on time.
- Fan-out. The same words go to LinkedIn, Threads, and Bluesky in one call.
- Real tweet id. We return the id X hands back, stored on the post.
Setup & review
FAQ
Is this the official X API?
Yes — X API v2, POST /2/tweets, with an OAuth 2.0 user token.
Do I need to pay X?
Yes. X requires at least the Basic tier (~$100/mo at time of writing) to post. The free tier is essentially read-only. That's X's pricing, not ours.
Can I post threads?
The API posts a single caption per call today. Threads are on the roadmap; you can chain calls in the meantime.
Can I schedule?
Yes — schedule_at queues the post and we send it when it's due.