Documentation ¶
Overview ¶
Package `usermanagement` provides a client wrapping the WorkOS User Management API.
Index ¶
- Constants
- Variables
- func DeleteOrganizationMembership(ctx context.Context, opts DeleteOrganizationMembershipOpts) error
- func DeleteUser(ctx context.Context, opts DeleteUserOpts) error
- func GetAuthorizationURL(opts GetAuthorizationURLOpts) (*url.URL, error)
- func SendMagicAuthCode(ctx context.Context, opts SendMagicAuthCodeOpts) error
- func SendPasswordResetEmail(ctx context.Context, opts SendPasswordResetEmailOpts) error
- func SetAPIKey(apiKey string)
- type AuthenticateResponse
- func AuthenticateWithCode(ctx context.Context, opts AuthenticateWithCodeOpts) (AuthenticateResponse, error)
- func AuthenticateWithEmailVerificationCode(ctx context.Context, opts AuthenticateWithEmailVerificationCodeOpts) (AuthenticateResponse, error)
- func AuthenticateWithMagicAuth(ctx context.Context, opts AuthenticateWithMagicAuthOpts) (AuthenticateResponse, error)
- func AuthenticateWithOrganizationSelection(ctx context.Context, opts AuthenticateWithOrganizationSelectionOpts) (AuthenticateResponse, error)
- func AuthenticateWithPassword(ctx context.Context, opts AuthenticateWithPasswordOpts) (AuthenticateResponse, error)
- func AuthenticateWithTOTP(ctx context.Context, opts AuthenticateWithTOTPOpts) (AuthenticateResponse, error)
- type AuthenticateWithCodeOpts
- type AuthenticateWithEmailVerificationCodeOpts
- type AuthenticateWithMagicAuthOpts
- type AuthenticateWithOrganizationSelectionOpts
- type AuthenticateWithPasswordOpts
- type AuthenticateWithTOTPOpts
- type Client
- func (c *Client) AuthenticateWithCode(ctx context.Context, opts AuthenticateWithCodeOpts) (AuthenticateResponse, error)
- func (c *Client) AuthenticateWithEmailVerificationCode(ctx context.Context, opts AuthenticateWithEmailVerificationCodeOpts) (AuthenticateResponse, error)
- func (c *Client) AuthenticateWithMagicAuth(ctx context.Context, opts AuthenticateWithMagicAuthOpts) (AuthenticateResponse, error)
- func (c *Client) AuthenticateWithOrganizationSelection(ctx context.Context, opts AuthenticateWithOrganizationSelectionOpts) (AuthenticateResponse, error)
- func (c *Client) AuthenticateWithPassword(ctx context.Context, opts AuthenticateWithPasswordOpts) (AuthenticateResponse, error)
- func (c *Client) AuthenticateWithTOTP(ctx context.Context, opts AuthenticateWithTOTPOpts) (AuthenticateResponse, error)
- func (c *Client) CreateOrganizationMembership(ctx context.Context, opts CreateOrganizationMembershipOpts) (OrganizationMembership, error)
- func (c *Client) CreateUser(ctx context.Context, opts CreateUserOpts) (User, error)
- func (c *Client) DeleteOrganizationMembership(ctx context.Context, opts DeleteOrganizationMembershipOpts) error
- func (c *Client) DeleteUser(ctx context.Context, opts DeleteUserOpts) error
- func (c *Client) EnrollAuthFactor(ctx context.Context, opts EnrollAuthFactorOpts) (EnrollAuthFactorResponse, error)
- func (c *Client) GetAuthorizationURL(opts GetAuthorizationURLOpts) (*url.URL, error)
- func (c *Client) GetInvitation(ctx context.Context, opts GetInvitationOpts) (Invitation, error)
- func (c *Client) GetOrganizationMembership(ctx context.Context, opts GetOrganizationMembershipOpts) (OrganizationMembership, error)
- func (c *Client) GetUser(ctx context.Context, opts GetUserOpts) (User, error)
- func (c *Client) ListAuthFactors(ctx context.Context, opts ListAuthFactorsOpts) (ListAuthFactorsResponse, error)
- func (c *Client) ListInvitations(ctx context.Context, opts ListInvitationsOpts) (ListInvitationsResponse, error)
- func (c *Client) ListOrganizationMemberships(ctx context.Context, opts ListOrganizationMembershipsOpts) (ListOrganizationMembershipsResponse, error)
- func (c *Client) ListUsers(ctx context.Context, opts ListUsersOpts) (ListUsersResponse, error)
- func (c *Client) ResetPassword(ctx context.Context, opts ResetPasswordOpts) (UserResponse, error)
- func (c *Client) RevokeInvitation(ctx context.Context, opts RevokeInvitationOpts) (Invitation, error)
- func (c *Client) SendInvitation(ctx context.Context, opts SendInvitationOpts) (Invitation, error)
- func (c *Client) SendMagicAuthCode(ctx context.Context, opts SendMagicAuthCodeOpts) error
- func (c *Client) SendPasswordResetEmail(ctx context.Context, opts SendPasswordResetEmailOpts) error
- func (c *Client) SendVerificationEmail(ctx context.Context, opts SendVerificationEmailOpts) (UserResponse, error)
- func (c *Client) UpdateUser(ctx context.Context, opts UpdateUserOpts) (User, error)
- func (c *Client) VerifyEmail(ctx context.Context, opts VerifyEmailOpts) (UserResponse, error)
- type CreateOrganizationMembershipOpts
- type CreateUserOpts
- type DeleteOrganizationMembershipOpts
- type DeleteUserOpts
- type EnrollAuthFactorOpts
- type EnrollAuthFactorResponse
- type GetAuthorizationURLOpts
- type GetInvitationOpts
- type GetOrganizationMembershipOpts
- type GetUserOpts
- type Invitation
- type InvitationState
- type ListAuthFactorsOpts
- type ListAuthFactorsResponse
- type ListInvitationsOpts
- type ListInvitationsResponse
- type ListOrganizationMembershipsOpts
- type ListOrganizationMembershipsResponse
- type ListUsersOpts
- type ListUsersResponse
- type Order
- type Organization
- type OrganizationMembership
- type PasswordHashType
- type ResetPasswordOpts
- type RevokeInvitationOpts
- type SendInvitationOpts
- type SendMagicAuthCodeOpts
- type SendPasswordResetEmailOpts
- type SendVerificationEmailOpts
- type UpdateUserOpts
- type User
- type UserResponse
- type VerifyEmailOpts
Constants ¶
const ResponseLimit = 10
ResponseLimit is the default number of records to limit a response to.
Variables ¶
var ( // DefaultClient is the client used by User management methods DefaultClient = NewClient("") )
Functions ¶
func DeleteOrganizationMembership ¶
func DeleteOrganizationMembership( ctx context.Context, opts DeleteOrganizationMembershipOpts, ) error
DeleteOrganizationMembership deletes a existing OrganizationMembership.
func DeleteUser ¶
func DeleteUser( ctx context.Context, opts DeleteUserOpts, ) error
DeleteUser deletes a existing User.
func GetAuthorizationURL ¶
func GetAuthorizationURL(opts GetAuthorizationURLOpts) (*url.URL, error)
GetAuthorizationURL returns an authorization url generated with the given options.
func SendMagicAuthCode ¶
func SendMagicAuthCode( ctx context.Context, opts SendMagicAuthCodeOpts, ) error
SendMagicAuthCode sends a one-time code to the user's email address.
func SendPasswordResetEmail ¶
func SendPasswordResetEmail( ctx context.Context, opts SendPasswordResetEmailOpts, ) error
SendPasswordResetEmail creates a password reset challenge and emails a password reset link to an unmanaged user.
Types ¶
type AuthenticateResponse ¶
type AuthenticateResponse struct { User User `json:"user"` // Which Organization the user is signing in to. // If the user is a member of multiple organizations, this is the organization the user selected // as part of the authentication flow. // If the user is a member of only one organization, this is that organization. // If the user is not a member of any organizations, this is null. OrganizationID string `json:"organization_id"` }
func AuthenticateWithCode ¶
func AuthenticateWithCode( ctx context.Context, opts AuthenticateWithCodeOpts, ) (AuthenticateResponse, error)
AuthenticateWithCode authenticates an OAuth user or a managed SSO user that is logging in through SSO, and optionally creates a session.
func AuthenticateWithEmailVerificationCode ¶
func AuthenticateWithEmailVerificationCode( ctx context.Context, opts AuthenticateWithEmailVerificationCodeOpts, ) (AuthenticateResponse, error)
AuthenticateWithEmailVerificationCode authenticates a user by verifying an code sent to their email address.
func AuthenticateWithMagicAuth ¶
func AuthenticateWithMagicAuth( ctx context.Context, opts AuthenticateWithMagicAuthOpts, ) (AuthenticateResponse, error)
AuthenticateWithMagicAuth authenticates a user by verifying a one-time code sent to the user's email address by the Magic Auth Send Code endpoint.
func AuthenticateWithOrganizationSelection ¶
func AuthenticateWithOrganizationSelection( ctx context.Context, opts AuthenticateWithOrganizationSelectionOpts, ) (AuthenticateResponse, error)
AuthenticateWithOrganizationSelection completes authentication for a user given an organization they've selected.
func AuthenticateWithPassword ¶
func AuthenticateWithPassword( ctx context.Context, opts AuthenticateWithPasswordOpts, ) (AuthenticateResponse, error)
AuthenticateWithPassword authenticates a user with email and password and optionally creates a session.
func AuthenticateWithTOTP ¶
func AuthenticateWithTOTP( ctx context.Context, opts AuthenticateWithTOTPOpts, ) (AuthenticateResponse, error)
AuthenticateWithTOTP authenticates a user by verifying a time-based one-time password (TOTP)
type AuthenticateWithMagicAuthOpts ¶
type AuthenticateWithMagicAuthOpts struct { ClientID string `json:"client_id"` Code string `json:"code"` Email string `json:"email"` // An authorization code used in a previous authenticate request that resulted in an existing user error response. // By specifying link_authorization_code, the Magic Auth authentication will link the credentials of the previous // authorization code with this user. LinkAuthorizationCode string `json:"link_authorization_code,omitempty"` IPAddress string `json:"ip_address,omitempty"` UserAgent string `json:"user_agent,omitempty"` }
type AuthenticateWithOrganizationSelectionOpts ¶
type AuthenticateWithOrganizationSelectionOpts struct { ClientID string `json:"client_id"` PendingAuthenticationToken string `json:"pending_authentication_token"` OrganizationID string `json:"organization_id"` IPAddress string `json:"ip_address,omitempty"` UserAgent string `json:"user_agent,omitempty"` }
type AuthenticateWithTOTPOpts ¶
type AuthenticateWithTOTPOpts struct { ClientID string `json:"client_id"` Code string `json:"code"` IPAddress string `json:"ip_address,omitempty"` UserAgent string `json:"user_agent,omitempty"` PendingAuthenticationToken string `json:"pending_authentication_token"` AuthenticationChallengeID string `json:"authentication_challenge_id"` }
type Client ¶
type Client struct { // The WorkOS api key. It can be found in // https://dashboard.workos.com/api-keys. // // REQUIRED. APIKey string // The http.Client that is used to send request to WorkOS. // // Defaults to http.Client. HTTPClient *http.Client // The endpoint to WorkOS API. // // Defaults to https://api.workos.com. Endpoint string // The function used to encode in JSON. Defaults to json.Marshal. JSONEncode func(v interface{}) ([]byte, error) }
Client represents a client that fetch User Management data from WorkOS API.
func (*Client) AuthenticateWithCode ¶
func (c *Client) AuthenticateWithCode(ctx context.Context, opts AuthenticateWithCodeOpts) (AuthenticateResponse, error)
AuthenticateWithCode authenticates an OAuth user or a managed SSO user that is logging in through SSO
func (*Client) AuthenticateWithEmailVerificationCode ¶
func (c *Client) AuthenticateWithEmailVerificationCode(ctx context.Context, opts AuthenticateWithEmailVerificationCodeOpts) (AuthenticateResponse, error)
AuthenticateWithEmailVerificationCode authenticates a user by verifying a code sent to their email address
func (*Client) AuthenticateWithMagicAuth ¶
func (c *Client) AuthenticateWithMagicAuth(ctx context.Context, opts AuthenticateWithMagicAuthOpts) (AuthenticateResponse, error)
AuthenticateWithMagicAuth authenticates a user by verifying a one-time code sent to the user's email address by the Magic Auth Send Code endpoint.
func (*Client) AuthenticateWithOrganizationSelection ¶
func (c *Client) AuthenticateWithOrganizationSelection(ctx context.Context, opts AuthenticateWithOrganizationSelectionOpts) (AuthenticateResponse, error)
AuthenticateWithOrganizationSelection completes authentication for a user given an organization they've selected.
func (*Client) AuthenticateWithPassword ¶
func (c *Client) AuthenticateWithPassword(ctx context.Context, opts AuthenticateWithPasswordOpts) (AuthenticateResponse, error)
AuthenticateWithPassword authenticates a user with Email and Password
func (*Client) AuthenticateWithTOTP ¶
func (c *Client) AuthenticateWithTOTP(ctx context.Context, opts AuthenticateWithTOTPOpts) (AuthenticateResponse, error)
AuthenticateWithTOTP authenticates a user by verifying a time-based one-time password (TOTP)
func (*Client) CreateOrganizationMembership ¶
func (c *Client) CreateOrganizationMembership(ctx context.Context, opts CreateOrganizationMembershipOpts) (OrganizationMembership, error)
Create an Organization Membership. Adds a User to an Organization.
func (*Client) CreateUser ¶
CreateUser create a new user with email password authentication. Only unmanaged users can be created directly using the User Management API.
func (*Client) DeleteOrganizationMembership ¶
func (c *Client) DeleteOrganizationMembership(ctx context.Context, opts DeleteOrganizationMembershipOpts) error
Delete an Organization Membership. Removes the membership's User from its Organization.
func (*Client) DeleteUser ¶
func (c *Client) DeleteUser(ctx context.Context, opts DeleteUserOpts) error
DeleteUser delete an existing user.
func (*Client) EnrollAuthFactor ¶
func (c *Client) EnrollAuthFactor(ctx context.Context, opts EnrollAuthFactorOpts) (EnrollAuthFactorResponse, error)
EnrollAuthFactor enrolls an authentication factor for the user.
func (*Client) GetAuthorizationURL ¶
func (c *Client) GetAuthorizationURL(opts GetAuthorizationURLOpts) (*url.URL, error)
GetAuthorizationURL generates an OAuth 2.0 authorization URL. To indicate the connection to use for authentication, use one of the following connection selectors: connection_id, organization_id, or provider. These connection selectors are mutually exclusive, and exactly one must be provided.
func (*Client) GetInvitation ¶
func (c *Client) GetInvitation(ctx context.Context, opts GetInvitationOpts) (Invitation, error)
GetInvitation fetches an Invitation by its ID.
func (*Client) GetOrganizationMembership ¶
func (c *Client) GetOrganizationMembership(ctx context.Context, opts GetOrganizationMembershipOpts) (OrganizationMembership, error)
GetOrganizationMembership returns details of an existing Organization Membership
func (*Client) ListAuthFactors ¶
func (c *Client) ListAuthFactors(ctx context.Context, opts ListAuthFactorsOpts) (ListAuthFactorsResponse, error)
ListAuthFactors lists the available authentication factors for the user.
func (*Client) ListInvitations ¶
func (c *Client) ListInvitations(ctx context.Context, opts ListInvitationsOpts) (ListInvitationsResponse, error)
ListInvitations gets a list of all of your existing Invitations matching the criteria specified.
func (*Client) ListOrganizationMemberships ¶
func (c *Client) ListOrganizationMemberships(ctx context.Context, opts ListOrganizationMembershipsOpts) (ListOrganizationMembershipsResponse, error)
List Organization Memberships matching the criteria specified.
func (*Client) ListUsers ¶
func (c *Client) ListUsers(ctx context.Context, opts ListUsersOpts) (ListUsersResponse, error)
ListUsers get a list of all of your existing users matching the criteria specified.
func (*Client) ResetPassword ¶
func (c *Client) ResetPassword(ctx context.Context, opts ResetPasswordOpts) (UserResponse, error)
ResetPassword resets user password using token that was sent to the user.
func (*Client) RevokeInvitation ¶
func (c *Client) RevokeInvitation(ctx context.Context, opts RevokeInvitationOpts) (Invitation, error)
func (*Client) SendInvitation ¶
func (c *Client) SendInvitation(ctx context.Context, opts SendInvitationOpts) (Invitation, error)
func (*Client) SendMagicAuthCode ¶
func (c *Client) SendMagicAuthCode(ctx context.Context, opts SendMagicAuthCodeOpts) error
SendMagicAuthCode creates a one-time Magic Auth code and emails it to the user.
func (*Client) SendPasswordResetEmail ¶
func (c *Client) SendPasswordResetEmail(ctx context.Context, opts SendPasswordResetEmailOpts) error
SendPasswordResetEmail creates a password reset challenge and emails a password reset link to an unmanaged user.
func (*Client) SendVerificationEmail ¶
func (c *Client) SendVerificationEmail(ctx context.Context, opts SendVerificationEmailOpts) (UserResponse, error)
SendVerificationEmail creates an email verification challenge and emails verification token to user.
func (*Client) UpdateUser ¶
UpdateUser updates User attributes.
func (*Client) VerifyEmail ¶
func (c *Client) VerifyEmail(ctx context.Context, opts VerifyEmailOpts) (UserResponse, error)
VerifyEmail verifies a user's email using the verification token that was sent to the user.
type CreateUserOpts ¶
type DeleteOrganizationMembershipOpts ¶
type DeleteOrganizationMembershipOpts struct { // The ID of the Organization Membership to delete. OrganizationMembership string }
type DeleteUserOpts ¶
type DeleteUserOpts struct {
User string
}
type EnrollAuthFactorOpts ¶
type EnrollAuthFactorOpts struct { User string Type mfa.FactorType `json:"type"` TOTPIssuer string `json:"totp_issuer,omitempty"` TOTPUser string `json:"totp_user,omitempty"` }
type EnrollAuthFactorResponse ¶
type EnrollAuthFactorResponse struct { Factor mfa.Factor `json:"authentication_factor"` Challenge mfa.Challenge `json:"authentication_challenge"` }
func EnrollAuthFactor ¶
func EnrollAuthFactor( ctx context.Context, opts EnrollAuthFactorOpts, ) (EnrollAuthFactorResponse, error)
EnrollAuthFactor enrolls an authentication factor for the user.
type GetAuthorizationURLOpts ¶
type GetAuthorizationURLOpts struct { // Your WorkOS Project's Client ID. // // REQUIRED. ClientID string // The callback URL where your app redirects the user after an // authorization code is granted (eg. https://foo.com/callback). // // REQUIRED. RedirectURI string // The Provider connection selector is used to initiate SSO using an OAuth-compatible provider. Provider string // The ConnectionID connection selector is used to initiate SSO for a Connection. ConnectionID string // The organization_id connection selector is used to initiate SSO for an Organization. OrganizationID string // Use state to encode arbitrary information to restore state through redirects. // // OPTIONAL. State string // Username/email hint that will be passed as a parameter to the to IdP login page. // OPTIONAL. LoginHint string // Domain hint that will be passed as a parameter to the IdP login page. // OPTIONAL. DomainHint string }
GetAuthorizationURLOpts contains the options to pass in order to generate an authorization url.
type GetInvitationOpts ¶
type GetInvitationOpts struct {
Invitation string
}
type GetOrganizationMembershipOpts ¶
type GetOrganizationMembershipOpts struct { // Organization Membership unique identifier OrganizationMembership string }
type GetUserOpts ¶
type GetUserOpts struct { // User unique identifier User string `json:"id"` }
GetUserOpts contains the options to pass in order to get a user profile.
type Invitation ¶
type Invitation struct { ID string `json:"id"` Email string `json:"email"` State InvitationState `json:"state"` AcceptedAt string `json:"accepted_at,omitempty"` RevokedAt string `json:"revoked_at,omitempty"` Token string `json:"token"` OrganizationID string `json:"organization_id,omitempty"` ExpiresAt string `json:"expires_at"` CreatedAt string `json:"created_at"` UpdatedAt string `json:"updated_at"` }
func GetInvitation ¶
func GetInvitation( ctx context.Context, opts GetInvitationOpts, ) (Invitation, error)
func RevokeInvitation ¶
func RevokeInvitation( ctx context.Context, opts RevokeInvitationOpts, ) (Invitation, error)
func SendInvitation ¶
func SendInvitation( ctx context.Context, opts SendInvitationOpts, ) (Invitation, error)
type InvitationState ¶
type InvitationState string
InvitationState represents the state of an Invitation.
const ( Pending InvitationState = "pending" Accepted InvitationState = "accepted" Expired InvitationState = "expired" Revoked InvitationState = "revoked" )
Constants that enumerate the state of an Invitation.
type ListAuthFactorsOpts ¶
type ListAuthFactorsOpts struct {
User string
}
type ListAuthFactorsResponse ¶
type ListAuthFactorsResponse struct { Data []mfa.Factor `json:"data"` ListMetadata common.ListMetadata `json:"list_metadata"` }
func ListAuthFactors ¶
func ListAuthFactors( ctx context.Context, opts ListAuthFactorsOpts, ) (ListAuthFactorsResponse, error)
ListAuthFactors lists the available authentication factors for the user.
type ListInvitationsOpts ¶
type ListInvitationsOpts struct { OrganizationID string `json:"organization_id,omitempty"` Email string `json:"email,omitempty"` // Maximum number of records to return. Limit int `url:"limit"` // The order in which to paginate records. Order Order `url:"order,omitempty"` // Pagination cursor to receive records before a provided User ID. Before string `url:"before,omitempty"` // Pagination cursor to receive records after a provided User ID. After string `url:"after,omitempty"` }
type ListInvitationsResponse ¶
type ListInvitationsResponse struct { // List of Invitations Data []Invitation `json:"data"` // Cursor to paginate through the list of Invitations ListMetadata common.ListMetadata `json:"listMetadata"` }
ListInvitations contains the response from the ListInvitations call.
func ListInvitations ¶
func ListInvitations( ctx context.Context, opts ListInvitationsOpts, ) (ListInvitationsResponse, error)
type ListOrganizationMembershipsOpts ¶
type ListOrganizationMembershipsOpts struct { // Filter memberships by Organization ID. OrganizationID string `url:"organization_id,omitempty"` // Filter memberships by User ID. UserID string `url:"user_id,omitempty"` // Maximum number of records to return. Limit int `url:"limit"` // The order in which to paginate records. Order Order `url:"order,omitempty"` // Pagination cursor to receive records before a provided // Organization Membership ID. Before string `url:"before,omitempty"` // Pagination cursor to receive records after a provided // Organization Membership ID. After string `url:"after,omitempty"` }
type ListOrganizationMembershipsResponse ¶
type ListOrganizationMembershipsResponse struct { Data []OrganizationMembership `json:"data"` ListMetadata common.ListMetadata `json:"list_metadata"` }
func ListOrganizationMemberships ¶
func ListOrganizationMemberships( ctx context.Context, opts ListOrganizationMembershipsOpts, ) (ListOrganizationMembershipsResponse, error)
ListOrganizationMemberships gets a list of OrganizationMemberhips.
type ListUsersOpts ¶
type ListUsersOpts struct { // Filter Users by their email. Email string `url:"email,omitempty"` // Filter Users by the organization they are members of. OrganizationID string `url:"organization_id,omitempty"` // Maximum number of records to return. Limit int `url:"limit"` // The order in which to paginate records. Order Order `url:"order,omitempty"` // Pagination cursor to receive records before a provided User ID. Before string `url:"before,omitempty"` // Pagination cursor to receive records after a provided User ID. After string `url:"after,omitempty"` }
type ListUsersResponse ¶
type ListUsersResponse struct { // List of Users Data []User `json:"data"` // Cursor to paginate through the list of Users ListMetadata common.ListMetadata `json:"list_metadata"` }
ListUsersResponse contains the response from the ListUsers call.
func ListUsers ¶
func ListUsers( ctx context.Context, opts ListUsersOpts, ) (ListUsersResponse, error)
ListUsers gets a list of Users.
type Organization ¶
type Organization struct { // The Organization's unique identifier. ID string `json:"id"` // The Organization's name. Name string `json:"name"` }
Organization contains data about a particular Organization.
type OrganizationMembership ¶
type OrganizationMembership struct { // The Organization Membership's unique identifier. ID string `json:"id"` // The ID of the User. UserID string `json:"user_id"` // The ID of the Organization. OrganizationID string `json:"organization_id"` // CreatedAt is the timestamp of when the OrganizationMembership was created. CreatedAt string `json:"created_at"` // UpdatedAt is the timestamp of when the OrganizationMembership was updated. UpdatedAt string `json:"updated_at"` }
OrganizationMembership contains data about a particular OrganizationMembership.
func CreateOrganizationMembership ¶
func CreateOrganizationMembership( ctx context.Context, opts CreateOrganizationMembershipOpts, ) (OrganizationMembership, error)
CreateOrganizationMembership creates a OrganizationMembership.
func GetOrganizationMembership ¶
func GetOrganizationMembership( ctx context.Context, opts GetOrganizationMembershipOpts, ) (OrganizationMembership, error)
GetOrganizationMembership gets an OrganizationMembership.
type PasswordHashType ¶
type PasswordHashType string
The algorithm originally used to hash the password.
const (
Bcrypt PasswordHashType = "bcrypt"
)
Constants that enumerate the available password hash types.
type ResetPasswordOpts ¶
type RevokeInvitationOpts ¶
type RevokeInvitationOpts struct {
Invitation string
}
type SendInvitationOpts ¶
type SendMagicAuthCodeOpts ¶
type SendMagicAuthCodeOpts struct { // The email address the one-time code will be sent to. Email string `json:"email"` }
type SendVerificationEmailOpts ¶
type SendVerificationEmailOpts struct { // The unique ID of the User who will be sent a verification email. User string }
type UpdateUserOpts ¶
type UpdateUserOpts struct { User string FirstName string `json:"first_name,omitempty"` LastName string `json:"last_name,omitempty"` EmailVerified bool `json:"email_verified,omitempty"` Password string `json:"password,omitempty"` PasswordHash string `json:"password_hash,omitempty"` PasswordHashType PasswordHashType `json:"password_hash_type,omitempty"` }
type User ¶
type User struct { // The User's unique identifier. ID string `json:"id"` // The User's first name. FirstName string `json:"first_name"` // The User's last name. LastName string `json:"last_name"` // The User's email. Email string `json:"email"` // The timestamp of when the User was created. CreatedAt string `json:"created_at"` // The timestamp of when the User was updated. UpdatedAt string `json:"updated_at"` // Whether the User email is verified. EmailVerified bool `json:"email_verified"` // A URL reference to an image representing the User. ProfilePictureURL string `json:"profile_picture_url"` }
User contains data about a particular User.
func CreateUser ¶
func CreateUser( ctx context.Context, opts CreateUserOpts, ) (User, error)
CreateUser creates a User.
func GetUser ¶
func GetUser( ctx context.Context, opts GetUserOpts, ) (User, error)
GetUser gets a User.
func UpdateUser ¶
func UpdateUser( ctx context.Context, opts UpdateUserOpts, ) (User, error)
UpdateUser creates a User.
type UserResponse ¶
type UserResponse struct {
User User `json:"user"`
}
func ResetPassword ¶
func ResetPassword( ctx context.Context, opts ResetPasswordOpts, ) (UserResponse, error)
ResetPassword resets user password using token that was sent to the user.
func SendVerificationEmail ¶
func SendVerificationEmail( ctx context.Context, opts SendVerificationEmailOpts, ) (UserResponse, error)
SendVerificationEmail creates an email verification challenge and emails verification token to user.
func VerifyEmail ¶
func VerifyEmail( ctx context.Context, opts VerifyEmailOpts, ) (UserResponse, error)
VerifyEmail verifies a user's email using the verification token that was sent to the user.