---
title: "Upload text post"
method: POST
path: "/upload_text"
tags: ["Content Upload"]
---

# Upload text post

`POST /upload_text`

Upload text-only posts to social media platforms. Supports X (Twitter), LinkedIn, Facebook, Threads, Reddit, Bluesky, Discord, and Telegram. Automatically creates threads on X (>280 chars), Threads (>500 chars), and Bluesky (>300 chars).

## Response `200`

Upload completed synchronously or async processing started.

- union
  - SyncUploadResponse — Synchronous upload response (completed within timeout).
    - `success` boolean
    - `results` object — Per-platform results keyed by platform name.
    - `usage` UsageInfo
      - `count` integer — Current usage count.
      - `limit` integer — Monthly limit.
      - `last_reset` string, date-time — Last reset timestamp.
  - AsyncUploadResponse — Asynchronous upload response (processing in background).
    - `success` boolean
    - `message` string
    - `request_id` string — Use this to poll status via GET /uploadposts/status.
    - `total_platforms` integer — Number of platforms being uploaded to.

## Other responses

- `202` — Post scheduled or queued successfully.
- `400` — Bad Request — Missing or invalid parameters.
- `401` — Unauthorized — Invalid or expired token.
- `403` — Forbidden — Plan restrictions or insufficient permissions.
- `404` — Not Found — Resource does not exist.
- `429` — Too Many Requests — Monthly limit exceeded.
- `500` — Internal Server Error.

---

[API](https://skmtc.dev/upload-post/apis/upload-post-api.md) · [All operations](https://skmtc.dev/upload-post/apis/upload-post-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/upload-post/upload-post-api/revisions/10bd964e4415/schema)
