apiErrors

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Dec 6, 2025 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// Generic client errors
	ErrUnauthorized            apiErrorFunc = DefineError(10401, "Authorization Required", fasthttp.StatusUnauthorized)
	ErrTokenExpired            apiErrorFunc = DefineError(10402, "Token Expired", fasthttp.StatusUnauthorized)
	ErrInvalidToken            apiErrorFunc = DefineError(10403, "Invalid Token", fasthttp.StatusUnauthorized)
	ErrInsufficientPermissions apiErrorFunc = DefineError(10404, "Insufficient Permissions", fasthttp.StatusForbidden)
	ErrBadRequest              apiErrorFunc = DefineError(10405, "Bad Request", fasthttp.StatusBadRequest)
	ErrForbidden               apiErrorFunc = DefineError(10406, "Forbidden", fasthttp.StatusForbidden)
	ErrConflict                apiErrorFunc = DefineError(10407, "Conflict", fasthttp.StatusConflict)      // Used for conflicts like duplicate entries.
	ErrBadGateway              apiErrorFunc = DefineError(10408, "Bad Gateway", fasthttp.StatusBadGateway) // Used for upstream service errors.
	ErrTooManyRequests         apiErrorFunc = DefineError(10409, "Too Many Requests", fasthttp.StatusTooManyRequests)

	// Client type errors
	ErrValidationRejected         apiErrorFunc = DefineError(10410, "Validation Rejected", fasthttp.StatusBadRequest)
	ErrMissingEnvironmentVariable apiErrorFunc = DefineError(10411, "Missing Required Environment Variable", fasthttp.StatusBadRequest)

	// Server errors
	ErrInternalServerError apiErrorFunc = DefineError(10500, "Internal Server Error", fasthttp.StatusInternalServerError)
	ErrNotFound            apiErrorFunc = DefineError(10501, "Not Found", fasthttp.StatusNotFound)
	ErrInvalidSignature    apiErrorFunc = DefineError(10502, "Invalid Signature", fasthttp.StatusForbidden)
)

Functions

func DefineError

func DefineError(code int, message string, httpStatus int) func() APIError

Types

type APIError

type APIError interface {
	Error() string
	Message() string
	Code() int
	SetDetail(str string, a ...any) APIError
	SetFields(d Fields) APIError
	GetFields() Fields
	ExpectedHTTPStatus() int
	WithHTTPStatus(s int) APIError
}

type Fields

type Fields map[string]interface{}

Jump to

Keyboard shortcuts

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