Skip to content

Adding ParentUserId and Subscribed to MessageEvent - #271

Merged
soxtoby merged 1 commit into
soxtoby:masterfrom
we4sz:message-parent-user-id-and-subscribed
Nov 1, 2026
Merged

soxtoby merged 1 commit into
soxtoby:masterfrom
we4sz:message-parent-user-id-and-subscribed

Conversation

@we4sz

@we4sz we4sz commented Oct 31, 2026

Copy link
Copy Markdown
Contributor

Two fields that Slack sends on messages read through conversations.history and conversations.replies have no property on MessageEvent, the type SlackNet reads those messages into. I found them comparing real responses of both methods with MessageEvent. My app doesn't read them through a workaround today. This models them. It is one commit.

  1. ParentUserId (parent_user_id), sent on the replies in a thread.
  2. Subscribed (subscribed), sent on the parent message of a thread.

Compatibility

Additive only. The new properties default to null and false, and the message subtypes that inherit from MessageEvent get them too.

Testing

New MessageThreadTests: a reply with parent_user_id, a thread parent with subscribed, and a message outside a thread, in the style of MessageTeamTests (including that the fields no longer land in ExtraProperties). ./do test passes (786 tests).

Seen in a real response: subscribed in real conversations.history and conversations.replies responses, and parent_user_id in a real conversations.replies response.

Not verified: what they mean. The reference shows them only in the example responses of conversations.replies and "Retrieving messages" and never describes them, so the properties have no doc comment. Reading the examples, parent_user_id is the author of the thread's parent message and subscribed sits on the parent message next to reply_count. I also haven't run my app against a local pack of this branch.

@soxtoby
soxtoby merged commit 39b0d8d into soxtoby:master Nov 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants