openmeter

package
v1.0.0-beta.109 Latest Latest
Warning

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

Go to latest
Published: Jul 2, 2024 License: Apache-2.0 Imports: 17 Imported by: 2

README

OpenMeter Go SDK

Install

go get github.com/openmeterio/openmeter/api/client/go@v1.0.0-beta.53

Usage

Initialize client.

import (
  cloudevents "github.com/cloudevents/sdk-go/v2/event"
  om "github.com/openmeterio/openmeter/api/client/go"
)

func main() {
  // Initialize OpenMeter client
  om, err := openmeter.NewClientWithResponses("http://localhost:8888")
  if err != nil {
      panic(err.Error())
  }

  // Use OpenMeter client
  // ...
}
Ingest Event

Report usage to OpenMeter.

e := cloudevents.New()
e.SetID("00001")
e.SetSource("my-app")
e.SetType("tokens")
e.SetSubject("user-id")
e.SetTime(time.Now())
e.SetData("application/json", map[string]string{
  "tokens": "15",
  "model": "gpt-4",
})

_, err := client.IngestEventWithResponse(ctx, e)
Query Meter

Retreive usage from OpenMeter.

slug := "token-usage"
subject := []string{"user-id"}
from, _ := time.Parse(time.RFC3339, "2023-01-01T00:00:00Z")
to, _ := time.Parse(time.RFC3339, "2023-01-02T00:00:00Z")
resp, _ := client.QueryMeterWithResponse(ctx, slug, &om.QueryMeterParams{
    Subject: &subject,
    From:    &from,
    To:      &to,
})
// resp.JSON200.Data

Documentation

Overview

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

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

Index

Constants

View Source
const (
	CloudCookieAuthScopes      = "CloudCookieAuth.Scopes"
	CloudPortalTokenAuthScopes = "CloudPortalTokenAuth.Scopes"
	CloudTokenAuthScopes       = "CloudTokenAuth.Scopes"
	PortalTokenAuthScopes      = "PortalTokenAuth.Scopes"
)

Variables

This section is empty.

Functions

func GetSwagger

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

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 NewCreateEntitlementRequest

func NewCreateEntitlementRequest(server string, subjectIdOrKey SubjectIdOrKey, body CreateEntitlementJSONRequestBody) (*http.Request, error)

NewCreateEntitlementRequest calls the generic CreateEntitlement builder with application/json body

func NewCreateEntitlementRequestWithBody

func NewCreateEntitlementRequestWithBody(server string, subjectIdOrKey SubjectIdOrKey, contentType string, body io.Reader) (*http.Request, error)

NewCreateEntitlementRequestWithBody generates requests for CreateEntitlement with any type of body

func NewCreateFeatureRequest

func NewCreateFeatureRequest(server string, body CreateFeatureJSONRequestBody) (*http.Request, error)

NewCreateFeatureRequest calls the generic CreateFeature builder with application/json body

func NewCreateFeatureRequestWithBody

func NewCreateFeatureRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateFeatureRequestWithBody generates requests for CreateFeature with any type of body

func NewCreateGrantRequest

func NewCreateGrantRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body CreateGrantJSONRequestBody) (*http.Request, error)

NewCreateGrantRequest calls the generic CreateGrant builder with application/json body

func NewCreateGrantRequestWithBody

func NewCreateGrantRequestWithBody(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader) (*http.Request, error)

NewCreateGrantRequestWithBody generates requests for CreateGrant with any type of body

func NewCreateMeterRequest

func NewCreateMeterRequest(server string, body CreateMeterJSONRequestBody) (*http.Request, error)

NewCreateMeterRequest calls the generic CreateMeter builder with application/json body

func NewCreateMeterRequestWithBody

func NewCreateMeterRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreateMeterRequestWithBody generates requests for CreateMeter with any type of body

func NewCreatePortalTokenRequest

func NewCreatePortalTokenRequest(server string, body CreatePortalTokenJSONRequestBody) (*http.Request, error)

NewCreatePortalTokenRequest calls the generic CreatePortalToken builder with application/json body

func NewCreatePortalTokenRequestWithBody

func NewCreatePortalTokenRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewCreatePortalTokenRequestWithBody generates requests for CreatePortalToken with any type of body

func NewDeleteEntitlementRequest

func NewDeleteEntitlementRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId) (*http.Request, error)

NewDeleteEntitlementRequest generates requests for DeleteEntitlement

func NewDeleteFeatureRequest

func NewDeleteFeatureRequest(server string, featureId FeatureId) (*http.Request, error)

NewDeleteFeatureRequest generates requests for DeleteFeature

func NewDeleteMeterRequest

func NewDeleteMeterRequest(server string, meterIdOrSlug MeterIdOrSlug) (*http.Request, error)

NewDeleteMeterRequest generates requests for DeleteMeter

func NewDeleteSubjectRequest

func NewDeleteSubjectRequest(server string, subjectIdOrKey SubjectIdOrKey) (*http.Request, error)

NewDeleteSubjectRequest generates requests for DeleteSubject

func NewGetEntitlementHistoryRequest

func NewGetEntitlementHistoryRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *GetEntitlementHistoryParams) (*http.Request, error)

NewGetEntitlementHistoryRequest generates requests for GetEntitlementHistory

func NewGetEntitlementRequest

func NewGetEntitlementRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId) (*http.Request, error)

NewGetEntitlementRequest generates requests for GetEntitlement

func NewGetEntitlementValueRequest

func NewGetEntitlementValueRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementIdOrFeatureKey EntitlementIdOrFeatureKey, params *GetEntitlementValueParams) (*http.Request, error)

NewGetEntitlementValueRequest generates requests for GetEntitlementValue

func NewGetFeatureRequest

func NewGetFeatureRequest(server string, featureId FeatureId) (*http.Request, error)

NewGetFeatureRequest generates requests for GetFeature

func NewGetMeterRequest

func NewGetMeterRequest(server string, meterIdOrSlug MeterIdOrSlug) (*http.Request, error)

NewGetMeterRequest generates requests for GetMeter

func NewGetSubjectRequest

func NewGetSubjectRequest(server string, subjectIdOrKey SubjectIdOrKey) (*http.Request, error)

NewGetSubjectRequest generates requests for GetSubject

func NewIngestEventsRequestWithApplicationCloudeventsBatchPlusJSONBody

func NewIngestEventsRequestWithApplicationCloudeventsBatchPlusJSONBody(server string, body IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody) (*http.Request, error)

NewIngestEventsRequestWithApplicationCloudeventsBatchPlusJSONBody calls the generic IngestEvents builder with application/cloudevents-batch+json body

func NewIngestEventsRequestWithApplicationCloudeventsPlusJSONBody

func NewIngestEventsRequestWithApplicationCloudeventsPlusJSONBody(server string, body IngestEventsApplicationCloudeventsPlusJSONRequestBody) (*http.Request, error)

NewIngestEventsRequestWithApplicationCloudeventsPlusJSONBody calls the generic IngestEvents builder with application/cloudevents+json body

func NewIngestEventsRequestWithBody

func NewIngestEventsRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewIngestEventsRequestWithBody generates requests for IngestEvents with any type of body

func NewInvalidatePortalTokensRequest

func NewInvalidatePortalTokensRequest(server string, body InvalidatePortalTokensJSONRequestBody) (*http.Request, error)

NewInvalidatePortalTokensRequest calls the generic InvalidatePortalTokens builder with application/json body

func NewInvalidatePortalTokensRequestWithBody

func NewInvalidatePortalTokensRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewInvalidatePortalTokensRequestWithBody generates requests for InvalidatePortalTokens with any type of body

func NewListEntitlementGrantsRequest

func NewListEntitlementGrantsRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *ListEntitlementGrantsParams) (*http.Request, error)

NewListEntitlementGrantsRequest generates requests for ListEntitlementGrants

func NewListEntitlementsRequest

func NewListEntitlementsRequest(server string, params *ListEntitlementsParams) (*http.Request, error)

NewListEntitlementsRequest generates requests for ListEntitlements

func NewListEventsRequest

func NewListEventsRequest(server string, params *ListEventsParams) (*http.Request, error)

NewListEventsRequest generates requests for ListEvents

func NewListFeaturesRequest

func NewListFeaturesRequest(server string, params *ListFeaturesParams) (*http.Request, error)

NewListFeaturesRequest generates requests for ListFeatures

func NewListGrantsRequest

func NewListGrantsRequest(server string, params *ListGrantsParams) (*http.Request, error)

NewListGrantsRequest generates requests for ListGrants

func NewListMeterSubjectsRequest

func NewListMeterSubjectsRequest(server string, meterIdOrSlug MeterIdOrSlug) (*http.Request, error)

NewListMeterSubjectsRequest generates requests for ListMeterSubjects

func NewListMetersRequest

func NewListMetersRequest(server string) (*http.Request, error)

NewListMetersRequest generates requests for ListMeters

func NewListPortalTokensRequest

func NewListPortalTokensRequest(server string, params *ListPortalTokensParams) (*http.Request, error)

NewListPortalTokensRequest generates requests for ListPortalTokens

func NewListSubjectEntitlementsRequest

func NewListSubjectEntitlementsRequest(server string, subjectIdOrKey SubjectIdOrKey, params *ListSubjectEntitlementsParams) (*http.Request, error)

NewListSubjectEntitlementsRequest generates requests for ListSubjectEntitlements

func NewListSubjectsRequest

func NewListSubjectsRequest(server string) (*http.Request, error)

NewListSubjectsRequest generates requests for ListSubjects

func NewQueryMeterRequest

func NewQueryMeterRequest(server string, meterIdOrSlug MeterIdOrSlug, params *QueryMeterParams) (*http.Request, error)

NewQueryMeterRequest generates requests for QueryMeter

func NewQueryPortalMeterRequest

func NewQueryPortalMeterRequest(server string, meterSlug string, params *QueryPortalMeterParams) (*http.Request, error)

NewQueryPortalMeterRequest generates requests for QueryPortalMeter

func NewResetEntitlementUsageRequest

func NewResetEntitlementUsageRequest(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body ResetEntitlementUsageJSONRequestBody) (*http.Request, error)

NewResetEntitlementUsageRequest calls the generic ResetEntitlementUsage builder with application/json body

func NewResetEntitlementUsageRequestWithBody

func NewResetEntitlementUsageRequestWithBody(server string, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader) (*http.Request, error)

NewResetEntitlementUsageRequestWithBody generates requests for ResetEntitlementUsage with any type of body

func NewUpsertSubjectRequest

func NewUpsertSubjectRequest(server string, body UpsertSubjectJSONRequestBody) (*http.Request, error)

NewUpsertSubjectRequest calls the generic UpsertSubject builder with application/json body

func NewUpsertSubjectRequestWithBody

func NewUpsertSubjectRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewUpsertSubjectRequestWithBody generates requests for UpsertSubject with any type of body

func NewVoidGrantRequest

func NewVoidGrantRequest(server string, grantId GrantId) (*http.Request, error)

NewVoidGrantRequest generates requests for VoidGrant

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 BadRequestProblemResponse

type BadRequestProblemResponse = Problem

BadRequestProblemResponse A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type BalanceHistoryWindow

type BalanceHistoryWindow struct {
	// BalanceAtStart The entitlement balance at the start of the period.
	BalanceAtStart *float64 `json:"balanceAtStart,omitempty"`

	// Period A time period
	Period *Period `json:"period,omitempty"`

	// Usage The total usage of the feature in the period.
	Usage *float64 `json:"usage,omitempty"`
}

BalanceHistoryWindow A window of balance history.

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Server string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A list of callbacks for modifying requests which are generated before sending over
	// the network.
	RequestEditors []RequestEditorFn
}

Client which conforms to the OpenAPI3 specification for this service.

func NewAuthClient

func NewAuthClient(server string, apiSecret string, opts ...ClientOption) (*Client, error)

func NewClient

func NewClient(server string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) CreateEntitlement

func (c *Client) CreateEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, body CreateEntitlementJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateEntitlementWithBody

func (c *Client) CreateEntitlementWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateFeature

