Documentation ¶
Index ¶
- Constants
- func WithBearerToken(token string) uhttp.RequestOption
- type Address
- type BaseResponse
- type Client
- func (c *Client) AddUserToGroup(ctx context.Context, groupID string, user string) (*v2.RateLimitDescription, error)
- func (c *Client) GetAuthTeamsList(ctx context.Context, cursor string) ([]slack.Team, string, *v2.RateLimitDescription, error)
- func (c *Client) GetIDPGroup(ctx context.Context, groupID string) (*GroupResource, *v2.RateLimitDescription, error)
- func (c *Client) GetRoleAssignments(ctx context.Context, roleID string, cursor string) ([]RoleAssignment, string, *v2.RateLimitDescription, error)
- func (c *Client) GetTeams(ctx context.Context, cursor string) ([]slack.Team, string, *v2.RateLimitDescription, error)
- func (c *Client) GetUserGroupMembers(ctx context.Context, userGroupID string, teamID string) ([]string, *v2.RateLimitDescription, error)
- func (c *Client) GetUserGroups(ctx context.Context, teamID string) ([]slack.UserGroup, *v2.RateLimitDescription, error)
- func (c *Client) GetUserInfo(ctx context.Context, userID string) (*User, *v2.RateLimitDescription, error)
- func (c *Client) GetUsers(ctx context.Context, teamID string, cursor string) ([]User, string, *v2.RateLimitDescription, error)
- func (c *Client) GetUsersAdmin(ctx context.Context, cursor string) ([]UserAdmin, string, *v2.RateLimitDescription, error)
- func (c *Client) ListIDPGroups(ctx context.Context, startIndex int, count int) (*SCIMResponse[GroupResource], *v2.RateLimitDescription, error)
- func (c *Client) RemoveUserFromGroup(ctx context.Context, groupID string, user string) (bool, *v2.RateLimitDescription, error)
- func (c *Client) SetWorkspaceRole(ctx context.Context, teamID string, userID string, roleID string) (*v2.RateLimitDescription, error)
- type Email
- type EnterpriseUser
- type Group
- type GroupResource
- type Manager
- type Member
- type Meta
- type Name
- type Pagination
- type PatchOp
- type PhoneNumber
- type RoleAssignment
- type SCIMResponse
- type ScimOperate
- type UrnIETFParamsScimSchemasExtensionEnterprise20UserClass
- type User
- type UserAdmin
- type UserID
- type UserResource
Constants ¶
const ( UrlPathGetRoleAssignments = "/api/admin.roles.listAssignments" UrlPathGetTeams = "/api/admin.teams.list" UrlPathGetUserGroupMembers = "/api/usergroups.users.list" UrlPathGetUserGroups = "/api/usergroups.list" UrlPathGetUserInfo = "/api/users.info" UrlPathGetUsers = "/api/users.list" UrlPathGetUsersAdmin = "/api/admin.users.list" UrlPathIDPGroup = "/scim/v2/Groups/%s" UrlPathIDPGroups = "/scim/v2/Groups" UrlPathAuthTeamsList = "/api/auth.teams.list" // NOTE: these are only for enterprise grid workspaces // docs: https://api.slack.com/methods/admin.users.setRegular UrlPathSetRegular = "/api/admin.users.setRegular" UrlPathSetAdmin = "/api/admin.users.setAdmin" UrlPathSetOwner = "/api/admin.users.setOwner" )
docs: https://api.slack.com/methods
const (
PageSizeDefault = 100
)
Variables ¶
This section is empty.
Functions ¶
func WithBearerToken ¶
func WithBearerToken(token string) uhttp.RequestOption
WithBearerToken - TODO(marcos): move this function to `baton-sdk`.
Types ¶
type BaseResponse ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) AddUserToGroup ¶
func (c *Client) AddUserToGroup( ctx context.Context, groupID string, user string, ) ( *v2.RateLimitDescription, error, )
AddUserToGroup patches a group by adding a user to it.
func (*Client) GetAuthTeamsList ¶ added in v0.0.24
func (c *Client) GetAuthTeamsList( ctx context.Context, cursor string, ) ( []slack.Team, string, *v2.RateLimitDescription, error, )
GetAuthTeamsList returns the list of teams for which the app is authed.
func (*Client) GetIDPGroup ¶
func (c *Client) GetIDPGroup( ctx context.Context, groupID string, ) ( *GroupResource, *v2.RateLimitDescription, error, )
GetIDPGroup returns a single IDP group from the SCIM API.
func (*Client) GetRoleAssignments ¶
func (c *Client) GetRoleAssignments( ctx context.Context, roleID string, cursor string, ) ( []RoleAssignment, string, *v2.RateLimitDescription, error, )
GetRoleAssignments returns the role assignments for the given role ID.
func (*Client) GetTeams ¶
func (c *Client) GetTeams( ctx context.Context, cursor string, ) ( []slack.Team, string, *v2.RateLimitDescription, error, )
GetTeams returns the teams of the given enterprise.
func (*Client) GetUserGroupMembers ¶
func (c *Client) GetUserGroupMembers( ctx context.Context, userGroupID string, teamID string, ) ( []string, *v2.RateLimitDescription, error, )
GetUserGroupMembers returns the members of the given user group from a given team.
func (*Client) GetUserGroups ¶
func (c *Client) GetUserGroups( ctx context.Context, teamID string, ) ( []slack.UserGroup, *v2.RateLimitDescription, error, )
GetUserGroups returns the user groups for the given team.
func (*Client) GetUserInfo ¶
func (c *Client) GetUserInfo( ctx context.Context, userID string, ) ( *User, *v2.RateLimitDescription, error, )
GetUserInfo returns the user info for the given user ID.
func (*Client) GetUsers ¶
func (c *Client) GetUsers( ctx context.Context, teamID string, cursor string, ) ( []User, string, *v2.RateLimitDescription, error, )
GetUsers returns the users of the given team.
func (*Client) GetUsersAdmin ¶
func (c *Client) GetUsersAdmin( ctx context.Context, cursor string, ) ( []UserAdmin, string, *v2.RateLimitDescription, error, )
GetUsersAdmin returns all users in Enterprise grid.
func (*Client) ListIDPGroups ¶
func (c *Client) ListIDPGroups( ctx context.Context, startIndex int, count int, ) ( *SCIMResponse[GroupResource], *v2.RateLimitDescription, error, )
ListIDPGroups returns all IDP groups from the SCIM API.
type EnterpriseUser ¶
type GroupResource ¶
type Pagination ¶
type Pagination struct { ResponseMetadata struct { NextCursor string `json:"next_cursor"` } `json:"response_metadata"` }
type PatchOp ¶
type PatchOp struct { Schemas []string `json:"schemas"` Operations []ScimOperate `json:"Operations"` }
type PhoneNumber ¶
type RoleAssignment ¶
type SCIMResponse ¶
type ScimOperate ¶
type UrnIETFParamsScimSchemasExtensionEnterprise20UserClass ¶
type UrnIETFParamsScimSchemasExtensionEnterprise20UserClass struct { EmployeeNumber string `json:"employeeNumber"` CostCenter string `json:"costCenter"` Organization string `json:"organization"` Division string `json:"division"` Department string `json:"department"` Manager Manager `json:"manager"` }
type User ¶
type User struct { ID string `json:"id"` TeamID string `json:"team_id"` Name string `json:"name"` Deleted bool `json:"deleted"` Color string `json:"color"` RealName string `json:"real_name"` TZ string `json:"tz,omitempty"` TZLabel string `json:"tz_label"` TZOffset int `json:"tz_offset"` Profile slack.UserProfile `json:"profile"` IsBot bool `json:"is_bot"` IsAdmin bool `json:"is_admin"` IsOwner bool `json:"is_owner"` IsPrimaryOwner bool `json:"is_primary_owner"` IsRestricted bool `json:"is_restricted"` IsUltraRestricted bool `json:"is_ultra_restricted"` IsStranger bool `json:"is_stranger"` IsAppUser bool `json:"is_app_user"` IsInvitedUser bool `json:"is_invited_user"` Has2FA bool `json:"has_2fa"` TwoFactorType string `json:"two_factor_type"` HasFiles bool `json:"has_files"` Presence string `json:"presence"` Locale string `json:"locale"` Enterprise EnterpriseUser `json:"enterprise_user,omitempty"` }
type UserAdmin ¶
type UserAdmin struct { ID string `json:"id"` Email string `json:"email"` IsAdmin bool `json:"is_admin"` IsOwner bool `json:"is_owner"` IsPrimaryOwner bool `json:"is_primary_owner"` IsRestricted bool `json:"is_restricted"` IsUltraRestricted bool `json:"is_ultra_restricted"` IsBot bool `json:"is_bot"` Username string `json:"username"` FullName string `json:"full_name"` IsActive bool `json:"is_active"` DateCreated int `json:"date_created"` DeactivatedTs int `json:"deactivated_ts"` ExpirationTs int `json:"expiration_ts"` Workspaces []string `json:"workspaces"` Has2Fa bool `json:"has_2fa"` HasSso bool `json:"has_sso"` }
type UserResource ¶
type UserResource struct { Schemas []string `json:"schemas"` ID string `json:"id"` ExternalID string `json:"externalId"` Meta Meta `json:"meta"` UserName string `json:"userName"` NickName string `json:"nickName"` Name Name `json:"name"` DisplayName string `json:"displayName"` ProfileURL string `json:"profileUrl"` Title string `json:"title"` Timezone string `json:"timezone"` Active bool `json:"active"` Emails []Email `json:"emails"` Addresses []Address `json:"addresses"` PhoneNumbers []PhoneNumber `json:"phoneNumbers"` UserType string `json:"userType"` Roles []Email `json:"roles"` PreferredLanguage string `json:"preferredLanguage"` Locale string `json:"locale"` UrnIETFParamsScimSchemasExtensionEnterprise20User UrnIETFParamsScimSchemasExtensionEnterprise20UserClass `json:"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"` Groups []Group `json:"groups"` }
UserResource SCIM resources.