Channel Information is Null in shared_channel_invite_requested Slack Event
SDK Version 1.45.3
Description I am observing that the channelId, channelName, and channelType fields are consistently null within the shared_channel_invite_requested event payload received from Slack's Events API. This is occurring when an external vendor is invited to a Slack channel within an Enterprise Grid workspace where admin approval for shared channel invitations is enabled.
Expected Behavior While I understand that the shared_channel_invite_requested event signifies an admin approval request rather than a fully established shared channel, it would be beneficial to receive some identifying information about the channel for which the invite was requested. This would allow for more robust logging, custom approval workflows, or notifications tied to specific channels.
Currently, without channel details, it's challenging to provide context in internal notifications or track which specific channel an invite request pertains to before approval.
Actual Behavior The channelId, channelName, and channelType fields are always null in the shared_channel_invite_requested event payload.
Steps to Reproduce Ensure Slack Enterprise Grid workspace is configured to require admin approval for shared channel invitations. From a channel within the Slack workspace, invite an external vendor via Slack Connect. Observe the shared_channel_invite_requested event payload received by the Slack app's event listener. Relevant Payload Example JSON
{
"type": "shared_channel_invite_requested",
"actor": {
"id": "XXXX",
"name": "fXXXX",
"bot": false,
"teamId": "XXXX",
"timezone": null,
"realName": null,
"displayName": null
},
"channelId": null,
"eventType": null,
"channelName": null,
"channelType": null,
"targetUsers": [
{
"email": "[[email protected]]",
"inviteId": "XXXX"
}
],
"teamsInChannel": [
{
"id": "XXXX",
"name": "Verizon Org Test Env",
"icon": {
"imageOriginal": null,
"image34": "XXXX",
"image44": "XXXX",
"image68": "XXXX",
"image88": "XXXX",
"image102": "XXXX",
"image132": "XXXX",
"image230": "XXXX",
"imageDefault": false
},
"isVerified": false,
"requiresSponsorship": false,
"domain": "verizon-sandbox",
"dateCreated": 1585318639,
"avatarBaseUrl": "https://ca.slack-edge.com/"
}
],
"externalLimited": false,
"channelDateCreated": null,
"channelMessageLatestCountedTimestamp": null,
"eventTs": "1749740434.000000"
}
Hi @EnricoVoss thanks for bringing this up 💯
This seems like a backend issue rather then an issue with the SDK, I'll investigate this through other channels to try and figure out if this is a bug
@EnricoVoss the data should be sent to your app in the following format, rather then the one you describe
{
"type": "shared_channel_invite_requested",
"channel": {
"id": "C0123ABCDEF",
"is_im": false,
"is_private": false,
"date_created": 1564642828,
"message_latest_counted_timestamp": 1564642836000009,
"name": "host-team12345678999"
},
"actor": {
"id": "U012345ABCD",
"team_id": "E01234ABC",
"name": "username-012345ABCD",
"updated": 1564642800,
"who_can_share_contact_card": "EVERYONE",
"profile": {
"real_name": "User Name",
"display_name": "Username",
"real_name_normalized": "User Name",
"display_name_normalized": "Username",
"team": "E01234ABC",
"avatar_hash": "g12345678910",
"email": "[email protected]",
"image_24": "https:\/\/secure.gravatar.com\/avatar\/5efa915c16f10de52e23f4a8b8da612e.jpg?s=24&d=https%3A%2F%2Fdev.slack.com%2Fdev-cdn%2Fv1718734113%2Fimg%2Favatars%2Fuser_shapes%2Fava_0010-24.png",
}
},
"is_external_limited": true,
"target_users": [
{
"invite_id": "I01234ABC",
"email": "[email protected]"
}
],
"teams_in_channel": [
{
"id": "E01234ABC",
"name": "Team Name",
"icon": {
"image_34": "https:\/\/some-corp.com\/v123\/img\/avatars-teams\/ava_123.png",
"image_default": true
},
"avatar_base_url": "https:\/\/some-corp.com",
"is_verified": false,
"domain": "domain-10000000000",
"date_created": 1564642800,
"requires_sponsorship": false
},
{
"id": "E56789DEF",
"name": "Team Name",
"icon": {
"image_34": "https:\/\/some-corp.com\/v456\/img\/avatars-teams\/ava_456.png",
"image_default": true
},
"avatar_base_url": "https:\/\/some-corp.com",
"is_verified": false,
"domain": "domain-10000000123",
"date_created": 1564642800,
"requires_sponsorship": false
}
]
}
Let me know if this resolves your issue
Good morning @WilliamBergamin
That is the format I expected. Did you make any changes to the SDK to resolve the issue? We had similar casers in the past which had to be fixed through changes to the Java Bolt SDK. Please refer to issue 1311 https://github.com/slackapi/java-slack-sdk/issues/1311
Thank you for your feedback
👋 It looks like this issue has been open for 30 days with no activity. We'll mark this as stale for now, and wait 10 days for an update or for further comment before closing this issue out. If you think this issue needs to be prioritized, please comment to get the thread going again! Maintainers also review issues marked as stale on a regular basis and comment or adjust status if the issue needs to be reprioritized.
As this issue has been inactive for more than one month, we will be closing it. Thank you to all the participants! If you would like to raise a related issue, please create a new issue which includes your specific details and references this issue number.