func (c *Client) CreateFeature(ctx context.Context, body CreateFeatureJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateFeatureWithBody

func (c *Client) CreateFeatureWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateGrant

func (c *Client) CreateGrant(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body CreateGrantJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateGrantWithBody

func (c *Client) CreateGrantWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateMeter

func (c *Client) CreateMeter(ctx context.Context, body CreateMeterJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreateMeterWithBody

func (c *Client) CreateMeterWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreatePortalToken

func (c *Client) CreatePortalToken(ctx context.Context, body CreatePortalTokenJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) CreatePortalTokenWithBody

func (c *Client) CreatePortalTokenWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteEntitlement

func (c *Client) DeleteEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteFeature

func (c *Client) DeleteFeature(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteMeter

func (c *Client) DeleteMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) DeleteSubject

func (c *Client) DeleteSubject(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetEntitlement

func (c *Client) GetEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetEntitlementHistory

func (c *Client) GetEntitlementHistory(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *GetEntitlementHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetEntitlementValue

func (c *Client) GetEntitlementValue(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementIdOrFeatureKey EntitlementIdOrFeatureKey, params *GetEntitlementValueParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetFeature

func (c *Client) GetFeature(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetMeter

func (c *Client) GetMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) GetSubject

func (c *Client) GetSubject(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) IngestEvent

func (c *Client) IngestEvent(ctx context.Context, event Event, reqEditors ...RequestEditorFn) (*http.Response, error)

IngestEvents is a wrapper around generated client's IngestEventsWithApplicationCloudeventsPlusJSONBody

func (*Client) IngestEventBatch

func (c *Client) IngestEventBatch(ctx context.Context, events []Event, reqEditors ...RequestEditorFn) (*http.Response, error)

IngestEvents is a wrapper around generated client's IngestEventsWithApplicationCloudeventsBatchPlusJSONBody

func (*Client) IngestEventsWithApplicationCloudeventsBatchPlusJSONBody

func (c *Client) IngestEventsWithApplicationCloudeventsBatchPlusJSONBody(ctx context.Context, body IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) IngestEventsWithApplicationCloudeventsPlusJSONBody

func (c *Client) IngestEventsWithApplicationCloudeventsPlusJSONBody(ctx context.Context, body IngestEventsApplicationCloudeventsPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) IngestEventsWithBody

func (c *Client) IngestEventsWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) InvalidatePortalTokens

func (c *Client) InvalidatePortalTokens(ctx context.Context, body InvalidatePortalTokensJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) InvalidatePortalTokensWithBody

func (c *Client) InvalidatePortalTokensWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListEntitlementGrants

func (c *Client) ListEntitlementGrants(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *ListEntitlementGrantsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListEntitlements

func (c *Client) ListEntitlements(ctx context.Context, params *ListEntitlementsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListEvents

func (c *Client) ListEvents(ctx context.Context, params *ListEventsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListFeatures

func (c *Client) ListFeatures(ctx context.Context, params *ListFeaturesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListGrants

func (c *Client) ListGrants(ctx context.Context, params *ListGrantsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListMeterSubjects

func (c *Client) ListMeterSubjects(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListMeters

func (c *Client) ListMeters(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListPortalTokens

func (c *Client) ListPortalTokens(ctx context.Context, params *ListPortalTokensParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListSubjectEntitlements

func (c *Client) ListSubjectEntitlements(ctx context.Context, subjectIdOrKey SubjectIdOrKey, params *ListSubjectEntitlementsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ListSubjects

func (c *Client) ListSubjects(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) QueryMeter

func (c *Client) QueryMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, params *QueryMeterParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) QueryPortalMeter

func (c *Client) QueryPortalMeter(ctx context.Context, meterSlug string, params *QueryPortalMeterParams, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ResetEntitlementUsage

func (c *Client) ResetEntitlementUsage(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body ResetEntitlementUsageJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) ResetEntitlementUsageWithBody

func (c *Client) ResetEntitlementUsageWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpsertSubject

func (c *Client) UpsertSubject(ctx context.Context, body UpsertSubjectJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) UpsertSubjectWithBody

func (c *Client) UpsertSubjectWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

func (*Client) VoidGrant

func (c *Client) VoidGrant(ctx context.Context, grantId GrantId, reqEditors ...RequestEditorFn) (*http.Response, error)

type ClientInterface

type ClientInterface interface {
	// ListEntitlements request
	ListEntitlements(ctx context.Context, params *ListEntitlementsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListEvents request
	ListEvents(ctx context.Context, params *ListEventsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// IngestEventsWithBody request with any body
	IngestEventsWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	IngestEventsWithApplicationCloudeventsPlusJSONBody(ctx context.Context, body IngestEventsApplicationCloudeventsPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	IngestEventsWithApplicationCloudeventsBatchPlusJSONBody(ctx context.Context, body IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListFeatures request
	ListFeatures(ctx context.Context, params *ListFeaturesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateFeatureWithBody request with any body
	CreateFeatureWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateFeature(ctx context.Context, body CreateFeatureJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteFeature request
	DeleteFeature(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetFeature request
	GetFeature(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListGrants request
	ListGrants(ctx context.Context, params *ListGrantsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// VoidGrant request
	VoidGrant(ctx context.Context, grantId GrantId, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListMeters request
	ListMeters(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateMeterWithBody request with any body
	CreateMeterWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateMeter(ctx context.Context, body CreateMeterJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteMeter request
	DeleteMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMeter request
	GetMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

	// QueryMeter request
	QueryMeter(ctx context.Context, meterIdOrSlug MeterIdOrSlug, params *QueryMeterParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListMeterSubjects request
	ListMeterSubjects(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*http.Response, error)

	// QueryPortalMeter request
	QueryPortalMeter(ctx context.Context, meterSlug string, params *QueryPortalMeterParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListPortalTokens request
	ListPortalTokens(ctx context.Context, params *ListPortalTokensParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreatePortalTokenWithBody request with any body
	CreatePortalTokenWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreatePortalToken(ctx context.Context, body CreatePortalTokenJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// InvalidatePortalTokensWithBody request with any body
	InvalidatePortalTokensWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	InvalidatePortalTokens(ctx context.Context, body InvalidatePortalTokensJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSubjects request
	ListSubjects(ctx context.Context, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpsertSubjectWithBody request with any body
	UpsertSubjectWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	UpsertSubject(ctx context.Context, body UpsertSubjectJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteSubject request
	DeleteSubject(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetSubject request
	GetSubject(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSubjectEntitlements request
	ListSubjectEntitlements(ctx context.Context, subjectIdOrKey SubjectIdOrKey, params *ListSubjectEntitlementsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateEntitlementWithBody request with any body
	CreateEntitlementWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, body CreateEntitlementJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetEntitlementValue request
	GetEntitlementValue(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementIdOrFeatureKey EntitlementIdOrFeatureKey, params *GetEntitlementValueParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteEntitlement request
	DeleteEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetEntitlement request
	GetEntitlement(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListEntitlementGrants request
	ListEntitlementGrants(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *ListEntitlementGrantsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateGrantWithBody request with any body
	CreateGrantWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	CreateGrant(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body CreateGrantJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetEntitlementHistory request
	GetEntitlementHistory(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *GetEntitlementHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ResetEntitlementUsageWithBody request with any body
	ResetEntitlementUsageWithBody(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	ResetEntitlementUsage(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body ResetEntitlementUsageJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestEditorFn

func WithRequestEditorFn(fn RequestEditorFn) ClientOption

WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func NewAuthClientWithResponses

func NewAuthClientWithResponses(server string, apiSecret string, opts ...ClientOption) (*ClientWithResponses, error)

func NewClientWithResponses

func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func (*ClientWithResponses) CreateEntitlementWithBodyWithResponse

func (c *ClientWithResponses) CreateEntitlementWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateEntitlementResponse, error)

CreateEntitlementWithBodyWithResponse request with arbitrary body returning *CreateEntitlementResponse

func (*ClientWithResponses) CreateEntitlementWithResponse

func (c *ClientWithResponses) CreateEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, body CreateEntitlementJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateEntitlementResponse, error)

func (*ClientWithResponses) CreateFeatureWithBodyWithResponse

func (c *ClientWithResponses) CreateFeatureWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateFeatureResponse, error)

CreateFeatureWithBodyWithResponse request with arbitrary body returning *CreateFeatureResponse

func (*ClientWithResponses) CreateFeatureWithResponse

func (c *ClientWithResponses) CreateFeatureWithResponse(ctx context.Context, body CreateFeatureJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateFeatureResponse, error)

func (*ClientWithResponses) CreateGrantWithBodyWithResponse

func (c *ClientWithResponses) CreateGrantWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateGrantResponse, error)

CreateGrantWithBodyWithResponse request with arbitrary body returning *CreateGrantResponse

func (*ClientWithResponses) CreateGrantWithResponse

func (c *ClientWithResponses) CreateGrantWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body CreateGrantJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateGrantResponse, error)

func (*ClientWithResponses) CreateMeterWithBodyWithResponse

func (c *ClientWithResponses) CreateMeterWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateMeterResponse, error)

CreateMeterWithBodyWithResponse request with arbitrary body returning *CreateMeterResponse

func (*ClientWithResponses) CreateMeterWithResponse

func (c *ClientWithResponses) CreateMeterWithResponse(ctx context.Context, body CreateMeterJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateMeterResponse, error)

func (*ClientWithResponses) CreatePortalTokenWithBodyWithResponse

func (c *ClientWithResponses) CreatePortalTokenWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreatePortalTokenResponse, error)

CreatePortalTokenWithBodyWithResponse request with arbitrary body returning *CreatePortalTokenResponse

func (*ClientWithResponses) CreatePortalTokenWithResponse

func (c *ClientWithResponses) CreatePortalTokenWithResponse(ctx context.Context, body CreatePortalTokenJSONRequestBody, reqEditors ...RequestEditorFn) (*CreatePortalTokenResponse, error)

func (*ClientWithResponses) DeleteEntitlementWithResponse

func (c *ClientWithResponses) DeleteEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*DeleteEntitlementResponse, error)

DeleteEntitlementWithResponse request returning *DeleteEntitlementResponse

func (*ClientWithResponses) DeleteFeatureWithResponse

func (c *ClientWithResponses) DeleteFeatureWithResponse(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*DeleteFeatureResponse, error)

DeleteFeatureWithResponse request returning *DeleteFeatureResponse

func (*ClientWithResponses) DeleteMeterWithResponse

func (c *ClientWithResponses) DeleteMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*DeleteMeterResponse, error)

DeleteMeterWithResponse request returning *DeleteMeterResponse

func (*ClientWithResponses) DeleteSubjectWithResponse

func (c *ClientWithResponses) DeleteSubjectWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*DeleteSubjectResponse, error)

DeleteSubjectWithResponse request returning *DeleteSubjectResponse

func (*ClientWithResponses) GetEntitlementHistoryWithResponse

func (c *ClientWithResponses) GetEntitlementHistoryWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *GetEntitlementHistoryParams, reqEditors ...RequestEditorFn) (*GetEntitlementHistoryResponse, error)

GetEntitlementHistoryWithResponse request returning *GetEntitlementHistoryResponse

func (*ClientWithResponses) GetEntitlementValueWithResponse

func (c *ClientWithResponses) GetEntitlementValueWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementIdOrFeatureKey EntitlementIdOrFeatureKey, params *GetEntitlementValueParams, reqEditors ...RequestEditorFn) (*GetEntitlementValueResponse, error)

GetEntitlementValueWithResponse request returning *GetEntitlementValueResponse

func (*ClientWithResponses) GetEntitlementWithResponse

func (c *ClientWithResponses) GetEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*GetEntitlementResponse, error)

GetEntitlementWithResponse request returning *GetEntitlementResponse

func (*ClientWithResponses) GetFeatureWithResponse

func (c *ClientWithResponses) GetFeatureWithResponse(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*GetFeatureResponse, error)

GetFeatureWithResponse request returning *GetFeatureResponse

func (*ClientWithResponses) GetMeterWithResponse

func (c *ClientWithResponses) GetMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*GetMeterResponse, error)

GetMeterWithResponse request returning *GetMeterResponse

func (*ClientWithResponses) GetSubjectWithResponse

func (c *ClientWithResponses) GetSubjectWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*GetSubjectResponse, error)

GetSubjectWithResponse request returning *GetSubjectResponse

func (*ClientWithResponses) IngestEventBatchWithResponse

func (c *ClientWithResponses) IngestEventBatchWithResponse(ctx context.Context, events []Event, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

IngestEventsWithResponse is a wrapper around generated client's IngestEventsWithApplicationCloudeventsBatchPlusJSONBodyWithResponse

func (*ClientWithResponses) IngestEventWithResponse

func (c *ClientWithResponses) IngestEventWithResponse(ctx context.Context, event Event, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

IngestEventsWithResponse is a wrapper around generated client's IngestEventsWithApplicationCloudeventsPlusJSONBodyWithResponse

func (*ClientWithResponses) IngestEventsWithApplicationCloudeventsBatchPlusJSONBodyWithResponse

func (c *ClientWithResponses) IngestEventsWithApplicationCloudeventsBatchPlusJSONBodyWithResponse(ctx context.Context, body IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

func (*ClientWithResponses) IngestEventsWithApplicationCloudeventsPlusJSONBodyWithResponse

func (c *ClientWithResponses) IngestEventsWithApplicationCloudeventsPlusJSONBodyWithResponse(ctx context.Context, body IngestEventsApplicationCloudeventsPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

func (*ClientWithResponses) IngestEventsWithBodyWithResponse

func (c *ClientWithResponses) IngestEventsWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

IngestEventsWithBodyWithResponse request with arbitrary body returning *IngestEventsResponse

func (*ClientWithResponses) InvalidatePortalTokensWithBodyWithResponse

func (c *ClientWithResponses) InvalidatePortalTokensWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*InvalidatePortalTokensResponse, error)

InvalidatePortalTokensWithBodyWithResponse request with arbitrary body returning *InvalidatePortalTokensResponse

func (*ClientWithResponses) InvalidatePortalTokensWithResponse

func (c *ClientWithResponses) InvalidatePortalTokensWithResponse(ctx context.Context, body InvalidatePortalTokensJSONRequestBody, reqEditors ...RequestEditorFn) (*InvalidatePortalTokensResponse, error)

func (*ClientWithResponses) ListEntitlementGrantsWithResponse

func (c *ClientWithResponses) ListEntitlementGrantsWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *ListEntitlementGrantsParams, reqEditors ...RequestEditorFn) (*ListEntitlementGrantsResponse, error)

ListEntitlementGrantsWithResponse request returning *ListEntitlementGrantsResponse

func (*ClientWithResponses) ListEntitlementsWithResponse

func (c *ClientWithResponses) ListEntitlementsWithResponse(ctx context.Context, params *ListEntitlementsParams, reqEditors ...RequestEditorFn) (*ListEntitlementsResponse, error)

ListEntitlementsWithResponse request returning *ListEntitlementsResponse

func (*ClientWithResponses) ListEventsWithResponse

func (c *ClientWithResponses) ListEventsWithResponse(ctx context.Context, params *ListEventsParams, reqEditors ...RequestEditorFn) (*ListEventsResponse, error)

ListEventsWithResponse request returning *ListEventsResponse

func (*ClientWithResponses) ListFeaturesWithResponse

func (c *ClientWithResponses) ListFeaturesWithResponse(ctx context.Context, params *ListFeaturesParams, reqEditors ...RequestEditorFn) (*ListFeaturesResponse, error)

ListFeaturesWithResponse request returning *ListFeaturesResponse

func (*ClientWithResponses) ListGrantsWithResponse

func (c *ClientWithResponses) ListGrantsWithResponse(ctx context.Context, params *ListGrantsParams, reqEditors ...RequestEditorFn) (*ListGrantsResponse, error)

ListGrantsWithResponse request returning *ListGrantsResponse

func (*ClientWithResponses) ListMeterSubjectsWithResponse

func (c *ClientWithResponses) ListMeterSubjectsWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*ListMeterSubjectsResponse, error)

ListMeterSubjectsWithResponse request returning *ListMeterSubjectsResponse

func (*ClientWithResponses) ListMetersWithResponse

func (c *ClientWithResponses) ListMetersWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*ListMetersResponse, error)

ListMetersWithResponse request returning *ListMetersResponse

func (*ClientWithResponses) ListPortalTokensWithResponse

func (c *ClientWithResponses) ListPortalTokensWithResponse(ctx context.Context, params *ListPortalTokensParams, reqEditors ...RequestEditorFn) (*ListPortalTokensResponse, error)

ListPortalTokensWithResponse request returning *ListPortalTokensResponse

func (*ClientWithResponses) ListSubjectEntitlementsWithResponse

func (c *ClientWithResponses) ListSubjectEntitlementsWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, params *ListSubjectEntitlementsParams, reqEditors ...RequestEditorFn) (*ListSubjectEntitlementsResponse, error)

ListSubjectEntitlementsWithResponse request returning *ListSubjectEntitlementsResponse

func (*ClientWithResponses) ListSubjectsWithResponse

func (c *ClientWithResponses) ListSubjectsWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*ListSubjectsResponse, error)

ListSubjectsWithResponse request returning *ListSubjectsResponse

func (*ClientWithResponses) QueryMeterWithResponse

func (c *ClientWithResponses) QueryMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, params *QueryMeterParams, reqEditors ...RequestEditorFn) (*QueryMeterResponse, error)

QueryMeterWithResponse request returning *QueryMeterResponse

func (*ClientWithResponses) QueryPortalMeterWithResponse

func (c *ClientWithResponses) QueryPortalMeterWithResponse(ctx context.Context, meterSlug string, params *QueryPortalMeterParams, reqEditors ...RequestEditorFn) (*QueryPortalMeterResponse, error)

QueryPortalMeterWithResponse request returning *QueryPortalMeterResponse

func (*ClientWithResponses) ResetEntitlementUsageWithBodyWithResponse

func (c *ClientWithResponses) ResetEntitlementUsageWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ResetEntitlementUsageResponse, error)

ResetEntitlementUsageWithBodyWithResponse request with arbitrary body returning *ResetEntitlementUsageResponse

func (*ClientWithResponses) ResetEntitlementUsageWithResponse

func (c *ClientWithResponses) ResetEntitlementUsageWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body ResetEntitlementUsageJSONRequestBody, reqEditors ...RequestEditorFn) (*ResetEntitlementUsageResponse, error)

func (*ClientWithResponses) UpsertSubjectWithBodyWithResponse

func (c *ClientWithResponses) UpsertSubjectWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpsertSubjectResponse, error)

UpsertSubjectWithBodyWithResponse request with arbitrary body returning *UpsertSubjectResponse

func (*ClientWithResponses) UpsertSubjectWithResponse

func (c *ClientWithResponses) UpsertSubjectWithResponse(ctx context.Context, body UpsertSubjectJSONRequestBody, reqEditors ...RequestEditorFn) (*UpsertSubjectResponse, error)

func (*ClientWithResponses) VoidGrantWithResponse

func (c *ClientWithResponses) VoidGrantWithResponse(ctx context.Context, grantId GrantId, reqEditors ...RequestEditorFn) (*VoidGrantResponse, error)

VoidGrantWithResponse request returning *VoidGrantResponse

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {
	// ListEntitlementsWithResponse request
	ListEntitlementsWithResponse(ctx context.Context, params *ListEntitlementsParams, reqEditors ...RequestEditorFn) (*ListEntitlementsResponse, error)

	// ListEventsWithResponse request
	ListEventsWithResponse(ctx context.Context, params *ListEventsParams, reqEditors ...RequestEditorFn) (*ListEventsResponse, error)

	// IngestEventsWithBodyWithResponse request with any body
	IngestEventsWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

	IngestEventsWithApplicationCloudeventsPlusJSONBodyWithResponse(ctx context.Context, body IngestEventsApplicationCloudeventsPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

	IngestEventsWithApplicationCloudeventsBatchPlusJSONBodyWithResponse(ctx context.Context, body IngestEventsApplicationCloudeventsBatchPlusJSONRequestBody, reqEditors ...RequestEditorFn) (*IngestEventsResponse, error)

	// ListFeaturesWithResponse request
	ListFeaturesWithResponse(ctx context.Context, params *ListFeaturesParams, reqEditors ...RequestEditorFn) (*ListFeaturesResponse, error)

	// CreateFeatureWithBodyWithResponse request with any body
	CreateFeatureWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateFeatureResponse, error)

	CreateFeatureWithResponse(ctx context.Context, body CreateFeatureJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateFeatureResponse, error)

	// DeleteFeatureWithResponse request
	DeleteFeatureWithResponse(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*DeleteFeatureResponse, error)

	// GetFeatureWithResponse request
	GetFeatureWithResponse(ctx context.Context, featureId FeatureId, reqEditors ...RequestEditorFn) (*GetFeatureResponse, error)

	// ListGrantsWithResponse request
	ListGrantsWithResponse(ctx context.Context, params *ListGrantsParams, reqEditors ...RequestEditorFn) (*ListGrantsResponse, error)

	// VoidGrantWithResponse request
	VoidGrantWithResponse(ctx context.Context, grantId GrantId, reqEditors ...RequestEditorFn) (*VoidGrantResponse, error)

	// ListMetersWithResponse request
	ListMetersWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*ListMetersResponse, error)

	// CreateMeterWithBodyWithResponse request with any body
	CreateMeterWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateMeterResponse, error)

	CreateMeterWithResponse(ctx context.Context, body CreateMeterJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateMeterResponse, error)

	// DeleteMeterWithResponse request
	DeleteMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*DeleteMeterResponse, error)

	// GetMeterWithResponse request
	GetMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*GetMeterResponse, error)

	// QueryMeterWithResponse request
	QueryMeterWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, params *QueryMeterParams, reqEditors ...RequestEditorFn) (*QueryMeterResponse, error)

	// ListMeterSubjectsWithResponse request
	ListMeterSubjectsWithResponse(ctx context.Context, meterIdOrSlug MeterIdOrSlug, reqEditors ...RequestEditorFn) (*ListMeterSubjectsResponse, error)

	// QueryPortalMeterWithResponse request
	QueryPortalMeterWithResponse(ctx context.Context, meterSlug string, params *QueryPortalMeterParams, reqEditors ...RequestEditorFn) (*QueryPortalMeterResponse, error)

	// ListPortalTokensWithResponse request
	ListPortalTokensWithResponse(ctx context.Context, params *ListPortalTokensParams, reqEditors ...RequestEditorFn) (*ListPortalTokensResponse, error)

	// CreatePortalTokenWithBodyWithResponse request with any body
	CreatePortalTokenWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreatePortalTokenResponse, error)

	CreatePortalTokenWithResponse(ctx context.Context, body CreatePortalTokenJSONRequestBody, reqEditors ...RequestEditorFn) (*CreatePortalTokenResponse, error)

	// InvalidatePortalTokensWithBodyWithResponse request with any body
	InvalidatePortalTokensWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*InvalidatePortalTokensResponse, error)

	InvalidatePortalTokensWithResponse(ctx context.Context, body InvalidatePortalTokensJSONRequestBody, reqEditors ...RequestEditorFn) (*InvalidatePortalTokensResponse, error)

	// ListSubjectsWithResponse request
	ListSubjectsWithResponse(ctx context.Context, reqEditors ...RequestEditorFn) (*ListSubjectsResponse, error)

	// UpsertSubjectWithBodyWithResponse request with any body
	UpsertSubjectWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpsertSubjectResponse, error)

	UpsertSubjectWithResponse(ctx context.Context, body UpsertSubjectJSONRequestBody, reqEditors ...RequestEditorFn) (*UpsertSubjectResponse, error)

	// DeleteSubjectWithResponse request
	DeleteSubjectWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*DeleteSubjectResponse, error)

	// GetSubjectWithResponse request
	GetSubjectWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, reqEditors ...RequestEditorFn) (*GetSubjectResponse, error)

	// ListSubjectEntitlementsWithResponse request
	ListSubjectEntitlementsWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, params *ListSubjectEntitlementsParams, reqEditors ...RequestEditorFn) (*ListSubjectEntitlementsResponse, error)

	// CreateEntitlementWithBodyWithResponse request with any body
	CreateEntitlementWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateEntitlementResponse, error)

	CreateEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, body CreateEntitlementJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateEntitlementResponse, error)

	// GetEntitlementValueWithResponse request
	GetEntitlementValueWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementIdOrFeatureKey EntitlementIdOrFeatureKey, params *GetEntitlementValueParams, reqEditors ...RequestEditorFn) (*GetEntitlementValueResponse, error)

	// DeleteEntitlementWithResponse request
	DeleteEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*DeleteEntitlementResponse, error)

	// GetEntitlementWithResponse request
	GetEntitlementWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, reqEditors ...RequestEditorFn) (*GetEntitlementResponse, error)

	// ListEntitlementGrantsWithResponse request
	ListEntitlementGrantsWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *ListEntitlementGrantsParams, reqEditors ...RequestEditorFn) (*ListEntitlementGrantsResponse, error)

	// CreateGrantWithBodyWithResponse request with any body
	CreateGrantWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateGrantResponse, error)

	CreateGrantWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body CreateGrantJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateGrantResponse, error)

	// GetEntitlementHistoryWithResponse request
	GetEntitlementHistoryWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, params *GetEntitlementHistoryParams, reqEditors ...RequestEditorFn) (*GetEntitlementHistoryResponse, error)

	// ResetEntitlementUsageWithBodyWithResponse request with any body
	ResetEntitlementUsageWithBodyWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*ResetEntitlementUsageResponse, error)

	ResetEntitlementUsageWithResponse(ctx context.Context, subjectIdOrKey SubjectIdOrKey, entitlementId EntitlementId, body ResetEntitlementUsageJSONRequestBody, reqEditors ...RequestEditorFn) (*ResetEntitlementUsageResponse, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type ConflictProblem

type ConflictProblem struct {
	// Detail A human-readable explanation specific to this occurrence of the problem.
	Detail     string `json:"detail"`
	Extensions *struct {
		// ConflictingEntityId The id of the conflicting entity.
		ConflictingEntityId string `json:"conflictingEntityId"`
	} `json:"extensions,omitempty"`

	// Instance A URI reference that identifies the specific occurrence of the problem.
	Instance *string `json:"instance,omitempty"`

	// Status The HTTP status code generated by the origin server for this occurrence of the problem.
	Status int32 `json:"status"`

	// Title A a short, human-readable summary of the problem type.
	Title string `json:"title"`

	// Type Type contains a URI that identifies the problem type.
	Type                 string                 `json:"type"`
	AdditionalProperties map[string]interface{} `json:"-"`
}

ConflictProblem Conflict

func (ConflictProblem) Get

func (a ConflictProblem) Get(fieldName string) (value interface{}, found bool)

Getter for additional properties for ConflictProblem. Returns the specified element and whether it was found

func (ConflictProblem) MarshalJSON

func (a ConflictProblem) MarshalJSON() ([]byte, error)

Override default JSON handling for ConflictProblem to handle AdditionalProperties

func (*ConflictProblem) Set

func (a *ConflictProblem) Set(fieldName string, value interface{})

Setter for additional properties for ConflictProblem

func (*ConflictProblem) UnmarshalJSON

func (a *ConflictProblem) UnmarshalJSON(b []byte) error

Override default JSON handling for ConflictProblem to handle AdditionalProperties

type ConflictProblemResponse

type ConflictProblemResponse = ConflictProblem

ConflictProblemResponse Conflict

type CreateEntitlementJSONRequestBody

type CreateEntitlementJSONRequestBody = EntitlementCreateInputs

CreateEntitlementJSONRequestBody defines body for CreateEntitlement for application/json ContentType.

type CreateEntitlementResponse

type CreateEntitlementResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON201                       *Entitlement
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON409     *ConflictProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseCreateEntitlementResponse

func ParseCreateEntitlementResponse(rsp *http.Response) (*CreateEntitlementResponse, error)

ParseCreateEntitlementResponse parses an HTTP response from a CreateEntitlementWithResponse call

func (CreateEntitlementResponse) Status

func (r CreateEntitlementResponse) Status() string

Status returns HTTPResponse.Status

func (CreateEntitlementResponse) StatusCode

func (r CreateEntitlementResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateFeatureJSONRequestBody

type CreateFeatureJSONRequestBody = FeatureCreateInputs

CreateFeatureJSONRequestBody defines body for CreateFeature for application/json ContentType.

type CreateFeatureResponse

type CreateFeatureResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON201                       *Feature
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseCreateFeatureResponse

func ParseCreateFeatureResponse(rsp *http.Response) (*CreateFeatureResponse, error)

ParseCreateFeatureResponse parses an HTTP response from a CreateFeatureWithResponse call

func (CreateFeatureResponse) Status

func (r CreateFeatureResponse) Status() string

Status returns HTTPResponse.Status

func (CreateFeatureResponse) StatusCode

func (r CreateFeatureResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateGrantJSONRequestBody

type CreateGrantJSONRequestBody = EntitlementGrantCreateInput

CreateGrantJSONRequestBody defines body for CreateGrant for application/json ContentType.

type CreateGrantResponse

type CreateGrantResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON201                       *EntitlementGrant
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseCreateGrantResponse

func ParseCreateGrantResponse(rsp *http.Response) (*CreateGrantResponse, error)

ParseCreateGrantResponse parses an HTTP response from a CreateGrantWithResponse call

func (CreateGrantResponse) Status

func (r CreateGrantResponse) Status() string

Status returns HTTPResponse.Status

func (CreateGrantResponse) StatusCode

func (r CreateGrantResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateMeterJSONRequestBody

type CreateMeterJSONRequestBody = Meter

CreateMeterJSONRequestBody defines body for CreateMeter for application/json ContentType.

type CreateMeterResponse

type CreateMeterResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON201                       *Meter
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseCreateMeterResponse

func ParseCreateMeterResponse(rsp *http.Response) (*CreateMeterResponse, error)

ParseCreateMeterResponse parses an HTTP response from a CreateMeterWithResponse call

func (CreateMeterResponse) Status

func (r CreateMeterResponse) Status() string

Status returns HTTPResponse.Status

func (CreateMeterResponse) StatusCode

func (r CreateMeterResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreatePortalTokenJSONRequestBody

type CreatePortalTokenJSONRequestBody = PortalToken

CreatePortalTokenJSONRequestBody defines body for CreatePortalToken for application/json ContentType.

type CreatePortalTokenResponse

type CreatePortalTokenResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *PortalToken
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseCreatePortalTokenResponse

func ParseCreatePortalTokenResponse(rsp *http.Response) (*CreatePortalTokenResponse, error)

ParseCreatePortalTokenResponse parses an HTTP response from a CreatePortalTokenWithResponse call

func (CreatePortalTokenResponse) Status

func (r CreatePortalTokenResponse) Status() string

Status returns HTTPResponse.Status

func (CreatePortalTokenResponse) StatusCode

func (r CreatePortalTokenResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteEntitlementResponse

type DeleteEntitlementResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseDeleteEntitlementResponse

func ParseDeleteEntitlementResponse(rsp *http.Response) (*DeleteEntitlementResponse, error)

ParseDeleteEntitlementResponse parses an HTTP response from a DeleteEntitlementWithResponse call

func (DeleteEntitlementResponse) Status

func (r DeleteEntitlementResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteEntitlementResponse) StatusCode

func (r DeleteEntitlementResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteFeatureResponse

type DeleteFeatureResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseDeleteFeatureResponse

func ParseDeleteFeatureResponse(rsp *http.Response) (*DeleteFeatureResponse, error)

ParseDeleteFeatureResponse parses an HTTP response from a DeleteFeatureWithResponse call

func (DeleteFeatureResponse) Status

func (r DeleteFeatureResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteFeatureResponse) StatusCode

func (r DeleteFeatureResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteMeterResponse

type DeleteMeterResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseDeleteMeterResponse

func ParseDeleteMeterResponse(rsp *http.Response) (*DeleteMeterResponse, error)

ParseDeleteMeterResponse parses an HTTP response from a DeleteMeterWithResponse call

func (DeleteMeterResponse) Status

func (r DeleteMeterResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteMeterResponse) StatusCode

func (r DeleteMeterResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteSubjectResponse

type DeleteSubjectResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseDeleteSubjectResponse

func ParseDeleteSubjectResponse(rsp *http.Response) (*DeleteSubjectResponse, error)

ParseDeleteSubjectResponse parses an HTTP response from a DeleteSubjectWithResponse call

func (DeleteSubjectResponse) Status

func (r DeleteSubjectResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteSubjectResponse) StatusCode

func (r DeleteSubjectResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type Entitlement

type Entitlement struct {
	// contains filtered or unexported fields
}

Entitlement defines model for Entitlement.

func (Entitlement) AsEntitlementBoolean

func (t Entitlement) AsEntitlementBoolean() (EntitlementBoolean, error)

AsEntitlementBoolean returns the union data inside the Entitlement as a EntitlementBoolean

func (Entitlement) AsEntitlementMetered

func (t Entitlement) AsEntitlementMetered() (EntitlementMetered, error)

AsEntitlementMetered returns the union data inside the Entitlement as a EntitlementMetered

func (Entitlement) AsEntitlementStatic

func (t Entitlement) AsEntitlementStatic() (EntitlementStatic, error)

AsEntitlementStatic returns the union data inside the Entitlement as a EntitlementStatic

func (Entitlement) Discriminator

func (t Entitlement) Discriminator() (string, error)

func (*Entitlement) FromEntitlementBoolean

func (t *Entitlement) FromEntitlementBoolean(v EntitlementBoolean) error

FromEntitlementBoolean overwrites any union data inside the Entitlement as the provided EntitlementBoolean

func (*Entitlement) FromEntitlementMetered

func (t *Entitlement) FromEntitlementMetered(v EntitlementMetered) error

FromEntitlementMetered overwrites any union data inside the Entitlement as the provided EntitlementMetered

func (*Entitlement) FromEntitlementStatic

func (t *Entitlement) FromEntitlementStatic(v EntitlementStatic) error

FromEntitlementStatic overwrites any union data inside the Entitlement as the provided EntitlementStatic

func (Entitlement) MarshalJSON

func (t Entitlement) MarshalJSON() ([]byte, error)

func (*Entitlement) MergeEntitlementBoolean

func (t *Entitlement) MergeEntitlementBoolean(v EntitlementBoolean) error

MergeEntitlementBoolean performs a merge with any union data inside the Entitlement, using the provided EntitlementBoolean

func (*Entitlement) MergeEntitlementMetered

func (t *Entitlement) MergeEntitlementMetered(v EntitlementMetered) error

MergeEntitlementMetered performs a merge with any union data inside the Entitlement, using the provided EntitlementMetered

func (*Entitlement) MergeEntitlementStatic

func (t *Entitlement) MergeEntitlementStatic(v EntitlementStatic) error

MergeEntitlementStatic performs a merge with any union data inside the Entitlement, using the provided EntitlementStatic

func (*Entitlement) UnmarshalJSON

func (t *Entitlement) UnmarshalJSON(b []byte) error

func (Entitlement) ValueByDiscriminator

func (t Entitlement) ValueByDiscriminator() (interface{}, error)

type EntitlementBoolean

type EntitlementBoolean struct {
	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// CurrentUsagePeriod A time period
	CurrentUsagePeriod *Period `json:"currentUsagePeriod,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId string `json:"featureId"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey string `json:"featureKey"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// SubjectKey The identifier key unique to the subject
	SubjectKey string                 `json:"subjectKey"`
	Type       EntitlementBooleanType `json:"type"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriod `json:"usagePeriod,omitempty"`
}

EntitlementBoolean defines model for EntitlementBoolean.

type EntitlementBooleanCreateInputs

type EntitlementBooleanCreateInputs struct {
	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId *string `json:"featureId,omitempty"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey *string `json:"featureKey,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string                 `json:"metadata,omitempty"`
	Type     EntitlementBooleanCreateInputsType `json:"type"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriodCreateInput `json:"usagePeriod,omitempty"`
}

EntitlementBooleanCreateInputs defines model for EntitlementBooleanCreateInputs.

type EntitlementBooleanCreateInputsType

type EntitlementBooleanCreateInputsType string

EntitlementBooleanCreateInputsType defines model for EntitlementBooleanCreateInputs.Type.

const (
	EntitlementBooleanCreateInputsTypeBoolean EntitlementBooleanCreateInputsType = "boolean"
)

Defines values for EntitlementBooleanCreateInputsType.

type EntitlementBooleanType

type EntitlementBooleanType string

EntitlementBooleanType defines model for EntitlementBoolean.Type.

const (
	EntitlementBooleanTypeBoolean EntitlementBooleanType = "boolean"
)

Defines values for EntitlementBooleanType.

type EntitlementCreateInputs

type EntitlementCreateInputs struct {
	// contains filtered or unexported fields
}

EntitlementCreateInputs defines model for EntitlementCreateInputs.

func (EntitlementCreateInputs) AsEntitlementBooleanCreateInputs

func (t EntitlementCreateInputs) AsEntitlementBooleanCreateInputs() (EntitlementBooleanCreateInputs, error)

AsEntitlementBooleanCreateInputs returns the union data inside the EntitlementCreateInputs as a EntitlementBooleanCreateInputs

func (EntitlementCreateInputs) AsEntitlementMeteredCreateInputs

func (t EntitlementCreateInputs) AsEntitlementMeteredCreateInputs() (EntitlementMeteredCreateInputs, error)

AsEntitlementMeteredCreateInputs returns the union data inside the EntitlementCreateInputs as a EntitlementMeteredCreateInputs

func (EntitlementCreateInputs) AsEntitlementStaticCreateInputs

func (t EntitlementCreateInputs) AsEntitlementStaticCreateInputs() (EntitlementStaticCreateInputs, error)

AsEntitlementStaticCreateInputs returns the union data inside the EntitlementCreateInputs as a EntitlementStaticCreateInputs

func (EntitlementCreateInputs) Discriminator

func (t EntitlementCreateInputs) Discriminator() (string, error)

func (*EntitlementCreateInputs) FromEntitlementBooleanCreateInputs

func (t *EntitlementCreateInputs) FromEntitlementBooleanCreateInputs(v EntitlementBooleanCreateInputs) error

FromEntitlementBooleanCreateInputs overwrites any union data inside the EntitlementCreateInputs as the provided EntitlementBooleanCreateInputs

func (*EntitlementCreateInputs) FromEntitlementMeteredCreateInputs

func (t *EntitlementCreateInputs) FromEntitlementMeteredCreateInputs(v EntitlementMeteredCreateInputs) error

FromEntitlementMeteredCreateInputs overwrites any union data inside the EntitlementCreateInputs as the provided EntitlementMeteredCreateInputs

func (*EntitlementCreateInputs) FromEntitlementStaticCreateInputs

func (t *EntitlementCreateInputs) FromEntitlementStaticCreateInputs(v EntitlementStaticCreateInputs) error

FromEntitlementStaticCreateInputs overwrites any union data inside the EntitlementCreateInputs as the provided EntitlementStaticCreateInputs

func (EntitlementCreateInputs) MarshalJSON

func (t EntitlementCreateInputs) MarshalJSON() ([]byte, error)

func (*EntitlementCreateInputs) MergeEntitlementBooleanCreateInputs

func (t *EntitlementCreateInputs) MergeEntitlementBooleanCreateInputs(v EntitlementBooleanCreateInputs) error

MergeEntitlementBooleanCreateInputs performs a merge with any union data inside the EntitlementCreateInputs, using the provided EntitlementBooleanCreateInputs

func (*EntitlementCreateInputs) MergeEntitlementMeteredCreateInputs

func (t *EntitlementCreateInputs) MergeEntitlementMeteredCreateInputs(v EntitlementMeteredCreateInputs) error

MergeEntitlementMeteredCreateInputs performs a merge with any union data inside the EntitlementCreateInputs, using the provided EntitlementMeteredCreateInputs

func (*EntitlementCreateInputs) MergeEntitlementStaticCreateInputs

func (t *EntitlementCreateInputs) MergeEntitlementStaticCreateInputs(v EntitlementStaticCreateInputs) error

MergeEntitlementStaticCreateInputs performs a merge with any union data inside the EntitlementCreateInputs, using the provided EntitlementStaticCreateInputs

func (*EntitlementCreateInputs) UnmarshalJSON

func (t *EntitlementCreateInputs) UnmarshalJSON(b []byte) error

func (EntitlementCreateInputs) ValueByDiscriminator

func (t EntitlementCreateInputs) ValueByDiscriminator() (interface{}, error)

type EntitlementCreateSharedFields

type EntitlementCreateSharedFields struct {
	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId *string `json:"featureId,omitempty"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey *string `json:"featureKey,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriodCreateInput `json:"usagePeriod,omitempty"`
}

EntitlementCreateSharedFields defines model for EntitlementCreateSharedFields.

type EntitlementGrant

type EntitlementGrant struct {
	// Amount The amount to grant. Should be a positive number.
	Amount float64 `json:"amount"`

	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// EffectiveAt Effective date for grants and anchor for recurring grants. Provided value will be ceiled to metering windowSize (minute).
	EffectiveAt time.Time `json:"effectiveAt"`

	// EntitlementId The unique entitlement ULID that the grant is associated with.
	EntitlementId *string          `json:"entitlementId,omitempty"`
	Expiration    ExpirationPeriod `json:"expiration"`

	// ExpiresAt The expiration date of the grant.
	ExpiresAt *time.Time `json:"expiresAt,omitempty"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// MaxRolloverAmount Grants are rolled over at reset, after which they can have a different balance compared to what they had before the reset.
	//
	// Balance after the reset is calculated as:
	// Balance_After_Reset = MIN(MaxRolloverAmount, MAX(Balance_Before_Reset, MinRolloverAmount))
	MaxRolloverAmount *float64           `json:"maxRolloverAmount,omitempty"`
	Metadata          *map[string]string `json:"metadata,omitempty"`

	// MinRolloverAmount Grants are rolled over at reset, after which they can have a different balance compared to what they had before the reset.
	//
	// Balance after the reset is calculated as:
	// Balance_After_Reset = MIN(MaxRolloverAmount, MAX(Balance_Before_Reset, MinRolloverAmount))
	MinRolloverAmount *float64 `json:"minRolloverAmount,omitempty"`

	// NextRecurrence The next time the grant will recurr.
	NextRecurrence *time.Time `json:"nextRecurrence,omitempty"`

	// Priority The priority of the grant. Grants with higher priority are applied first.
	// Priority is a positive decimal numbers. With lower numbers indicating higher importance.
	// For example, a priority of 1 is more urgent than a priority of 2.
	// When there are several grants available for the same subject, the system selects the grant with the highest priority.
	// In cases where grants share the same priority level, the grant closest to its expiration will be used first.
	// In the case of two grants have identical priorities and expiration dates, the system will use the grant that was created first.
	Priority *int `json:"priority,omitempty"`

	// Recurrence Recurring period of an entitlement.
	Recurrence *RecurringPeriod `json:"recurrence,omitempty"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// VoidedAt The date and time the grant was voided (cannot be used after that).
	VoidedAt *time.Time `json:"voidedAt,omitempty"`
}

EntitlementGrant defines model for EntitlementGrant.

type EntitlementGrantCreateInput

type EntitlementGrantCreateInput struct {
	// Amount The amount to grant. Should be a positive number.
	Amount float64 `json:"amount"`

	// EffectiveAt Effective date for grants and anchor for recurring grants. Provided value will be ceiled to metering windowSize (minute).
	EffectiveAt time.Time        `json:"effectiveAt"`
	Expiration  ExpirationPeriod `json:"expiration"`

	// MaxRolloverAmount Grants are rolled over at reset, after which they can have a different balance compared to what they had before the reset.
	//
	// Balance after the reset is calculated as:
	// Balance_After_Reset = MIN(MaxRolloverAmount, MAX(Balance_Before_Reset, MinRolloverAmount))
	MaxRolloverAmount *float64           `json:"maxRolloverAmount,omitempty"`
	Metadata          *map[string]string `json:"metadata,omitempty"`

	// MinRolloverAmount Grants are rolled over at reset, after which they can have a different balance compared to what they had before the reset.
	//
	// Balance after the reset is calculated as:
	// Balance_After_Reset = MIN(MaxRolloverAmount, MAX(Balance_Before_Reset, MinRolloverAmount))
	MinRolloverAmount *float64 `json:"minRolloverAmount,omitempty"`

	// Priority The priority of the grant. Grants with higher priority are applied first.
	// Priority is a positive decimal numbers. With lower numbers indicating higher importance.
	// For example, a priority of 1 is more urgent than a priority of 2.
	// When there are several grants available for the same subject, the system selects the grant with the highest priority.
	// In cases where grants share the same priority level, the grant closest to its expiration will be used first.
	// In the case of two grants have identical priorities and expiration dates, the system will use the grant that was created first.
	Priority *int `json:"priority,omitempty"`

	// Recurrence Recurring period of an entitlement.
	Recurrence *RecurringPeriodCreateInput `json:"recurrence,omitempty"`
}

EntitlementGrantCreateInput Grants are used to increase balance of specific subjects.

type EntitlementId

type EntitlementId = string

EntitlementId defines model for entitlementId.

type EntitlementIdOrFeatureKey

type EntitlementIdOrFeatureKey = string

EntitlementIdOrFeatureKey defines model for entitlementIdOrFeatureKey.

type EntitlementMetered

type EntitlementMetered struct {
	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// CurrentUsagePeriod A time period
	CurrentUsagePeriod Period `json:"currentUsagePeriod"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId string `json:"featureId"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey string `json:"featureKey"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// IsSoftLimit If softLimit=true the subject can use the feature even if the entitlement is exhausted.
	IsSoftLimit *bool `json:"isSoftLimit,omitempty"`

	// IsUnlimited If unlimited=true the subject can use the feature an unlimited amount.
	IsUnlimited *bool `json:"isUnlimited,omitempty"`

	// IssueAfterReset You can issue usage automatically after reset. This usage is not rolled over.
	IssueAfterReset *float64 `json:"issueAfterReset,omitempty"`

	// LastReset The last time the meter was reset.
	LastReset time.Time `json:"lastReset"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// SubjectKey The identifier key unique to the subject
	SubjectKey string                 `json:"subjectKey"`
	Type       EntitlementMeteredType `json:"type"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod RecurringPeriod `json:"usagePeriod"`
}

EntitlementMetered defines model for EntitlementMetered.

type EntitlementMeteredCalculatedFields

type EntitlementMeteredCalculatedFields struct {
	// CurrentUsagePeriod A time period
	CurrentUsagePeriod Period `json:"currentUsagePeriod"`

	// LastReset The last time the meter was reset.
	LastReset time.Time `json:"lastReset"`
}

EntitlementMeteredCalculatedFields Calculated fields for a metered entitlement.

type EntitlementMeteredCreateInputs

type EntitlementMeteredCreateInputs struct {
	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId *string `json:"featureId,omitempty"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey *string `json:"featureKey,omitempty"`

	// IsSoftLimit If softLimit=true the subject can use the feature even if the entitlement is exhausted.
	IsSoftLimit *bool `json:"isSoftLimit,omitempty"`

	// IsUnlimited If unlimited=true the subject can use the feature an unlimited amount.
	IsUnlimited *bool `json:"isUnlimited,omitempty"`

	// IssueAfterReset You can issue usage automatically after reset. This usage is not rolled over.
	IssueAfterReset *float64 `json:"issueAfterReset,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string                 `json:"metadata,omitempty"`
	Type     EntitlementMeteredCreateInputsType `json:"type"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod RecurringPeriodCreateInput `json:"usagePeriod"`
}

EntitlementMeteredCreateInputs defines model for EntitlementMeteredCreateInputs.

type EntitlementMeteredCreateInputsType

type EntitlementMeteredCreateInputsType string

EntitlementMeteredCreateInputsType defines model for EntitlementMeteredCreateInputs.Type.

const (
	EntitlementMeteredCreateInputsTypeMetered EntitlementMeteredCreateInputsType = "metered"
)

Defines values for EntitlementMeteredCreateInputsType.

type EntitlementMeteredType

type EntitlementMeteredType string

EntitlementMeteredType defines model for EntitlementMetered.Type.

const (
	EntitlementMeteredTypeMetered EntitlementMeteredType = "metered"
)

Defines values for EntitlementMeteredType.

type EntitlementSharedFields

type EntitlementSharedFields struct {
	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// CurrentUsagePeriod A time period
	CurrentUsagePeriod *Period `json:"currentUsagePeriod,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId string `json:"featureId"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey string `json:"featureKey"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// SubjectKey The identifier key unique to the subject
	SubjectKey string `json:"subjectKey"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriod `json:"usagePeriod,omitempty"`
}

EntitlementSharedFields defines model for EntitlementSharedFields.

type EntitlementStatic

type EntitlementStatic struct {
	// Config The JSON parsable config of the entitlement.
	Config string `json:"config"`

	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// CurrentUsagePeriod A time period
	CurrentUsagePeriod *Period `json:"currentUsagePeriod,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId string `json:"featureId"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey string `json:"featureKey"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// SubjectKey The identifier key unique to the subject
	SubjectKey string                `json:"subjectKey"`
	Type       EntitlementStaticType `json:"type"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriod `json:"usagePeriod,omitempty"`
}

EntitlementStatic defines model for EntitlementStatic.

type EntitlementStaticCreateInputs

type EntitlementStaticCreateInputs struct {
	// Config The JSON parsable config of the entitlement.
	Config string `json:"config"`

	// FeatureId The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureId *string `json:"featureId,omitempty"`

	// FeatureKey The feature the subject is entitled to use.
	// Either featureKey or featureId is required.
	FeatureKey *string `json:"featureKey,omitempty"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string                `json:"metadata,omitempty"`
	Type     EntitlementStaticCreateInputsType `json:"type"`

	// UsagePeriod Recurring period of an entitlement.
	UsagePeriod *RecurringPeriodCreateInput `json:"usagePeriod,omitempty"`
}

EntitlementStaticCreateInputs defines model for EntitlementStaticCreateInputs.

type EntitlementStaticCreateInputsType

type EntitlementStaticCreateInputsType string

EntitlementStaticCreateInputsType defines model for EntitlementStaticCreateInputs.Type.

const (
	EntitlementStaticCreateInputsTypeStatic EntitlementStaticCreateInputsType = "static"
)

Defines values for EntitlementStaticCreateInputsType.

type EntitlementStaticType

type EntitlementStaticType string

EntitlementStaticType defines model for EntitlementStatic.Type.

const (
	EntitlementStaticTypeStatic EntitlementStaticType = "static"
)

Defines values for EntitlementStaticType.

type EntitlementValue

type EntitlementValue struct {
	// Balance The balance of a metered entitlement.
	Balance *float64 `json:"balance,omitempty"`

	// Config The JSON parseable configuration value of a static entitlement.
	Config *string `json:"config,omitempty"`

	// HasAccess Whether the subject has access to the feature.
	HasAccess *bool `json:"hasAccess,omitempty"`

	// Overage The overage of a metered entitlement.
	Overage *float64 `json:"overage,omitempty"`

	// Usage Total usage of the feature in the period. Includes overages.
	Usage *float64 `json:"usage,omitempty"`
}

EntitlementValue defines model for EntitlementValue.

type ErrResponse

type ErrResponse struct {
	Err error `json:"-"` // low-level runtime error

	StatusCode int    `json:"statusCode"`        // http response status code
	StatusText string `json:"status"`            // user-level status message
	AppCode    int64  `json:"code,omitempty"`    // application-specific error code
	Message    string `json:"message,omitempty"` // application-level error message, for debugging
}

ErrResponse renderer type for handling all sorts of errors. In the best case scenario, the excellent github.com/pkg/errors package helps reveal information on the error, setting it on Err, and in the Render() method, using it to set the application-specific error code in AppCode.

type Event

type Event = event.Event

Event CloudEvents Specification JSON Schema

type ExpirationPeriod

type ExpirationPeriod struct {
	// Count The expiration period count like 12 months.
	Count int `json:"count"`

	// Duration The expiration period duration like month.
	Duration ExpirationPeriodDuration `json:"duration"`
}

ExpirationPeriod Expiration period of a grant.

type ExpirationPeriodDuration

type ExpirationPeriodDuration string

ExpirationPeriodDuration The expiration period duration like month.

const (
	ExpirationPeriodDurationDAY   ExpirationPeriodDuration = "DAY"
	ExpirationPeriodDurationHOUR  ExpirationPeriodDuration = "HOUR"
	ExpirationPeriodDurationMONTH ExpirationPeriodDuration = "MONTH"
	ExpirationPeriodDurationWEEK  ExpirationPeriodDuration = "WEEK"
	ExpirationPeriodDurationYEAR  ExpirationPeriodDuration = "YEAR"
)

Defines values for ExpirationPeriodDuration.

type Feature

type Feature struct {
	// ArchivedAt If the feature is archived, it will not be used for grants or usage.
	ArchivedAt *time.Time `json:"archivedAt,omitempty"`

	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// Key The unique key of the feature to reference it from your application.
	Key string `json:"key"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// MeterGroupByFilters Optional meter group by filters. Useful if the meter scope is broader than what feature tracks.
	MeterGroupByFilters *map[string]string `json:"meterGroupByFilters,omitempty"`

	// MeterSlug The meter that the feature is associated with and decreases grants by usage.
	// If present, the usage of the feature can be metered.
	MeterSlug *string `json:"meterSlug,omitempty"`

	// Name The name of the feature.
	Name string `json:"name"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

Feature defines model for Feature.

type FeatureCreateInputs

type FeatureCreateInputs struct {
	// Key The unique key of the feature to reference it from your application.
	Key string `json:"key"`

	// Metadata Additional metadata for the feature.
	Metadata *map[string]string `json:"metadata,omitempty"`

	// MeterGroupByFilters Optional meter group by filters. Useful if the meter scope is broader than what feature tracks.
	MeterGroupByFilters *map[string]string `json:"meterGroupByFilters,omitempty"`

	// MeterSlug The meter that the feature is associated with and decreases grants by usage.
	// If present, the usage of the feature can be metered.
	MeterSlug *string `json:"meterSlug,omitempty"`

	// Name The name of the feature.
	Name string `json:"name"`
}

FeatureCreateInputs A feature is a feature or service offered to a customer. For example: CPU-Hours, Tokens, API Calls, etc.

type FeatureId

type FeatureId = string

FeatureId defines model for featureId.

type GetEntitlementHistoryParams

type GetEntitlementHistoryParams struct {
	// From Start of time range to query entitlement: date-time in RFC 3339 format. Defaults to
	// the last reset.
	// Gets truncated to the granularity of the underlying meter.
	From *time.Time `form:"from,omitempty" json:"from,omitempty"`

	// To End of time range to query entitlement: date-time in RFC 3339 format. Defaults to now.
	// If not now then gets truncated to the granularity of the underlying meter.
	To *time.Time `form:"to,omitempty" json:"to,omitempty"`

	// WindowSize Size of the time window to group the history by. Cannot be shorter than meter granularity.
	WindowSize GetEntitlementHistoryParamsWindowSize `form:"windowSize" json:"windowSize"`

	// 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"`
}

GetEntitlementHistoryParams defines parameters for GetEntitlementHistory.

type GetEntitlementHistoryParamsWindowSize

type GetEntitlementHistoryParamsWindowSize string

GetEntitlementHistoryParamsWindowSize defines parameters for GetEntitlementHistory.

Defines values for GetEntitlementHistoryParamsWindowSize.

type GetEntitlementHistoryResponse

type GetEntitlementHistoryResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *WindowedBalanceHistory
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetEntitlementHistoryResponse

func ParseGetEntitlementHistoryResponse(rsp *http.Response) (*GetEntitlementHistoryResponse, error)

ParseGetEntitlementHistoryResponse parses an HTTP response from a GetEntitlementHistoryWithResponse call

func (GetEntitlementHistoryResponse) Status

Status returns HTTPResponse.Status

func (GetEntitlementHistoryResponse) StatusCode

func (r GetEntitlementHistoryResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetEntitlementResponse

type GetEntitlementResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	JSON200      *struct {
		// LastReset The last time usage was reset.
		LastReset *time.Time `json:"lastReset,omitempty"`
		// contains filtered or unexported fields
	}
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetEntitlementResponse

func ParseGetEntitlementResponse(rsp *http.Response) (*GetEntitlementResponse, error)

ParseGetEntitlementResponse parses an HTTP response from a GetEntitlementWithResponse call

func (GetEntitlementResponse) Status

func (r GetEntitlementResponse) Status() string

Status returns HTTPResponse.Status

func (GetEntitlementResponse) StatusCode

func (r GetEntitlementResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetEntitlementValueParams

type GetEntitlementValueParams struct {
	// Time Point of time to check value: date-time in RFC 3339 format. Defaults to now.
	Time *time.Time `form:"time,omitempty" json:"time,omitempty"`
}

GetEntitlementValueParams defines parameters for GetEntitlementValue.

type GetEntitlementValueResponse

type GetEntitlementValueResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *EntitlementValue
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetEntitlementValueResponse

func ParseGetEntitlementValueResponse(rsp *http.Response) (*GetEntitlementValueResponse, error)

ParseGetEntitlementValueResponse parses an HTTP response from a GetEntitlementValueWithResponse call

func (GetEntitlementValueResponse) Status

Status returns HTTPResponse.Status

func (GetEntitlementValueResponse) StatusCode

func (r GetEntitlementValueResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetFeatureResponse

type GetFeatureResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *Feature
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetFeatureResponse

func ParseGetFeatureResponse(rsp *http.Response) (*GetFeatureResponse, error)

ParseGetFeatureResponse parses an HTTP response from a GetFeatureWithResponse call

func (GetFeatureResponse) Status

func (r GetFeatureResponse) Status() string

Status returns HTTPResponse.Status

func (GetFeatureResponse) StatusCode

func (r GetFeatureResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMeterResponse

type GetMeterResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *Meter
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetMeterResponse

func ParseGetMeterResponse(rsp *http.Response) (*GetMeterResponse, error)

ParseGetMeterResponse parses an HTTP response from a GetMeterWithResponse call

func (GetMeterResponse) Status

func (r GetMeterResponse) Status() string

Status returns HTTPResponse.Status

func (GetMeterResponse) StatusCode

func (r GetMeterResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetSubjectResponse

type GetSubjectResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *Subject
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseGetSubjectResponse

func ParseGetSubjectResponse(rsp *http.Response) (*GetSubjectResponse, error)

ParseGetSubjectResponse parses an HTTP response from a GetSubjectWithResponse call

func (GetSubjectResponse) Status

func (r GetSubjectResponse) Status() string

Status returns HTTPResponse.Status

func (GetSubjectResponse) StatusCode

func (r GetSubjectResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GrantBurnDownHistorySegment

type GrantBurnDownHistorySegment struct {
	// BalanceAtEnd The entitlement balance at the end of the period.
	BalanceAtEnd *float64 `json:"balanceAtEnd,omitempty"`

	// BalanceAtStart The entitlement balance at the start of the period.
	BalanceAtStart *float64 `json:"balanceAtStart,omitempty"`

	// GrantBalancesAtEnd The balance breakdown of each active grant at the start of the period: GrantID: Balance
	GrantBalancesAtEnd *map[string]float64 `json:"grantBalancesAtEnd,omitempty"`

	// GrantBalancesAtStart The balance breakdown of each active grant at the start of the period: GrantID: Balance
	GrantBalancesAtStart *map[string]float64 `json:"grantBalancesAtStart,omitempty"`

	// GrantUsages Which grants were actually burnt down in the period and by what amount.
	GrantUsages *[]GrantUsageRecord `json:"grantUsages,omitempty"`

	// Overage Overuse that wasn't covered by grants.
	Overage *float64 `json:"overage,omitempty"`

	// Period A time period
	Period *Period `json:"period,omitempty"`

	// Usage The usage of the grant in the period.
	Usage *float64 `json:"usage,omitempty"`
}

GrantBurnDownHistorySegment A segment of the grant burn down history.

A given segment represents the usage of a grant in a specific period.

type GrantId

type GrantId = string

GrantId defines model for grantId.

type GrantUsageRecord

type GrantUsageRecord struct {
	// GrantId The id of the grant.
	GrantId *string `json:"grantId,omitempty"`

	// Usage The usage of the grant.
	Usage *float64 `json:"usage,omitempty"`
}

GrantUsageRecord defines model for GrantUsageRecord.

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type IdOrSlug

type IdOrSlug = string

IdOrSlug A unique identifier.

type IncludeDeleted

type IncludeDeleted = bool

IncludeDeleted defines model for includeDeleted.

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 IngestEventsResponse

type IngestEventsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseIngestEventsResponse

func ParseIngestEventsResponse(rsp *http.Response) (*IngestEventsResponse, error)

ParseIngestEventsResponse parses an HTTP response from a IngestEventsWithResponse call

func (IngestEventsResponse) Status

func (r IngestEventsResponse) Status() string

Status returns HTTPResponse.Status

func (IngestEventsResponse) StatusCode

func (r IngestEventsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type IngestedEvent

type IngestedEvent struct {
	// Event CloudEvents Specification JSON Schema
	Event           Event   `json:"event"`
	ValidationError *string `json:"validationError,omitempty"`
}

IngestedEvent An ingested event with optional validation error.

type InvalidatePortalTokensJSONBody

type InvalidatePortalTokensJSONBody struct {
	// Id Invalidate a portal token by ID.
	Id *string `json:"id,omitempty"`

	// Subject Invalidate all portal tokens for a subject.
	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 InvalidatePortalTokensResponse

type InvalidatePortalTokensResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseInvalidatePortalTokensResponse

func ParseInvalidatePortalTokensResponse(rsp *http.Response) (*InvalidatePortalTokensResponse, error)

ParseInvalidatePortalTokensResponse parses an HTTP response from a InvalidatePortalTokensWithResponse call

func (InvalidatePortalTokensResponse) Status

Status returns HTTPResponse.Status

func (InvalidatePortalTokensResponse) StatusCode

func (r InvalidatePortalTokensResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListEntitlementGrantsParams

type ListEntitlementGrantsParams struct {
	// IncludeDeleted Include deleted entries.
	IncludeDeleted *IncludeDeleted `form:"includeDeleted,omitempty" json:"includeDeleted,omitempty"`

	// OrderBy Order by field
	OrderBy *ListEntitlementGrantsParamsOrderBy `form:"orderBy,omitempty" json:"orderBy,omitempty"`
}

ListEntitlementGrantsParams defines parameters for ListEntitlementGrants.

type ListEntitlementGrantsParamsOrderBy

type ListEntitlementGrantsParamsOrderBy string

ListEntitlementGrantsParamsOrderBy defines parameters for ListEntitlementGrants.

const (
	ListEntitlementGrantsParamsOrderByCreatedAt ListEntitlementGrantsParamsOrderBy = "createdAt"
	ListEntitlementGrantsParamsOrderById        ListEntitlementGrantsParamsOrderBy = "id"
	ListEntitlementGrantsParamsOrderByUpdatedAt ListEntitlementGrantsParamsOrderBy = "updatedAt"
)

Defines values for ListEntitlementGrantsParamsOrderBy.

type ListEntitlementGrantsResponse

type ListEntitlementGrantsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]EntitlementGrant
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListEntitlementGrantsResponse

func ParseListEntitlementGrantsResponse(rsp *http.Response) (*ListEntitlementGrantsResponse, error)

ParseListEntitlementGrantsResponse parses an HTTP response from a ListEntitlementGrantsWithResponse call

func (ListEntitlementGrantsResponse) Status

Status returns HTTPResponse.Status

func (ListEntitlementGrantsResponse) StatusCode

func (r ListEntitlementGrantsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListEntitlementsParams

type ListEntitlementsParams struct {
	// Limit Number of entries to return
	Limit *QueryLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of entries to skip
	Offset *QueryOffset `form:"offset,omitempty" json:"offset,omitempty"`

	// OrderBy Order by field
	OrderBy *ListEntitlementsParamsOrderBy `form:"orderBy,omitempty" json:"orderBy,omitempty"`
}

ListEntitlementsParams defines parameters for ListEntitlements.

type ListEntitlementsParamsOrderBy

type ListEntitlementsParamsOrderBy string

ListEntitlementsParamsOrderBy defines parameters for ListEntitlements.

const (
	ListEntitlementsParamsOrderByCreatedAt ListEntitlementsParamsOrderBy = "createdAt"
	ListEntitlementsParamsOrderByUpdatedAt ListEntitlementsParamsOrderBy = "updatedAt"
)

Defines values for ListEntitlementsParamsOrderBy.

type ListEntitlementsResponse

type ListEntitlementsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Entitlement
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListEntitlementsResponse

func ParseListEntitlementsResponse(rsp *http.Response) (*ListEntitlementsResponse, error)

ParseListEntitlementsResponse parses an HTTP response from a ListEntitlementsWithResponse call

func (ListEntitlementsResponse) Status

func (r ListEntitlementsResponse) Status() string

Status returns HTTPResponse.Status

func (ListEntitlementsResponse) StatusCode

func (r ListEntitlementsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

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 ListEventsResponse

type ListEventsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]IngestedEvent
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListEventsResponse

func ParseListEventsResponse(rsp *http.Response) (*ListEventsResponse, error)

ParseListEventsResponse parses an HTTP response from a ListEventsWithResponse call

func (ListEventsResponse) Status

func (r ListEventsResponse) Status() string

Status returns HTTPResponse.Status

func (ListEventsResponse) StatusCode

func (r ListEventsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListFeaturesParams

type ListFeaturesParams struct {
	// Limit Number of entries to return
	Limit *QueryLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of entries to skip
	Offset *QueryOffset `form:"offset,omitempty" json:"offset,omitempty"`

	// OrderBy Order by field
	OrderBy *ListFeaturesParamsOrderBy `form:"orderBy,omitempty" json:"orderBy,omitempty"`

	// IncludeArchived Include archived features.
	IncludeArchived *bool `form:"includeArchived,omitempty" json:"includeArchived,omitempty"`
}

ListFeaturesParams defines parameters for ListFeatures.

type ListFeaturesParamsOrderBy

type ListFeaturesParamsOrderBy string

ListFeaturesParamsOrderBy defines parameters for ListFeatures.

const (
	ListFeaturesParamsOrderByCreatedAt ListFeaturesParamsOrderBy = "createdAt"
	ListFeaturesParamsOrderById        ListFeaturesParamsOrderBy = "id"
	ListFeaturesParamsOrderByUpdatedAt ListFeaturesParamsOrderBy = "updatedAt"
)

Defines values for ListFeaturesParamsOrderBy.

type ListFeaturesResponse

type ListFeaturesResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Feature
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListFeaturesResponse

func ParseListFeaturesResponse(rsp *http.Response) (*ListFeaturesResponse, error)

ParseListFeaturesResponse parses an HTTP response from a ListFeaturesWithResponse call

func (ListFeaturesResponse) Status

func (r ListFeaturesResponse) Status() string

Status returns HTTPResponse.Status

func (ListFeaturesResponse) StatusCode

func (r ListFeaturesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListGrantsParams

type ListGrantsParams struct {
	// Limit Number of entries to return
	Limit *QueryLimit `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of entries to skip
	Offset *QueryOffset `form:"offset,omitempty" json:"offset,omitempty"`

	// OrderBy Order by field
	OrderBy *ListGrantsParamsOrderBy `form:"orderBy,omitempty" json:"orderBy,omitempty"`

	// IncludeDeleted Include deleted entries.
	IncludeDeleted *IncludeDeleted `form:"includeDeleted,omitempty" json:"includeDeleted,omitempty"`
}

ListGrantsParams defines parameters for ListGrants.

type ListGrantsParamsOrderBy

type ListGrantsParamsOrderBy string

ListGrantsParamsOrderBy defines parameters for ListGrants.

const (
	ListGrantsParamsOrderByCreatedAt ListGrantsParamsOrderBy = "createdAt"
	ListGrantsParamsOrderById        ListGrantsParamsOrderBy = "id"
	ListGrantsParamsOrderByUpdatedAt ListGrantsParamsOrderBy = "updatedAt"
)

Defines values for ListGrantsParamsOrderBy.

type ListGrantsResponse

type ListGrantsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]EntitlementGrant
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListGrantsResponse

func ParseListGrantsResponse(rsp *http.Response) (*ListGrantsResponse, error)

ParseListGrantsResponse parses an HTTP response from a ListGrantsWithResponse call

func (ListGrantsResponse) Status

func (r ListGrantsResponse) Status() string

Status returns HTTPResponse.Status

func (ListGrantsResponse) StatusCode

func (r ListGrantsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListMeterSubjectsResponse

type ListMeterSubjectsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]string
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListMeterSubjectsResponse

func ParseListMeterSubjectsResponse(rsp *http.Response) (*ListMeterSubjectsResponse, error)

ParseListMeterSubjectsResponse parses an HTTP response from a ListMeterSubjectsWithResponse call

func (ListMeterSubjectsResponse) Status

func (r ListMeterSubjectsResponse) Status() string

Status returns HTTPResponse.Status

func (ListMeterSubjectsResponse) StatusCode

func (r ListMeterSubjectsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListMetersResponse

type ListMetersResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Meter
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListMetersResponse

func ParseListMetersResponse(rsp *http.Response) (*ListMetersResponse, error)

ParseListMetersResponse parses an HTTP response from a ListMetersWithResponse call

func (ListMetersResponse) Status

func (r ListMetersResponse) Status() string

Status returns HTTPResponse.Status

func (ListMetersResponse) StatusCode

func (r ListMetersResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListPortalTokensParams

type ListPortalTokensParams struct {
	// Limit Number of portal tokens to return. Default is 25.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}

ListPortalTokensParams defines parameters for ListPortalTokens.

type ListPortalTokensResponse

type ListPortalTokensResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]PortalToken
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListPortalTokensResponse

func ParseListPortalTokensResponse(rsp *http.Response) (*ListPortalTokensResponse, error)

ParseListPortalTokensResponse parses an HTTP response from a ListPortalTokensWithResponse call

func (ListPortalTokensResponse) Status

func (r ListPortalTokensResponse) Status() string

Status returns HTTPResponse.Status

func (ListPortalTokensResponse) StatusCode

func (r ListPortalTokensResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSubjectEntitlementsParams

type ListSubjectEntitlementsParams struct {
	// IncludeDeleted Include deleted entries.
	IncludeDeleted *IncludeDeleted `form:"includeDeleted,omitempty" json:"includeDeleted,omitempty"`
}

ListSubjectEntitlementsParams defines parameters for ListSubjectEntitlements.

type ListSubjectEntitlementsResponse

type ListSubjectEntitlementsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Entitlement
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListSubjectEntitlementsResponse

func ParseListSubjectEntitlementsResponse(rsp *http.Response) (*ListSubjectEntitlementsResponse, error)

ParseListSubjectEntitlementsResponse parses an HTTP response from a ListSubjectEntitlementsWithResponse call

func (ListSubjectEntitlementsResponse) Status

Status returns HTTPResponse.Status

func (ListSubjectEntitlementsResponse) StatusCode

func (r ListSubjectEntitlementsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSubjectsResponse

type ListSubjectsResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Subject
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseListSubjectsResponse

func ParseListSubjectsResponse(rsp *http.Response) (*ListSubjectsResponse, error)

ParseListSubjectsResponse parses an HTTP response from a ListSubjectsWithResponse call

func (ListSubjectsResponse) Status

func (r ListSubjectsResponse) Status() string

Status returns HTTPResponse.Status

func (ListSubjectsResponse) StatusCode

func (r ListSubjectsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type Meter

type Meter = models.Meter

Meter A meter is a configuration that defines how to match and aggregate events.

type MeterAggregation

type MeterAggregation = models.MeterAggregation

MeterAggregation The aggregation type to use for the meter.

type MeterIdOrSlug

type MeterIdOrSlug = IdOrSlug

MeterIdOrSlug A unique identifier.

type MeterQueryResult

type MeterQueryResult struct {
	Data []MeterQueryRow `json:"data"`
	From *time.Time      `json:"from,omitempty"`
	To   *time.Time      `json:"to,omitempty"`

	// WindowSize Aggregation window size.
	WindowSize *WindowSize `json:"windowSize,omitempty"`
}

MeterQueryResult The result of a meter query.

type MeterQueryRow

type MeterQueryRow = models.MeterQueryRow

MeterQueryRow A row in the result of a meter query.

type NotFoundProblemResponse

type NotFoundProblemResponse = Problem

NotFoundProblemResponse A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type NotImplementedProblemResponse

type NotImplementedProblemResponse = Problem

NotImplementedProblemResponse A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type Period

type Period struct {
	// From Period start time where the amount was applied. If applicable.
	From time.Time `json:"from"`

	// To Period end time where the amount was applied. If applicable.
	To time.Time `json:"to"`
}

Period A time period

type PortalToken

type PortalToken struct {
	// AllowedMeterSlugs Optional, if defined only the specified meters will be allowed
	AllowedMeterSlugs *[]string  `json:"allowedMeterSlugs,omitempty"`
	CreatedAt         *time.Time `json:"createdAt,omitempty"`
	Expired           *bool      `json:"expired,omitempty"`
	ExpiresAt         *time.Time `json:"expiresAt,omitempty"`
	Id                *string    `json:"id,omitempty"`
	Subject           string     `json:"subject"`

	// Token The token is only returned at creation.
	Token *string `json:"token,omitempty"`
}

PortalToken A consumer portal token.

type Problem

type Problem = models.StatusProblem

Problem A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type QueryFilterGroupBy

type QueryFilterGroupBy map[string]string

QueryFilterGroupBy Simple filter for group bys with exact match.

Usage: `?filterGroupBy[type]=input&filterGroupBy[model]=gpt-4`

type QueryFilterSubject

type QueryFilterSubject = []string

QueryFilterSubject defines model for queryFilterSubject.

type QueryFrom

type QueryFrom = time.Time

QueryFrom defines model for queryFrom.

type QueryGroupBy

type QueryGroupBy = []string

QueryGroupBy defines model for queryGroupBy.

type QueryLimit

type QueryLimit = int

QueryLimit defines model for queryLimit.

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 Filtering by multiple subjects.
	//
	// Usage: ?subject=customer-1&subject=customer-2
	Subject       *QueryFilterSubject `form:"subject,omitempty" json:"subject,omitempty"`
	FilterGroupBy *QueryFilterGroupBy `json:"filterGroupBy,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 QueryMeterResponse

type QueryMeterResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *MeterQueryResult
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseQueryMeterResponse

func ParseQueryMeterResponse(rsp *http.Response) (*QueryMeterResponse, error)

ParseQueryMeterResponse parses an HTTP response from a QueryMeterWithResponse call

func (QueryMeterResponse) Status

func (r QueryMeterResponse) Status() string

Status returns HTTPResponse.Status

func (QueryMeterResponse) StatusCode

func (r QueryMeterResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type QueryOffset

type QueryOffset = int

QueryOffset defines model for queryOffset.

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"`
	FilterGroupBy  *QueryFilterGroupBy  `json:"filterGroupBy,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 QueryPortalMeterResponse

type QueryPortalMeterResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *MeterQueryResult
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseQueryPortalMeterResponse

func ParseQueryPortalMeterResponse(rsp *http.Response) (*QueryPortalMeterResponse, error)

ParseQueryPortalMeterResponse parses an HTTP response from a QueryPortalMeterWithResponse call

func (QueryPortalMeterResponse) Status

func (r QueryPortalMeterResponse) Status() string

Status returns HTTPResponse.Status

func (QueryPortalMeterResponse) StatusCode

func (r QueryPortalMeterResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type QueryTo

type QueryTo = time.Time

QueryTo defines model for queryTo.

type QueryWindowSize

type QueryWindowSize = WindowSize

QueryWindowSize Aggregation window size.

type QueryWindowTimeZone

type QueryWindowTimeZone = string

QueryWindowTimeZone defines model for queryWindowTimeZone.

type RecurringPeriod

type RecurringPeriod struct {
	// Anchor An arbitrary anchor to base the recurring period on.
	Anchor time.Time `json:"anchor"`

	// Interval List of pre-defined periods that can be used for recurring & scheduling.
	//
	// DAY:      Every day
	// WEEK:     Every week
	// MONTH:    Every month
	// YEAR:     Every year
	Interval RecurringPeriodEnum `json:"interval"`
}

RecurringPeriod Recurring period of an entitlement.

type RecurringPeriodCreateInput

type RecurringPeriodCreateInput struct {
	// Anchor An arbitrary anchor to base the recurring period on.
	// If not provided then defaults to now truncated to the hour.
	Anchor *time.Time `json:"anchor,omitempty"`

	// Interval List of pre-defined periods that can be used for recurring & scheduling.
	//
	// DAY:      Every day
	// WEEK:     Every week
	// MONTH:    Every month
	// YEAR:     Every year
	Interval RecurringPeriodEnum `json:"interval"`
}

RecurringPeriodCreateInput Recurring period of an entitlement.

type RecurringPeriodEnum

type RecurringPeriodEnum string

RecurringPeriodEnum List of pre-defined periods that can be used for recurring & scheduling.

DAY: Every day WEEK: Every week MONTH: Every month YEAR: Every year

const (
	RecurringPeriodEnumDAY   RecurringPeriodEnum = "DAY"
	RecurringPeriodEnumMONTH RecurringPeriodEnum = "MONTH"
	RecurringPeriodEnumWEEK  RecurringPeriodEnum = "WEEK"
	RecurringPeriodEnumYEAR  RecurringPeriodEnum = "YEAR"
)

Defines values for RecurringPeriodEnum.

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type ResetEntitlementUsageJSONBody

type ResetEntitlementUsageJSONBody struct {
	// EffectiveAt The time at which the reset takes effect, defaults to now.
	// The reset cannot be in the future.
	// The provided value is truncated to the granularity of the underlying meter.
	EffectiveAt *time.Time `json:"effectiveAt,omitempty"`

	// RetainAnchor Should the reset retain the usage period anchor.
	// If true, the usage period anchor is retained.
	// If false, the usage period anchor is reset to the effectiveAt time.
	RetainAnchor *bool `json:"retainAnchor,omitempty"`
}

ResetEntitlementUsageJSONBody defines parameters for ResetEntitlementUsage.

type ResetEntitlementUsageJSONRequestBody

type ResetEntitlementUsageJSONRequestBody ResetEntitlementUsageJSONBody

ResetEntitlementUsageJSONRequestBody defines body for ResetEntitlementUsage for application/json ContentType.

type ResetEntitlementUsageResponse

type ResetEntitlementUsageResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseResetEntitlementUsageResponse

func ParseResetEntitlementUsageResponse(rsp *http.Response) (*ResetEntitlementUsageResponse, error)

ParseResetEntitlementUsageResponse parses an HTTP response from a ResetEntitlementUsageWithResponse call

func (ResetEntitlementUsageResponse) Status

Status returns HTTPResponse.Status

func (ResetEntitlementUsageResponse) StatusCode

func (r ResetEntitlementUsageResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SharedMetaFields

type SharedMetaFields struct {
	// CreatedAt The date and time the resource was created.
	CreatedAt *time.Time `json:"createdAt,omitempty"`

	// DeletedAt The date and time the resource was deleted. Null if not deleted.
	DeletedAt *time.Time `json:"deletedAt,omitempty"`

	// Id Readonly unique ULID identifier.
	Id *string `json:"id,omitempty"`

	// UpdatedAt The date and time the resource was last updated. Defaults to createdAt if not updated.
	UpdatedAt *time.Time `json:"updatedAt,omitempty"`
}

SharedMetaFields Metadata fields for a resource. These fields are automatically populated by the system for the entities we manage.

type Subject

type Subject struct {
	CurrentPeriodEnd   *time.Time              `json:"currentPeriodEnd"`
	CurrentPeriodStart *time.Time              `json:"currentPeriodStart"`
	DisplayName        *string                 `json:"displayName"`
	Id                 *string                 `json:"id,omitempty"`
	Key                string                  `json:"key"`
	Metadata           *map[string]interface{} `json:"metadata"`
	StripeCustomerId   *string                 `json:"stripeCustomerId"`
}

Subject A subject is a unique identifier for a user or entity.

type SubjectIdOrKey

type SubjectIdOrKey = string

SubjectIdOrKey defines model for subjectIdOrKey.

type UnauthorizedProblemResponse

type UnauthorizedProblemResponse = Problem

UnauthorizedProblemResponse A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type UnexpectedProblemResponse

type UnexpectedProblemResponse = Problem

UnexpectedProblemResponse A Problem Details object (RFC 7807). Additional properties specific to the problem type may be present.

type UpsertSubjectJSONBody

type UpsertSubjectJSONBody = []Subject

UpsertSubjectJSONBody defines parameters for UpsertSubject.

type UpsertSubjectJSONRequestBody

type UpsertSubjectJSONRequestBody = UpsertSubjectJSONBody

UpsertSubjectJSONRequestBody defines body for UpsertSubject for application/json ContentType.

type UpsertSubjectResponse

type UpsertSubjectResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	JSON200                       *[]Subject
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON501     *NotImplementedProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseUpsertSubjectResponse

func ParseUpsertSubjectResponse(rsp *http.Response) (*UpsertSubjectResponse, error)

ParseUpsertSubjectResponse parses an HTTP response from a UpsertSubjectWithResponse call

func (UpsertSubjectResponse) Status

func (r UpsertSubjectResponse) Status() string

Status returns HTTPResponse.Status

func (UpsertSubjectResponse) StatusCode

func (r UpsertSubjectResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type VoidGrantResponse

type VoidGrantResponse struct {
	Body                          []byte
	HTTPResponse                  *http.Response
	ApplicationproblemJSON400     *BadRequestProblemResponse
	ApplicationproblemJSON401     *UnauthorizedProblemResponse
	ApplicationproblemJSON404     *NotFoundProblemResponse
	ApplicationproblemJSON409     *ConflictProblemResponse
	ApplicationproblemJSONDefault *UnexpectedProblemResponse
}

func ParseVoidGrantResponse

func ParseVoidGrantResponse(rsp *http.Response) (*VoidGrantResponse, error)

ParseVoidGrantResponse parses an HTTP response from a VoidGrantWithResponse call

func (VoidGrantResponse) Status

func (r VoidGrantResponse) Status() string

Status returns HTTPResponse.Status

func (VoidGrantResponse) StatusCode

func (r VoidGrantResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type WindowSize

type WindowSize = models.WindowSize

WindowSize Aggregation window size.

type WindowedBalanceHistory

type WindowedBalanceHistory struct {
	// BurndownHistory The grant burn down history in the period.
	BurndownHistory *[]GrantBurnDownHistorySegment `json:"burndownHistory,omitempty"`

	// WindowedHistory The windowed balance history.
	// Only returns rows for windows where there was usage.
	WindowedHistory *[]BalanceHistoryWindow `json:"windowedHistory,omitempty"`
}

WindowedBalanceHistory The windowed balance history.

Jump to

Keyboard shortcuts

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