Skip to main content

Documentation Index

Fetch the complete documentation index at: https://support.affinity.co/llms.txt

Use this file to discover all available pages before exploring further.

Reference — lookup information.
See below for a list of OAuth scopes that we request from Slack when you set up an automation to forward Affinity field updates to Slack.

App-level scopes

Slack scopeDescriptionRequest reason
channels:joinJoin public channels in a workspaceWhen an Affinity user configures Affinity field updates to be forwarded to a Slack channel, our Slack bot joins the selected channel so that it can send messages to it.
channels:readView basic information about public channels in a workspaceOur configuration UI checks public channel privacy details to determine if the user viewing the Slack automation is allowed to view the recipient.
chat:writeSend messages as @AffinityOur Slack bot needs this permission to send messages to your Slack workspace.
chat:write.publicSend messages to channels @Affinity isn’t a member ofThis scope allows our integration to keep working in public channels even when our Slack bot is mistakenly removed from them.
commandsAdd shortcuts and/or slash commands that people can useThis scope allows our integration to create shortcuts and message actions to create notes.
groups:readView basic information about private channels that Affinity has been added toOur configuration UI checks private channel privacy details to determine if the user viewing the Slack automation is allowed to view the recipient.
team:readView the name, email domain, and icon for workspaces Affinity is connected toEnables us to display the domain of the Slack workspace we will send a message to when a field update happens.
users:readView people in a workspaceWhen an Affinity user configures these notifications in our app settings, we use this scope to remember basic information about their corresponding Slack user. This is necessary so that we can remember who configured each notification, and render the rest of the configuration UI from their corresponding Slack user’s perspective.
users:read.emailView email addresses of people in a workspaceSee above. We use email address as an identifier for the “corresponding Slack user.”

User-level scopes

Slack scopeDescriptionRequest reason
channels:readView basic information about public channels in a workspaceOur configuration UI includes dropdowns allowing an Affinity user to choose the destination for their field update notifications in Slack. We use this scope to load the list of public channels that the user is a member of in Slack.
channels:write.invitesInvite members to public channelsWhen an Affinity user chooses to forward field update notifications to one of their public channels, we use this scope to add our Slack bot to that channel.
groups:readView basic information about a user’s private channelsOur configuration UI includes dropdowns allowing an Affinity user to choose the destination for their field update notifications in Slack. We use this scope to load the list of private channels that the user is a member of in Slack.
groups:write.invitesInvite members to private channelsWhen an Affinity user chooses to forward field update notifications to one of their private channels, we use this scope to add our Slack bot to that channel.
users:readView people in a workspaceOur configuration UI includes dropdowns allowing an Affinity user to choose the destination for their field update notifications in Slack. Along with public and private channels, Affinity users can elect to send notifications to individual users as DMs. We use this scope to load the list of users in the configuring user’s Slack workspace.