api

package
v0.1.23 Latest Latest
Warning

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

Go to latest
Published: May 26, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var APIRouteSpecs = []RouteContractSpec{
	{
		Method: http.MethodGet,
		Path:   "/auth/api/v1/user",
		Errors: UserGetErrors,
	},
	{
		Method: http.MethodPost,
		Path:   "/auth/api/v1/sessions/refresh",
		Errors: RefreshPostErrors,
	},
	{
		Method: http.MethodPost,
		Path:   "/auth/api/v1/sessions/logout",
		Errors: LogoutPostErrors,
	},
}
View Source
var LogoutPostErrors = map[response.ErrorCode]response.ErrorSpec{}

Functions

This section is empty.

Types

type APIHandler

type APIHandler struct {
	Auth    *auth.Service
	Session *session.Service
	Limiter ratelimiter.AuthLimiter
	Logger  *slog.Logger
	Google  *google.Client

	AccessTTL  time.Duration
	RefreshTTL time.Duration
}

func NewAPIHandler

func NewAPIHandler(d authhandler.Deps) *APIHandler

func (*APIHandler) CSRFGet

func (h *APIHandler) CSRFGet(w http.ResponseWriter, r *http.Request)

func (*APIHandler) ChangeUsername

func (h *APIHandler) ChangeUsername(w http.ResponseWriter, r *http.Request)

func (*APIHandler) DeleteUser

func (h *APIHandler) DeleteUser(w http.ResponseWriter, r *http.Request)

func (*APIHandler) LoginPost

func (h *APIHandler) LoginPost(w http.ResponseWriter, r *http.Request)

func (*APIHandler) LogoutPost

func (h *APIHandler) LogoutPost(w http.ResponseWriter, r *http.Request)

func (*APIHandler) RefreshPost

func (h *APIHandler) RefreshPost(w http.ResponseWriter, r *http.Request)

func (*APIHandler) SignupPost

func (h *APIHandler) SignupPost(w http.ResponseWriter, r *http.Request)

func (*APIHandler) UserGet

func (h *APIHandler) UserGet(w http.ResponseWriter, r *http.Request)

type RouteContractSpec

type RouteContractSpec struct {
	Method string
	Path   string
	Errors map[response.ErrorCode]response.ErrorSpec
}

Jump to

Keyboard shortcuts

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