---
title: "Media Status"
method: GET
path: "/media/status"
tags: ["Write Actions"]
---

# Media Status

`GET /media/status`

## Request

- Base URL: `https://api.twitterapis.com/twitter`
- URL: `https://api.twitterapis.com/twitter/media/status`
- Auth: HTTP bearer

Return the async processing state of a media_id from Upload Media, so a caller can verify readiness before attaching a video, GIF, or large-media id to a tweet. Runs as your own logged-in account. Billed at $0.0008 per call. Cost: $0.0008 per call.

## Query parameters

- `media_id` string, required: Numeric media ID (as a string) returned by media/upload.
- `fields` string
- `compact` '1'

## Response `200`

Check the async processing state of an uploaded media_id.

- object
  - `media_id` string: Echo of the media_id you queried.
  - `state` string: Processing state: pending, in_progress, succeeded, or failed.
  - `check_after_secs` integer: Seconds to wait before polling again while the state is pending or in_progress; 0 once processing has finished.
  - `progress_percent` integer: Percentage of processing completed, from 0 to 100.
  - `error` string: Failure reason, present only when state is failed; omitted otherwise.

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `402`: Insufficient credits
- `403`: Forbidden
- `404`: Not found
- `429`: Rate limited
- `5XX`: Server error

---

[API](https://skmtc.dev/twitterapis/apis/twitterapis-api.md) · [All operations](https://skmtc.dev/twitterapis/apis/twitterapis-api/llms.txt) · [OpenAPI document](https://skmtc.dev/twitterapis/apis/twitterapis-api/revisions/a33ce0fedb3c?raw)
