Upload media
Attach an image, video or PDF for a post. Three shapes: JSON {url} (the server fetches a public https URL — also how an MCP host's attachment arrives, through its temporary download url), JSON {ticket} (redeems an upload slot from POST /media/ticket), or multipart form-data with a file field. ≤100 MB. Optional: thumbnail_timestamp_ms picks a video's cover frame; alt_text (≤1000 chars) sets an image's accessibility text (applied natively on X and Bluesky); people_tags tags people in a picture (see the field — Instagram only, and every handle is checked before the file is stored). Returns {id, kind} — pass id in create_post media_ids. A PDF (kind: "document") is a LinkedIn document post: one per post, attached on its own, and only to a LinkedIn account whose connection supports documents — create_post refuses anything else and says why.
Request
- Base URL: https://xpost.to/api/v1
- URL: https://xpost.to/api/v1/media
- Auth: HTTP bearer
Request body
Example request
{
"people_tags": [
{
"id": "somestudio",
"x": 0.42,
"y": 0.61
}
]
}Response
Stored
Changes
No recorded changes to this operation across all 1 revision of this API.