Documentation
¶
Overview ¶
Code generated by ogen, DO NOT EDIT.
Index ¶
- func WithServerURL(ctx context.Context, u *url.URL) context.Context
- type BearerAuth
- type CheckSessionRes
- type Claims
- func (s *Claims) Decode(d *jx.Decoder) error
- func (s *Claims) Encode(e *jx.Encoder)
- func (s *Claims) GetRefreshTokenID() OptString
- func (s *Claims) GetRoles() []Role
- func (s *Claims) GetUserID() OptUUID
- func (s *Claims) MarshalJSON() ([]byte, error)
- func (s *Claims) SetRefreshTokenID(val OptString)
- func (s *Claims) SetRoles(val []Role)
- func (s *Claims) SetUserID(val OptUUID)
- func (s *Claims) UnmarshalJSON(data []byte) error
- func (s *Claims) Validate() error
- type Client
- func (c *Client) CheckSession(ctx context.Context) (CheckSessionRes, error)
- func (c *Client) CreateAnonSession(ctx context.Context) (CreateAnonSessionRes, error)
- func (c *Client) CreateSession(ctx context.Context, request *LoginForm) (CreateSessionRes, error)
- func (c *Client) EmailExists(ctx context.Context, params EmailExistsParams) (EmailExistsRes, error)
- func (c *Client) GetUser(ctx context.Context, params GetUserParams) (GetUserRes, error)
- func (c *Client) Healthcheck(ctx context.Context) (HealthcheckRes, error)
- func (c *Client) ListUsers(ctx context.Context, params ListUsersParams) (ListUsersRes, error)
- func (c *Client) Ping(ctx context.Context) (PingRes, error)
- func (c *Client) RefreshSession(ctx context.Context, params RefreshSessionParams) (RefreshSessionRes, error)
- func (c *Client) Register(ctx context.Context, request *RegisterForm) (RegisterRes, error)
- func (c *Client) RequestEmailUpdate(ctx context.Context, request *RequestEmailUpdateForm) (RequestEmailUpdateRes, error)
- func (c *Client) RequestPasswordReset(ctx context.Context, request *RequestPasswordResetForm) (RequestPasswordResetRes, error)
- func (c *Client) RequestRegistration(ctx context.Context, request *RequestRegistrationForm) (RequestRegistrationRes, error)
- func (c *Client) ResetPassword(ctx context.Context, request *ResetPasswordForm) (ResetPasswordRes, error)
- func (c *Client) UpdateEmail(ctx context.Context, request *UpdateEmailForm) (UpdateEmailRes, error)
- func (c *Client) UpdatePassword(ctx context.Context, request *UpdatePasswordForm) (UpdatePasswordRes, error)
- func (c *Client) UpdateRole(ctx context.Context, request *UpdateRoleForm) (UpdateRoleRes, error)
- type ClientOption
- type ConflictError
- type CreateAnonSessionIMATeapot
- type CreateAnonSessionRes
- type CreateSessionRes
- type CredentialsRole
- func (CredentialsRole) AllValues() []CredentialsRole
- func (s *CredentialsRole) Decode(d *jx.Decoder) error
- func (s CredentialsRole) Encode(e *jx.Encoder)
- func (s CredentialsRole) MarshalJSON() ([]byte, error)
- func (s CredentialsRole) MarshalText() ([]byte, error)
- func (s *CredentialsRole) UnmarshalJSON(data []byte) error
- func (s *CredentialsRole) UnmarshalText(data []byte) error
- func (s CredentialsRole) Validate() error
- type Dependency
- func (s *Dependency) Decode(d *jx.Decoder) error
- func (s *Dependency) Encode(e *jx.Encoder)
- func (s *Dependency) GetAdditionalProps() DependencyAdditional
- func (s *Dependency) GetName() string
- func (s *Dependency) GetStatus() DependencyStatus
- func (s *Dependency) MarshalJSON() ([]byte, error)
- func (s *Dependency) SetAdditionalProps(val DependencyAdditional)
- func (s *Dependency) SetName(val string)
- func (s *Dependency) SetStatus(val DependencyStatus)
- func (s *Dependency) UnmarshalJSON(data []byte) error
- func (s *Dependency) Validate() error
- type DependencyAdditional
- type DependencyStatus
- func (DependencyStatus) AllValues() []DependencyStatus
- func (s *DependencyStatus) Decode(d *jx.Decoder) error
- func (s DependencyStatus) Encode(e *jx.Encoder)
- func (s DependencyStatus) MarshalJSON() ([]byte, error)
- func (s DependencyStatus) MarshalText() ([]byte, error)
- func (s *DependencyStatus) UnmarshalJSON(data []byte) error
- func (s *DependencyStatus) UnmarshalText(data []byte) error
- func (s DependencyStatus) Validate() error
- type Email
- type EmailExistsNoContent
- type EmailExistsParams
- type EmailExistsRes
- type ErrorHandler
- type ForbiddenError
- func (s *ForbiddenError) Decode(d *jx.Decoder) error
- func (s *ForbiddenError) Encode(e *jx.Encoder)
- func (s *ForbiddenError) GetError() string
- func (s *ForbiddenError) MarshalJSON() ([]byte, error)
- func (s *ForbiddenError) SetError(val string)
- func (s *ForbiddenError) UnmarshalJSON(data []byte) error
- type GetUserParams
- type GetUserRes
- type Handler
- type Health
- func (s *Health) Decode(d *jx.Decoder) error
- func (s *Health) Encode(e *jx.Encoder)
- func (s *Health) GetJsonKeys() Dependency
- func (s *Health) GetPostgres() Dependency
- func (s *Health) GetSMTP() Dependency
- func (s *Health) MarshalJSON() ([]byte, error)
- func (s *Health) SetJsonKeys(val Dependency)
- func (s *Health) SetPostgres(val Dependency)
- func (s *Health) SetSMTP(val Dependency)
- func (s *Health) UnmarshalJSON(data []byte) error
- func (s *Health) Validate() error
- type HealthcheckIMATeapot
- type HealthcheckRes
- type Invoker
- type Labeler
- type Lang
- func (Lang) AllValues() []Lang
- func (s *Lang) Decode(d *jx.Decoder) error
- func (s Lang) Encode(e *jx.Encoder)
- func (s Lang) MarshalJSON() ([]byte, error)
- func (s Lang) MarshalText() ([]byte, error)
- func (s *Lang) UnmarshalJSON(data []byte) error
- func (s *Lang) UnmarshalText(data []byte) error
- func (s Lang) Validate() error
- type ListUsersOKApplicationJSON
- func (s *ListUsersOKApplicationJSON) Decode(d *jx.Decoder) error
- func (s ListUsersOKApplicationJSON) Encode(e *jx.Encoder)
- func (s ListUsersOKApplicationJSON) MarshalJSON() ([]byte, error)
- func (s *ListUsersOKApplicationJSON) UnmarshalJSON(data []byte) error
- func (s ListUsersOKApplicationJSON) Validate() error
- type ListUsersParams
- type ListUsersRes
- type LoginForm
- func (s *LoginForm) Decode(d *jx.Decoder) error
- func (s *LoginForm) Encode(e *jx.Encoder)
- func (s *LoginForm) GetEmail() Email
- func (s *LoginForm) GetPassword() Password
- func (s *LoginForm) MarshalJSON() ([]byte, error)
- func (s *LoginForm) SetEmail(val Email)
- func (s *LoginForm) SetPassword(val Password)
- func (s *LoginForm) UnmarshalJSON(data []byte) error
- func (s *LoginForm) Validate() error
- type Middleware
- type NewEmail
- type NotFoundError
- type OperationName
- type OptInt
- type OptLang
- func (o *OptLang) Decode(d *jx.Decoder) error
- func (o OptLang) Encode(e *jx.Encoder)
- func (o OptLang) Get() (v Lang, ok bool)
- func (o OptLang) IsSet() bool
- func (s OptLang) MarshalJSON() ([]byte, error)
- func (o OptLang) Or(d Lang) Lang
- func (o *OptLang) Reset()
- func (o *OptLang) SetTo(v Lang)
- func (s *OptLang) UnmarshalJSON(data []byte) error
- type OptString
- func (o *OptString) Decode(d *jx.Decoder) error
- func (o OptString) Encode(e *jx.Encoder)
- func (o OptString) Get() (v string, ok bool)
- func (o OptString) IsSet() bool
- func (s OptString) MarshalJSON() ([]byte, error)
- func (o OptString) Or(d string) string
- func (o *OptString) Reset()
- func (o *OptString) SetTo(v string)
- func (s *OptString) UnmarshalJSON(data []byte) error
- type OptUUID
- func (o *OptUUID) Decode(d *jx.Decoder) error
- func (o OptUUID) Encode(e *jx.Encoder)
- func (o OptUUID) Get() (v uuid.UUID, ok bool)
- func (o OptUUID) IsSet() bool
- func (s OptUUID) MarshalJSON() ([]byte, error)
- func (o OptUUID) Or(d uuid.UUID) uuid.UUID
- func (o *OptUUID) Reset()
- func (o *OptUUID) SetTo(v uuid.UUID)
- func (s *OptUUID) UnmarshalJSON(data []byte) error
- type Option
- type Password
- type PingIMATeapot
- type PingOK
- type PingRes
- type RefreshSessionParams
- type RefreshSessionRes
- type RegisterForm
- func (s *RegisterForm) Decode(d *jx.Decoder) error
- func (s *RegisterForm) Encode(e *jx.Encoder)
- func (s *RegisterForm) GetEmail() Email
- func (s *RegisterForm) GetPassword() Password
- func (s *RegisterForm) GetShortCode() ShortCode
- func (s *RegisterForm) MarshalJSON() ([]byte, error)
- func (s *RegisterForm) SetEmail(val Email)
- func (s *RegisterForm) SetPassword(val Password)
- func (s *RegisterForm) SetShortCode(val ShortCode)
- func (s *RegisterForm) UnmarshalJSON(data []byte) error
- func (s *RegisterForm) Validate() error
- type RegisterRes
- type RequestEmailUpdateForm
- func (s *RequestEmailUpdateForm) Decode(d *jx.Decoder) error
- func (s *RequestEmailUpdateForm) Encode(e *jx.Encoder)
- func (s *RequestEmailUpdateForm) GetEmail() Email
- func (s *RequestEmailUpdateForm) GetLang() OptLang
- func (s *RequestEmailUpdateForm) MarshalJSON() ([]byte, error)
- func (s *RequestEmailUpdateForm) SetEmail(val Email)
- func (s *RequestEmailUpdateForm) SetLang(val OptLang)
- func (s *RequestEmailUpdateForm) UnmarshalJSON(data []byte) error
- func (s *RequestEmailUpdateForm) Validate() error
- type RequestEmailUpdateNoContent
- type RequestEmailUpdateRes
- type RequestPasswordResetForm
- func (s *RequestPasswordResetForm) Decode(d *jx.Decoder) error
- func (s *RequestPasswordResetForm) Encode(e *jx.Encoder)
- func (s *RequestPasswordResetForm) GetEmail() Email
- func (s *RequestPasswordResetForm) GetLang() OptLang
- func (s *RequestPasswordResetForm) MarshalJSON() ([]byte, error)
- func (s *RequestPasswordResetForm) SetEmail(val Email)
- func (s *RequestPasswordResetForm) SetLang(val OptLang)
- func (s *RequestPasswordResetForm) UnmarshalJSON(data []byte) error
- func (s *RequestPasswordResetForm) Validate() error
- type RequestPasswordResetNoContent
- type RequestPasswordResetRes
- type RequestRegistrationForm
- func (s *RequestRegistrationForm) Decode(d *jx.Decoder) error
- func (s *RequestRegistrationForm) Encode(e *jx.Encoder)
- func (s *RequestRegistrationForm) GetEmail() Email
- func (s *RequestRegistrationForm) GetLang() OptLang
- func (s *RequestRegistrationForm) MarshalJSON() ([]byte, error)
- func (s *RequestRegistrationForm) SetEmail(val Email)
- func (s *RequestRegistrationForm) SetLang(val OptLang)
- func (s *RequestRegistrationForm) UnmarshalJSON(data []byte) error
- func (s *RequestRegistrationForm) Validate() error
- type RequestRegistrationIMATeapot
- type RequestRegistrationNoContent
- type RequestRegistrationRes
- type ResetPasswordForm
- func (s *ResetPasswordForm) Decode(d *jx.Decoder) error
- func (s *ResetPasswordForm) Encode(e *jx.Encoder)
- func (s *ResetPasswordForm) GetPassword() Password
- func (s *ResetPasswordForm) GetShortCode() ShortCode
- func (s *ResetPasswordForm) GetUserID() UserID
- func (s *ResetPasswordForm) MarshalJSON() ([]byte, error)
- func (s *ResetPasswordForm) SetPassword(val Password)
- func (s *ResetPasswordForm) SetShortCode(val ShortCode)
- func (s *ResetPasswordForm) SetUserID(val UserID)
- func (s *ResetPasswordForm) UnmarshalJSON(data []byte) error
- func (s *ResetPasswordForm) Validate() error
- type ResetPasswordNoContent
- type ResetPasswordRes
- type Role
- type Route
- type SecurityHandler
- type SecuritySource
- type Server
- type ServerOption
- func WithErrorHandler(h ErrorHandler) ServerOption
- func WithMaxMultipartMemory(max int64) ServerOption
- func WithMethodNotAllowed(methodNotAllowed func(w http.ResponseWriter, r *http.Request, allowed string)) ServerOption
- func WithMiddleware(m ...Middleware) ServerOption
- func WithNotFound(notFound http.HandlerFunc) ServerOption
- func WithPathPrefix(prefix string) ServerOption
- type ShortCode
- type Token
- func (s *Token) Decode(d *jx.Decoder) error
- func (s *Token) Encode(e *jx.Encoder)
- func (s *Token) GetAccessToken() string
- func (s *Token) GetRefreshToken() string
- func (s *Token) MarshalJSON() ([]byte, error)
- func (s *Token) SetAccessToken(val string)
- func (s *Token) SetRefreshToken(val string)
- func (s *Token) UnmarshalJSON(data []byte) error
- type UnauthorizedError
- func (s *UnauthorizedError) Decode(d *jx.Decoder) error
- func (s *UnauthorizedError) Encode(e *jx.Encoder)
- func (s *UnauthorizedError) GetError() string
- func (s *UnauthorizedError) MarshalJSON() ([]byte, error)
- func (s *UnauthorizedError) SetError(val string)
- func (s *UnauthorizedError) UnmarshalJSON(data []byte) error
- type UnexpectedError
- func (s *UnexpectedError) Decode(d *jx.Decoder) error
- func (s *UnexpectedError) Encode(e *jx.Encoder)
- func (s *UnexpectedError) GetError() string
- func (s *UnexpectedError) MarshalJSON() ([]byte, error)
- func (s *UnexpectedError) SetError(val string)
- func (s *UnexpectedError) UnmarshalJSON(data []byte) error
- type UnexpectedErrorStatusCode
- func (s *UnexpectedErrorStatusCode) Error() string
- func (s *UnexpectedErrorStatusCode) GetResponse() UnexpectedError
- func (s *UnexpectedErrorStatusCode) GetStatusCode() int
- func (s *UnexpectedErrorStatusCode) SetResponse(val UnexpectedError)
- func (s *UnexpectedErrorStatusCode) SetStatusCode(val int)
- type UnimplementedHandler
- func (UnimplementedHandler) CheckSession(ctx context.Context) (r CheckSessionRes, _ error)
- func (UnimplementedHandler) CreateAnonSession(ctx context.Context) (r CreateAnonSessionRes, _ error)
- func (UnimplementedHandler) CreateSession(ctx context.Context, req *LoginForm) (r CreateSessionRes, _ error)
- func (UnimplementedHandler) EmailExists(ctx context.Context, params EmailExistsParams) (r EmailExistsRes, _ error)
- func (UnimplementedHandler) GetUser(ctx context.Context, params GetUserParams) (r GetUserRes, _ error)
- func (UnimplementedHandler) Healthcheck(ctx context.Context) (r HealthcheckRes, _ error)
- func (UnimplementedHandler) ListUsers(ctx context.Context, params ListUsersParams) (r ListUsersRes, _ error)
- func (UnimplementedHandler) NewError(ctx context.Context, err error) (r *UnexpectedErrorStatusCode)
- func (UnimplementedHandler) Ping(ctx context.Context) (r PingRes, _ error)
- func (UnimplementedHandler) RefreshSession(ctx context.Context, params RefreshSessionParams) (r RefreshSessionRes, _ error)
- func (UnimplementedHandler) Register(ctx context.Context, req *RegisterForm) (r RegisterRes, _ error)
- func (UnimplementedHandler) RequestEmailUpdate(ctx context.Context, req *RequestEmailUpdateForm) (r RequestEmailUpdateRes, _ error)
- func (UnimplementedHandler) RequestPasswordReset(ctx context.Context, req *RequestPasswordResetForm) (r RequestPasswordResetRes, _ error)
- func (UnimplementedHandler) RequestRegistration(ctx context.Context, req *RequestRegistrationForm) (r RequestRegistrationRes, _ error)
- func (UnimplementedHandler) ResetPassword(ctx context.Context, req *ResetPasswordForm) (r ResetPasswordRes, _ error)
- func (UnimplementedHandler) UpdateEmail(ctx context.Context, req *UpdateEmailForm) (r UpdateEmailRes, _ error)
- func (UnimplementedHandler) UpdatePassword(ctx context.Context, req *UpdatePasswordForm) (r UpdatePasswordRes, _ error)
- func (UnimplementedHandler) UpdateRole(ctx context.Context, req *UpdateRoleForm) (r UpdateRoleRes, _ error)
- type UnprocessableEntityError
- func (s *UnprocessableEntityError) Decode(d *jx.Decoder) error
- func (s *UnprocessableEntityError) Encode(e *jx.Encoder)
- func (s *UnprocessableEntityError) GetError() string
- func (s *UnprocessableEntityError) MarshalJSON() ([]byte, error)
- func (s *UnprocessableEntityError) SetError(val string)
- func (s *UnprocessableEntityError) UnmarshalJSON(data []byte) error
- type UpdateEmailForm
- func (s *UpdateEmailForm) Decode(d *jx.Decoder) error
- func (s *UpdateEmailForm) Encode(e *jx.Encoder)
- func (s *UpdateEmailForm) GetShortCode() ShortCode
- func (s *UpdateEmailForm) GetUserID() UserID
- func (s *UpdateEmailForm) MarshalJSON() ([]byte, error)
- func (s *UpdateEmailForm) SetShortCode(val ShortCode)
- func (s *UpdateEmailForm) SetUserID(val UserID)
- func (s *UpdateEmailForm) UnmarshalJSON(data []byte) error
- func (s *UpdateEmailForm) Validate() error
- type UpdateEmailRes
- type UpdatePasswordForm
- func (s *UpdatePasswordForm) Decode(d *jx.Decoder) error
- func (s *UpdatePasswordForm) Encode(e *jx.Encoder)
- func (s *UpdatePasswordForm) GetCurrentPassword() Password
- func (s *UpdatePasswordForm) GetPassword() Password
- func (s *UpdatePasswordForm) MarshalJSON() ([]byte, error)
- func (s *UpdatePasswordForm) SetCurrentPassword(val Password)
- func (s *UpdatePasswordForm) SetPassword(val Password)
- func (s *UpdatePasswordForm) UnmarshalJSON(data []byte) error
- func (s *UpdatePasswordForm) Validate() error
- type UpdatePasswordNoContent
- type UpdatePasswordRes
- type UpdateRoleForm
- func (s *UpdateRoleForm) Decode(d *jx.Decoder) error
- func (s *UpdateRoleForm) Encode(e *jx.Encoder)
- func (s *UpdateRoleForm) GetRole() CredentialsRole
- func (s *UpdateRoleForm) GetUserID() UserID
- func (s *UpdateRoleForm) MarshalJSON() ([]byte, error)
- func (s *UpdateRoleForm) SetRole(val CredentialsRole)
- func (s *UpdateRoleForm) SetUserID(val UserID)
- func (s *UpdateRoleForm) UnmarshalJSON(data []byte) error
- func (s *UpdateRoleForm) Validate() error
- type UpdateRoleRes
- type User
- func (s *User) Decode(d *jx.Decoder) error
- func (s *User) Encode(e *jx.Encoder)
- func (s *User) GetCreatedAt() time.Time
- func (s *User) GetEmail() Email
- func (s *User) GetID() UserID
- func (s *User) GetRole() CredentialsRole
- func (s *User) GetUpdatedAt() time.Time
- func (s *User) MarshalJSON() ([]byte, error)
- func (s *User) SetCreatedAt(val time.Time)
- func (s *User) SetEmail(val Email)
- func (s *User) SetID(val UserID)
- func (s *User) SetRole(val CredentialsRole)
- func (s *User) SetUpdatedAt(val time.Time)
- func (s *User) UnmarshalJSON(data []byte) error
- func (s *User) Validate() error
- type UserID
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BearerAuth ¶
func (*BearerAuth) GetRoles ¶
func (s *BearerAuth) GetRoles() []string
GetRoles returns the value of Roles.
func (*BearerAuth) GetToken ¶
func (s *BearerAuth) GetToken() string
GetToken returns the value of Token.
func (*BearerAuth) SetRoles ¶
func (s *BearerAuth) SetRoles(val []string)
SetRoles sets the value of Roles.
func (*BearerAuth) SetToken ¶
func (s *BearerAuth) SetToken(val string)
SetToken sets the value of Token.
type CheckSessionRes ¶
type CheckSessionRes interface {
// contains filtered or unexported methods
}
type Claims ¶
type Claims struct {
// The unique identifier of the user. Can be null if the session is anonymous.
UserID OptUUID `json:"userID"`
// The roles granted by the token.
Roles []Role `json:"roles"`
// The unique identifier of the refresh token. Can be null if the session is anonymous.
RefreshTokenID OptString `json:"refreshTokenID"`
}
Ref: #/components/schemas/Claims
func (*Claims) GetRefreshTokenID ¶
GetRefreshTokenID returns the value of RefreshTokenID.
func (*Claims) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Claims) SetRefreshTokenID ¶
SetRefreshTokenID sets the value of RefreshTokenID.
func (*Claims) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client implements OAS client.
func NewClient ¶
func NewClient(serverURL string, sec SecuritySource, opts ...ClientOption) (*Client, error)
NewClient initializes new Client defined by OAS.
func (*Client) CheckSession ¶
func (c *Client) CheckSession(ctx context.Context) (CheckSessionRes, error)
CheckSession invokes checkSession operation.
Takes an empty request with authorization headers, and check the validity of those headers. If the headers can be used to access any protected resource, the session is considered valid and the decoded claims are returned as a success response. Otherwise, an error will be sent, explaining why the session is invalid.
GET /session
func (*Client) CreateAnonSession ¶
func (c *Client) CreateAnonSession(ctx context.Context) (CreateAnonSessionRes, error)
CreateAnonSession invokes createAnonSession operation.
Create a new anonymous session. An anonymous session is delivered without constraint, and grants basic access to apis with low protection.
PUT /session/anon
func (*Client) CreateSession ¶
CreateSession invokes createSession operation.
Create a new session, using a set of credentials. The provided credentials will be used to validate the identity of the caller. Once the credentials have been verified, a token is issued. The access rights it grants may depend on the profile of the user.
PUT /session
func (*Client) EmailExists ¶
func (c *Client) EmailExists(ctx context.Context, params EmailExistsParams) (EmailExistsRes, error)
EmailExists invokes emailExists operation.
Returns an empty, successful response if the email is already associated to an user. Otherwise, it fails with a not found (404) error status.
GET /credentials/email
func (*Client) GetUser ¶
func (c *Client) GetUser(ctx context.Context, params GetUserParams) (GetUserRes, error)
GetUser invokes getUser operation.
Get a user from the database.
GET /user
func (*Client) Healthcheck ¶
func (c *Client) Healthcheck(ctx context.Context) (HealthcheckRes, error)
Healthcheck invokes healthcheck operation.
Returns a detailed report of the health of the service, including every dependency.
GET /healthcheck
func (*Client) ListUsers ¶
func (c *Client) ListUsers(ctx context.Context, params ListUsersParams) (ListUsersRes, error)
ListUsers invokes listUsers operation.
List users in the database.
GET /users
func (*Client) Ping ¶
Ping invokes ping operation.
Check the status of the service. If the service is running, a successful response is returned.
GET /ping
func (*Client) RefreshSession ¶
func (c *Client) RefreshSession(ctx context.Context, params RefreshSessionParams) (RefreshSessionRes, error)
RefreshSession invokes refreshSession operation.
Takes a refresh token, and use it to issue a new access token.
PATCH /session/refresh
func (*Client) Register ¶
func (c *Client) Register(ctx context.Context, request *RegisterForm) (RegisterRes, error)
Register invokes register operation.
Create a new user. The form must contain a short code, that was sent through a registration link at the user desired email. On success, a valid access token is returned, that can be used to access higher-privilege routes.
PUT /credentials
func (*Client) RequestEmailUpdate ¶
func (c *Client) RequestEmailUpdate(ctx context.Context, request *RequestEmailUpdateForm) (RequestEmailUpdateRes, error)
RequestEmailUpdate invokes requestEmailUpdate operation.
Create a new short code for updating the email of an user. This short code is sent to the new address. If the user clicks on it, it should take it to a page that will forward the short code back to this API. Once done, the email associated to the user will be updated automatically. This route requires to be called by an authenticated user. Anonymous sessions cannot trigger an email update request. NOTE that this request does not verify the availability of an email. You may check this beforehand,
using
the `Email Exists` endpoint. If multiple email update links are requested for the same email, only the last one will be valid.
PUT /short-code/update-email
func (*Client) RequestPasswordReset ¶
func (c *Client) RequestPasswordReset(ctx context.Context, request *RequestPasswordResetForm) (RequestPasswordResetRes, error)
RequestPasswordReset invokes requestPasswordReset operation.
Create a new short code for updating the password of an user. This short code is sent to the new address. If the user clicks on it, it should take it to a page that will forward the short code back to this API. Once done, the password of the user is updated. This route does not require authentication (although it requires at least an anonymous session). This allow users who forgot their password to reset it. If multiple password update links are requested for the same email, only the last one will be valid.
PUT /short-code/update-password
func (*Client) RequestRegistration ¶
func (c *Client) RequestRegistration(ctx context.Context, request *RequestRegistrationForm) (RequestRegistrationRes, error)
RequestRegistration invokes requestRegistration operation.
To prevent spam in our user database, registration must be done through a link sent by e-mail, so we can ensure this address is valid. When a user registers, the short code it received must be sent along with the registration payload.
The email
of the payload MUST match the email the short code was sent to, and is used to retrieve the short code. NOTE that this request does not verify the availability of an email. You may check this beforehand,
using
the `Email Exists` endpoint. If multiple registration links are requested for the same email, only the last one will be valid.
PUT /short-code/register
func (*Client) ResetPassword ¶
func (c *Client) ResetPassword(ctx context.Context, request *ResetPasswordForm) (ResetPasswordRes, error)
ResetPassword invokes resetPassword operation.
Reset the password of an user. This route allows an unauthenticated session to update the password of a user. To prevent security issues, this route requires a short code that was sent to the email of the user that requested the password reset.
PATCH /credentials/password/reset
func (*Client) UpdateEmail ¶
func (c *Client) UpdateEmail(ctx context.Context, request *UpdateEmailForm) (UpdateEmailRes, error)
UpdateEmail invokes updateEmail operation.
Update the email of an user. This route requires a valid short code, that was sent to the new email. If the short code is valid, the email of the user is updated with the email address the short code was sent to.
PATCH /credentials/email
func (*Client) UpdatePassword ¶
func (c *Client) UpdatePassword(ctx context.Context, request *UpdatePasswordForm) (UpdatePasswordRes, error)
UpdatePassword invokes updatePassword operation.
Update the password of an user. This route requires the original password of the user, to double check the identity of the caller.
PATCH /credentials/password
func (*Client) UpdateRole ¶
func (c *Client) UpdateRole(ctx context.Context, request *UpdateRoleForm) (UpdateRoleRes, error)
UpdateRole invokes updateRole operation.
Update the role of an user. This route requires the original password of the user, to double check the identity of the caller.
PATCH /credentials/role
type ClientOption ¶
type ClientOption interface {
// contains filtered or unexported methods
}
ClientOption is client config option.
func WithClient ¶
func WithClient(client ht.Client) ClientOption
WithClient specifies http client to use.
type ConflictError ¶
type ConflictError struct {
// The error message.
Error string `json:"error"`
}
Ref: #/components/schemas/ConflictError
func (*ConflictError) Decode ¶
func (s *ConflictError) Decode(d *jx.Decoder) error
Decode decodes ConflictError from json.
func (*ConflictError) Encode ¶
func (s *ConflictError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*ConflictError) GetError ¶
func (s *ConflictError) GetError() string
GetError returns the value of Error.
func (*ConflictError) MarshalJSON ¶
func (s *ConflictError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*ConflictError) SetError ¶
func (s *ConflictError) SetError(val string)
SetError sets the value of Error.
func (*ConflictError) UnmarshalJSON ¶
func (s *ConflictError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type CreateAnonSessionIMATeapot ¶
type CreateAnonSessionIMATeapot struct{}
CreateAnonSessionIMATeapot is response for CreateAnonSession operation.
type CreateAnonSessionRes ¶
type CreateAnonSessionRes interface {
// contains filtered or unexported methods
}
type CreateSessionRes ¶
type CreateSessionRes interface {
// contains filtered or unexported methods
}
type CredentialsRole ¶
type CredentialsRole string
A role specifically assigned to a user. Ref: #/components/schemas/CredentialsRole
const ( CredentialsRoleUser CredentialsRole = "user" CredentialsRoleAdmin CredentialsRole = "admin" CredentialsRoleSuperAdmin CredentialsRole = "super_admin" )
func (CredentialsRole) AllValues ¶
func (CredentialsRole) AllValues() []CredentialsRole
AllValues returns all CredentialsRole values.
func (*CredentialsRole) Decode ¶
func (s *CredentialsRole) Decode(d *jx.Decoder) error
Decode decodes CredentialsRole from json.
func (CredentialsRole) Encode ¶
func (s CredentialsRole) Encode(e *jx.Encoder)
Encode encodes CredentialsRole as json.
func (CredentialsRole) MarshalJSON ¶
func (s CredentialsRole) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (CredentialsRole) MarshalText ¶
func (s CredentialsRole) MarshalText() ([]byte, error)
MarshalText implements encoding.TextMarshaler.
func (*CredentialsRole) UnmarshalJSON ¶
func (s *CredentialsRole) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*CredentialsRole) UnmarshalText ¶
func (s *CredentialsRole) UnmarshalText(data []byte) error
UnmarshalText implements encoding.TextUnmarshaler.
func (CredentialsRole) Validate ¶
func (s CredentialsRole) Validate() error
type Dependency ¶
type Dependency struct {
// The name of the dependency.
Name string `json:"name"`
Status DependencyStatus `json:"status"`
AdditionalProps DependencyAdditional
}
Ref: #/components/schemas/Dependency
func (*Dependency) Decode ¶
func (s *Dependency) Decode(d *jx.Decoder) error
Decode decodes Dependency from json.
func (*Dependency) Encode ¶
func (s *Dependency) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*Dependency) GetAdditionalProps ¶
func (s *Dependency) GetAdditionalProps() DependencyAdditional
GetAdditionalProps returns the value of AdditionalProps.
func (*Dependency) GetName ¶
func (s *Dependency) GetName() string
GetName returns the value of Name.
func (*Dependency) GetStatus ¶
func (s *Dependency) GetStatus() DependencyStatus
GetStatus returns the value of Status.
func (*Dependency) MarshalJSON ¶
func (s *Dependency) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*Dependency) SetAdditionalProps ¶
func (s *Dependency) SetAdditionalProps(val DependencyAdditional)
SetAdditionalProps sets the value of AdditionalProps.
func (*Dependency) SetName ¶
func (s *Dependency) SetName(val string)
SetName sets the value of Name.
func (*Dependency) SetStatus ¶
func (s *Dependency) SetStatus(val DependencyStatus)
SetStatus sets the value of Status.
func (*Dependency) UnmarshalJSON ¶
func (s *Dependency) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*Dependency) Validate ¶
func (s *Dependency) Validate() error
type DependencyAdditional ¶
func (*DependencyAdditional) Decode ¶
func (s *DependencyAdditional) Decode(d *jx.Decoder) error
Decode decodes DependencyAdditional from json.
func (DependencyAdditional) Encode ¶
func (s DependencyAdditional) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (DependencyAdditional) MarshalJSON ¶
func (s DependencyAdditional) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*DependencyAdditional) UnmarshalJSON ¶
func (s *DependencyAdditional) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type DependencyStatus ¶
type DependencyStatus string
The status of a dependency. Ref: #/components/schemas/DependencyStatus
const ( DependencyStatusUp DependencyStatus = "up" DependencyStatusDown DependencyStatus = "down" DependencyStatusUnknown DependencyStatus = "unknown" )
func (DependencyStatus) AllValues ¶
func (DependencyStatus) AllValues() []DependencyStatus
AllValues returns all DependencyStatus values.
func (*DependencyStatus) Decode ¶
func (s *DependencyStatus) Decode(d *jx.Decoder) error
Decode decodes DependencyStatus from json.
func (DependencyStatus) Encode ¶
func (s DependencyStatus) Encode(e *jx.Encoder)
Encode encodes DependencyStatus as json.
func (DependencyStatus) MarshalJSON ¶
func (s DependencyStatus) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (DependencyStatus) MarshalText ¶
func (s DependencyStatus) MarshalText() ([]byte, error)
MarshalText implements encoding.TextMarshaler.
func (*DependencyStatus) UnmarshalJSON ¶
func (s *DependencyStatus) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*DependencyStatus) UnmarshalText ¶
func (s *DependencyStatus) UnmarshalText(data []byte) error
UnmarshalText implements encoding.TextUnmarshaler.
func (DependencyStatus) Validate ¶
func (s DependencyStatus) Validate() error
type Email ¶
type Email string
func (Email) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Email) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type EmailExistsNoContent ¶
type EmailExistsNoContent struct{}
EmailExistsNoContent is response for EmailExists operation.
type EmailExistsParams ¶
type EmailExistsParams struct {
Email Email
}
EmailExistsParams is parameters of emailExists operation.
type EmailExistsRes ¶
type EmailExistsRes interface {
// contains filtered or unexported methods
}
type ForbiddenError ¶
type ForbiddenError struct {
// The error message.
Error string `json:"error"`
}
Ref: #/components/schemas/ForbiddenError
func (*ForbiddenError) Decode ¶
func (s *ForbiddenError) Decode(d *jx.Decoder) error
Decode decodes ForbiddenError from json.
func (*ForbiddenError) Encode ¶
func (s *ForbiddenError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*ForbiddenError) GetError ¶
func (s *ForbiddenError) GetError() string
GetError returns the value of Error.
func (*ForbiddenError) MarshalJSON ¶
func (s *ForbiddenError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*ForbiddenError) SetError ¶
func (s *ForbiddenError) SetError(val string)
SetError sets the value of Error.
func (*ForbiddenError) UnmarshalJSON ¶
func (s *ForbiddenError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type GetUserParams ¶
type GetUserParams struct {
// The unique identifier of the user.
UserID UserID
}
GetUserParams is parameters of getUser operation.
type GetUserRes ¶
type GetUserRes interface {
// contains filtered or unexported methods
}
type Handler ¶
type Handler interface {
// CheckSession implements checkSession operation.
//
// Takes an empty request with authorization headers, and check the validity of those headers. If the
// headers can
// be used to access any protected resource, the session is considered valid and the decoded claims
// are returned
// as a success response. Otherwise, an error will be sent, explaining why the session is invalid.
//
// GET /session
CheckSession(ctx context.Context) (CheckSessionRes, error)
// CreateAnonSession implements createAnonSession operation.
//
// Create a new anonymous session. An anonymous session is delivered without constraint, and grants
// basic access
// to apis with low protection.
//
// PUT /session/anon
CreateAnonSession(ctx context.Context) (CreateAnonSessionRes, error)
// CreateSession implements createSession operation.
//
// Create a new session, using a set of credentials. The provided credentials will be used to
// validate the
// identity of the caller. Once the credentials have been verified, a token is issued. The access
// rights it grants
// may depend on the profile of the user.
//
// PUT /session
CreateSession(ctx context.Context, req *LoginForm) (CreateSessionRes, error)
// EmailExists implements emailExists operation.
//
// Returns an empty, successful response if the email is already associated to an user. Otherwise, it
// fails
// with a not found (404) error status.
//
// GET /credentials/email
EmailExists(ctx context.Context, params EmailExistsParams) (EmailExistsRes, error)
// GetUser implements getUser operation.
//
// Get a user from the database.
//
// GET /user
GetUser(ctx context.Context, params GetUserParams) (GetUserRes, error)
// Healthcheck implements healthcheck operation.
//
// Returns a detailed report of the health of the service, including every dependency.
//
// GET /healthcheck
Healthcheck(ctx context.Context) (HealthcheckRes, error)
// ListUsers implements listUsers operation.
//
// List users in the database.
//
// GET /users
ListUsers(ctx context.Context, params ListUsersParams) (ListUsersRes, error)
// Ping implements ping operation.
//
// Check the status of the service. If the service is running, a successful response is returned.
//
// GET /ping
Ping(ctx context.Context) (PingRes, error)
// RefreshSession implements refreshSession operation.
//
// Takes a refresh token, and use it to issue a new access token.
//
// PATCH /session/refresh
RefreshSession(ctx context.Context, params RefreshSessionParams) (RefreshSessionRes, error)
// Register implements register operation.
//
// Create a new user. The form must contain a short code, that was sent through a registration link
// at the user
// desired email.
// On success, a valid access token is returned, that can be used to access higher-privilege routes.
//
// PUT /credentials
Register(ctx context.Context, req *RegisterForm) (RegisterRes, error)
// RequestEmailUpdate implements requestEmailUpdate operation.
//
// Create a new short code for updating the email of an user. This short code is sent to the new
// address.
// If the user clicks on it, it should take it to a page that will forward the short code back to
// this API.
// Once done, the email associated to the user will be updated automatically.
// This route requires to be called by an authenticated user. Anonymous sessions cannot trigger an
// email
// update request.
// NOTE that this request does not verify the availability of an email. You may check this beforehand,
// using
// the `Email Exists` endpoint.
// If multiple email update links are requested for the same email, only the last one will be valid.
//
// PUT /short-code/update-email
RequestEmailUpdate(ctx context.Context, req *RequestEmailUpdateForm) (RequestEmailUpdateRes, error)
// RequestPasswordReset implements requestPasswordReset operation.
//
// Create a new short code for updating the password of an user. This short code is sent to the new
// address.
// If the user clicks on it, it should take it to a page that will forward the short code back to
// this API.
// Once done, the password of the user is updated.
// This route does not require authentication (although it requires at least an anonymous session).
// This
// allow users who forgot their password to reset it.
// If multiple password update links are requested for the same email, only the last one will be
// valid.
//
// PUT /short-code/update-password
RequestPasswordReset(ctx context.Context, req *RequestPasswordResetForm) (RequestPasswordResetRes, error)
// RequestRegistration implements requestRegistration operation.
//
// To prevent spam in our user database, registration must be done through a link sent by e-mail, so
// we can
// ensure this address is valid.
// When a user registers, the short code it received must be sent along with the registration payload.
// The email
// of the payload MUST match the email the short code was sent to, and is used to retrieve the short
// code.
// NOTE that this request does not verify the availability of an email. You may check this beforehand,
// using
// the `Email Exists` endpoint.
// If multiple registration links are requested for the same email, only the last one will be valid.
//
// PUT /short-code/register
RequestRegistration(ctx context.Context, req *RequestRegistrationForm) (RequestRegistrationRes, error)
// ResetPassword implements resetPassword operation.
//
// Reset the password of an user. This route allows an unauthenticated session to update the password
// of a user.
// To prevent security issues, this route requires a short code that was sent to the email of the
// user that
// requested the password reset.
//
// PATCH /credentials/password/reset
ResetPassword(ctx context.Context, req *ResetPasswordForm) (ResetPasswordRes, error)
// UpdateEmail implements updateEmail operation.
//
// Update the email of an user. This route requires a valid short code, that was sent to the new
// email.
// If the short code is valid, the email of the user is updated with the email address the short code
// was
// sent to.
//
// PATCH /credentials/email
UpdateEmail(ctx context.Context, req *UpdateEmailForm) (UpdateEmailRes, error)
// UpdatePassword implements updatePassword operation.
//
// Update the password of an user. This route requires the original password of the user, to double
// check
// the identity of the caller.
//
// PATCH /credentials/password
UpdatePassword(ctx context.Context, req *UpdatePasswordForm) (UpdatePasswordRes, error)
// UpdateRole implements updateRole operation.
//
// Update the role of an user. This route requires the original password of the user, to double check
// the identity of the caller.
//
// PATCH /credentials/role
UpdateRole(ctx context.Context, req *UpdateRoleForm) (UpdateRoleRes, error)
// NewError creates *UnexpectedErrorStatusCode from error returned by handler.
//
// Used for common default response.
NewError(ctx context.Context, err error) *UnexpectedErrorStatusCode
}
Handler handles operations described by OpenAPI v3 specification.
type Health ¶
type Health struct {
Postgres Dependency `json:"postgres"`
JsonKeys Dependency `json:"jsonKeys"`
SMTP Dependency `json:"smtp"`
}
Ref: #/components/schemas/Health
func (*Health) GetJsonKeys ¶
func (s *Health) GetJsonKeys() Dependency
GetJsonKeys returns the value of JsonKeys.
func (*Health) GetPostgres ¶
func (s *Health) GetPostgres() Dependency
GetPostgres returns the value of Postgres.
func (*Health) GetSMTP ¶ added in v1.2.1
func (s *Health) GetSMTP() Dependency
GetSMTP returns the value of SMTP.
func (*Health) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Health) SetJsonKeys ¶
func (s *Health) SetJsonKeys(val Dependency)
SetJsonKeys sets the value of JsonKeys.
func (*Health) SetPostgres ¶
func (s *Health) SetPostgres(val Dependency)
SetPostgres sets the value of Postgres.
func (*Health) SetSMTP ¶ added in v1.2.1
func (s *Health) SetSMTP(val Dependency)
SetSMTP sets the value of SMTP.
func (*Health) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type HealthcheckIMATeapot ¶
type HealthcheckIMATeapot struct{}
HealthcheckIMATeapot is response for Healthcheck operation.
type HealthcheckRes ¶
type HealthcheckRes interface {
// contains filtered or unexported methods
}
type Invoker ¶
type Invoker interface {
// CheckSession invokes checkSession operation.
//
// Takes an empty request with authorization headers, and check the validity of those headers. If the
// headers can
// be used to access any protected resource, the session is considered valid and the decoded claims
// are returned
// as a success response. Otherwise, an error will be sent, explaining why the session is invalid.
//
// GET /session
CheckSession(ctx context.Context) (CheckSessionRes, error)
// CreateAnonSession invokes createAnonSession operation.
//
// Create a new anonymous session. An anonymous session is delivered without constraint, and grants
// basic access
// to apis with low protection.
//
// PUT /session/anon
CreateAnonSession(ctx context.Context) (CreateAnonSessionRes, error)
// CreateSession invokes createSession operation.
//
// Create a new session, using a set of credentials. The provided credentials will be used to
// validate the
// identity of the caller. Once the credentials have been verified, a token is issued. The access
// rights it grants
// may depend on the profile of the user.
//
// PUT /session
CreateSession(ctx context.Context, request *LoginForm) (CreateSessionRes, error)
// EmailExists invokes emailExists operation.
//
// Returns an empty, successful response if the email is already associated to an user. Otherwise, it
// fails
// with a not found (404) error status.
//
// GET /credentials/email
EmailExists(ctx context.Context, params EmailExistsParams) (EmailExistsRes, error)
// GetUser invokes getUser operation.
//
// Get a user from the database.
//
// GET /user
GetUser(ctx context.Context, params GetUserParams) (GetUserRes, error)
// Healthcheck invokes healthcheck operation.
//
// Returns a detailed report of the health of the service, including every dependency.
//
// GET /healthcheck
Healthcheck(ctx context.Context) (HealthcheckRes, error)
// ListUsers invokes listUsers operation.
//
// List users in the database.
//
// GET /users
ListUsers(ctx context.Context, params ListUsersParams) (ListUsersRes, error)
// Ping invokes ping operation.
//
// Check the status of the service. If the service is running, a successful response is returned.
//
// GET /ping
Ping(ctx context.Context) (PingRes, error)
// RefreshSession invokes refreshSession operation.
//
// Takes a refresh token, and use it to issue a new access token.
//
// PATCH /session/refresh
RefreshSession(ctx context.Context, params RefreshSessionParams) (RefreshSessionRes, error)
// Register invokes register operation.
//
// Create a new user. The form must contain a short code, that was sent through a registration link
// at the user
// desired email.
// On success, a valid access token is returned, that can be used to access higher-privilege routes.
//
// PUT /credentials
Register(ctx context.Context, request *RegisterForm) (RegisterRes, error)
// RequestEmailUpdate invokes requestEmailUpdate operation.
//
// Create a new short code for updating the email of an user. This short code is sent to the new
// address.
// If the user clicks on it, it should take it to a page that will forward the short code back to
// this API.
// Once done, the email associated to the user will be updated automatically.
// This route requires to be called by an authenticated user. Anonymous sessions cannot trigger an
// email
// update request.
// NOTE that this request does not verify the availability of an email. You may check this beforehand,
// using
// the `Email Exists` endpoint.
// If multiple email update links are requested for the same email, only the last one will be valid.
//
// PUT /short-code/update-email
RequestEmailUpdate(ctx context.Context, request *RequestEmailUpdateForm) (RequestEmailUpdateRes, error)
// RequestPasswordReset invokes requestPasswordReset operation.
//
// Create a new short code for updating the password of an user. This short code is sent to the new
// address.
// If the user clicks on it, it should take it to a page that will forward the short code back to
// this API.
// Once done, the password of the user is updated.
// This route does not require authentication (although it requires at least an anonymous session).
// This
// allow users who forgot their password to reset it.
// If multiple password update links are requested for the same email, only the last one will be
// valid.
//
// PUT /short-code/update-password
RequestPasswordReset(ctx context.Context, request *RequestPasswordResetForm) (RequestPasswordResetRes, error)
// RequestRegistration invokes requestRegistration operation.
//
// To prevent spam in our user database, registration must be done through a link sent by e-mail, so
// we can
// ensure this address is valid.
// When a user registers, the short code it received must be sent along with the registration payload.
// The email
// of the payload MUST match the email the short code was sent to, and is used to retrieve the short
// code.
// NOTE that this request does not verify the availability of an email. You may check this beforehand,
// using
// the `Email Exists` endpoint.
// If multiple registration links are requested for the same email, only the last one will be valid.
//
// PUT /short-code/register
RequestRegistration(ctx context.Context, request *RequestRegistrationForm) (RequestRegistrationRes, error)
// ResetPassword invokes resetPassword operation.
//
// Reset the password of an user. This route allows an unauthenticated session to update the password
// of a user.
// To prevent security issues, this route requires a short code that was sent to the email of the
// user that
// requested the password reset.
//
// PATCH /credentials/password/reset
ResetPassword(ctx context.Context, request *ResetPasswordForm) (ResetPasswordRes, error)
// UpdateEmail invokes updateEmail operation.
//
// Update the email of an user. This route requires a valid short code, that was sent to the new
// email.
// If the short code is valid, the email of the user is updated with the email address the short code
// was
// sent to.
//
// PATCH /credentials/email
UpdateEmail(ctx context.Context, request *UpdateEmailForm) (UpdateEmailRes, error)
// UpdatePassword invokes updatePassword operation.
//
// Update the password of an user. This route requires the original password of the user, to double
// check
// the identity of the caller.
//
// PATCH /credentials/password
UpdatePassword(ctx context.Context, request *UpdatePasswordForm) (UpdatePasswordRes, error)
// UpdateRole invokes updateRole operation.
//
// Update the role of an user. This route requires the original password of the user, to double check
// the identity of the caller.
//
// PATCH /credentials/role
UpdateRole(ctx context.Context, request *UpdateRoleForm) (UpdateRoleRes, error)
}
Invoker invokes operations described by OpenAPI v3 specification.
type Labeler ¶
type Labeler struct {
// contains filtered or unexported fields
}
Labeler is used to allow adding custom attributes to the server request metrics.
func LabelerFromContext ¶
LabelerFromContext retrieves the Labeler from the provided context, if present.
If no Labeler was found in the provided context a new, empty Labeler is returned and the second return value is false. In this case it is safe to use the Labeler but any attributes added to it will not be used.
func (*Labeler) AttributeSet ¶
AttributeSet returns the attributes added to the Labeler as an attribute.Set.
type Lang ¶
type Lang string
The language of the user. Ref: #/components/schemas/Lang
func (Lang) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (Lang) MarshalText ¶
MarshalText implements encoding.TextMarshaler.
func (*Lang) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
func (*Lang) UnmarshalText ¶
UnmarshalText implements encoding.TextUnmarshaler.
type ListUsersOKApplicationJSON ¶
type ListUsersOKApplicationJSON []User
func (*ListUsersOKApplicationJSON) Decode ¶
func (s *ListUsersOKApplicationJSON) Decode(d *jx.Decoder) error
Decode decodes ListUsersOKApplicationJSON from json.
func (ListUsersOKApplicationJSON) Encode ¶
func (s ListUsersOKApplicationJSON) Encode(e *jx.Encoder)
Encode encodes ListUsersOKApplicationJSON as json.
func (ListUsersOKApplicationJSON) MarshalJSON ¶
func (s ListUsersOKApplicationJSON) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*ListUsersOKApplicationJSON) UnmarshalJSON ¶
func (s *ListUsersOKApplicationJSON) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (ListUsersOKApplicationJSON) Validate ¶
func (s ListUsersOKApplicationJSON) Validate() error
type ListUsersParams ¶
type ListUsersParams struct {
// The maximum number of items to return.
Limit OptInt `json:",omitempty,omitzero"`
// The number of items to skip before starting to collect the result set.
Offset OptInt `json:",omitempty,omitzero"`
// The roles to filter the users by.
Roles []CredentialsRole `json:",omitempty"`
}
ListUsersParams is parameters of listUsers operation.
type ListUsersRes ¶
type ListUsersRes interface {
// contains filtered or unexported methods
}
type LoginForm ¶
Data used to authenticate a user. It usually includes some private information only known to the user (password, secret question, etc), that is checked against some protected data on the server. If this information is correct, the user is authenticated and granted a special token. Ref: #/components/schemas/LoginForm
func (*LoginForm) GetPassword ¶
GetPassword returns the value of Password.
func (*LoginForm) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*LoginForm) SetPassword ¶
SetPassword sets the value of Password.
func (*LoginForm) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type NewEmail ¶
type NewEmail struct {
// The new email of the user.
Email Email `json:"email"`
}
Ref: #/components/schemas/NewEmail
func (*NewEmail) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*NewEmail) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type NotFoundError ¶
type NotFoundError struct {
// The error message.
Error string `json:"error"`
}
Ref: #/components/schemas/NotFoundError
func (*NotFoundError) Decode ¶
func (s *NotFoundError) Decode(d *jx.Decoder) error
Decode decodes NotFoundError from json.
func (*NotFoundError) Encode ¶
func (s *NotFoundError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*NotFoundError) GetError ¶
func (s *NotFoundError) GetError() string
GetError returns the value of Error.
func (*NotFoundError) MarshalJSON ¶
func (s *NotFoundError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*NotFoundError) SetError ¶
func (s *NotFoundError) SetError(val string)
SetError sets the value of Error.
func (*NotFoundError) UnmarshalJSON ¶
func (s *NotFoundError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type OperationName ¶
type OperationName = string
OperationName is the ogen operation name
const ( CheckSessionOperation OperationName = "CheckSession" CreateAnonSessionOperation OperationName = "CreateAnonSession" CreateSessionOperation OperationName = "CreateSession" EmailExistsOperation OperationName = "EmailExists" GetUserOperation OperationName = "GetUser" HealthcheckOperation OperationName = "Healthcheck" ListUsersOperation OperationName = "ListUsers" PingOperation OperationName = "Ping" RefreshSessionOperation OperationName = "RefreshSession" RegisterOperation OperationName = "Register" RequestEmailUpdateOperation OperationName = "RequestEmailUpdate" RequestPasswordResetOperation OperationName = "RequestPasswordReset" RequestRegistrationOperation OperationName = "RequestRegistration" ResetPasswordOperation OperationName = "ResetPassword" UpdateEmailOperation OperationName = "UpdateEmail" UpdatePasswordOperation OperationName = "UpdatePassword" UpdateRoleOperation OperationName = "UpdateRole" )
type OptInt ¶
OptInt is optional int.
type OptLang ¶
OptLang is optional Lang.
func NewOptLang ¶
NewOptLang returns new OptLang with value set to v.
func (OptLang) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*OptLang) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type OptString ¶
OptString is optional string.
func NewOptString ¶
NewOptString returns new OptString with value set to v.
func (OptString) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*OptString) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type OptUUID ¶
OptUUID is optional uuid.UUID.
func NewOptUUID ¶
NewOptUUID returns new OptUUID with value set to v.
func (OptUUID) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*OptUUID) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type Option ¶
type Option interface {
ServerOption
ClientOption
}
Option is config option.
func WithAttributes ¶ added in v1.2.15
WithAttributes specifies default otel attributes.
func WithMeterProvider ¶
func WithMeterProvider(provider metric.MeterProvider) Option
WithMeterProvider specifies a meter provider to use for creating a meter.
If none is specified, the otel.GetMeterProvider() is used.
func WithTracerProvider ¶
func WithTracerProvider(provider trace.TracerProvider) Option
WithTracerProvider specifies a tracer provider to use for creating a tracer.
If none is specified, the global provider is used.
type Password ¶
type Password string
func (Password) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Password) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type RefreshSessionParams ¶
RefreshSessionParams is parameters of refreshSession operation.
type RefreshSessionRes ¶
type RefreshSessionRes interface {
// contains filtered or unexported methods
}
type RegisterForm ¶
type RegisterForm struct {
// The email of the new user. This email must be available, and also match the one that received
// the short code / registration link.
Email Email `json:"email"`
Password Password `json:"password"`
ShortCode ShortCode `json:"shortCode"`
}
Data used to create a user. Ref: #/components/schemas/RegisterForm
func (*RegisterForm) Decode ¶
func (s *RegisterForm) Decode(d *jx.Decoder) error
Decode decodes RegisterForm from json.
func (*RegisterForm) Encode ¶
func (s *RegisterForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*RegisterForm) GetEmail ¶
func (s *RegisterForm) GetEmail() Email
GetEmail returns the value of Email.
func (*RegisterForm) GetPassword ¶
func (s *RegisterForm) GetPassword() Password
GetPassword returns the value of Password.
func (*RegisterForm) GetShortCode ¶
func (s *RegisterForm) GetShortCode() ShortCode
GetShortCode returns the value of ShortCode.
func (*RegisterForm) MarshalJSON ¶
func (s *RegisterForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*RegisterForm) SetEmail ¶
func (s *RegisterForm) SetEmail(val Email)
SetEmail sets the value of Email.
func (*RegisterForm) SetPassword ¶
func (s *RegisterForm) SetPassword(val Password)
SetPassword sets the value of Password.
func (*RegisterForm) SetShortCode ¶
func (s *RegisterForm) SetShortCode(val ShortCode)
SetShortCode sets the value of ShortCode.
func (*RegisterForm) UnmarshalJSON ¶
func (s *RegisterForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*RegisterForm) Validate ¶
func (s *RegisterForm) Validate() error
type RegisterRes ¶
type RegisterRes interface {
// contains filtered or unexported methods
}
type RequestEmailUpdateForm ¶
type RequestEmailUpdateForm struct {
// The bew email of the new user. This email must be available at the time of validation.
Email Email `json:"email"`
Lang OptLang `json:"lang"`
}
Create a new email update link. Ref: #/components/schemas/RequestEmailUpdateForm
func (*RequestEmailUpdateForm) Decode ¶
func (s *RequestEmailUpdateForm) Decode(d *jx.Decoder) error
Decode decodes RequestEmailUpdateForm from json.
func (*RequestEmailUpdateForm) Encode ¶
func (s *RequestEmailUpdateForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*RequestEmailUpdateForm) GetEmail ¶
func (s *RequestEmailUpdateForm) GetEmail() Email
GetEmail returns the value of Email.
func (*RequestEmailUpdateForm) GetLang ¶
func (s *RequestEmailUpdateForm) GetLang() OptLang
GetLang returns the value of Lang.
func (*RequestEmailUpdateForm) MarshalJSON ¶
func (s *RequestEmailUpdateForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*RequestEmailUpdateForm) SetEmail ¶
func (s *RequestEmailUpdateForm) SetEmail(val Email)
SetEmail sets the value of Email.
func (*RequestEmailUpdateForm) SetLang ¶
func (s *RequestEmailUpdateForm) SetLang(val OptLang)
SetLang sets the value of Lang.
func (*RequestEmailUpdateForm) UnmarshalJSON ¶
func (s *RequestEmailUpdateForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*RequestEmailUpdateForm) Validate ¶
func (s *RequestEmailUpdateForm) Validate() error
type RequestEmailUpdateNoContent ¶
type RequestEmailUpdateNoContent struct{}
RequestEmailUpdateNoContent is response for RequestEmailUpdate operation.
type RequestEmailUpdateRes ¶
type RequestEmailUpdateRes interface {
// contains filtered or unexported methods
}
type RequestPasswordResetForm ¶
type RequestPasswordResetForm struct {
// The email of the user. This email must match a user in the database.
Email Email `json:"email"`
Lang OptLang `json:"lang"`
}
Create a new password update link. Ref: #/components/schemas/RequestPasswordResetForm
func (*RequestPasswordResetForm) Decode ¶
func (s *RequestPasswordResetForm) Decode(d *jx.Decoder) error
Decode decodes RequestPasswordResetForm from json.
func (*RequestPasswordResetForm) Encode ¶
func (s *RequestPasswordResetForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*RequestPasswordResetForm) GetEmail ¶
func (s *RequestPasswordResetForm) GetEmail() Email
GetEmail returns the value of Email.
func (*RequestPasswordResetForm) GetLang ¶
func (s *RequestPasswordResetForm) GetLang() OptLang
GetLang returns the value of Lang.
func (*RequestPasswordResetForm) MarshalJSON ¶
func (s *RequestPasswordResetForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*RequestPasswordResetForm) SetEmail ¶
func (s *RequestPasswordResetForm) SetEmail(val Email)
SetEmail sets the value of Email.
func (*RequestPasswordResetForm) SetLang ¶
func (s *RequestPasswordResetForm) SetLang(val OptLang)
SetLang sets the value of Lang.
func (*RequestPasswordResetForm) UnmarshalJSON ¶
func (s *RequestPasswordResetForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*RequestPasswordResetForm) Validate ¶
func (s *RequestPasswordResetForm) Validate() error
type RequestPasswordResetNoContent ¶
type RequestPasswordResetNoContent struct{}
RequestPasswordResetNoContent is response for RequestPasswordReset operation.
type RequestPasswordResetRes ¶
type RequestPasswordResetRes interface {
// contains filtered or unexported methods
}
type RequestRegistrationForm ¶
type RequestRegistrationForm struct {
// The email of the new user. This email must be available at the time of registration.
Email Email `json:"email"`
Lang OptLang `json:"lang"`
}
Create a new registration link. Ref: #/components/schemas/RequestRegistrationForm
func (*RequestRegistrationForm) Decode ¶
func (s *RequestRegistrationForm) Decode(d *jx.Decoder) error
Decode decodes RequestRegistrationForm from json.
func (*RequestRegistrationForm) Encode ¶
func (s *RequestRegistrationForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*RequestRegistrationForm) GetEmail ¶
func (s *RequestRegistrationForm) GetEmail() Email
GetEmail returns the value of Email.
func (*RequestRegistrationForm) GetLang ¶
func (s *RequestRegistrationForm) GetLang() OptLang
GetLang returns the value of Lang.
func (*RequestRegistrationForm) MarshalJSON ¶
func (s *RequestRegistrationForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*RequestRegistrationForm) SetEmail ¶
func (s *RequestRegistrationForm) SetEmail(val Email)
SetEmail sets the value of Email.
func (*RequestRegistrationForm) SetLang ¶
func (s *RequestRegistrationForm) SetLang(val OptLang)
SetLang sets the value of Lang.
func (*RequestRegistrationForm) UnmarshalJSON ¶
func (s *RequestRegistrationForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*RequestRegistrationForm) Validate ¶
func (s *RequestRegistrationForm) Validate() error
type RequestRegistrationIMATeapot ¶
type RequestRegistrationIMATeapot struct{}
RequestRegistrationIMATeapot is response for RequestRegistration operation.
type RequestRegistrationNoContent ¶
type RequestRegistrationNoContent struct{}
RequestRegistrationNoContent is response for RequestRegistration operation.
type RequestRegistrationRes ¶
type RequestRegistrationRes interface {
// contains filtered or unexported methods
}
type ResetPasswordForm ¶
type ResetPasswordForm struct {
// The ID of the user that requested a password reset is sent in the reset link of the reset password
// email.
UserID UserID `json:"userID"`
// The new password of the user.
Password Password `json:"password"`
ShortCode ShortCode `json:"shortCode"`
}
Data used to reset the password of a user. Ref: #/components/schemas/ResetPasswordForm
func (*ResetPasswordForm) Decode ¶
func (s *ResetPasswordForm) Decode(d *jx.Decoder) error
Decode decodes ResetPasswordForm from json.
func (*ResetPasswordForm) Encode ¶
func (s *ResetPasswordForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*ResetPasswordForm) GetPassword ¶
func (s *ResetPasswordForm) GetPassword() Password
GetPassword returns the value of Password.
func (*ResetPasswordForm) GetShortCode ¶
func (s *ResetPasswordForm) GetShortCode() ShortCode
GetShortCode returns the value of ShortCode.
func (*ResetPasswordForm) GetUserID ¶
func (s *ResetPasswordForm) GetUserID() UserID
GetUserID returns the value of UserID.
func (*ResetPasswordForm) MarshalJSON ¶
func (s *ResetPasswordForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*ResetPasswordForm) SetPassword ¶
func (s *ResetPasswordForm) SetPassword(val Password)
SetPassword sets the value of Password.
func (*ResetPasswordForm) SetShortCode ¶
func (s *ResetPasswordForm) SetShortCode(val ShortCode)
SetShortCode sets the value of ShortCode.
func (*ResetPasswordForm) SetUserID ¶
func (s *ResetPasswordForm) SetUserID(val UserID)
SetUserID sets the value of UserID.
func (*ResetPasswordForm) UnmarshalJSON ¶
func (s *ResetPasswordForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*ResetPasswordForm) Validate ¶
func (s *ResetPasswordForm) Validate() error
type ResetPasswordNoContent ¶
type ResetPasswordNoContent struct{}
ResetPasswordNoContent is response for ResetPassword operation.
type ResetPasswordRes ¶
type ResetPasswordRes interface {
// contains filtered or unexported methods
}
type Role ¶
type Role string
func (Role) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Role) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type Route ¶
type Route struct {
// contains filtered or unexported fields
}
Route is route object.
func (Route) OperationID ¶
OperationID returns OpenAPI operationId.
type SecurityHandler ¶
type SecurityHandler interface {
// HandleBearerAuth handles bearerAuth security.
HandleBearerAuth(ctx context.Context, operationName OperationName, t BearerAuth) (context.Context, error)
}
SecurityHandler is handler for security parameters.
type SecuritySource ¶
type SecuritySource interface {
// BearerAuth provides bearerAuth security value.
BearerAuth(ctx context.Context, operationName OperationName) (BearerAuth, error)
}
SecuritySource is provider of security values (tokens, passwords, etc.).
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server implements http server based on OpenAPI v3 specification and calls Handler to handle requests.
func NewServer ¶
func NewServer(h Handler, sec SecurityHandler, opts ...ServerOption) (*Server, error)
NewServer creates new Server.
type ServerOption ¶
type ServerOption interface {
// contains filtered or unexported methods
}
ServerOption is server config option.
func WithErrorHandler ¶
func WithErrorHandler(h ErrorHandler) ServerOption
WithErrorHandler specifies error handler to use.
func WithMaxMultipartMemory ¶
func WithMaxMultipartMemory(max int64) ServerOption
WithMaxMultipartMemory specifies limit of memory for storing file parts. File parts which can't be stored in memory will be stored on disk in temporary files.
func WithMethodNotAllowed ¶
func WithMethodNotAllowed(methodNotAllowed func(w http.ResponseWriter, r *http.Request, allowed string)) ServerOption
WithMethodNotAllowed specifies Method Not Allowed handler to use.
func WithMiddleware ¶
func WithMiddleware(m ...Middleware) ServerOption
WithMiddleware specifies middlewares to use.
func WithNotFound ¶
func WithNotFound(notFound http.HandlerFunc) ServerOption
WithNotFound specifies Not Found handler to use.
func WithPathPrefix ¶
func WithPathPrefix(prefix string) ServerOption
WithPathPrefix specifies server path prefix.
type ShortCode ¶
type ShortCode string
func (ShortCode) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*ShortCode) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type Token ¶
type Token struct {
// The token used to authenticate the session. This token can be passed as a header to http requests
// on
// protected routes.
AccessToken string `json:"accessToken"`
// The token used to refresh the session.
RefreshToken string `json:"refreshToken"`
}
Ref: #/components/schemas/Token
func (*Token) GetAccessToken ¶
GetAccessToken returns the value of AccessToken.
func (*Token) GetRefreshToken ¶
GetRefreshToken returns the value of RefreshToken.
func (*Token) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*Token) SetAccessToken ¶
SetAccessToken sets the value of AccessToken.
func (*Token) SetRefreshToken ¶
SetRefreshToken sets the value of RefreshToken.
func (*Token) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type UnauthorizedError ¶
type UnauthorizedError struct {
Error string `json:"error"`
}
Ref: #/components/schemas/UnauthorizedError
func (*UnauthorizedError) Decode ¶
func (s *UnauthorizedError) Decode(d *jx.Decoder) error
Decode decodes UnauthorizedError from json.
func (*UnauthorizedError) Encode ¶
func (s *UnauthorizedError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UnauthorizedError) GetError ¶
func (s *UnauthorizedError) GetError() string
GetError returns the value of Error.
func (*UnauthorizedError) MarshalJSON ¶
func (s *UnauthorizedError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UnauthorizedError) SetError ¶
func (s *UnauthorizedError) SetError(val string)
SetError sets the value of Error.
func (*UnauthorizedError) UnmarshalJSON ¶
func (s *UnauthorizedError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type UnexpectedError ¶
type UnexpectedError struct {
// The error message.
Error string `json:"error"`
}
Ref: #/components/schemas/UnexpectedError
func (*UnexpectedError) Decode ¶
func (s *UnexpectedError) Decode(d *jx.Decoder) error
Decode decodes UnexpectedError from json.
func (*UnexpectedError) Encode ¶
func (s *UnexpectedError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UnexpectedError) GetError ¶
func (s *UnexpectedError) GetError() string
GetError returns the value of Error.
func (*UnexpectedError) MarshalJSON ¶
func (s *UnexpectedError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UnexpectedError) SetError ¶
func (s *UnexpectedError) SetError(val string)
SetError sets the value of Error.
func (*UnexpectedError) UnmarshalJSON ¶
func (s *UnexpectedError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type UnexpectedErrorStatusCode ¶
type UnexpectedErrorStatusCode struct {
StatusCode int
Response UnexpectedError
}
UnexpectedErrorStatusCode wraps UnexpectedError with StatusCode.
func (*UnexpectedErrorStatusCode) Error ¶
func (s *UnexpectedErrorStatusCode) Error() string
func (*UnexpectedErrorStatusCode) GetResponse ¶
func (s *UnexpectedErrorStatusCode) GetResponse() UnexpectedError
GetResponse returns the value of Response.
func (*UnexpectedErrorStatusCode) GetStatusCode ¶
func (s *UnexpectedErrorStatusCode) GetStatusCode() int
GetStatusCode returns the value of StatusCode.
func (*UnexpectedErrorStatusCode) SetResponse ¶
func (s *UnexpectedErrorStatusCode) SetResponse(val UnexpectedError)
SetResponse sets the value of Response.
func (*UnexpectedErrorStatusCode) SetStatusCode ¶
func (s *UnexpectedErrorStatusCode) SetStatusCode(val int)
SetStatusCode sets the value of StatusCode.
type UnimplementedHandler ¶
type UnimplementedHandler struct{}
UnimplementedHandler is no-op Handler which returns http.ErrNotImplemented.
func (UnimplementedHandler) CheckSession ¶
func (UnimplementedHandler) CheckSession(ctx context.Context) (r CheckSessionRes, _ error)
CheckSession implements checkSession operation.
Takes an empty request with authorization headers, and check the validity of those headers. If the headers can be used to access any protected resource, the session is considered valid and the decoded claims are returned as a success response. Otherwise, an error will be sent, explaining why the session is invalid.
GET /session
func (UnimplementedHandler) CreateAnonSession ¶
func (UnimplementedHandler) CreateAnonSession(ctx context.Context) (r CreateAnonSessionRes, _ error)
CreateAnonSession implements createAnonSession operation.
Create a new anonymous session. An anonymous session is delivered without constraint, and grants basic access to apis with low protection.
PUT /session/anon
func (UnimplementedHandler) CreateSession ¶
func (UnimplementedHandler) CreateSession(ctx context.Context, req *LoginForm) (r CreateSessionRes, _ error)
CreateSession implements createSession operation.
Create a new session, using a set of credentials. The provided credentials will be used to validate the identity of the caller. Once the credentials have been verified, a token is issued. The access rights it grants may depend on the profile of the user.
PUT /session
func (UnimplementedHandler) EmailExists ¶
func (UnimplementedHandler) EmailExists(ctx context.Context, params EmailExistsParams) (r EmailExistsRes, _ error)
EmailExists implements emailExists operation.
Returns an empty, successful response if the email is already associated to an user. Otherwise, it fails with a not found (404) error status.
GET /credentials/email
func (UnimplementedHandler) GetUser ¶
func (UnimplementedHandler) GetUser(ctx context.Context, params GetUserParams) (r GetUserRes, _ error)
GetUser implements getUser operation.
Get a user from the database.
GET /user
func (UnimplementedHandler) Healthcheck ¶
func (UnimplementedHandler) Healthcheck(ctx context.Context) (r HealthcheckRes, _ error)
Healthcheck implements healthcheck operation.
Returns a detailed report of the health of the service, including every dependency.
GET /healthcheck
func (UnimplementedHandler) ListUsers ¶
func (UnimplementedHandler) ListUsers(ctx context.Context, params ListUsersParams) (r ListUsersRes, _ error)
ListUsers implements listUsers operation.
List users in the database.
GET /users
func (UnimplementedHandler) NewError ¶
func (UnimplementedHandler) NewError(ctx context.Context, err error) (r *UnexpectedErrorStatusCode)
NewError creates *UnexpectedErrorStatusCode from error returned by handler.
Used for common default response.
func (UnimplementedHandler) Ping ¶
func (UnimplementedHandler) Ping(ctx context.Context) (r PingRes, _ error)
Ping implements ping operation.
Check the status of the service. If the service is running, a successful response is returned.
GET /ping
func (UnimplementedHandler) RefreshSession ¶
func (UnimplementedHandler) RefreshSession(ctx context.Context, params RefreshSessionParams) (r RefreshSessionRes, _ error)
RefreshSession implements refreshSession operation.
Takes a refresh token, and use it to issue a new access token.
PATCH /session/refresh
func (UnimplementedHandler) Register ¶
func (UnimplementedHandler) Register(ctx context.Context, req *RegisterForm) (r RegisterRes, _ error)
Register implements register operation.
Create a new user. The form must contain a short code, that was sent through a registration link at the user desired email. On success, a valid access token is returned, that can be used to access higher-privilege routes.
PUT /credentials
func (UnimplementedHandler) RequestEmailUpdate ¶
func (UnimplementedHandler) RequestEmailUpdate(ctx context.Context, req *RequestEmailUpdateForm) (r RequestEmailUpdateRes, _ error)
RequestEmailUpdate implements requestEmailUpdate operation.
Create a new short code for updating the email of an user. This short code is sent to the new address. If the user clicks on it, it should take it to a page that will forward the short code back to this API. Once done, the email associated to the user will be updated automatically. This route requires to be called by an authenticated user. Anonymous sessions cannot trigger an email update request. NOTE that this request does not verify the availability of an email. You may check this beforehand,
using
the `Email Exists` endpoint. If multiple email update links are requested for the same email, only the last one will be valid.
PUT /short-code/update-email
func (UnimplementedHandler) RequestPasswordReset ¶
func (UnimplementedHandler) RequestPasswordReset(ctx context.Context, req *RequestPasswordResetForm) (r RequestPasswordResetRes, _ error)
RequestPasswordReset implements requestPasswordReset operation.
Create a new short code for updating the password of an user. This short code is sent to the new address. If the user clicks on it, it should take it to a page that will forward the short code back to this API. Once done, the password of the user is updated. This route does not require authentication (although it requires at least an anonymous session). This allow users who forgot their password to reset it. If multiple password update links are requested for the same email, only the last one will be valid.
PUT /short-code/update-password
func (UnimplementedHandler) RequestRegistration ¶
func (UnimplementedHandler) RequestRegistration(ctx context.Context, req *RequestRegistrationForm) (r RequestRegistrationRes, _ error)
RequestRegistration implements requestRegistration operation.
To prevent spam in our user database, registration must be done through a link sent by e-mail, so we can ensure this address is valid. When a user registers, the short code it received must be sent along with the registration payload.
The email
of the payload MUST match the email the short code was sent to, and is used to retrieve the short code. NOTE that this request does not verify the availability of an email. You may check this beforehand,
using
the `Email Exists` endpoint. If multiple registration links are requested for the same email, only the last one will be valid.
PUT /short-code/register
func (UnimplementedHandler) ResetPassword ¶
func (UnimplementedHandler) ResetPassword(ctx context.Context, req *ResetPasswordForm) (r ResetPasswordRes, _ error)
ResetPassword implements resetPassword operation.
Reset the password of an user. This route allows an unauthenticated session to update the password of a user. To prevent security issues, this route requires a short code that was sent to the email of the user that requested the password reset.
PATCH /credentials/password/reset
func (UnimplementedHandler) UpdateEmail ¶
func (UnimplementedHandler) UpdateEmail(ctx context.Context, req *UpdateEmailForm) (r UpdateEmailRes, _ error)
UpdateEmail implements updateEmail operation.
Update the email of an user. This route requires a valid short code, that was sent to the new email. If the short code is valid, the email of the user is updated with the email address the short code was sent to.
PATCH /credentials/email
func (UnimplementedHandler) UpdatePassword ¶
func (UnimplementedHandler) UpdatePassword(ctx context.Context, req *UpdatePasswordForm) (r UpdatePasswordRes, _ error)
UpdatePassword implements updatePassword operation.
Update the password of an user. This route requires the original password of the user, to double check the identity of the caller.
PATCH /credentials/password
func (UnimplementedHandler) UpdateRole ¶
func (UnimplementedHandler) UpdateRole(ctx context.Context, req *UpdateRoleForm) (r UpdateRoleRes, _ error)
UpdateRole implements updateRole operation.
Update the role of an user. This route requires the original password of the user, to double check the identity of the caller.
PATCH /credentials/role
type UnprocessableEntityError ¶
type UnprocessableEntityError struct {
// The error message.
Error string `json:"error"`
}
Ref: #/components/schemas/UnprocessableEntityError
func (*UnprocessableEntityError) Decode ¶
func (s *UnprocessableEntityError) Decode(d *jx.Decoder) error
Decode decodes UnprocessableEntityError from json.
func (*UnprocessableEntityError) Encode ¶
func (s *UnprocessableEntityError) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UnprocessableEntityError) GetError ¶
func (s *UnprocessableEntityError) GetError() string
GetError returns the value of Error.
func (*UnprocessableEntityError) MarshalJSON ¶
func (s *UnprocessableEntityError) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UnprocessableEntityError) SetError ¶
func (s *UnprocessableEntityError) SetError(val string)
SetError sets the value of Error.
func (*UnprocessableEntityError) UnmarshalJSON ¶
func (s *UnprocessableEntityError) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
type UpdateEmailForm ¶
type UpdateEmailForm struct {
// The id of the user that requested the email update. This ID is usually sent along the short code
// in the email update link.
UserID UserID `json:"userID"`
ShortCode ShortCode `json:"shortCode"`
}
Data used to update the email of a user. Ref: #/components/schemas/UpdateEmailForm
func (*UpdateEmailForm) Decode ¶
func (s *UpdateEmailForm) Decode(d *jx.Decoder) error
Decode decodes UpdateEmailForm from json.
func (*UpdateEmailForm) Encode ¶
func (s *UpdateEmailForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UpdateEmailForm) GetShortCode ¶
func (s *UpdateEmailForm) GetShortCode() ShortCode
GetShortCode returns the value of ShortCode.
func (*UpdateEmailForm) GetUserID ¶
func (s *UpdateEmailForm) GetUserID() UserID
GetUserID returns the value of UserID.
func (*UpdateEmailForm) MarshalJSON ¶
func (s *UpdateEmailForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UpdateEmailForm) SetShortCode ¶
func (s *UpdateEmailForm) SetShortCode(val ShortCode)
SetShortCode sets the value of ShortCode.
func (*UpdateEmailForm) SetUserID ¶
func (s *UpdateEmailForm) SetUserID(val UserID)
SetUserID sets the value of UserID.
func (*UpdateEmailForm) UnmarshalJSON ¶
func (s *UpdateEmailForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*UpdateEmailForm) Validate ¶
func (s *UpdateEmailForm) Validate() error
type UpdateEmailRes ¶
type UpdateEmailRes interface {
// contains filtered or unexported methods
}
type UpdatePasswordForm ¶
type UpdatePasswordForm struct {
// The new password of the user.
Password Password `json:"password"`
// The current password of the user, used for further verification of the caller identity.
CurrentPassword Password `json:"currentPassword"`
}
Data used to update the password of a user. Ref: #/components/schemas/UpdatePasswordForm
func (*UpdatePasswordForm) Decode ¶
func (s *UpdatePasswordForm) Decode(d *jx.Decoder) error
Decode decodes UpdatePasswordForm from json.
func (*UpdatePasswordForm) Encode ¶
func (s *UpdatePasswordForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UpdatePasswordForm) GetCurrentPassword ¶
func (s *UpdatePasswordForm) GetCurrentPassword() Password
GetCurrentPassword returns the value of CurrentPassword.
func (*UpdatePasswordForm) GetPassword ¶
func (s *UpdatePasswordForm) GetPassword() Password
GetPassword returns the value of Password.
func (*UpdatePasswordForm) MarshalJSON ¶
func (s *UpdatePasswordForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UpdatePasswordForm) SetCurrentPassword ¶
func (s *UpdatePasswordForm) SetCurrentPassword(val Password)
SetCurrentPassword sets the value of CurrentPassword.
func (*UpdatePasswordForm) SetPassword ¶
func (s *UpdatePasswordForm) SetPassword(val Password)
SetPassword sets the value of Password.
func (*UpdatePasswordForm) UnmarshalJSON ¶
func (s *UpdatePasswordForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*UpdatePasswordForm) Validate ¶
func (s *UpdatePasswordForm) Validate() error
type UpdatePasswordNoContent ¶
type UpdatePasswordNoContent struct{}
UpdatePasswordNoContent is response for UpdatePassword operation.
type UpdatePasswordRes ¶
type UpdatePasswordRes interface {
// contains filtered or unexported methods
}
type UpdateRoleForm ¶
type UpdateRoleForm struct {
// The id of the user who's role is to be updated.
UserID UserID `json:"userID"`
// The new role of the user.
Role CredentialsRole `json:"role"`
}
Data used to update the role of a user. The user requesting the update must follow some specific rules. - A user cannot upgrade other users to a role higher than its own. - A user can only downgrade other users to a role lower than its own. For example, the following operations are permitted: - ✅ A (super_admin) upgrades B (admin) to super_admin. - ✅ A (admin) upgrades B (user) to admin. - ✅ A (super_admin) downgrades B (admin) to user. But the following operations are not: - ❌ A (admin) upgrades B (user) to super_admin. - ❌ A (admin) downgrades B (admin) to user. Ref: #/components/schemas/UpdateRoleForm
func (*UpdateRoleForm) Decode ¶
func (s *UpdateRoleForm) Decode(d *jx.Decoder) error
Decode decodes UpdateRoleForm from json.
func (*UpdateRoleForm) Encode ¶
func (s *UpdateRoleForm) Encode(e *jx.Encoder)
Encode implements json.Marshaler.
func (*UpdateRoleForm) GetRole ¶
func (s *UpdateRoleForm) GetRole() CredentialsRole
GetRole returns the value of Role.
func (*UpdateRoleForm) GetUserID ¶
func (s *UpdateRoleForm) GetUserID() UserID
GetUserID returns the value of UserID.
func (*UpdateRoleForm) MarshalJSON ¶
func (s *UpdateRoleForm) MarshalJSON() ([]byte, error)
MarshalJSON implements stdjson.Marshaler.
func (*UpdateRoleForm) SetRole ¶
func (s *UpdateRoleForm) SetRole(val CredentialsRole)
SetRole sets the value of Role.
func (*UpdateRoleForm) SetUserID ¶
func (s *UpdateRoleForm) SetUserID(val UserID)
SetUserID sets the value of UserID.
func (*UpdateRoleForm) UnmarshalJSON ¶
func (s *UpdateRoleForm) UnmarshalJSON(data []byte) error
UnmarshalJSON implements stdjson.Unmarshaler.
func (*UpdateRoleForm) Validate ¶
func (s *UpdateRoleForm) Validate() error
type UpdateRoleRes ¶
type UpdateRoleRes interface {
// contains filtered or unexported methods
}
type User ¶
type User struct {
// The unique identifier of the user.
ID UserID `json:"id"`
// The email of the user.
Email Email `json:"email"`
// The role of the user.
Role CredentialsRole `json:"role"`
// The date and time the user was created.
CreatedAt time.Time `json:"createdAt"`
// The date and time the user was last updated.
UpdatedAt time.Time `json:"updatedAt"`
}
Ref: #/components/schemas/User
func (*User) GetCreatedAt ¶
GetCreatedAt returns the value of CreatedAt.
func (*User) GetUpdatedAt ¶
GetUpdatedAt returns the value of UpdatedAt.
func (*User) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*User) SetCreatedAt ¶
SetCreatedAt sets the value of CreatedAt.
func (*User) SetUpdatedAt ¶
SetUpdatedAt sets the value of UpdatedAt.
func (*User) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
type UserID ¶
func (UserID) MarshalJSON ¶
MarshalJSON implements stdjson.Marshaler.
func (*UserID) UnmarshalJSON ¶
UnmarshalJSON implements stdjson.Unmarshaler.
Source Files
¶
- oas_cfg_gen.go
- oas_client_gen.go
- oas_handlers_gen.go
- oas_interfaces_gen.go
- oas_json_gen.go
- oas_labeler_gen.go
- oas_middleware_gen.go
- oas_operations_gen.go
- oas_parameters_gen.go
- oas_request_decoders_gen.go
- oas_request_encoders_gen.go
- oas_response_decoders_gen.go
- oas_response_encoders_gen.go
- oas_router_gen.go
- oas_schemas_gen.go
- oas_security_gen.go
- oas_server_gen.go
- oas_unimplemented_gen.go
- oas_validators_gen.go