slack

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2026 License: AGPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrWrongWorkspace is returned when the user's workspace doesn't match the expected one.
	ErrWrongWorkspace = errors.New("wrong workspace")
	// ErrUnexpectedStatus is returned when the HTTP response has a non-200 status code.
	ErrUnexpectedStatus = errors.New("unexpected status")
	// ErrSlackAPI is returned when the Slack API returns an error.
	ErrSlackAPI = errors.New("slack error")
)

Functions

This section is empty.

Types

type Provider

type Provider struct {

	// Allow overriding URLs for testing.
	TokenURL    string
	UserInfoURL string
	// contains filtered or unexported fields
}

Provider implements auth.OAuthProvider for Slack OpenID Connect.

func NewProvider

func NewProvider(clientID, clientSecret, teamID string) *Provider

NewProvider creates a new Slack OIDC provider.

func (*Provider) AuthorizeURL

func (p *Provider) AuthorizeURL(state, redirectURI string) string

AuthorizeURL builds the Slack OIDC authorization URL.

func (*Provider) ExchangeCode

func (p *Provider) ExchangeCode(ctx context.Context, code, redirectURI string) (*auth.OAuthUser, error)

ExchangeCode exchanges an authorization code for user info. It calls the token endpoint, then the userinfo endpoint, checks team restrictions, and returns a normalized OAuthUser.

func (*Provider) Name

func (p *Provider) Name() string

Name returns "slack".

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL