Documentation ¶
Index ¶
- Constants
- func RequireSessionV2(client Client) func(handler http.Handler) http.Handler
- func WithSession(client Client) func(handler http.Handler) http.Handler
- func WithSessionV2(client Client) func(handler http.Handler) http.Handler
- type Client
- type ClientResponse
- type ClientsService
- type DeleteResponse
- type Email
- type EmailAddress
- type EmailResponse
- type EmailService
- type Error
- type ErrorResponse
- type IdentificationLink
- type JWKS
- type JWKSService
- type ListAllUsersParams
- type PhoneNumber
- type SMSMessage
- type SMSMessageResponse
- type SMSService
- type Session
- type SessionClaims
- type SessionsService
- type SvixResponse
- type TokenClaims
- type UpdateUser
- type User
- type UsersService
- type VerificationService
- type WebhooksService
Constants ¶
View Source
const ( ProdUrl = "https://api.clerk.dev/v1/" ClientsUrl = "clients" ClientsVerifyUrl = ClientsUrl + "/verify" EmailsUrl = "emails" SessionsUrl = "sessions" SMSUrl = "sms_messages" UsersUrl = "users" WebhooksUrl = "webhooks" )
View Source
const ( ActiveSession = iota ActiveSessionClaims )
View Source
const ( CookieSession = "__session" QueryParamSessionId = "_clerk_session_id" )
Variables ¶
This section is empty.
Functions ¶
func RequireSessionV2 ¶ added in v1.1.0
RequireSessionV2 will hijack the request and return an HTTP status 403 if the session is not authenticated.
func WithSession ¶ added in v1.0.3
Types ¶
type Client ¶
type Client interface { NewRequest(method string, url string, body ...interface{}) (*http.Request, error) Do(req *http.Request, v interface{}) (*http.Response, error) DecodeToken(token string) (*TokenClaims, error) VerifyToken(token string) (*SessionClaims, error) Clients() *ClientsService Emails() *EmailService JWKS() *JWKSService Sessions() *SessionsService SMS() *SMSService Users() *UsersService Webhooks() *WebhooksService Verification() *VerificationService Interstitial() ([]byte, error) APIKey() string }
type ClientResponse ¶ added in v1.0.3
type ClientResponse struct { Object string `json:"object"` ID string `json:"id"` LastActiveSessionID *string `json:"last_active_session_id"` SessionIDs []string `json:"session_ids"` Sessions []*Session `json:"sessions"` SignInAttemptID *string `json:"sign_in_attempt_id"` SignUpAttemptID *string `json:"sign_up_attempt_id"` Ended bool `json:"ended"` }
type ClientsService ¶ added in v1.0.3
type ClientsService service
func (*ClientsService) ListAll ¶ added in v1.0.3
func (s *ClientsService) ListAll() ([]ClientResponse, error)
func (*ClientsService) Read ¶ added in v1.0.3
func (s *ClientsService) Read(clientId string) (*ClientResponse, error)
func (*ClientsService) Verify ¶ added in v1.0.3
func (s *ClientsService) Verify(token string) (*ClientResponse, error)
type DeleteResponse ¶
type EmailAddress ¶
type EmailAddress struct { ID string `json:"id"` Object string `json:"object"` EmailAddress string `json:"email_address"` Verification interface{} `json:"verification"` LinkedTo []IdentificationLink `json:"linked_to"` }
type EmailResponse ¶
type EmailService ¶
type EmailService service
func (*EmailService) Create ¶
func (s *EmailService) Create(email Email) (*EmailResponse, error)
type ErrorResponse ¶ added in v1.0.5
func (*ErrorResponse) Error ¶ added in v1.0.5
func (e *ErrorResponse) Error() string
type IdentificationLink ¶
type JWKSService ¶ added in v1.1.0
type JWKSService service
func (*JWKSService) ListAll ¶ added in v1.1.0
func (s *JWKSService) ListAll() (*JWKS, error)
type ListAllUsersParams ¶ added in v1.0.9
type PhoneNumber ¶
type PhoneNumber struct { ID string `json:"id"` Object string `json:"object"` PhoneNumber string `json:"phone_number"` ReservedForSecondFactor bool `json:"reserved_for_second_factor"` Verification interface{} `json:"verification"` LinkedTo []IdentificationLink `json:"linked_to"` }
type SMSMessage ¶
type SMSMessageResponse ¶
type SMSService ¶
type SMSService service
func (*SMSService) Create ¶
func (s *SMSService) Create(message SMSMessage) (*SMSMessageResponse, error)
type SessionClaims ¶ added in v1.1.0
func SessionFromContext ¶ added in v1.1.0
func SessionFromContext(ctx context.Context) (*SessionClaims, bool)
SessionFromContext returns the session's (if any) claims, as parsed from the token.
type SessionsService ¶
type SessionsService service
func (*SessionsService) ListAll ¶
func (s *SessionsService) ListAll() ([]Session, error)
type SvixResponse ¶ added in v1.1.0
type SvixResponse struct {
SvixURL string `json:"svix_url"`
}
type TokenClaims ¶ added in v1.1.0
type UpdateUser ¶
type UpdateUser struct { FirstName *string `json:"first_name,omitempty"` LastName *string `json:"last_name,omitempty"` PrimaryEmailAddressID *string `json:"primary_email_address_id,omitempty"` PrimaryPhoneNumberID *string `json:"primary_phone_number_id,omitempty"` ProfileImage *string `json:"profile_image,omitempty"` Password *string `json:"password,omitempty"` PublicMetadata interface{} `json:"public_metadata,omitempty"` PrivateMetadata interface{} `json:"private_metadata,omitempty"` }
type User ¶
type User struct { ID string `json:"id"` Object string `json:"object"` Username *string `json:"username"` FirstName *string `json:"first_name"` LastName *string `json:"last_name"` Gender *string `json:"gender"` Birthday *string `json:"birthday"` ProfileImageURL string `json:"profile_image_url"` PrimaryEmailAddressID *string `json:"primary_email_address_id"` PrimaryPhoneNumberID *string `json:"primary_phone_number_id"` PasswordEnabled bool `json:"password_enabled"` TwoFactorEnabled bool `json:"two_factor_enabled"` EmailAddresses []EmailAddress `json:"email_addresses"` PhoneNumbers []PhoneNumber `json:"phone_numbers"` ExternalAccounts []interface{} `json:"external_accounts"` PublicMetadata interface{} `json:"public_metadata"` PrivateMetadata interface{} `json:"private_metadata"` CreatedAt int64 `json:"created_at"` UpdatedAt int64 `json:"updated_at"` }
type UsersService ¶
type UsersService service
func (*UsersService) Delete ¶
func (s *UsersService) Delete(userId string) (*DeleteResponse, error)
func (*UsersService) ListAll ¶
func (s *UsersService) ListAll(params ListAllUsersParams) ([]User, error)
func (*UsersService) Update ¶
func (s *UsersService) Update(userId string, updateRequest *UpdateUser) (*User, error)
type VerificationService ¶ added in v1.0.3
type VerificationService service
type WebhooksService ¶ added in v1.0.8
type WebhooksService service
func (*WebhooksService) CreateSvix ¶ added in v1.1.0
func (s *WebhooksService) CreateSvix() (*SvixResponse, error)
func (*WebhooksService) DeleteSvix ¶ added in v1.1.0
func (s *WebhooksService) DeleteSvix() error
func (*WebhooksService) RefreshSvixURL ¶ added in v1.1.0
func (s *WebhooksService) RefreshSvixURL() (*SvixResponse, error)
Click to show internal directories.
Click to hide internal directories.