Survey what other servers have done and don't reinvent the wheel.
See mastodon/mastodon#32171. In that I suggest v1/thread, but this could just as easily be v2/statuses.
This ensures that a server that doesn't support scheduled statuses can't accept a scheduled status but post it immediately.
Mastodon doesn't allow people to post e.g., media + polls, but will serve statuses with this mixture.
Relax the restriction in the API -- if you want to continue to enforce this when creating posts in your web UI then fine, but allow third party clients the option to create richer posts.
Make the MIME type of the incoming content a non-optional property. You might only accept text/plain, other servers might accept text/markdown or text/html. This allows clients to provide a richer editing experience based on what the server supports.
Pleroma and GotoSocial call this content_type.
Expose the list of supported status MIME types in the instanceinfo.
Consistent with the response returned when fetching a status to edit. This makes it easier for clients to safely round-trip status edits, and provide additional UI for setting when a poll should end.
Extend the language property to ISO 639-3 three letter language codes, which cover many additional languages, https://iso639-3.sil.org/code_tables/639/data.
Standardise on either quote_approval_policy or quote_policy as the property name (per https://discord.com/channels/1100160301254590525/1100203946502533221/1442981409433059501)