statuses

Publish, interact, and view information about statuses.

Publish new status

POST https://mastodon.example/api/v1/statuses

Post a new status. Returns: Status. When scheduled_at is present, ScheduledStatus is returned instead. OAuth: User + write:statuses Version history: 0.0.0 - added 2.7.0 - scheduled_at added 2.8.0 - poll added

Headers

Name
Type
Description

Idempotency-Key

string

Prevent duplicate submissions of the same status. Idempotency keys are stored for up to 1 hour, and can be any arbitrary string. Consider using a hash or UUID generated client-side.

Authorization

string

Bearer <user token>

Request Body

Name
Type
Description

status

string

Text content of the status. If media_ids is provided, this becomes optional. Attaching a poll is optional while status is provided.

media_ids[]

array

Array of Attachment ids to be attached as media. If provided, status becomes optional, and poll cannot be used.

poll[options][]

array

Array of possible answers. If provided, media_ids cannot be used, and poll[expires_in] must be provided.

poll[expires_in]

number

Duration the poll should be open, in seconds. If provided, media_ids cannot be used, and poll[options] must be provided.

poll[multiple]

boolean

Allow multiple choices?

poll[hide_totals]

boolean

Hide vote counts until the poll ends?

in_reply_to_id

string

ID of the status being replied to, if status is a reply

sensitive

boolean

Mark status and attached media as sensitive?

spoiler_text

string

Text to be shown as a warning or subject before the actual content. Statuses are generally collapsed behind this field.

visibility

string

Visibility of the posted status. Enumerable oneOf public, unlisted, private, direct.

scheduled_at

string

ISO 8601 Datetime at which to schedule a status. Providing this paramter will cause ScheduledStatus to be returned instead of Status. Must be at least 5 minutes in the future.

language

string

ISO 639 language code for this status.

View specific status

GET https://mastodon.example/api/v1/statuses/:id

View information about a status. Returns: Status OAuth: Public for public statuses, user token + read:statuses for private statuses Version history: 0.0.0 - added 2.7.0 - public statuses no longer require token

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Delete status

DELETE https://mastodon.example/api/v1/statuses/:id

Delete one of your own statuses. Returns: Status with source text and media_attachments or poll OAuth: User token + write:statuses Version history: 0.0.0 - added 2.9.0 - return source properties, for use with delete and redraft

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database. Must be owned by authenticated account.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Parent and child statuses

GET https://mastodon.example/api/v1/statuses/:id/context

View statuses above and below this status in the thread. Returns: Context OAuth: Public for public statuses. User token + read:statuses for private statuses. Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Boosted by

GET https://mastodon.example/api/v1/statuses/:id/reblogged_by

View who boosted a given status. Returns: Array of Account OAuth: Public Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Favourited by

GET https://mastodon.example/api/v1/statuses/:id/favourited_by

View who favourited a given status. Returns: Array of Account OAuth: Public Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Favourite

POST https://mastodon.example/api/v1/statuses/:id/favourite

Add a status to your favourites list. Returns: Status OAuth: User token + write:favourites Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Undo favourite

POST https://mastodon.example/api/v1/statuses/:id/unfavourite

Remove a status from your favourites list. Returns: Status OAuth: User token + write:favourites Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Boost

POST https://mastodon.example/api/v1/statuses/:id/reblog

Reshare a status. Returns: Status OAuth: User token + write:statuses Version history: 0.0.0 - added 2.8.0 - add visibility parameter

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Request Body

Name
Type
Description

visibility

string

any visibility except limited or direct (i.e. public, unlisted, private). Defaults to public. Currently unused in UI.

Undo boost

POST https://mastodon.example/api/v1/statuses/:id/unreblog

Undo a reshare of a status. Returns: Status OAuth: User token + write:statuses Version history: 0.0.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Bookmark

POST https://mastodon.example/api/v1/statuses/:id/bookmark

Privately bookmark a status. Returns: Status OAuth: User token + write:bookmarks Version history: 3.1.0 - added

Path Parameters

Name
Type
Description

:id

string

ID of the status in the database

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Undo bookmark

POST https://mastodon.example/api/v1/statuses/:id/unbookmark

Remove a status from your private bookmarks. Returns: Status OAuth: User token + write:bookmarks Version history: 3.1.0 - added

Path Parameters

Name
Type
Description

id

string

ID of the status in the database

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Mute conversation

POST https://mastodon.example/api/v1/statuses/:id/mute

Do not receive notifications for the thread that this status is part of. Must be a thread in which you are a participant. Returns: Status OAuth: User token + write:mutes Version history: 1.4.2 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Unmute conversation

POST https://mastodon.example/api/v1/statuses/:id/unmute

Start receiving notifications again for the thread that this status is part of. Returns: Status OAuth: User token + write:mutes Version history: 1.4.2 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Pin to profile

POST https://mastodon.example/api/v1/statuses/:id/pin

Feature one of your own public statuses at the top of your profile. Returns: Status OAuth: User token + write:accounts Version history: 1.6.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database. The status should be public and authored by the authorized account.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Unpin to profile

POST https://mastodon.example/api/v1/statuses/:id/unpin

Unfeature a status from the top of your profile. Returns: Status OAuth: User token + write:accounts Version history: 1.6.0 - added

Path Parameters

Name
Type
Description

:id

string

Local ID of a status in the database.

Headers

Name
Type
Description

Authorization

string

Bearer <user token>

Deprecated methods

Preview card

GET https://mastodon.example/api/v1/statuses/:id/card

Returns: Card OAuth: Public Version history: 0.0.0 - added 2.6.0 - deprecated in favor of card property inlined on Status entity 3.0.0 - removed

Path Parameters

Name
Type
Description

:id

string

ID of the status in the database

Last updated

Was this helpful?