ScheduledStatus.md 5.7 KB


title: ScheduledStatus description: Represents a status that will be published at a future scheduled date. menu: docs:

parent: entities

aliases: [ "/entities/scheduledstatus", "/entities/ScheduledStatus", "/api/entities/scheduledstatus", "/api/entities/ScheduledStatus",

]

Example

Returned from POST /api/v1/statuses?status=test post&scheduled_at=2022-09-29

{
  "id": "1",
  "scheduled_at": "2022-09-29T00:00:00.000Z",
  "params": {
    "text": "test post",
    "media_ids": null,
    "sensitive": null,
    "spoiler_text": null,
    "visibility": null,
    "language": null,
    "scheduled_at": null,
    "poll": null,
    "idempotency": null,
    "with_rate_limit": false,
    "in_reply_to_id": null,
    "application_id": 3
  },
  "media_attachments": []
}

Returned from GET /api/v1/scheduled_statuses:

{
  "id": "1",
  "scheduled_at": "2022-09-29T00:00:00.000Z",
  "params": {
    "poll": null,
    "text": "test post",
    "language": null,
    "media_ids": null,
    "sensitive": null,
    "visibility": null,
    "idempotency": null,
    "scheduled_at": null,
    "spoiler_text": null,
    "application_id": 3,
    "in_reply_to_id": null,
    "with_rate_limit": false
  },
  "media_attachments": []
}

Attributes

id {#id}

Description: ID of the scheduled status in the database.\ Type: String (cast from an integer but not guaranteed to be a number)\ Version history:\ 2.7.0 - added

scheduled_at {#scheduled_at}

Description: The timestamp for when the status will be posted.\ Type: String (ISO 8601 Datetime)\ Version history:\ 2.7.0 - added

params {#params}

Description: The parameters that were used when scheduling the status, to be used when the status is posted.\ Type: Hash\ Version history:\ 2.7.0 - added

params[text] {#params-text}

Description: Text to be used as status content.\ Type: String\ Version history:\ 2.7.0 - added

params[poll] {#params-poll}

Description: Poll to be attached to the status.\ Type: {{}} Hash\ Version history:\ 2.8.0 - added

params[poll][options[]] {#params-poll-options}

Description: The poll options to be used.\ Type: Array of String\ Version history:\ 2.8.0 - added

params[poll][expires_in] {#params-poll-expires_in}

Description: How many seconds the poll should last before closing.\ Type: String (cast from integer)\ Version history:\ 2.8.0 - added

params[poll][multiple] {#params-poll-multiple}

Description: Whether the poll allows multiple choices.\ Type: {{}} Boolean\ Version history:\ 2.8.0 - added

params[poll][hide_totals] {#params-poll-hide_totals}

Description: Whether the poll should hide total votes until after voting has ended.\ Type: {{}} Boolean\ Version history:\ 2.8.0 - added

params[media_ids] {#params-media_ids}

Description: IDs of the MediaAttachments that will be attached to the status.\ Type: {{}} Array of String\ Version history:\ 2.7.0 - added

params[sensitive] {#params-sensitive}

Description: Whether the status will be marked as sensitive.\ Type: {{}} Boolean\ Version history:\ 2.7.0 - added

params[spoiler_text] {#params-spoiler_text}

Description: The text of the content warning or summary for the status.\ Type: {{}} String\ Version history:\ 2.7.0 - added

params[visibility] {#params-visibility}

Description: The visibility that the status will have once it is posted.\ Type: String (Enumerable oneOf)\ public = Visible to everyone, shown in public timelines.\ unlisted = Visible to public, but not included in public timelines.\ private = Visible to followers only, and to any mentioned users.\ direct = Visible only to mentioned users.\ Version history:\ 2.7.0 - added

params[in_reply_to_id] {#params-in_reply_to_id}

Description: ID of the Status that will be replied to.\ Type: {{}} Integer\ Version history:\ 2.7.0 - added

params[language] {#params-language}

Description: The language that will be used for the status.\ Type: {{}} String (ISO 639-1 two-letter language code)\ Version history:\ 2.7.0 - added

params[application_id] {#params-application_id}

Description: ID of the Application that posted the status.\ Type: Integer\ Version history:\ 2.7.0 - added

params[scheduled_at] {#params-scheduled_at}

Description: When the status will be scheduled. This will be null because the status is only scheduled once.\ Type: {{}} Null\ Version history:\ 2.7.0 - added

params[idempotency] {#params-idempotency}

Description: Idempotency key to prevent duplicate statuses.\ Type: {{}} String\ Version history:\ 2.7.0 - added

params[with_rate_limit] {#params-with_rate_limit}

Description: Whether the status should be rate limited .\ Type: Boolean\ Version history:\ 2.7.0 - added

media_attachments {#media_attachments}

Description: Media that will be attached when the status is posted.\ Type: Array of MediaAttachment\ Version history:\ 2.7.0 - added

See also

{{< page-relref ref="methods/statuses#create" caption="POST /api/v1/statuses (with scheduled_at parameter)" >}}

{{< page-relref ref="methods/scheduled_statuses" caption="scheduled_statuses API methods" >}}

{{< caption-link url="https://github.com/mastodon/mastodon/blob/main/app/serializers/rest/scheduled_status_serializer.rb" caption="app/serializers/rest/scheduled_status_serializer.rb" >}}