mirror of https://github.com/zulip/zulip.git
api-changelog: Clarify feature level 172 descriptive text.
Original API feature level entries: commit440f9e397a
and commitbd7f728796
.
This commit is contained in:
parent
295b37bceb
commit
0e9c34a975
|
@ -122,12 +122,15 @@ format used by the Zulip server that they are interacting with.
|
||||||
|
|
||||||
**Feature level 172**
|
**Feature level 172**
|
||||||
|
|
||||||
* [`PATCH /messages/{message_id}`](/api/update-message): Topic editing
|
* [`PATCH /messages/{message_id}`](/api/update-message):
|
||||||
restrictions now apply to messages without a topic as well.
|
[Topic editing restrictions](/help/restrict-moving-messages) now apply
|
||||||
* [`PATCH /messages/{message_id}`](/api/update-message): The endpoint
|
to stream messages without a topic.
|
||||||
now returns an error when users, other than organization administrators
|
* [`PATCH /messages/{message_id}`](/api/update-message): When users, other
|
||||||
and moderators, try to move messages that have passed the time limit
|
than organization administrators and moderators, use
|
||||||
using `change_all` value for `propagate_mode` parameter.
|
`"propagate_mode": "change_all"` to move messages that have passed the
|
||||||
|
organization's time limit for updating a message's topic and/or stream,
|
||||||
|
this endpoint now returns an error response
|
||||||
|
(`"code": "MOVE_MESSAGES_TIME_LIMIT_EXCEEDED"`).
|
||||||
|
|
||||||
**Feature level 171**:
|
**Feature level 171**:
|
||||||
|
|
||||||
|
|
|
@ -6897,35 +6897,43 @@ paths:
|
||||||
You can [resolve topics](/help/resolve-a-topic) by editing the
|
You can [resolve topics](/help/resolve-a-topic) by editing the
|
||||||
topic to `✔ {original_topic}`.
|
topic to `✔ {original_topic}`.
|
||||||
|
|
||||||
**Note**: See [configuring message editing][config-message-editing]
|
See [configuring message editing][config-message-editing] for detailed
|
||||||
for detailed documentation on when users are allowed to edit topics.
|
documentation on when users are allowed to edit message content and
|
||||||
|
[restricting moving messages][restrict-move-messages] for detailed
|
||||||
|
documentation on when users are allowed to change a message's topic
|
||||||
|
and/or stream.
|
||||||
|
|
||||||
**Changes**: Before Zulip 7.0 (feature level 162), users who were not
|
**Changes**: Prior to Zulip 7.0 (feature level 172), anyone could add a
|
||||||
|
topic to stream messages without a topic, regardless of the organization's
|
||||||
|
[topic editing permissions](/help/restrict-moving-messages). As of this
|
||||||
|
feature level, messages without topics have the same restrictions for
|
||||||
|
topic edits as messages with topics.
|
||||||
|
|
||||||
|
Before Zulip 7.0 (feature level 172), by using the `change_all` value for
|
||||||
|
the `propagate_mode` parameter, users could move messages after the
|
||||||
|
organization's configured time limits for changing a message's topic or
|
||||||
|
stream had passed. As of this feature level, the server will [return an
|
||||||
|
error](/api/update-message#response) with `"code":
|
||||||
|
"MOVE_MESSAGES_TIME_LIMIT_EXCEEDED"` if users, other than organization
|
||||||
|
administrators or moderators, try to move messages after these time
|
||||||
|
limits have passed.
|
||||||
|
|
||||||
|
Before Zulip 7.0 (feature level 162), users who were not
|
||||||
administrators or moderators could only edit topics if the target
|
administrators or moderators could only edit topics if the target
|
||||||
message was sent within the last 3 days. That time limit is now
|
message was sent within the last 3 days. That time limit is now
|
||||||
controlled by the `move_messages_within_stream_limit_seconds` setting. A
|
controlled by the `move_messages_within_stream_limit_seconds` setting. A
|
||||||
similar time limit for moving topics to different streams was added,
|
similar time limit for moving topics to different streams was added,
|
||||||
controlled by the `move_messages_between_streams_limit_seconds` setting.
|
controlled by the `move_messages_between_streams_limit_seconds` setting.
|
||||||
|
|
||||||
**Changes**: Before Zulip 7.0 (feature level 159), editing
|
Before Zulip 7.0 (feature level 159), editing
|
||||||
streams and topics of messages was forbidden if
|
streams and topics of messages was forbidden if
|
||||||
`allow_message_editing` was `false`, regardless of the
|
`allow_message_editing` was `false`, regardless of the
|
||||||
`edit_topic_policy` or `move_messages_between_streams_policy`.
|
`edit_topic_policy` or `move_messages_between_streams_policy`.
|
||||||
Before Zulip 7.0 (feature level 159), message senders were allowed
|
Before Zulip 7.0 (feature level 159), message senders were allowed
|
||||||
to edit the topic indefinitely.
|
to edit the topic indefinitely.
|
||||||
|
|
||||||
**Changes**: Before Zulip 7.0 (feature level 172), anyone could add
|
|
||||||
a topic to messages without topic regardless of topic edit
|
|
||||||
permissions. Now topic editing restrictions apply to messages without a
|
|
||||||
topic as well.
|
|
||||||
|
|
||||||
Before Zulip 7.0 (feature level 172), users were allowed to move messages
|
|
||||||
that had passed the time limit by using `change_all` value for `propagate_mode`
|
|
||||||
parameter. Now, the server returns an error if users, other than organization
|
|
||||||
administrators and moderators, try to move messages that have passed the time
|
|
||||||
limit.
|
|
||||||
|
|
||||||
[config-message-editing]: /help/restrict-message-editing-and-deletion
|
[config-message-editing]: /help/restrict-message-editing-and-deletion
|
||||||
|
[restrict-move-messages]: /help/restrict-moving-messages
|
||||||
x-curl-examples-parameters:
|
x-curl-examples-parameters:
|
||||||
oneOf:
|
oneOf:
|
||||||
- type: exclude
|
- type: exclude
|
||||||
|
@ -7062,30 +7070,35 @@ paths:
|
||||||
"total_messages_in_topic": 5,
|
"total_messages_in_topic": 5,
|
||||||
}
|
}
|
||||||
description: |
|
description: |
|
||||||
A special failed JSON response for when the user has permission to move
|
A special failed JSON response (`"code": "MOVE_MESSAGES_TIME_LIMIT_EXCEEDED"`)
|
||||||
|
for when the user has permission to move
|
||||||
the target message, but asked to move all messages in a topic
|
the target message, but asked to move all messages in a topic
|
||||||
(`change_all`) and the user does not have permission to move the entire
|
(`"propagate_mode": "change_all"`) and the user does not have permission
|
||||||
topic.
|
to move the entire topic.
|
||||||
|
|
||||||
This happens when the topic contains some messages that are older than an
|
This happens when the topic contains some messages that are older than an
|
||||||
applicable time limit for the requested topic move
|
applicable time limit for the requested topic move (see
|
||||||
(`move_messages_within_stream_limit_seconds` and/or
|
`move_messages_within_stream_limit_seconds` and/or
|
||||||
`move_messages_between_streams_limit_seconds`).
|
`move_messages_between_streams_limit_seconds` in the
|
||||||
|
[`POST /register`](/api/register-queue) response).
|
||||||
|
|
||||||
This response contains data on which portion of this topic the user has
|
The error response contains data on which portion of this topic the user has
|
||||||
permission to move; `first_message_id_allowed_to_move` is the oldest
|
permission to move. `first_message_id_allowed_to_move` is the oldest message
|
||||||
message ID in this topic that the user has permission to move; the user
|
ID in this topic that the user has permission to move.
|
||||||
has permission to move the most recent `total_messages_allowed_to_move`
|
There are `total_messages_in_topic` in the topic, but the user only has
|
||||||
messages, but `total_messages_in_topic` exist in the topic.
|
permission to move the (most recent) `total_messages_allowed_to_move`
|
||||||
|
messages.
|
||||||
|
|
||||||
A client is recommended to either just present the error to the user, or
|
Clients should support this error code with
|
||||||
if `first_message_id_allowed_to_move` is not `null`, prompt the user with
|
`"first_message_id_allowed_to_move": null` for forward compatibility
|
||||||
this information. Clients should support this error code with
|
with future server versions that may use this error code with other
|
||||||
`"first_message_id_allowed_to_move": null` for forwards compatibility
|
propagation modes where the user does not have permission to move any
|
||||||
with future server versions that may use this error code in other
|
messages, or where the server did not calculate the total message counts
|
||||||
propagation modes where it is possible that the user does not have
|
noted above.
|
||||||
permission to move any messages, or where the server did not calculate the
|
|
||||||
other fields.
|
Clients can either only present the error to the user or, if
|
||||||
|
`first_message_id_allowed_to_move` is not `null`, prompt the user to adjust
|
||||||
|
their query with the above information.
|
||||||
|
|
||||||
If clients choose to present a prompt for this error code, they should
|
If clients choose to present a prompt for this error code, they should
|
||||||
recommend the option of cancelling and (manually) asking a moderator to
|
recommend the option of cancelling and (manually) asking a moderator to
|
||||||
|
@ -7095,12 +7108,13 @@ paths:
|
||||||
a target message ID of `first_message_id_allowed_to_move`, if the user
|
a target message ID of `first_message_id_allowed_to_move`, if the user
|
||||||
desires to move only the portion of the topic that they can.
|
desires to move only the portion of the topic that they can.
|
||||||
|
|
||||||
Note that in a stream with protected history, the Zulip security model
|
Note that in a stream with [protected history](/help/stream-permissions),
|
||||||
requires that the above calculations only include messages the acting user
|
the Zulip security model requires that the above calculations only include
|
||||||
has access to. So in the rare case of a user attempting to move a topic
|
messages the acting user has access to. So in the rare case of a user
|
||||||
that started before the user joined a private stream with protected
|
attempting to move a topic that started before the user joined a private
|
||||||
history, this API endpoint might move only portion of a topic that they
|
stream with protected history, this API endpoint might move only the portion
|
||||||
have access to, without this error or any confirmation dialog.
|
of a topic that they have access to, without this error or any confirmation
|
||||||
|
dialog.
|
||||||
|
|
||||||
**Changes**: New in Zulip 7.0 (feature level 172).
|
**Changes**: New in Zulip 7.0 (feature level 172).
|
||||||
delete:
|
delete:
|
||||||
|
|
Loading…
Reference in New Issue