Documentation
¶
Overview ¶
Package api provides primitives to interact with the openapi HTTP API.
Code generated by github.com/deepmap/oapi-codegen/v2 version v2.0.0 DO NOT EDIT.
Index ¶
- Constants
- func GetSwagger() (swagger *openapi3.T, err error)
- func Handler(si ServerInterface) http.Handler
- func HandlerFromMux(si ServerInterface, r chi.Router) http.Handler
- func HandlerFromMuxWithBaseURL(si ServerInterface, r chi.Router, baseURL string) http.Handler
- func HandlerWithOptions(si ServerInterface, options ChiServerOptions) http.Handler
- func PathToRawSpec(pathToFile string) map[string]func() ([]byte, error)
- type BadRequestProblemResponse
- type ChiServerOptions
- type CreateMeterJSONRequestBody
- type CreatePortalTokenJSONRequestBody
- type Event
- type IdOrSlug
- type IngestEventsApplicationCloudeventsBatchPlusJSONBody
- type IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody
- type IngestEventsApplicationCloudeventsPlusJSONRequestBody
- type IngestedEvent
- type InvalidParamFormatError
- type InvalidatePortalTokensJSONBody
- type InvalidatePortalTokensJSONRequestBody
- type ListEventsParams
- type Meter
- type MeterAggregation
- type MeterIdOrSlug
- type MeterQueryRow
- type MiddlewareFunc
- type NotFoundProblemResponse
- type NotImplementedProblemResponse
- type PortalToken
- type Problem
- type QueryFrom
- type QueryGroupBy
- type QueryMeterParams
- type QueryPortalMeterParams
- type QuerySubject
- type QueryTo
- type QueryWindowSize
- type QueryWindowTimeZone
- type RequiredHeaderError
- type RequiredParamError
- type ServerInterface
- type ServerInterfaceWrapper
- func (siw *ServerInterfaceWrapper) CreateMeter(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) CreatePortalToken(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) DeleteMeter(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) GetMeter(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) IngestEvents(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) InvalidatePortalTokens(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) ListEvents(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) ListMeterSubjects(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) ListMeters(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) QueryMeter(w http.ResponseWriter, r *http.Request)
- func (siw *ServerInterfaceWrapper) QueryPortalMeter(w http.ResponseWriter, r *http.Request)
- type TooManyValuesForParamError
- type UnauthorizedProblemResponse
- type UnescapedCookieParamError
- type UnexpectedProblemResponse
- type Unimplemented
- func (_ Unimplemented) CreateMeter(w http.ResponseWriter, r *http.Request)
- func (_ Unimplemented) CreatePortalToken(w http.ResponseWriter, r *http.Request)
- func (_ Unimplemented) DeleteMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
- func (_ Unimplemented) GetMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
- func (_ Unimplemented) IngestEvents(w http.ResponseWriter, r *http.Request)
- func (_ Unimplemented) InvalidatePortalTokens(w http.ResponseWriter, r *http.Request)
- func (_ Unimplemented) ListEvents(w http.ResponseWriter, r *http.Request, params ListEventsParams)
- func (_ Unimplemented) ListMeterSubjects(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
- func (_ Unimplemented) ListMeters(w http.ResponseWriter, r *http.Request)
- func (_ Unimplemented) QueryMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug, ...)
- func (_ Unimplemented) QueryPortalMeter(w http.ResponseWriter, r *http.Request, meterSlug string, ...)
- type UnmarshalingParamError
- type WindowSize
Constants ¶
const (
PortalTokenScopes = "portalToken.Scopes"
)
Variables ¶
This section is empty.
Functions ¶
func GetSwagger ¶
GetSwagger returns the Swagger specification corresponding to the generated code in this file. The external references of Swagger specification are resolved. The logic of resolving external references is tightly connected to "import-mapping" feature. Externally referenced files must be embedded in the corresponding golang packages. Urls can be supported but this task was out of the scope.
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
Types ¶
type BadRequestProblemResponse ¶
type BadRequestProblemResponse = Problem
BadRequestProblemResponse A Problem Details object (RFC 7807)
type ChiServerOptions ¶
type ChiServerOptions struct { BaseURL string BaseRouter chi.Router Middlewares []MiddlewareFunc ErrorHandlerFunc func(w http.ResponseWriter, r *http.Request, err error) }
type CreateMeterJSONRequestBody ¶
type CreateMeterJSONRequestBody = Meter
CreateMeterJSONRequestBody defines body for CreateMeter for application/json ContentType.
type CreatePortalTokenJSONRequestBody ¶
type CreatePortalTokenJSONRequestBody = PortalToken
CreatePortalTokenJSONRequestBody defines body for CreatePortalToken for application/json ContentType.
type IngestEventsApplicationCloudeventsBatchPlusJSONBody ¶
type IngestEventsApplicationCloudeventsBatchPlusJSONBody = []Event
IngestEventsApplicationCloudeventsBatchPlusJSONBody defines parameters for IngestEvents.
type IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody ¶
type IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody = IngestEventsApplicationCloudeventsBatchPlusJSONBody
IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody defines body for IngestEvents for application/cloudevents-batch+json ContentType.
type IngestEventsApplicationCloudeventsPlusJSONRequestBody ¶
type IngestEventsApplicationCloudeventsPlusJSONRequestBody = Event
IngestEventsApplicationCloudeventsPlusJSONRequestBody defines body for IngestEvents for application/cloudevents+json ContentType.
type IngestedEvent ¶
type IngestedEvent struct { // Event CloudEvents Specification JSON Schema Event Event `json:"event"` ValidationError *string `json:"validationError,omitempty"` }
IngestedEvent defines model for IngestedEvent.
type InvalidParamFormatError ¶
func (*InvalidParamFormatError) Error ¶
func (e *InvalidParamFormatError) Error() string
func (*InvalidParamFormatError) Unwrap ¶
func (e *InvalidParamFormatError) Unwrap() error
type InvalidatePortalTokensJSONBody ¶
type InvalidatePortalTokensJSONBody struct {
Subject *string `json:"subject,omitempty"`
}
InvalidatePortalTokensJSONBody defines parameters for InvalidatePortalTokens.
type InvalidatePortalTokensJSONRequestBody ¶
type InvalidatePortalTokensJSONRequestBody InvalidatePortalTokensJSONBody
InvalidatePortalTokensJSONRequestBody defines body for InvalidatePortalTokens for application/json ContentType.
type ListEventsParams ¶
type ListEventsParams struct { // From Start date-time in RFC 3339 format. // Inclusive. From *QueryFrom `form:"from,omitempty" json:"from,omitempty"` // To End date-time in RFC 3339 format. // Inclusive. To *QueryTo `form:"to,omitempty" json:"to,omitempty"` // Limit Number of events to return. Limit *int `form:"limit,omitempty" json:"limit,omitempty"` }
ListEventsParams defines parameters for ListEvents.
type MeterAggregation ¶
type MeterAggregation = models.MeterAggregation
MeterAggregation The aggregation type to use for the meter.
type MeterQueryRow ¶
type MeterQueryRow = models.MeterQueryRow
MeterQueryRow defines model for MeterQueryRow.
type NotFoundProblemResponse ¶
type NotFoundProblemResponse = Problem
NotFoundProblemResponse A Problem Details object (RFC 7807)
type NotImplementedProblemResponse ¶
type NotImplementedProblemResponse = Problem
NotImplementedProblemResponse A Problem Details object (RFC 7807)
type PortalToken ¶
type PortalToken struct { AllowedMeterSlugs *[]string `json:"allowedMeterSlugs,omitempty"` ExpiresAt *time.Time `json:"expiresAt,omitempty"` Subject string `json:"subject"` Token *string `json:"token,omitempty"` }
PortalToken defines model for PortalToken.
type QueryMeterParams ¶
type QueryMeterParams struct { // From Start date-time in RFC 3339 format. // Inclusive. From *QueryFrom `form:"from,omitempty" json:"from,omitempty"` // To End date-time in RFC 3339 format. // Inclusive. To *QueryTo `form:"to,omitempty" json:"to,omitempty"` // WindowSize If not specified, a single usage aggregate will be returned for the entirety of the specified period for each subject and group. WindowSize *QueryWindowSize `form:"windowSize,omitempty" json:"windowSize,omitempty"` // WindowTimeZone The value is the name of the time zone as defined in the IANA Time Zone Database (http://www.iana.org/time-zones). // If not specified, the UTC timezone will be used. WindowTimeZone *QueryWindowTimeZone `form:"windowTimeZone,omitempty" json:"windowTimeZone,omitempty"` Subject *QuerySubject `form:"subject,omitempty" json:"subject,omitempty"` // GroupBy If not specified a single aggregate will be returned for each subject and time window. // `subject` is a reserved group by value. GroupBy *QueryGroupBy `form:"groupBy,omitempty" json:"groupBy,omitempty"` }
QueryMeterParams defines parameters for QueryMeter.
type QueryPortalMeterParams ¶
type QueryPortalMeterParams struct { // From Start date-time in RFC 3339 format. // Inclusive. From *QueryFrom `form:"from,omitempty" json:"from,omitempty"` // To End date-time in RFC 3339 format. // Inclusive. To *QueryTo `form:"to,omitempty" json:"to,omitempty"` // WindowSize If not specified, a single usage aggregate will be returned for the entirety of the specified period for each subject and group. WindowSize *QueryWindowSize `form:"windowSize,omitempty" json:"windowSize,omitempty"` // WindowTimeZone The value is the name of the time zone as defined in the IANA Time Zone Database (http://www.iana.org/time-zones). // If not specified, the UTC timezone will be used. WindowTimeZone *QueryWindowTimeZone `form:"windowTimeZone,omitempty" json:"windowTimeZone,omitempty"` // GroupBy If not specified a single aggregate will be returned for each subject and time window. // `subject` is a reserved group by value. GroupBy *QueryGroupBy `form:"groupBy,omitempty" json:"groupBy,omitempty"` }
QueryPortalMeterParams defines parameters for QueryPortalMeter.
type QueryWindowTimeZone ¶
type QueryWindowTimeZone = string
QueryWindowTimeZone defines model for queryWindowTimeZone.
type RequiredHeaderError ¶
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 { // (GET /api/v1/events) ListEvents(w http.ResponseWriter, r *http.Request, params ListEventsParams) // (POST /api/v1/events) IngestEvents(w http.ResponseWriter, r *http.Request) // (GET /api/v1/meters) ListMeters(w http.ResponseWriter, r *http.Request) // (POST /api/v1/meters) CreateMeter(w http.ResponseWriter, r *http.Request) // (DELETE /api/v1/meters/{meterIdOrSlug}) DeleteMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug) // (GET /api/v1/meters/{meterIdOrSlug}) GetMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug) // (GET /api/v1/meters/{meterIdOrSlug}/query) QueryMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug, params QueryMeterParams) // (GET /api/v1/meters/{meterIdOrSlug}/subjects) ListMeterSubjects(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug) // (GET /api/v1/portal/meters/{meterSlug}/query) QueryPortalMeter(w http.ResponseWriter, r *http.Request, meterSlug string, params QueryPortalMeterParams) // (POST /api/v1/portal/tokens) CreatePortalToken(w http.ResponseWriter, r *http.Request) // (POST /api/v1/portal/tokens/invalidate) InvalidatePortalTokens(w http.ResponseWriter, r *http.Request) }
ServerInterface represents all server handlers.
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) CreateMeter ¶
func (siw *ServerInterfaceWrapper) CreateMeter(w http.ResponseWriter, r *http.Request)
CreateMeter operation middleware
func (*ServerInterfaceWrapper) CreatePortalToken ¶
func (siw *ServerInterfaceWrapper) CreatePortalToken(w http.ResponseWriter, r *http.Request)
CreatePortalToken operation middleware
func (*ServerInterfaceWrapper) DeleteMeter ¶
func (siw *ServerInterfaceWrapper) DeleteMeter(w http.ResponseWriter, r *http.Request)
DeleteMeter operation middleware
func (*ServerInterfaceWrapper) GetMeter ¶
func (siw *ServerInterfaceWrapper) GetMeter(w http.ResponseWriter, r *http.Request)
GetMeter operation middleware
func (*ServerInterfaceWrapper) IngestEvents ¶
func (siw *ServerInterfaceWrapper) IngestEvents(w http.ResponseWriter, r *http.Request)
IngestEvents operation middleware
func (*ServerInterfaceWrapper) InvalidatePortalTokens ¶
func (siw *ServerInterfaceWrapper) InvalidatePortalTokens(w http.ResponseWriter, r *http.Request)
InvalidatePortalTokens operation middleware
func (*ServerInterfaceWrapper) ListEvents ¶
func (siw *ServerInterfaceWrapper) ListEvents(w http.ResponseWriter, r *http.Request)
ListEvents operation middleware
func (*ServerInterfaceWrapper) ListMeterSubjects ¶
func (siw *ServerInterfaceWrapper) ListMeterSubjects(w http.ResponseWriter, r *http.Request)
ListMeterSubjects operation middleware
func (*ServerInterfaceWrapper) ListMeters ¶
func (siw *ServerInterfaceWrapper) ListMeters(w http.ResponseWriter, r *http.Request)
ListMeters operation middleware
func (*ServerInterfaceWrapper) QueryMeter ¶
func (siw *ServerInterfaceWrapper) QueryMeter(w http.ResponseWriter, r *http.Request)
QueryMeter operation middleware
func (*ServerInterfaceWrapper) QueryPortalMeter ¶
func (siw *ServerInterfaceWrapper) QueryPortalMeter(w http.ResponseWriter, r *http.Request)
QueryPortalMeter operation middleware
type TooManyValuesForParamError ¶
func (*TooManyValuesForParamError) Error ¶
func (e *TooManyValuesForParamError) Error() string
type UnauthorizedProblemResponse ¶
type UnauthorizedProblemResponse = Problem
UnauthorizedProblemResponse A Problem Details object (RFC 7807)
type UnescapedCookieParamError ¶
func (*UnescapedCookieParamError) Error ¶
func (e *UnescapedCookieParamError) Error() string
func (*UnescapedCookieParamError) Unwrap ¶
func (e *UnescapedCookieParamError) Unwrap() error
type UnexpectedProblemResponse ¶
type UnexpectedProblemResponse = Problem
UnexpectedProblemResponse A Problem Details object (RFC 7807)
type Unimplemented ¶
type Unimplemented struct{}
func (Unimplemented) CreateMeter ¶
func (_ Unimplemented) CreateMeter(w http.ResponseWriter, r *http.Request)
(POST /api/v1/meters)
func (Unimplemented) CreatePortalToken ¶
func (_ Unimplemented) CreatePortalToken(w http.ResponseWriter, r *http.Request)
(POST /api/v1/portal/tokens)
func (Unimplemented) DeleteMeter ¶
func (_ Unimplemented) DeleteMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
(DELETE /api/v1/meters/{meterIdOrSlug})
func (Unimplemented) GetMeter ¶
func (_ Unimplemented) GetMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
(GET /api/v1/meters/{meterIdOrSlug})
func (Unimplemented) IngestEvents ¶
func (_ Unimplemented) IngestEvents(w http.ResponseWriter, r *http.Request)
(POST /api/v1/events)
func (Unimplemented) InvalidatePortalTokens ¶
func (_ Unimplemented) InvalidatePortalTokens(w http.ResponseWriter, r *http.Request)
(POST /api/v1/portal/tokens/invalidate)
func (Unimplemented) ListEvents ¶
func (_ Unimplemented) ListEvents(w http.ResponseWriter, r *http.Request, params ListEventsParams)
(GET /api/v1/events)
func (Unimplemented) ListMeterSubjects ¶
func (_ Unimplemented) ListMeterSubjects(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug)
(GET /api/v1/meters/{meterIdOrSlug}/subjects)
func (Unimplemented) ListMeters ¶
func (_ Unimplemented) ListMeters(w http.ResponseWriter, r *http.Request)
(GET /api/v1/meters)
func (Unimplemented) QueryMeter ¶
func (_ Unimplemented) QueryMeter(w http.ResponseWriter, r *http.Request, meterIdOrSlug MeterIdOrSlug, params QueryMeterParams)
(GET /api/v1/meters/{meterIdOrSlug}/query)
func (Unimplemented) QueryPortalMeter ¶
func (_ Unimplemented) QueryPortalMeter(w http.ResponseWriter, r *http.Request, meterSlug string, params QueryPortalMeterParams)
(GET /api/v1/portal/meters/{meterSlug}/query)
type UnmarshalingParamError ¶
func (*UnmarshalingParamError) Error ¶
func (e *UnmarshalingParamError) Error() string
func (*UnmarshalingParamError) Unwrap ¶
func (e *UnmarshalingParamError) Unwrap() error