GenerateChatOauthUrlRequestDto
August 7, 2026 · View on GitHub
Fields
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
subscriberId | Optional<String> | :heavy_minus_sign: | The subscriber ID to link the channel connection to. For Slack: Required for incoming webhook endpoints, optional for workspace connections. For MS Teams: Optional. Admin consent is tenant-wide and can be associated with a subscriber for organizational purposes. | subscriber-123 |
integrationIdentifier | String | :heavy_check_mark: | Integration identifier | |
connectionIdentifier | Optional<String> | :heavy_minus_sign: | Identifier of the channel connection that will be created. It is generated automatically if not provided. | slack-connection-abc123 |
context | Map<String, GenerateChatOauthUrlRequestDtoContextUnion> | :heavy_minus_sign: | N/A | |
scope | List<String> | :heavy_minus_sign: | Slack only: OAuth scopes to request during authorization. These define the permissions your Slack integration will have. If not specified, default scopes will be used: chat:write, chat:write.public, channels:read, groups:read, users:read, users:read.email. Webex: OAuth scopes to request during authorization. Defaults to: spark:messages_write, spark:rooms_read, spark:people_read, spark:memberships_read, spark:kms. MS Teams: This parameter is ignored. MS Teams uses admin consent with pre-configured permissions in Azure AD. Note: The generated OAuth URL expires after 5 minutes. | [ "chat:write", "chat:write.public", "channels:read", "groups:read", "users:read", "users:read.email", "incoming-webhook" ] |
userScope | List<String> | :heavy_minus_sign: | Slack only, link_user mode: User-level OAuth scopes to request during authorization. Used when mode is "link_user" to identify the Slack user via "Sign in with Slack". If not specified, defaults to: identity.basic. | [ "identity.basic" ] |
mode | Optional<Mode> | :heavy_minus_sign: | OAuth flow mode. Use "connect" (default) to create a workspace channel connection, or "link_user" to identify the subscriber's Slack user ID without creating a connection. | link_user |
connectionMode | Optional<GenerateChatOauthUrlRequestDtoConnectionMode> | :heavy_minus_sign: | Connection mode that determines how the channel connection is scoped. Use "subscriber" (default) to associate the connection with a specific subscriber. Use "shared" to associate the connection with a context instead of a subscriber — subscriberId will not be stored on the connection. | shared |
autoLinkUser | Optional<Boolean> | :heavy_minus_sign: | When true, after the workspace/tenant connection is created the OAuth flow also links the subscriber who clicked "Connect" as a personal endpoint. For Slack, this uses the authed_user.id already returned by oauth.v2.access — no extra redirect. For Webex, this uses the authenticated Webex person returned by people/me — no extra redirect. For MS Teams, this triggers a second OAuth redirect for delegated user-identity consent. Defaults to false when omitted; the SlackConnectButton and MsTeamsConnectButton SDK components default this to true. | true |