Add REST API for scheduled statuses
This commit is contained in:
parent
ade0451d45
commit
243fc1d5e1
3 changed files with 87 additions and 0 deletions
|
@ -80,6 +80,9 @@ Publish a new status.
|
|||
|
||||
Returns [Status]({{< relref "entities.md#status" >}})
|
||||
|
||||
When `scheduled_at` option is present,
|
||||
Returns [ScheduledStatus]({{< relref "entities.md#scheduledstatus" >}})
|
||||
|
||||
### Resource information
|
||||
|
||||
{{< api_method_info auth="Yes" user="Yes" scope="write write:statuses" version="0.0.0" >}}
|
||||
|
@ -94,6 +97,7 @@ Returns [Status]({{< relref "entities.md#status" >}})
|
|||
| `sensitive` | Mark the media in the status as sensitive | Optional |
|
||||
| `spoiler_text` | Text to be shown as a warning before the actual content | Optional |
|
||||
| `visibility` | One of `direct`, `private`, `unlisted` `public` | Optional |
|
||||
| `scheduled_at` | Timestamp string to schedule posting of status (ISO 8601) | Optional |
|
||||
| `language` | Override language code of the toot (ISO 639-2) | Optional |
|
||||
|
||||
> You must provide either `status` or `media_ids`, completely empty statuses are not allowed.
|
||||
|
@ -104,6 +108,16 @@ In order to prevent duplicate statuses, this endpoint accepts an `Idempotency-Ke
|
|||
|
||||
See <https://stripe.com/blog/idempotency> for more on idempotency and idempotency keys.
|
||||
|
||||
### Scheduled status
|
||||
|
||||
Allows users to schedule a toot (with media attachments) to be published at a certain future date.
|
||||
|
||||
The scheduled date must be at least 5 minutes into the future. At most, 300 toots can be scheduled at the same time. Only 50 toots can be scheduled for any given day.
|
||||
|
||||
When `scheduled_at` option is present, instead of creating a status, we only run status validation, and if it passes, we create an entry in scheduled_statuses which encodes the status attributes. Every 5 minutes, a scheduler iterates over the scheduled_statuses table to fetch the ones due in the next 5 minutes, and push them into a more precise Sidekiq queue. In Sidekiq, the individual statuses are created, with media attachments being unassigned from the scheduled status and assigned to the real one.
|
||||
|
||||
This option was added since v2.7.0.
|
||||
|
||||
## DELETE /api/v1/statuses/:id
|
||||
|
||||
Remove a status. The status may still be available a short while after the call.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue