api

package
v0.0.0-...-2b68f72 Latest Latest
Warning

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

Go to latest
Published: May 25, 2026 License: MIT Imports: 16 Imported by: 0

Documentation

Overview

Package api provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.7.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetSpec

func GetSpec() (swagger *openapi3.T, err error)

GetSpec returns the OpenAPI specification corresponding to the generated code in this file. External references in the spec are resolved through PathToRawSpec; externally-referenced files must be embedded in their corresponding Go packages (via the import-mapping feature). URL-based external refs are not supported.

func GetSpecJSON

func GetSpecJSON() ([]byte, error)

GetSpecJSON returns the raw JSON bytes of the embedded OpenAPI specification: decompressed but not unmarshaled. External references are not resolved here; the bytes are the spec exactly as embedded by codegen. The result is cached at package init time, so repeated calls are cheap.

func GetSwagger deprecated

func GetSwagger() (*openapi3.T, error)

GetSwagger returns the OpenAPI specification corresponding to the generated code in this file.

Deprecated: GetSwagger predates kin-openapi renaming openapi3.Swagger to openapi3.T. Use GetSpec instead. This wrapper is retained for backwards compatibility.

func Handler

func Handler(si ServerInterface) http.Handler

Handler creates http.Handler with routing matching OpenAPI spec.

func HandlerFromMux

func HandlerFromMux(si ServerInterface, r chi.Router) http.Handler

HandlerFromMux creates http.Handler with routing matching OpenAPI spec based on the provided mux.

func HandlerFromMuxWithBaseURL

func HandlerFromMuxWithBaseURL(si ServerInterface, r chi.Router, baseURL string) http.Handler

func HandlerWithOptions

func HandlerWithOptions(si ServerInterface, options ChiServerOptions) http.Handler

HandlerWithOptions creates http.Handler with additional options

func PathToRawSpec

func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)

Constructs a synthetic filesystem for resolving external references when loading openapi specifications.

Types

type BadRequest

type BadRequest = Problem

BadRequest RFC 7807 Problem Details (CLAUDE.md §3.5).

type BadRequestApplicationProblemPlusJSONResponse

type BadRequestApplicationProblemPlusJSONResponse Problem

type Batch

type Batch struct {
	CorrelationId *string                 `json:"correlation_id,omitempty"`
	CreatedAt     time.Time               `json:"created_at"`
	Id            openapi_types.UUID      `json:"id"`
	Metadata      *map[string]interface{} `json:"metadata,omitempty"`

	// Notifications Member notifications. Present in GET responses; omitted in POST 202 to keep the payload small.
	Notifications *[]Notification `json:"notifications,omitempty"`
	Size          int             `json:"size"`
}

Batch defines model for Batch.

type BatchID

type BatchID = openapi_types.UUID

BatchID defines model for BatchID.

type CancelNotification200JSONResponse

type CancelNotification200JSONResponse struct {
	Body    Notification
	Headers CancelNotification200ResponseHeaders
}

func (CancelNotification200JSONResponse) VisitCancelNotificationResponse

func (response CancelNotification200JSONResponse) VisitCancelNotificationResponse(w http.ResponseWriter) error

type CancelNotification200ResponseHeaders

type CancelNotification200ResponseHeaders struct {
	XCorrelationID *string
}

type CancelNotification404ApplicationProblemPlusJSONResponse

type CancelNotification404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (CancelNotification404ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse

func (response CancelNotification404ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse(w http.ResponseWriter) error

type CancelNotification409ApplicationProblemPlusJSONResponse

type CancelNotification409ApplicationProblemPlusJSONResponse struct {
	ConflictApplicationProblemPlusJSONResponse
}

func (CancelNotification409ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse

func (response CancelNotification409ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse(w http.ResponseWriter) error

type CancelNotification500ApplicationProblemPlusJSONResponse

type CancelNotification500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (CancelNotification500ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse

func (response CancelNotification500ApplicationProblemPlusJSONResponse) VisitCancelNotificationResponse(w http.ResponseWriter) error

type CancelNotificationParams

type CancelNotificationParams struct {
	// IdempotencyKey Caller-supplied unique key (UUID v4 or ULID). Repeated requests
	// with the same key within 24 hours return the cached response
	// with status 200. Mandatory for production write traffic but
	// accepted as optional by the API for ergonomic test clients.
	IdempotencyKey *IdempotencyKey `json:"Idempotency-Key,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

CancelNotificationParams defines parameters for CancelNotification.

type CancelNotificationRequestObject

type CancelNotificationRequestObject struct {
	Id     NotificationID `json:"id"`
	Params CancelNotificationParams
}

type CancelNotificationResponseObject

type CancelNotificationResponseObject interface {
	VisitCancelNotificationResponse(w http.ResponseWriter) error
}

type Channel

type Channel string

Channel Delivery channel.

const (
	Email Channel = "email"
	Push  Channel = "push"
	Sms   Channel = "sms"
)

Defines values for Channel.

func (Channel) Valid

func (e Channel) Valid() bool

Valid indicates whether the value is a known member of the Channel enum.

type ChiServerOptions

type ChiServerOptions struct {
	BaseURL          string
	BaseRouter       chi.Router
	Middlewares      []MiddlewareFunc
	ErrorHandlerFunc func(w http.ResponseWriter, r *http.Request, err error)
}

type Conflict

type Conflict = Problem

Conflict RFC 7807 Problem Details (CLAUDE.md §3.5).

type ConflictApplicationProblemPlusJSONResponse

type ConflictApplicationProblemPlusJSONResponse Problem

type CorrelationID

type CorrelationID = string

CorrelationID defines model for CorrelationID.

type CreateBatch202JSONResponse

type CreateBatch202JSONResponse struct {
	Body    Batch
	Headers CreateBatch202ResponseHeaders
}

func (CreateBatch202JSONResponse) VisitCreateBatchResponse

func (response CreateBatch202JSONResponse) VisitCreateBatchResponse(w http.ResponseWriter) error

type CreateBatch202ResponseHeaders

type CreateBatch202ResponseHeaders struct {
	Location       *string
	XCorrelationID *string
}

type CreateBatch400ApplicationProblemPlusJSONResponse

type CreateBatch400ApplicationProblemPlusJSONResponse struct {
	BadRequestApplicationProblemPlusJSONResponse
}

func (CreateBatch400ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse

func (response CreateBatch400ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse(w http.ResponseWriter) error

type CreateBatch422ApplicationProblemPlusJSONResponse

type CreateBatch422ApplicationProblemPlusJSONResponse struct {
	UnprocessableEntityApplicationProblemPlusJSONResponse
}

func (CreateBatch422ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse

func (response CreateBatch422ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse(w http.ResponseWriter) error

type CreateBatch429ApplicationProblemPlusJSONResponse

type CreateBatch429ApplicationProblemPlusJSONResponse struct {
	TooManyRequestsApplicationProblemPlusJSONResponse
}

func (CreateBatch429ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse

func (response CreateBatch429ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse(w http.ResponseWriter) error

type CreateBatch500ApplicationProblemPlusJSONResponse

type CreateBatch500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (CreateBatch500ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse

func (response CreateBatch500ApplicationProblemPlusJSONResponse) VisitCreateBatchResponse(w http.ResponseWriter) error

type CreateBatchJSONRequestBody

type CreateBatchJSONRequestBody = CreateBatchRequest

CreateBatchJSONRequestBody defines body for CreateBatch for application/json ContentType.

type CreateBatchParams

type CreateBatchParams struct {
	// IdempotencyKey Caller-supplied unique key (UUID v4 or ULID). Repeated requests
	// with the same key within 24 hours return the cached response
	// with status 200. Mandatory for production write traffic but
	// accepted as optional by the API for ergonomic test clients.
	IdempotencyKey *IdempotencyKey `json:"Idempotency-Key,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

CreateBatchParams defines parameters for CreateBatch.

type CreateBatchRequest

type CreateBatchRequest struct {
	Metadata      *map[string]interface{}     `json:"metadata,omitempty"`
	Notifications []CreateNotificationRequest `json:"notifications"`
}

CreateBatchRequest defines model for CreateBatchRequest.

type CreateBatchRequestObject

type CreateBatchRequestObject struct {
	Params CreateBatchParams
	Body   *CreateBatchJSONRequestBody
}

type CreateBatchResponseObject

type CreateBatchResponseObject interface {
	VisitCreateBatchResponse(w http.ResponseWriter) error
}

type CreateNotification202JSONResponse

type CreateNotification202JSONResponse struct {
	Body    Notification
	Headers CreateNotification202ResponseHeaders
}

func (CreateNotification202JSONResponse) VisitCreateNotificationResponse

func (response CreateNotification202JSONResponse) VisitCreateNotificationResponse(w http.ResponseWriter) error

type CreateNotification202ResponseHeaders

type CreateNotification202ResponseHeaders struct {
	Location       *string
	XCorrelationID *string
}

type CreateNotification400ApplicationProblemPlusJSONResponse

type CreateNotification400ApplicationProblemPlusJSONResponse struct {
	BadRequestApplicationProblemPlusJSONResponse
}

func (CreateNotification400ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse

func (response CreateNotification400ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse(w http.ResponseWriter) error

type CreateNotification422ApplicationProblemPlusJSONResponse

type CreateNotification422ApplicationProblemPlusJSONResponse struct {
	UnprocessableEntityApplicationProblemPlusJSONResponse
}

func (CreateNotification422ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse

func (response CreateNotification422ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse(w http.ResponseWriter) error

type CreateNotification429ApplicationProblemPlusJSONResponse

type CreateNotification429ApplicationProblemPlusJSONResponse struct {
	TooManyRequestsApplicationProblemPlusJSONResponse
}

func (CreateNotification429ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse

func (response CreateNotification429ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse(w http.ResponseWriter) error

type CreateNotification500ApplicationProblemPlusJSONResponse

type CreateNotification500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (CreateNotification500ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse

func (response CreateNotification500ApplicationProblemPlusJSONResponse) VisitCreateNotificationResponse(w http.ResponseWriter) error

type CreateNotificationJSONRequestBody

type CreateNotificationJSONRequestBody = CreateNotificationRequest

CreateNotificationJSONRequestBody defines body for CreateNotification for application/json ContentType.

type CreateNotificationParams

type CreateNotificationParams struct {
	// IdempotencyKey Caller-supplied unique key (UUID v4 or ULID). Repeated requests
	// with the same key within 24 hours return the cached response
	// with status 200. Mandatory for production write traffic but
	// accepted as optional by the API for ergonomic test clients.
	IdempotencyKey *IdempotencyKey `json:"Idempotency-Key,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

CreateNotificationParams defines parameters for CreateNotification.

type CreateNotificationRequest

type CreateNotificationRequest struct {
	// Channel Delivery channel.
	Channel     Channel                 `json:"channel"`
	Content     string                  `json:"content"`
	MaxAttempts *int                    `json:"max_attempts,omitempty"`
	Metadata    *map[string]interface{} `json:"metadata,omitempty"`

	// Priority Processing priority.
	Priority *Priority `json:"priority,omitempty"`

	// Recipient Channel-specific address (E.164 phone, RFC 5322 email, device token).
	Recipient         string                  `json:"recipient"`
	ScheduledAt       *time.Time              `json:"scheduled_at,omitempty"`
	TemplateId        *openapi_types.UUID     `json:"template_id,omitempty"`
	TemplateVariables *map[string]interface{} `json:"template_variables,omitempty"`
}

CreateNotificationRequest defines model for CreateNotificationRequest.

type CreateNotificationRequestObject

type CreateNotificationRequestObject struct {
	Params CreateNotificationParams
	Body   *CreateNotificationJSONRequestBody
}

type CreateNotificationResponseObject

type CreateNotificationResponseObject interface {
	VisitCreateNotificationResponse(w http.ResponseWriter) error
}

type CreateTemplate201JSONResponse

type CreateTemplate201JSONResponse struct {
	Body    Template
	Headers CreateTemplate201ResponseHeaders
}

func (CreateTemplate201JSONResponse) VisitCreateTemplateResponse

func (response CreateTemplate201JSONResponse) VisitCreateTemplateResponse(w http.ResponseWriter) error

type CreateTemplate201ResponseHeaders

type CreateTemplate201ResponseHeaders struct {
	Location       *string
	XCorrelationID *string
}

type CreateTemplate400ApplicationProblemPlusJSONResponse

type CreateTemplate400ApplicationProblemPlusJSONResponse struct {
	BadRequestApplicationProblemPlusJSONResponse
}

func (CreateTemplate400ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse

func (response CreateTemplate400ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse(w http.ResponseWriter) error

type CreateTemplate409ApplicationProblemPlusJSONResponse

type CreateTemplate409ApplicationProblemPlusJSONResponse struct {
	ConflictApplicationProblemPlusJSONResponse
}

func (CreateTemplate409ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse

func (response CreateTemplate409ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse(w http.ResponseWriter) error

type CreateTemplate500ApplicationProblemPlusJSONResponse

type CreateTemplate500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (CreateTemplate500ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse

func (response CreateTemplate500ApplicationProblemPlusJSONResponse) VisitCreateTemplateResponse(w http.ResponseWriter) error

type CreateTemplateJSONRequestBody

type CreateTemplateJSONRequestBody = CreateTemplateRequest

CreateTemplateJSONRequestBody defines body for CreateTemplate for application/json ContentType.

type CreateTemplateParams

type CreateTemplateParams struct {
	// IdempotencyKey Caller-supplied unique key (UUID v4 or ULID). Repeated requests
	// with the same key within 24 hours return the cached response
	// with status 200. Mandatory for production write traffic but
	// accepted as optional by the API for ergonomic test clients.
	IdempotencyKey *IdempotencyKey `json:"Idempotency-Key,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

CreateTemplateParams defines parameters for CreateTemplate.

type CreateTemplateRequest

type CreateTemplateRequest struct {
	// Body Template body. Variables are referenced as `{{.fieldName}}`.
	Body string `json:"body"`

	// Channel Delivery channel.
	Channel Channel `json:"channel"`

	// Name Human-readable identifier; unique across all templates.
	Name string `json:"name"`

	// Variables Declared variable names — informational; rendering tolerates extras.
	Variables *[]string `json:"variables,omitempty"`
}

CreateTemplateRequest defines model for CreateTemplateRequest.

type CreateTemplateRequestObject

type CreateTemplateRequestObject struct {
	Params CreateTemplateParams
	Body   *CreateTemplateJSONRequestBody
}

type CreateTemplateResponseObject

type CreateTemplateResponseObject interface {
	VisitCreateTemplateResponse(w http.ResponseWriter) error
}

type DeleteTemplate204Response

type DeleteTemplate204Response struct {
	Headers DeleteTemplate204ResponseHeaders
}

func (DeleteTemplate204Response) VisitDeleteTemplateResponse

func (response DeleteTemplate204Response) VisitDeleteTemplateResponse(w http.ResponseWriter) error

type DeleteTemplate204ResponseHeaders

type DeleteTemplate204ResponseHeaders struct {
	XCorrelationID *string
}

type DeleteTemplate404ApplicationProblemPlusJSONResponse

type DeleteTemplate404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (DeleteTemplate404ApplicationProblemPlusJSONResponse) VisitDeleteTemplateResponse

func (response DeleteTemplate404ApplicationProblemPlusJSONResponse) VisitDeleteTemplateResponse(w http.ResponseWriter) error

type DeleteTemplate409ApplicationProblemPlusJSONResponse

type DeleteTemplate409ApplicationProblemPlusJSONResponse struct {
	ConflictApplicationProblemPlusJSONResponse
}

func (DeleteTemplate409ApplicationProblemPlusJSONResponse) VisitDeleteTemplateResponse

func (response DeleteTemplate409ApplicationProblemPlusJSONResponse) VisitDeleteTemplateResponse(w http.ResponseWriter) error

type DeleteTemplateParams

type DeleteTemplateParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

DeleteTemplateParams defines parameters for DeleteTemplate.

type DeleteTemplateRequestObject

type DeleteTemplateRequestObject struct {
	Id     TemplateID `json:"id"`
	Params DeleteTemplateParams
}

type DeleteTemplateResponseObject

type DeleteTemplateResponseObject interface {
	VisitDeleteTemplateResponse(w http.ResponseWriter) error
}

type GetBatch200JSONResponse

type GetBatch200JSONResponse struct {
	Body    Batch
	Headers GetBatch200ResponseHeaders
}

func (GetBatch200JSONResponse) VisitGetBatchResponse

func (response GetBatch200JSONResponse) VisitGetBatchResponse(w http.ResponseWriter) error

type GetBatch200ResponseHeaders

type GetBatch200ResponseHeaders struct {
	XCorrelationID *string
}

type GetBatch404ApplicationProblemPlusJSONResponse

type GetBatch404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (GetBatch404ApplicationProblemPlusJSONResponse) VisitGetBatchResponse

func (response GetBatch404ApplicationProblemPlusJSONResponse) VisitGetBatchResponse(w http.ResponseWriter) error

type GetBatch500ApplicationProblemPlusJSONResponse

type GetBatch500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (GetBatch500ApplicationProblemPlusJSONResponse) VisitGetBatchResponse

func (response GetBatch500ApplicationProblemPlusJSONResponse) VisitGetBatchResponse(w http.ResponseWriter) error

type GetBatchParams

type GetBatchParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

GetBatchParams defines parameters for GetBatch.

type GetBatchRequestObject

type GetBatchRequestObject struct {
	Id     BatchID `json:"id"`
	Params GetBatchParams
}

type GetBatchResponseObject

type GetBatchResponseObject interface {
	VisitGetBatchResponse(w http.ResponseWriter) error
}

type GetHealthzLive200JSONResponse

type GetHealthzLive200JSONResponse HealthResponse

func (GetHealthzLive200JSONResponse) VisitGetHealthzLiveResponse

func (response GetHealthzLive200JSONResponse) VisitGetHealthzLiveResponse(w http.ResponseWriter) error

type GetHealthzLiveRequestObject

type GetHealthzLiveRequestObject struct {
}

type GetHealthzLiveResponseObject

type GetHealthzLiveResponseObject interface {
	VisitGetHealthzLiveResponse(w http.ResponseWriter) error
}

type GetHealthzReady200JSONResponse

type GetHealthzReady200JSONResponse HealthResponse

func (GetHealthzReady200JSONResponse) VisitGetHealthzReadyResponse

func (response GetHealthzReady200JSONResponse) VisitGetHealthzReadyResponse(w http.ResponseWriter) error

type GetHealthzReady503ApplicationProblemPlusJSONResponse

type GetHealthzReady503ApplicationProblemPlusJSONResponse Problem

func (GetHealthzReady503ApplicationProblemPlusJSONResponse) VisitGetHealthzReadyResponse

func (response GetHealthzReady503ApplicationProblemPlusJSONResponse) VisitGetHealthzReadyResponse(w http.ResponseWriter) error

type GetHealthzReadyRequestObject

type GetHealthzReadyRequestObject struct {
}

type GetHealthzReadyResponseObject

type GetHealthzReadyResponseObject interface {
	VisitGetHealthzReadyResponse(w http.ResponseWriter) error
}

type GetJSONMetrics200JSONResponse

type GetJSONMetrics200JSONResponse MetricsSummary

func (GetJSONMetrics200JSONResponse) VisitGetJSONMetricsResponse

func (response GetJSONMetrics200JSONResponse) VisitGetJSONMetricsResponse(w http.ResponseWriter) error

type GetJSONMetricsParams

type GetJSONMetricsParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

GetJSONMetricsParams defines parameters for GetJSONMetrics.

type GetJSONMetricsRequestObject

type GetJSONMetricsRequestObject struct {
	Params GetJSONMetricsParams
}

type GetJSONMetricsResponseObject

type GetJSONMetricsResponseObject interface {
	VisitGetJSONMetricsResponse(w http.ResponseWriter) error
}

type GetNotification200JSONResponse

type GetNotification200JSONResponse struct {
	Body    Notification
	Headers GetNotification200ResponseHeaders
}

func (GetNotification200JSONResponse) VisitGetNotificationResponse

func (response GetNotification200JSONResponse) VisitGetNotificationResponse(w http.ResponseWriter) error

type GetNotification200ResponseHeaders

type GetNotification200ResponseHeaders struct {
	XCorrelationID *string
}

type GetNotification404ApplicationProblemPlusJSONResponse

type GetNotification404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (GetNotification404ApplicationProblemPlusJSONResponse) VisitGetNotificationResponse

func (response GetNotification404ApplicationProblemPlusJSONResponse) VisitGetNotificationResponse(w http.ResponseWriter) error

type GetNotification500ApplicationProblemPlusJSONResponse

type GetNotification500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (GetNotification500ApplicationProblemPlusJSONResponse) VisitGetNotificationResponse

func (response GetNotification500ApplicationProblemPlusJSONResponse) VisitGetNotificationResponse(w http.ResponseWriter) error

type GetNotificationParams

type GetNotificationParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

GetNotificationParams defines parameters for GetNotification.

type GetNotificationRequestObject

type GetNotificationRequestObject struct {
	Id     NotificationID `json:"id"`
	Params GetNotificationParams
}

type GetNotificationResponseObject

type GetNotificationResponseObject interface {
	VisitGetNotificationResponse(w http.ResponseWriter) error
}

type GetNotificationTrace200JSONResponse

type GetNotificationTrace200JSONResponse struct {
	Body    NotificationTrace
	Headers GetNotificationTrace200ResponseHeaders
}

func (GetNotificationTrace200JSONResponse) VisitGetNotificationTraceResponse

func (response GetNotificationTrace200JSONResponse) VisitGetNotificationTraceResponse(w http.ResponseWriter) error

type GetNotificationTrace200ResponseHeaders

type GetNotificationTrace200ResponseHeaders struct {
	XCorrelationID *string
}

type GetNotificationTrace404ApplicationProblemPlusJSONResponse

type GetNotificationTrace404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (GetNotificationTrace404ApplicationProblemPlusJSONResponse) VisitGetNotificationTraceResponse

func (response GetNotificationTrace404ApplicationProblemPlusJSONResponse) VisitGetNotificationTraceResponse(w http.ResponseWriter) error

type GetNotificationTrace500ApplicationProblemPlusJSONResponse

type GetNotificationTrace500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (GetNotificationTrace500ApplicationProblemPlusJSONResponse) VisitGetNotificationTraceResponse

func (response GetNotificationTrace500ApplicationProblemPlusJSONResponse) VisitGetNotificationTraceResponse(w http.ResponseWriter) error

type GetNotificationTraceParams

type GetNotificationTraceParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

GetNotificationTraceParams defines parameters for GetNotificationTrace.

type GetNotificationTraceRequestObject

type GetNotificationTraceRequestObject struct {
	Id     NotificationID `json:"id"`
	Params GetNotificationTraceParams
}

type GetNotificationTraceResponseObject

type GetNotificationTraceResponseObject interface {
	VisitGetNotificationTraceResponse(w http.ResponseWriter) error
}

type GetPrometheusMetrics200TextResponse

type GetPrometheusMetrics200TextResponse string

func (GetPrometheusMetrics200TextResponse) VisitGetPrometheusMetricsResponse

func (response GetPrometheusMetrics200TextResponse) VisitGetPrometheusMetricsResponse(w http.ResponseWriter) error

type GetPrometheusMetricsRequestObject

type GetPrometheusMetricsRequestObject struct {
}

type GetPrometheusMetricsResponseObject

type GetPrometheusMetricsResponseObject interface {
	VisitGetPrometheusMetricsResponse(w http.ResponseWriter) error
}

type GetTemplate200JSONResponse

type GetTemplate200JSONResponse struct {
	Body    Template
	Headers GetTemplate200ResponseHeaders
}

func (GetTemplate200JSONResponse) VisitGetTemplateResponse

func (response GetTemplate200JSONResponse) VisitGetTemplateResponse(w http.ResponseWriter) error

type GetTemplate200ResponseHeaders

type GetTemplate200ResponseHeaders struct {
	XCorrelationID *string
}

type GetTemplate404ApplicationProblemPlusJSONResponse

type GetTemplate404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (GetTemplate404ApplicationProblemPlusJSONResponse) VisitGetTemplateResponse

func (response GetTemplate404ApplicationProblemPlusJSONResponse) VisitGetTemplateResponse(w http.ResponseWriter) error

type GetTemplateParams

type GetTemplateParams struct {
	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

GetTemplateParams defines parameters for GetTemplate.

type GetTemplateRequestObject

type GetTemplateRequestObject struct {
	Id     TemplateID `json:"id"`
	Params GetTemplateParams
}

type GetTemplateResponseObject

type GetTemplateResponseObject interface {
	VisitGetTemplateResponse(w http.ResponseWriter) error
}

type HealthResponse

type HealthResponse struct {
	Status  HealthResponseStatus `json:"status"`
	Version *string              `json:"version,omitempty"`
}

HealthResponse defines model for HealthResponse.

type HealthResponseStatus

type HealthResponseStatus string

HealthResponseStatus defines model for HealthResponse.Status.

const (
	Degraded HealthResponseStatus = "degraded"
	Ok       HealthResponseStatus = "ok"
)

Defines values for HealthResponseStatus.

func (HealthResponseStatus) Valid

func (e HealthResponseStatus) Valid() bool

Valid indicates whether the value is a known member of the HealthResponseStatus enum.

type IdempotencyKey

type IdempotencyKey = string

IdempotencyKey defines model for IdempotencyKey.

type InternalError

type InternalError = Problem

InternalError RFC 7807 Problem Details (CLAUDE.md §3.5).

type InternalErrorApplicationProblemPlusJSONResponse

type InternalErrorApplicationProblemPlusJSONResponse Problem

type InvalidParamFormatError

type InvalidParamFormatError struct {
	ParamName string
	Err       error
}

func (*InvalidParamFormatError) Error

func (e *InvalidParamFormatError) Error() string

func (*InvalidParamFormatError) Unwrap

func (e *InvalidParamFormatError) Unwrap() error

type ListNotifications200JSONResponse

type ListNotifications200JSONResponse struct {
	Body    NotificationPage
	Headers ListNotifications200ResponseHeaders
}

func (ListNotifications200JSONResponse) VisitListNotificationsResponse

func (response ListNotifications200JSONResponse) VisitListNotificationsResponse(w http.ResponseWriter) error

type ListNotifications200ResponseHeaders

type ListNotifications200ResponseHeaders struct {
	XCorrelationID *string
}

type ListNotifications400ApplicationProblemPlusJSONResponse

type ListNotifications400ApplicationProblemPlusJSONResponse struct {
	BadRequestApplicationProblemPlusJSONResponse
}

func (ListNotifications400ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse

func (response ListNotifications400ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse(w http.ResponseWriter) error

type ListNotifications429ApplicationProblemPlusJSONResponse

type ListNotifications429ApplicationProblemPlusJSONResponse struct {
	TooManyRequestsApplicationProblemPlusJSONResponse
}

func (ListNotifications429ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse

func (response ListNotifications429ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse(w http.ResponseWriter) error

type ListNotifications500ApplicationProblemPlusJSONResponse

type ListNotifications500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (ListNotifications500ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse

func (response ListNotifications500ApplicationProblemPlusJSONResponse) VisitListNotificationsResponse(w http.ResponseWriter) error

type ListNotificationsParams

type ListNotificationsParams struct {
	Status        *Status             `form:"status,omitempty" json:"status,omitempty"`
	Channel       *Channel            `form:"channel,omitempty" json:"channel,omitempty"`
	BatchId       *openapi_types.UUID `form:"batch_id,omitempty" json:"batch_id,omitempty"`
	CreatedAfter  *time.Time          `form:"created_after,omitempty" json:"created_after,omitempty"`
	CreatedBefore *time.Time          `form:"created_before,omitempty" json:"created_before,omitempty"`

	// Cursor Opaque cursor returned by the previous page.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
	Limit  *int    `form:"limit,omitempty" json:"limit,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

ListNotificationsParams defines parameters for ListNotifications.

type ListNotificationsRequestObject

type ListNotificationsRequestObject struct {
	Params ListNotificationsParams
}

type ListNotificationsResponseObject

type ListNotificationsResponseObject interface {
	VisitListNotificationsResponse(w http.ResponseWriter) error
}

type ListTemplates200JSONResponse

type ListTemplates200JSONResponse struct {
	Body    TemplatePage
	Headers ListTemplates200ResponseHeaders
}

func (ListTemplates200JSONResponse) VisitListTemplatesResponse

func (response ListTemplates200JSONResponse) VisitListTemplatesResponse(w http.ResponseWriter) error

type ListTemplates200ResponseHeaders

type ListTemplates200ResponseHeaders struct {
	XCorrelationID *string
}

type ListTemplates500ApplicationProblemPlusJSONResponse

type ListTemplates500ApplicationProblemPlusJSONResponse struct {
	InternalErrorApplicationProblemPlusJSONResponse
}

func (ListTemplates500ApplicationProblemPlusJSONResponse) VisitListTemplatesResponse

func (response ListTemplates500ApplicationProblemPlusJSONResponse) VisitListTemplatesResponse(w http.ResponseWriter) error

type ListTemplatesParams

type ListTemplatesParams struct {
	Channel *Channel `form:"channel,omitempty" json:"channel,omitempty"`
	Cursor  *string  `form:"cursor,omitempty" json:"cursor,omitempty"`
	Limit   *int     `form:"limit,omitempty" json:"limit,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

ListTemplatesParams defines parameters for ListTemplates.

type ListTemplatesRequestObject

type ListTemplatesRequestObject struct {
	Params ListTemplatesParams
}

type ListTemplatesResponseObject

type ListTemplatesResponseObject interface {
	VisitListTemplatesResponse(w http.ResponseWriter) error
}

type LogEvent

type LogEvent string

LogEvent Trace event type.

const (
	LogEventCancelled  LogEvent = "cancelled"
	LogEventCreated    LogEvent = "created"
	LogEventDelivered  LogEvent = "delivered"
	LogEventFailed     LogEvent = "failed"
	LogEventProcessing LogEvent = "processing"
	LogEventQueued     LogEvent = "queued"
	LogEventRetrying   LogEvent = "retrying"
)

Defines values for LogEvent.

func (LogEvent) Valid

func (e LogEvent) Valid() bool

Valid indicates whether the value is a known member of the LogEvent enum.

type MetricsSummary

type MetricsSummary struct {
	CreatedPerMinute   *int `json:"created_per_minute,omitempty"`
	DeliveredPerMinute *int `json:"delivered_per_minute,omitempty"`
	FailedPerMinute    *int `json:"failed_per_minute,omitempty"`
	QueueDepth         *int `json:"queue_depth,omitempty"`

	// SuccessRate Delivered / (delivered + failed) over the same minute. 0 when both are zero.
	SuccessRate *float64 `json:"success_rate,omitempty"`
}

MetricsSummary Aggregated counts and rates over the last minute. The full data set with per-channel breakdowns lives at `/metrics` in Prometheus format.

type MiddlewareFunc

type MiddlewareFunc func(http.Handler) http.Handler

type NotFound

type NotFound = Problem

NotFound RFC 7807 Problem Details (CLAUDE.md §3.5).

type NotFoundApplicationProblemPlusJSONResponse

type NotFoundApplicationProblemPlusJSONResponse Problem

type Notification

type Notification struct {
	Attempts    int                 `json:"attempts"`
	BatchId     *openapi_types.UUID `json:"batch_id,omitempty"`
	CancelledAt *time.Time          `json:"cancelled_at,omitempty"`

	// Channel Delivery channel.
	Channel         Channel                 `json:"channel"`
	Content         string                  `json:"content"`
	CorrelationId   *string                 `json:"correlation_id,omitempty"`
	CreatedAt       time.Time               `json:"created_at"`
	DeliveredAt     *time.Time              `json:"delivered_at,omitempty"`
	FailedAt        *time.Time              `json:"failed_at,omitempty"`
	FailureReason   *string                 `json:"failure_reason,omitempty"`
	Id              openapi_types.UUID      `json:"id"`
	IdempotencyKey  *string                 `json:"idempotency_key,omitempty"`
	LastAttemptedAt *time.Time              `json:"last_attempted_at,omitempty"`
	MaxAttempts     int                     `json:"max_attempts"`
	Metadata        *map[string]interface{} `json:"metadata,omitempty"`
	NextRetryAt     *time.Time              `json:"next_retry_at,omitempty"`

	// Priority Processing priority.
	Priority    Priority   `json:"priority"`
	Recipient   string     `json:"recipient"`
	ScheduledAt *time.Time `json:"scheduled_at,omitempty"`

	// Status Notification lifecycle status.
	Status     Status              `json:"status"`
	TemplateId *openapi_types.UUID `json:"template_id,omitempty"`
	UpdatedAt  time.Time           `json:"updated_at"`
}

Notification defines model for Notification.

type NotificationID

type NotificationID = openapi_types.UUID

NotificationID defines model for NotificationID.

type NotificationPage

type NotificationPage struct {
	Items      []Notification `json:"items"`
	NextCursor *string        `json:"next_cursor,omitempty"`
	PrevCursor *string        `json:"prev_cursor,omitempty"`
}

NotificationPage defines model for NotificationPage.

type NotificationTrace

type NotificationTrace struct {
	Entries        []NotificationTraceEntry `json:"entries"`
	NotificationId openapi_types.UUID       `json:"notification_id"`
}

NotificationTrace defines model for NotificationTrace.

type NotificationTraceEntry

type NotificationTraceEntry struct {
	CorrelationId *string                 `json:"correlation_id,omitempty"`
	CreatedAt     time.Time               `json:"created_at"`
	Details       *map[string]interface{} `json:"details,omitempty"`

	// Event Trace event type.
	Event LogEvent           `json:"event"`
	Id    openapi_types.UUID `json:"id"`
}

NotificationTraceEntry defines model for NotificationTraceEntry.

type Priority

type Priority string

Priority Processing priority.

const (
	High   Priority = "high"
	Low    Priority = "low"
	Normal Priority = "normal"
)

Defines values for Priority.

func (Priority) Valid

func (e Priority) Valid() bool

Valid indicates whether the value is a known member of the Priority enum.

type Problem

type Problem struct {
	CorrelationId *string `json:"correlation_id,omitempty"`
	Detail        *string `json:"detail,omitempty"`
	Instance      *string `json:"instance,omitempty"`
	Status        int     `json:"status"`
	Title         string  `json:"title"`

	// Type URI reference identifying the problem category.
	Type *string `json:"type,omitempty"`
}

Problem RFC 7807 Problem Details (CLAUDE.md §3.5).

type ReplaceTemplate200JSONResponse

type ReplaceTemplate200JSONResponse struct {
	Body    Template
	Headers ReplaceTemplate200ResponseHeaders
}

func (ReplaceTemplate200JSONResponse) VisitReplaceTemplateResponse

func (response ReplaceTemplate200JSONResponse) VisitReplaceTemplateResponse(w http.ResponseWriter) error

type ReplaceTemplate200ResponseHeaders

type ReplaceTemplate200ResponseHeaders struct {
	XCorrelationID *string
}

type ReplaceTemplate400ApplicationProblemPlusJSONResponse

type ReplaceTemplate400ApplicationProblemPlusJSONResponse struct {
	BadRequestApplicationProblemPlusJSONResponse
}

func (ReplaceTemplate400ApplicationProblemPlusJSONResponse) VisitReplaceTemplateResponse

func (response ReplaceTemplate400ApplicationProblemPlusJSONResponse) VisitReplaceTemplateResponse(w http.ResponseWriter) error

type ReplaceTemplate404ApplicationProblemPlusJSONResponse

type ReplaceTemplate404ApplicationProblemPlusJSONResponse struct {
	NotFoundApplicationProblemPlusJSONResponse
}

func (ReplaceTemplate404ApplicationProblemPlusJSONResponse) VisitReplaceTemplateResponse

func (response ReplaceTemplate404ApplicationProblemPlusJSONResponse) VisitReplaceTemplateResponse(w http.ResponseWriter) error

type ReplaceTemplateJSONRequestBody

type ReplaceTemplateJSONRequestBody = CreateTemplateRequest

ReplaceTemplateJSONRequestBody defines body for ReplaceTemplate for application/json ContentType.

type ReplaceTemplateParams

type ReplaceTemplateParams struct {
	// IdempotencyKey Caller-supplied unique key (UUID v4 or ULID). Repeated requests
	// with the same key within 24 hours return the cached response
	// with status 200. Mandatory for production write traffic but
	// accepted as optional by the API for ergonomic test clients.
	IdempotencyKey *IdempotencyKey `json:"Idempotency-Key,omitempty"`

	// XCorrelationID End-to-end request correlation id. Read from the header if
	// present; otherwise the server generates one and echoes it in
	// the response.
	XCorrelationID *CorrelationID `json:"X-Correlation-ID,omitempty"`
}

ReplaceTemplateParams defines parameters for ReplaceTemplate.

type ReplaceTemplateRequestObject

type ReplaceTemplateRequestObject struct {
	Id     TemplateID `json:"id"`
	Params ReplaceTemplateParams
	Body   *ReplaceTemplateJSONRequestBody
}

type ReplaceTemplateResponseObject

type ReplaceTemplateResponseObject interface {
	VisitReplaceTemplateResponse(w http.ResponseWriter) error
}

type RequiredHeaderError

type RequiredHeaderError struct {
	ParamName string
	Err       error
}

func (*RequiredHeaderError) Error

func (e *RequiredHeaderError) Error() string

func (*RequiredHeaderError) Unwrap

func (e *RequiredHeaderError) Unwrap() error

type RequiredParamError

type RequiredParamError struct {
	ParamName string
}

func (*RequiredParamError) Error

func (e *RequiredParamError) Error() string

type ServerInterface

type ServerInterface interface {
	// JSON-friendly metric summary.
	// (GET /api/v1/metrics)
	GetJSONMetrics(w http.ResponseWriter, r *http.Request, params GetJSONMetricsParams)
	// List notifications.
	// (GET /api/v1/notifications)
	ListNotifications(w http.ResponseWriter, r *http.Request, params ListNotificationsParams)
	// Create a notification.
	// (POST /api/v1/notifications)
	CreateNotification(w http.ResponseWriter, r *http.Request, params CreateNotificationParams)
	// Create a batch of notifications.
	// (POST /api/v1/notifications/batch)
	CreateBatch(w http.ResponseWriter, r *http.Request, params CreateBatchParams)
	// Get a batch by id with member notifications.
	// (GET /api/v1/notifications/batch/{id})
	GetBatch(w http.ResponseWriter, r *http.Request, id BatchID, params GetBatchParams)
	// Get a notification by id.
	// (GET /api/v1/notifications/{id})
	GetNotification(w http.ResponseWriter, r *http.Request, id NotificationID, params GetNotificationParams)
	// Cancel a notification.
	// (PATCH /api/v1/notifications/{id}/cancel)
	CancelNotification(w http.ResponseWriter, r *http.Request, id NotificationID, params CancelNotificationParams)
	// Get the full event trace for a notification.
	// (GET /api/v1/notifications/{id}/trace)
	GetNotificationTrace(w http.ResponseWriter, r *http.Request, id NotificationID, params GetNotificationTraceParams)
	// List templates.
	// (GET /api/v1/templates)
	ListTemplates(w http.ResponseWriter, r *http.Request, params ListTemplatesParams)
	// Create a template.
	// (POST /api/v1/templates)
	CreateTemplate(w http.ResponseWriter, r *http.Request, params CreateTemplateParams)
	// Delete a template.
	// (DELETE /api/v1/templates/{id})
	DeleteTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params DeleteTemplateParams)
	// Get a template by id.
	// (GET /api/v1/templates/{id})
	GetTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params GetTemplateParams)
	// Replace a template.
	// (PUT /api/v1/templates/{id})
	ReplaceTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params ReplaceTemplateParams)
	// Liveness probe.
	// (GET /healthz/live)
	GetHealthzLive(w http.ResponseWriter, r *http.Request)
	// Readiness probe.
	// (GET /healthz/ready)
	GetHealthzReady(w http.ResponseWriter, r *http.Request)
	// Prometheus scrape endpoint.
	// (GET /metrics)
	GetPrometheusMetrics(w http.ResponseWriter, r *http.Request)
}

ServerInterface represents all server handlers.

func NewStrictHandler

func NewStrictHandler(ssi StrictServerInterface, middlewares []StrictMiddlewareFunc) ServerInterface

func NewStrictHandlerWithOptions

func NewStrictHandlerWithOptions(ssi StrictServerInterface, middlewares []StrictMiddlewareFunc, options StrictHTTPServerOptions) ServerInterface

type ServerInterfaceWrapper

type ServerInterfaceWrapper struct {
	Handler            ServerInterface
	HandlerMiddlewares []MiddlewareFunc
	ErrorHandlerFunc   func(w http.ResponseWriter, r *http.Request, err error)
}

ServerInterfaceWrapper converts contexts to parameters.

func (*ServerInterfaceWrapper) CancelNotification

func (siw *ServerInterfaceWrapper) CancelNotification(w http.ResponseWriter, r *http.Request)

CancelNotification operation middleware

func (*ServerInterfaceWrapper) CreateBatch

func (siw *ServerInterfaceWrapper) CreateBatch(w http.ResponseWriter, r *http.Request)

CreateBatch operation middleware

func (*ServerInterfaceWrapper) CreateNotification

func (siw *ServerInterfaceWrapper) CreateNotification(w http.ResponseWriter, r *http.Request)

CreateNotification operation middleware

func (*ServerInterfaceWrapper) CreateTemplate

func (siw *ServerInterfaceWrapper) CreateTemplate(w http.ResponseWriter, r *http.Request)

CreateTemplate operation middleware

func (*ServerInterfaceWrapper) DeleteTemplate

func (siw *ServerInterfaceWrapper) DeleteTemplate(w http.ResponseWriter, r *http.Request)

DeleteTemplate operation middleware

func (*ServerInterfaceWrapper) GetBatch

func (siw *ServerInterfaceWrapper) GetBatch(w http.ResponseWriter, r *http.Request)

GetBatch operation middleware

func (*ServerInterfaceWrapper) GetHealthzLive

func (siw *ServerInterfaceWrapper) GetHealthzLive(w http.ResponseWriter, r *http.Request)

GetHealthzLive operation middleware

func (*ServerInterfaceWrapper) GetHealthzReady

func (siw *ServerInterfaceWrapper) GetHealthzReady(w http.ResponseWriter, r *http.Request)

GetHealthzReady operation middleware

func (*ServerInterfaceWrapper) GetJSONMetrics

func (siw *ServerInterfaceWrapper) GetJSONMetrics(w http.ResponseWriter, r *http.Request)

GetJSONMetrics operation middleware

func (*ServerInterfaceWrapper) GetNotification

func (siw *ServerInterfaceWrapper) GetNotification(w http.ResponseWriter, r *http.Request)

GetNotification operation middleware

func (*ServerInterfaceWrapper) GetNotificationTrace

func (siw *ServerInterfaceWrapper) GetNotificationTrace(w http.ResponseWriter, r *http.Request)

GetNotificationTrace operation middleware

func (*ServerInterfaceWrapper) GetPrometheusMetrics

func (siw *ServerInterfaceWrapper) GetPrometheusMetrics(w http.ResponseWriter, r *http.Request)

GetPrometheusMetrics operation middleware

func (*ServerInterfaceWrapper) GetTemplate

func (siw *ServerInterfaceWrapper) GetTemplate(w http.ResponseWriter, r *http.Request)

GetTemplate operation middleware

func (*ServerInterfaceWrapper) ListNotifications

func (siw *ServerInterfaceWrapper) ListNotifications(w http.ResponseWriter, r *http.Request)

ListNotifications operation middleware

func (*ServerInterfaceWrapper) ListTemplates

func (siw *ServerInterfaceWrapper) ListTemplates(w http.ResponseWriter, r *http.Request)

ListTemplates operation middleware

func (*ServerInterfaceWrapper) ReplaceTemplate

func (siw *ServerInterfaceWrapper) ReplaceTemplate(w http.ResponseWriter, r *http.Request)

ReplaceTemplate operation middleware

type Status

type Status string

Status Notification lifecycle status.

const (
	StatusCancelled  Status = "cancelled"
	StatusDelivered  Status = "delivered"
	StatusFailed     Status = "failed"
	StatusPending    Status = "pending"
	StatusProcessing Status = "processing"
	StatusQueued     Status = "queued"
	StatusRetrying   Status = "retrying"
)

Defines values for Status.

func (Status) Valid

func (e Status) Valid() bool

Valid indicates whether the value is a known member of the Status enum.

type StrictHTTPServerOptions

type StrictHTTPServerOptions struct {
	RequestErrorHandlerFunc  func(w http.ResponseWriter, r *http.Request, err error)
	ResponseErrorHandlerFunc func(w http.ResponseWriter, r *http.Request, err error)
}

type StrictHandlerFunc

type StrictHandlerFunc func(ctx context.Context, w http.ResponseWriter, r *http.Request, request any) (any, error)

type StrictMiddlewareFunc

type StrictMiddlewareFunc func(f StrictHandlerFunc, operationID string) StrictHandlerFunc

type StrictServerInterface

type StrictServerInterface interface {
	// JSON-friendly metric summary.
	// (GET /api/v1/metrics)
	GetJSONMetrics(ctx context.Context, request GetJSONMetricsRequestObject) (GetJSONMetricsResponseObject, error)
	// List notifications.
	// (GET /api/v1/notifications)
	ListNotifications(ctx context.Context, request ListNotificationsRequestObject) (ListNotificationsResponseObject, error)
	// Create a notification.
	// (POST /api/v1/notifications)
	CreateNotification(ctx context.Context, request CreateNotificationRequestObject) (CreateNotificationResponseObject, error)
	// Create a batch of notifications.
	// (POST /api/v1/notifications/batch)
	CreateBatch(ctx context.Context, request CreateBatchRequestObject) (CreateBatchResponseObject, error)
	// Get a batch by id with member notifications.
	// (GET /api/v1/notifications/batch/{id})
	GetBatch(ctx context.Context, request GetBatchRequestObject) (GetBatchResponseObject, error)
	// Get a notification by id.
	// (GET /api/v1/notifications/{id})
	GetNotification(ctx context.Context, request GetNotificationRequestObject) (GetNotificationResponseObject, error)
	// Cancel a notification.
	// (PATCH /api/v1/notifications/{id}/cancel)
	CancelNotification(ctx context.Context, request CancelNotificationRequestObject) (CancelNotificationResponseObject, error)
	// Get the full event trace for a notification.
	// (GET /api/v1/notifications/{id}/trace)
	GetNotificationTrace(ctx context.Context, request GetNotificationTraceRequestObject) (GetNotificationTraceResponseObject, error)
	// List templates.
	// (GET /api/v1/templates)
	ListTemplates(ctx context.Context, request ListTemplatesRequestObject) (ListTemplatesResponseObject, error)
	// Create a template.
	// (POST /api/v1/templates)
	CreateTemplate(ctx context.Context, request CreateTemplateRequestObject) (CreateTemplateResponseObject, error)
	// Delete a template.
	// (DELETE /api/v1/templates/{id})
	DeleteTemplate(ctx context.Context, request DeleteTemplateRequestObject) (DeleteTemplateResponseObject, error)
	// Get a template by id.
	// (GET /api/v1/templates/{id})
	GetTemplate(ctx context.Context, request GetTemplateRequestObject) (GetTemplateResponseObject, error)
	// Replace a template.
	// (PUT /api/v1/templates/{id})
	ReplaceTemplate(ctx context.Context, request ReplaceTemplateRequestObject) (ReplaceTemplateResponseObject, error)
	// Liveness probe.
	// (GET /healthz/live)
	GetHealthzLive(ctx context.Context, request GetHealthzLiveRequestObject) (GetHealthzLiveResponseObject, error)
	// Readiness probe.
	// (GET /healthz/ready)
	GetHealthzReady(ctx context.Context, request GetHealthzReadyRequestObject) (GetHealthzReadyResponseObject, error)
	// Prometheus scrape endpoint.
	// (GET /metrics)
	GetPrometheusMetrics(ctx context.Context, request GetPrometheusMetricsRequestObject) (GetPrometheusMetricsResponseObject, error)
}

StrictServerInterface represents all server handlers.

type Template

type Template struct {
	Body string `json:"body"`

	// Channel Delivery channel.
	Channel   Channel            `json:"channel"`
	CreatedAt time.Time          `json:"created_at"`
	Id        openapi_types.UUID `json:"id"`
	Name      string             `json:"name"`
	UpdatedAt time.Time          `json:"updated_at"`
	Variables *[]string          `json:"variables,omitempty"`
}

Template defines model for Template.

type TemplateID

type TemplateID = openapi_types.UUID

TemplateID defines model for TemplateID.

type TemplatePage

type TemplatePage struct {
	Items      []Template `json:"items"`
	NextCursor *string    `json:"next_cursor,omitempty"`
	PrevCursor *string    `json:"prev_cursor,omitempty"`
}

TemplatePage defines model for TemplatePage.

type TooManyRequests

type TooManyRequests = Problem

TooManyRequests RFC 7807 Problem Details (CLAUDE.md §3.5).

type TooManyRequestsApplicationProblemPlusJSONResponse

type TooManyRequestsApplicationProblemPlusJSONResponse struct {
	Body Problem

	Headers TooManyRequestsResponseHeaders
}

type TooManyRequestsResponseHeaders

type TooManyRequestsResponseHeaders struct {
	RetryAfter *int
}

type TooManyValuesForParamError

type TooManyValuesForParamError struct {
	ParamName string
	Count     int
}

func (*TooManyValuesForParamError) Error

type UnescapedCookieParamError

type UnescapedCookieParamError struct {
	ParamName string
	Err       error
}

func (*UnescapedCookieParamError) Error

func (e *UnescapedCookieParamError) Error() string

func (*UnescapedCookieParamError) Unwrap

func (e *UnescapedCookieParamError) Unwrap() error

type Unimplemented

type Unimplemented struct{}

func (Unimplemented) CancelNotification

func (_ Unimplemented) CancelNotification(w http.ResponseWriter, r *http.Request, id NotificationID, params CancelNotificationParams)

Cancel a notification. (PATCH /api/v1/notifications/{id}/cancel)

func (Unimplemented) CreateBatch

func (_ Unimplemented) CreateBatch(w http.ResponseWriter, r *http.Request, params CreateBatchParams)

Create a batch of notifications. (POST /api/v1/notifications/batch)

func (Unimplemented) CreateNotification

func (_ Unimplemented) CreateNotification(w http.ResponseWriter, r *http.Request, params CreateNotificationParams)

Create a notification. (POST /api/v1/notifications)

func (Unimplemented) CreateTemplate

func (_ Unimplemented) CreateTemplate(w http.ResponseWriter, r *http.Request, params CreateTemplateParams)

Create a template. (POST /api/v1/templates)

func (Unimplemented) DeleteTemplate

func (_ Unimplemented) DeleteTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params DeleteTemplateParams)

Delete a template. (DELETE /api/v1/templates/{id})

func (Unimplemented) GetBatch

func (_ Unimplemented) GetBatch(w http.ResponseWriter, r *http.Request, id BatchID, params GetBatchParams)

Get a batch by id with member notifications. (GET /api/v1/notifications/batch/{id})

func (Unimplemented) GetHealthzLive

func (_ Unimplemented) GetHealthzLive(w http.ResponseWriter, r *http.Request)

Liveness probe. (GET /healthz/live)

func (Unimplemented) GetHealthzReady

func (_ Unimplemented) GetHealthzReady(w http.ResponseWriter, r *http.Request)

Readiness probe. (GET /healthz/ready)

func (Unimplemented) GetJSONMetrics

func (_ Unimplemented) GetJSONMetrics(w http.ResponseWriter, r *http.Request, params GetJSONMetricsParams)

JSON-friendly metric summary. (GET /api/v1/metrics)

func (Unimplemented) GetNotification

func (_ Unimplemented) GetNotification(w http.ResponseWriter, r *http.Request, id NotificationID, params GetNotificationParams)

Get a notification by id. (GET /api/v1/notifications/{id})

func (Unimplemented) GetNotificationTrace

func (_ Unimplemented) GetNotificationTrace(w http.ResponseWriter, r *http.Request, id NotificationID, params GetNotificationTraceParams)

Get the full event trace for a notification. (GET /api/v1/notifications/{id}/trace)

func (Unimplemented) GetPrometheusMetrics

func (_ Unimplemented) GetPrometheusMetrics(w http.ResponseWriter, r *http.Request)

Prometheus scrape endpoint. (GET /metrics)

func (Unimplemented) GetTemplate

func (_ Unimplemented) GetTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params GetTemplateParams)

Get a template by id. (GET /api/v1/templates/{id})

func (Unimplemented) ListNotifications

func (_ Unimplemented) ListNotifications(w http.ResponseWriter, r *http.Request, params ListNotificationsParams)

List notifications. (GET /api/v1/notifications)

func (Unimplemented) ListTemplates

func (_ Unimplemented) ListTemplates(w http.ResponseWriter, r *http.Request, params ListTemplatesParams)

List templates. (GET /api/v1/templates)

func (Unimplemented) ReplaceTemplate

func (_ Unimplemented) ReplaceTemplate(w http.ResponseWriter, r *http.Request, id TemplateID, params ReplaceTemplateParams)

Replace a template. (PUT /api/v1/templates/{id})

type UnmarshalingParamError

type UnmarshalingParamError struct {
	ParamName string
	Err       error
}

func (*UnmarshalingParamError) Error

func (e *UnmarshalingParamError) Error() string

func (*UnmarshalingParamError) Unwrap

func (e *UnmarshalingParamError) Unwrap() error

type UnprocessableEntity

type UnprocessableEntity = Problem

UnprocessableEntity RFC 7807 Problem Details (CLAUDE.md §3.5).

type UnprocessableEntityApplicationProblemPlusJSONResponse

type UnprocessableEntityApplicationProblemPlusJSONResponse Problem

Jump to

Keyboard shortcuts

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