add new '/sparklines' endpoint (#823); organization endpoints

This commit is contained in:
Michael Quigley 2025-01-10 13:41:24 -05:00
parent 272cc87797
commit 0294827f5c
No known key found for this signature in database
GPG Key ID: 9B60314A9DD20A62
56 changed files with 2951 additions and 20 deletions

View File

@ -0,0 +1,146 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"context"
"net/http"
"time"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime"
cr "github.com/go-openapi/runtime/client"
"github.com/go-openapi/strfmt"
)
// NewGetSparklinesParams creates a new GetSparklinesParams object,
// with the default timeout for this client.
//
// Default values are not hydrated, since defaults are normally applied by the API server side.
//
// To enforce default values in parameter, use SetDefaults or WithDefaults.
func NewGetSparklinesParams() *GetSparklinesParams {
return &GetSparklinesParams{
timeout: cr.DefaultTimeout,
}
}
// NewGetSparklinesParamsWithTimeout creates a new GetSparklinesParams object
// with the ability to set a timeout on a request.
func NewGetSparklinesParamsWithTimeout(timeout time.Duration) *GetSparklinesParams {
return &GetSparklinesParams{
timeout: timeout,
}
}
// NewGetSparklinesParamsWithContext creates a new GetSparklinesParams object
// with the ability to set a context for a request.
func NewGetSparklinesParamsWithContext(ctx context.Context) *GetSparklinesParams {
return &GetSparklinesParams{
Context: ctx,
}
}
// NewGetSparklinesParamsWithHTTPClient creates a new GetSparklinesParams object
// with the ability to set a custom HTTPClient for a request.
func NewGetSparklinesParamsWithHTTPClient(client *http.Client) *GetSparklinesParams {
return &GetSparklinesParams{
HTTPClient: client,
}
}
/*
GetSparklinesParams contains all the parameters to send to the API endpoint
for the get sparklines operation.
Typically these are written to a http.Request.
*/
type GetSparklinesParams struct {
// Body.
Body GetSparklinesBody
timeout time.Duration
Context context.Context
HTTPClient *http.Client
}
// WithDefaults hydrates default values in the get sparklines params (not the query body).
//
// All values with no default are reset to their zero value.
func (o *GetSparklinesParams) WithDefaults() *GetSparklinesParams {
o.SetDefaults()
return o
}
// SetDefaults hydrates default values in the get sparklines params (not the query body).
//
// All values with no default are reset to their zero value.
func (o *GetSparklinesParams) SetDefaults() {
// no default values defined for this parameter
}
// WithTimeout adds the timeout to the get sparklines params
func (o *GetSparklinesParams) WithTimeout(timeout time.Duration) *GetSparklinesParams {
o.SetTimeout(timeout)
return o
}
// SetTimeout adds the timeout to the get sparklines params
func (o *GetSparklinesParams) SetTimeout(timeout time.Duration) {
o.timeout = timeout
}
// WithContext adds the context to the get sparklines params
func (o *GetSparklinesParams) WithContext(ctx context.Context) *GetSparklinesParams {
o.SetContext(ctx)
return o
}
// SetContext adds the context to the get sparklines params
func (o *GetSparklinesParams) SetContext(ctx context.Context) {
o.Context = ctx
}
// WithHTTPClient adds the HTTPClient to the get sparklines params
func (o *GetSparklinesParams) WithHTTPClient(client *http.Client) *GetSparklinesParams {
o.SetHTTPClient(client)
return o
}
// SetHTTPClient adds the HTTPClient to the get sparklines params
func (o *GetSparklinesParams) SetHTTPClient(client *http.Client) {
o.HTTPClient = client
}
// WithBody adds the body to the get sparklines params
func (o *GetSparklinesParams) WithBody(body GetSparklinesBody) *GetSparklinesParams {
o.SetBody(body)
return o
}
// SetBody adds the body to the get sparklines params
func (o *GetSparklinesParams) SetBody(body GetSparklinesBody) {
o.Body = body
}
// WriteToRequest writes these params to a swagger request
func (o *GetSparklinesParams) WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error {
if err := r.SetTimeout(o.timeout); err != nil {
return err
}
var res []error
if err := r.SetBodyParam(o.Body); err != nil {
return err
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}

View File

@ -0,0 +1,382 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"context"
"fmt"
"io"
"strconv"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/openziti/zrok/rest_model_zrok"
)
// GetSparklinesReader is a Reader for the GetSparklines structure.
type GetSparklinesReader struct {
formats strfmt.Registry
}
// ReadResponse reads a server response into the received o.
func (o *GetSparklinesReader) ReadResponse(response runtime.ClientResponse, consumer runtime.Consumer) (interface{}, error) {
switch response.Code() {
case 200:
result := NewGetSparklinesOK()
if err := result.readResponse(response, consumer, o.formats); err != nil {
return nil, err
}
return result, nil
case 401:
result := NewGetSparklinesUnauthorized()
if err := result.readResponse(response, consumer, o.formats); err != nil {
return nil, err
}
return nil, result
case 500:
result := NewGetSparklinesInternalServerError()
if err := result.readResponse(response, consumer, o.formats); err != nil {
return nil, err
}
return nil, result
default:
return nil, runtime.NewAPIError("[POST /sparklines] getSparklines", response, response.Code())
}
}
// NewGetSparklinesOK creates a GetSparklinesOK with default headers values
func NewGetSparklinesOK() *GetSparklinesOK {
return &GetSparklinesOK{}
}
/*
GetSparklinesOK describes a response with status code 200, with default header values.
sparklines data
*/
type GetSparklinesOK struct {
Payload *GetSparklinesOKBody
}
// IsSuccess returns true when this get sparklines o k response has a 2xx status code
func (o *GetSparklinesOK) IsSuccess() bool {
return true
}
// IsRedirect returns true when this get sparklines o k response has a 3xx status code
func (o *GetSparklinesOK) IsRedirect() bool {
return false
}
// IsClientError returns true when this get sparklines o k response has a 4xx status code
func (o *GetSparklinesOK) IsClientError() bool {
return false
}
// IsServerError returns true when this get sparklines o k response has a 5xx status code
func (o *GetSparklinesOK) IsServerError() bool {
return false
}
// IsCode returns true when this get sparklines o k response a status code equal to that given
func (o *GetSparklinesOK) IsCode(code int) bool {
return code == 200
}
// Code gets the status code for the get sparklines o k response
func (o *GetSparklinesOK) Code() int {
return 200
}
func (o *GetSparklinesOK) Error() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesOK %+v", 200, o.Payload)
}
func (o *GetSparklinesOK) String() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesOK %+v", 200, o.Payload)
}
func (o *GetSparklinesOK) GetPayload() *GetSparklinesOKBody {
return o.Payload
}
func (o *GetSparklinesOK) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
o.Payload = new(GetSparklinesOKBody)
// response payload
if err := consumer.Consume(response.Body(), o.Payload); err != nil && err != io.EOF {
return err
}
return nil
}
// NewGetSparklinesUnauthorized creates a GetSparklinesUnauthorized with default headers values
func NewGetSparklinesUnauthorized() *GetSparklinesUnauthorized {
return &GetSparklinesUnauthorized{}
}
/*
GetSparklinesUnauthorized describes a response with status code 401, with default header values.
unauthorized
*/
type GetSparklinesUnauthorized struct {
}
// IsSuccess returns true when this get sparklines unauthorized response has a 2xx status code
func (o *GetSparklinesUnauthorized) IsSuccess() bool {
return false
}
// IsRedirect returns true when this get sparklines unauthorized response has a 3xx status code
func (o *GetSparklinesUnauthorized) IsRedirect() bool {
return false
}
// IsClientError returns true when this get sparklines unauthorized response has a 4xx status code
func (o *GetSparklinesUnauthorized) IsClientError() bool {
return true
}
// IsServerError returns true when this get sparklines unauthorized response has a 5xx status code
func (o *GetSparklinesUnauthorized) IsServerError() bool {
return false
}
// IsCode returns true when this get sparklines unauthorized response a status code equal to that given
func (o *GetSparklinesUnauthorized) IsCode(code int) bool {
return code == 401
}
// Code gets the status code for the get sparklines unauthorized response
func (o *GetSparklinesUnauthorized) Code() int {
return 401
}
func (o *GetSparklinesUnauthorized) Error() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesUnauthorized ", 401)
}
func (o *GetSparklinesUnauthorized) String() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesUnauthorized ", 401)
}
func (o *GetSparklinesUnauthorized) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
return nil
}
// NewGetSparklinesInternalServerError creates a GetSparklinesInternalServerError with default headers values
func NewGetSparklinesInternalServerError() *GetSparklinesInternalServerError {
return &GetSparklinesInternalServerError{}
}
/*
GetSparklinesInternalServerError describes a response with status code 500, with default header values.
internal server error
*/
type GetSparklinesInternalServerError struct {
}
// IsSuccess returns true when this get sparklines internal server error response has a 2xx status code
func (o *GetSparklinesInternalServerError) IsSuccess() bool {
return false
}
// IsRedirect returns true when this get sparklines internal server error response has a 3xx status code
func (o *GetSparklinesInternalServerError) IsRedirect() bool {
return false
}
// IsClientError returns true when this get sparklines internal server error response has a 4xx status code
func (o *GetSparklinesInternalServerError) IsClientError() bool {
return false
}
// IsServerError returns true when this get sparklines internal server error response has a 5xx status code
func (o *GetSparklinesInternalServerError) IsServerError() bool {
return true
}
// IsCode returns true when this get sparklines internal server error response a status code equal to that given
func (o *GetSparklinesInternalServerError) IsCode(code int) bool {
return code == 500
}
// Code gets the status code for the get sparklines internal server error response
func (o *GetSparklinesInternalServerError) Code() int {
return 500
}
func (o *GetSparklinesInternalServerError) Error() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesInternalServerError ", 500)
}
func (o *GetSparklinesInternalServerError) String() string {
return fmt.Sprintf("[POST /sparklines][%d] getSparklinesInternalServerError ", 500)
}
func (o *GetSparklinesInternalServerError) readResponse(response runtime.ClientResponse, consumer runtime.Consumer, formats strfmt.Registry) error {
return nil
}
/*
GetSparklinesBody get sparklines body
swagger:model GetSparklinesBody
*/
type GetSparklinesBody struct {
// account
Account bool `json:"account,omitempty"`
// environments
Environments []string `json:"environments"`
// shares
Shares []string `json:"shares"`
}
// Validate validates this get sparklines body
func (o *GetSparklinesBody) Validate(formats strfmt.Registry) error {
return nil
}
// ContextValidate validates this get sparklines body based on context it is used
func (o *GetSparklinesBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
return nil
}
// MarshalBinary interface implementation
func (o *GetSparklinesBody) MarshalBinary() ([]byte, error) {
if o == nil {
return nil, nil
}
return swag.WriteJSON(o)
}
// UnmarshalBinary interface implementation
func (o *GetSparklinesBody) UnmarshalBinary(b []byte) error {
var res GetSparklinesBody
if err := swag.ReadJSON(b, &res); err != nil {
return err
}
*o = res
return nil
}
/*
GetSparklinesOKBody get sparklines o k body
swagger:model GetSparklinesOKBody
*/
type GetSparklinesOKBody struct {
// sparklines
Sparklines []*rest_model_zrok.Metrics `json:"sparklines"`
}
// Validate validates this get sparklines o k body
func (o *GetSparklinesOKBody) Validate(formats strfmt.Registry) error {
var res []error
if err := o.validateSparklines(formats); err != nil {
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (o *GetSparklinesOKBody) validateSparklines(formats strfmt.Registry) error {
if swag.IsZero(o.Sparklines) { // not required
return nil
}
for i := 0; i < len(o.Sparklines); i++ {
if swag.IsZero(o.Sparklines[i]) { // not required
continue
}
if o.Sparklines[i] != nil {
if err := o.Sparklines[i].Validate(formats); err != nil {
if ve, ok := err.(*errors.Validation); ok {
return ve.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
} else if ce, ok := err.(*errors.CompositeError); ok {
return ce.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
}
return err
}
}
}
return nil
}
// ContextValidate validate this get sparklines o k body based on the context it is used
func (o *GetSparklinesOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
var res []error
if err := o.contextValidateSparklines(ctx, formats); err != nil {
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (o *GetSparklinesOKBody) contextValidateSparklines(ctx context.Context, formats strfmt.Registry) error {
for i := 0; i < len(o.Sparklines); i++ {
if o.Sparklines[i] != nil {
if swag.IsZero(o.Sparklines[i]) { // not required
return nil
}
if err := o.Sparklines[i].ContextValidate(ctx, formats); err != nil {
if ve, ok := err.(*errors.Validation); ok {
return ve.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
} else if ce, ok := err.(*errors.CompositeError); ok {
return ce.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
}
return err
}
}
}
return nil
}
// MarshalBinary interface implementation
func (o *GetSparklinesOKBody) MarshalBinary() ([]byte, error) {
if o == nil {
return nil, nil
}
return swag.WriteJSON(o)
}
// UnmarshalBinary interface implementation
func (o *GetSparklinesOKBody) UnmarshalBinary(b []byte) error {
var res GetSparklinesOKBody
if err := swag.ReadJSON(b, &res); err != nil {
return err
}
*o = res
return nil
}

View File

@ -46,6 +46,8 @@ type ClientService interface {
GetShareMetrics(params *GetShareMetricsParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetShareMetricsOK, error)
GetSparklines(params *GetSparklinesParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetSparklinesOK, error)
ListMemberships(params *ListMembershipsParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ListMembershipsOK, error)
ListOrgMembers(params *ListOrgMembersParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*ListOrgMembersOK, error)
@ -370,6 +372,45 @@ func (a *Client) GetShareMetrics(params *GetShareMetricsParams, authInfo runtime
panic(msg)
}
/*
GetSparklines get sparklines API
*/
func (a *Client) GetSparklines(params *GetSparklinesParams, authInfo runtime.ClientAuthInfoWriter, opts ...ClientOption) (*GetSparklinesOK, error) {
// TODO: Validate the params before sending
if params == nil {
params = NewGetSparklinesParams()
}
op := &runtime.ClientOperation{
ID: "getSparklines",
Method: "POST",
PathPattern: "/sparklines",
ProducesMediaTypes: []string{"application/zrok.v1+json"},
ConsumesMediaTypes: []string{"application/zrok.v1+json"},
Schemes: []string{"http"},
Params: params,
Reader: &GetSparklinesReader{formats: a.formats},
AuthInfo: authInfo,
Context: params.Context,
Client: params.HTTPClient,
}
for _, opt := range opts {
opt(op)
}
result, err := a.transport.Submit(op)
if err != nil {
return nil, err
}
success, ok := result.(*GetSparklinesOK)
if ok {
return success, nil
}
// unexpected success response
// safeguard: normally, absent a default response, unknown success responses return an error above: so this is a codegen issue
msg := fmt.Sprintf("unexpected success response for getSparklines: API contract not enforced by server. Client expected to get an error, but got: %T", result)
panic(msg)
}
/*
ListMemberships list memberships API
*/

View File

@ -1490,6 +1490,65 @@ func init() {
}
}
},
"/sparklines": {
"post": {
"security": [
{
"key": []
}
],
"tags": [
"metadata"
],
"operationId": "getSparklines",
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"properties": {
"account": {
"type": "boolean"
},
"environments": {
"type": "array",
"items": {
"type": "string"
}
},
"shares": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"responses": {
"200": {
"description": "sparklines data",
"schema": {
"properties": {
"sparklines": {
"type": "array",
"items": {
"$ref": "#/definitions/metrics"
}
}
}
}
},
"401": {
"description": "unauthorized"
},
"500": {
"description": "internal server error"
}
}
}
},
"/unaccess": {
"delete": {
"security": [
@ -3709,6 +3768,65 @@ func init() {
}
}
},
"/sparklines": {
"post": {
"security": [
{
"key": []
}
],
"tags": [
"metadata"
],
"operationId": "getSparklines",
"parameters": [
{
"name": "body",
"in": "body",
"schema": {
"properties": {
"account": {
"type": "boolean"
},
"environments": {
"type": "array",
"items": {
"type": "string"
}
},
"shares": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
],
"responses": {
"200": {
"description": "sparklines data",
"schema": {
"properties": {
"sparklines": {
"type": "array",
"items": {
"$ref": "#/definitions/metrics"
}
}
}
}
},
"401": {
"description": "unauthorized"
},
"500": {
"description": "internal server error"
}
}
}
},
"/unaccess": {
"delete": {
"security": [

View File

@ -0,0 +1,225 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the generate command
import (
"context"
"net/http"
"strconv"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime/middleware"
"github.com/go-openapi/strfmt"
"github.com/go-openapi/swag"
"github.com/openziti/zrok/rest_model_zrok"
)
// GetSparklinesHandlerFunc turns a function with the right signature into a get sparklines handler
type GetSparklinesHandlerFunc func(GetSparklinesParams, *rest_model_zrok.Principal) middleware.Responder
// Handle executing the request and returning a response
func (fn GetSparklinesHandlerFunc) Handle(params GetSparklinesParams, principal *rest_model_zrok.Principal) middleware.Responder {
return fn(params, principal)
}
// GetSparklinesHandler interface for that can handle valid get sparklines params
type GetSparklinesHandler interface {
Handle(GetSparklinesParams, *rest_model_zrok.Principal) middleware.Responder
}
// NewGetSparklines creates a new http.Handler for the get sparklines operation
func NewGetSparklines(ctx *middleware.Context, handler GetSparklinesHandler) *GetSparklines {
return &GetSparklines{Context: ctx, Handler: handler}
}
/*
GetSparklines swagger:route POST /sparklines metadata getSparklines
GetSparklines get sparklines API
*/
type GetSparklines struct {
Context *middleware.Context
Handler GetSparklinesHandler
}
func (o *GetSparklines) ServeHTTP(rw http.ResponseWriter, r *http.Request) {
route, rCtx, _ := o.Context.RouteInfo(r)
if rCtx != nil {
*r = *rCtx
}
var Params = NewGetSparklinesParams()
uprinc, aCtx, err := o.Context.Authorize(r, route)
if err != nil {
o.Context.Respond(rw, r, route.Produces, route, err)
return
}
if aCtx != nil {
*r = *aCtx
}
var principal *rest_model_zrok.Principal
if uprinc != nil {
principal = uprinc.(*rest_model_zrok.Principal) // this is really a rest_model_zrok.Principal, I promise
}
if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params
o.Context.Respond(rw, r, route.Produces, route, err)
return
}
res := o.Handler.Handle(Params, principal) // actually handle the request
o.Context.Respond(rw, r, route.Produces, route, res)
}
// GetSparklinesBody get sparklines body
//
// swagger:model GetSparklinesBody
type GetSparklinesBody struct {
// account
Account bool `json:"account,omitempty"`
// environments
Environments []string `json:"environments"`
// shares
Shares []string `json:"shares"`
}
// Validate validates this get sparklines body
func (o *GetSparklinesBody) Validate(formats strfmt.Registry) error {
return nil
}
// ContextValidate validates this get sparklines body based on context it is used
func (o *GetSparklinesBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
return nil
}
// MarshalBinary interface implementation
func (o *GetSparklinesBody) MarshalBinary() ([]byte, error) {
if o == nil {
return nil, nil
}
return swag.WriteJSON(o)
}
// UnmarshalBinary interface implementation
func (o *GetSparklinesBody) UnmarshalBinary(b []byte) error {
var res GetSparklinesBody
if err := swag.ReadJSON(b, &res); err != nil {
return err
}
*o = res
return nil
}
// GetSparklinesOKBody get sparklines o k body
//
// swagger:model GetSparklinesOKBody
type GetSparklinesOKBody struct {
// sparklines
Sparklines []*rest_model_zrok.Metrics `json:"sparklines"`
}
// Validate validates this get sparklines o k body
func (o *GetSparklinesOKBody) Validate(formats strfmt.Registry) error {
var res []error
if err := o.validateSparklines(formats); err != nil {
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (o *GetSparklinesOKBody) validateSparklines(formats strfmt.Registry) error {
if swag.IsZero(o.Sparklines) { // not required
return nil
}
for i := 0; i < len(o.Sparklines); i++ {
if swag.IsZero(o.Sparklines[i]) { // not required
continue
}
if o.Sparklines[i] != nil {
if err := o.Sparklines[i].Validate(formats); err != nil {
if ve, ok := err.(*errors.Validation); ok {
return ve.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
} else if ce, ok := err.(*errors.CompositeError); ok {
return ce.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
}
return err
}
}
}
return nil
}
// ContextValidate validate this get sparklines o k body based on the context it is used
func (o *GetSparklinesOKBody) ContextValidate(ctx context.Context, formats strfmt.Registry) error {
var res []error
if err := o.contextValidateSparklines(ctx, formats); err != nil {
res = append(res, err)
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}
func (o *GetSparklinesOKBody) contextValidateSparklines(ctx context.Context, formats strfmt.Registry) error {
for i := 0; i < len(o.Sparklines); i++ {
if o.Sparklines[i] != nil {
if swag.IsZero(o.Sparklines[i]) { // not required
return nil
}
if err := o.Sparklines[i].ContextValidate(ctx, formats); err != nil {
if ve, ok := err.(*errors.Validation); ok {
return ve.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
} else if ce, ok := err.(*errors.CompositeError); ok {
return ce.ValidateName("getSparklinesOK" + "." + "sparklines" + "." + strconv.Itoa(i))
}
return err
}
}
}
return nil
}
// MarshalBinary interface implementation
func (o *GetSparklinesOKBody) MarshalBinary() ([]byte, error) {
if o == nil {
return nil, nil
}
return swag.WriteJSON(o)
}
// UnmarshalBinary interface implementation
func (o *GetSparklinesOKBody) UnmarshalBinary(b []byte) error {
var res GetSparklinesOKBody
if err := swag.ReadJSON(b, &res); err != nil {
return err
}
*o = res
return nil
}

View File

@ -0,0 +1,74 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"net/http"
"github.com/go-openapi/errors"
"github.com/go-openapi/runtime"
"github.com/go-openapi/runtime/middleware"
"github.com/go-openapi/validate"
)
// NewGetSparklinesParams creates a new GetSparklinesParams object
//
// There are no default values defined in the spec.
func NewGetSparklinesParams() GetSparklinesParams {
return GetSparklinesParams{}
}
// GetSparklinesParams contains all the bound params for the get sparklines operation
// typically these are obtained from a http.Request
//
// swagger:parameters getSparklines
type GetSparklinesParams struct {
// HTTP Request Object
HTTPRequest *http.Request `json:"-"`
/*
In: body
*/
Body GetSparklinesBody
}
// BindRequest both binds and validates a request, it assumes that complex things implement a Validatable(strfmt.Registry) error interface
// for simple values it will use straight method calls.
//
// To ensure default values, the struct must have been initialized with NewGetSparklinesParams() beforehand.
func (o *GetSparklinesParams) BindRequest(r *http.Request, route *middleware.MatchedRoute) error {
var res []error
o.HTTPRequest = r
if runtime.HasBody(r) {
defer r.Body.Close()
var body GetSparklinesBody
if err := route.Consumer.Consume(r.Body, &body); err != nil {
res = append(res, errors.NewParseError("body", "body", "", err))
} else {
// validate body object
if err := body.Validate(route.Formats); err != nil {
res = append(res, err)
}
ctx := validate.WithOperationRequest(r.Context())
if err := body.ContextValidate(ctx, route.Formats); err != nil {
res = append(res, err)
}
if len(res) == 0 {
o.Body = body
}
}
}
if len(res) > 0 {
return errors.CompositeValidationError(res...)
}
return nil
}

View File

@ -0,0 +1,107 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
import (
"net/http"
"github.com/go-openapi/runtime"
)
// GetSparklinesOKCode is the HTTP code returned for type GetSparklinesOK
const GetSparklinesOKCode int = 200
/*
GetSparklinesOK sparklines data
swagger:response getSparklinesOK
*/
type GetSparklinesOK struct {
/*
In: Body
*/
Payload *GetSparklinesOKBody `json:"body,omitempty"`
}
// NewGetSparklinesOK creates GetSparklinesOK with default headers values
func NewGetSparklinesOK() *GetSparklinesOK {
return &GetSparklinesOK{}
}
// WithPayload adds the payload to the get sparklines o k response
func (o *GetSparklinesOK) WithPayload(payload *GetSparklinesOKBody) *GetSparklinesOK {
o.Payload = payload
return o
}
// SetPayload sets the payload to the get sparklines o k response
func (o *GetSparklinesOK) SetPayload(payload *GetSparklinesOKBody) {
o.Payload = payload
}
// WriteResponse to the client
func (o *GetSparklinesOK) WriteResponse(rw http.ResponseWriter, producer runtime.Producer) {
rw.WriteHeader(200)
if o.Payload != nil {
payload := o.Payload
if err := producer.Produce(rw, payload); err != nil {
panic(err) // let the recovery middleware deal with this
}
}
}
// GetSparklinesUnauthorizedCode is the HTTP code returned for type GetSparklinesUnauthorized
const GetSparklinesUnauthorizedCode int = 401
/*
GetSparklinesUnauthorized unauthorized
swagger:response getSparklinesUnauthorized
*/
type GetSparklinesUnauthorized struct {
}
// NewGetSparklinesUnauthorized creates GetSparklinesUnauthorized with default headers values
func NewGetSparklinesUnauthorized() *GetSparklinesUnauthorized {
return &GetSparklinesUnauthorized{}
}
// WriteResponse to the client
func (o *GetSparklinesUnauthorized) WriteResponse(rw http.ResponseWriter, producer runtime.Producer) {
rw.Header().Del(runtime.HeaderContentType) //Remove Content-Type on empty responses
rw.WriteHeader(401)
}
// GetSparklinesInternalServerErrorCode is the HTTP code returned for type GetSparklinesInternalServerError
const GetSparklinesInternalServerErrorCode int = 500
/*
GetSparklinesInternalServerError internal server error
swagger:response getSparklinesInternalServerError
*/
type GetSparklinesInternalServerError struct {
}
// NewGetSparklinesInternalServerError creates GetSparklinesInternalServerError with default headers values
func NewGetSparklinesInternalServerError() *GetSparklinesInternalServerError {
return &GetSparklinesInternalServerError{}
}
// WriteResponse to the client
func (o *GetSparklinesInternalServerError) WriteResponse(rw http.ResponseWriter, producer runtime.Producer) {
rw.Header().Del(runtime.HeaderContentType) //Remove Content-Type on empty responses
rw.WriteHeader(500)
}

View File

@ -0,0 +1,87 @@
// Code generated by go-swagger; DO NOT EDIT.
package metadata
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the generate command
import (
"errors"
"net/url"
golangswaggerpaths "path"
)
// GetSparklinesURL generates an URL for the get sparklines operation
type GetSparklinesURL struct {
_basePath string
}
// WithBasePath sets the base path for this url builder, only required when it's different from the
// base path specified in the swagger spec.
// When the value of the base path is an empty string
func (o *GetSparklinesURL) WithBasePath(bp string) *GetSparklinesURL {
o.SetBasePath(bp)
return o
}
// SetBasePath sets the base path for this url builder, only required when it's different from the
// base path specified in the swagger spec.
// When the value of the base path is an empty string
func (o *GetSparklinesURL) SetBasePath(bp string) {
o._basePath = bp
}
// Build a url path and query string
func (o *GetSparklinesURL) Build() (*url.URL, error) {
var _result url.URL
var _path = "/sparklines"
_basePath := o._basePath
if _basePath == "" {
_basePath = "/api/v1"
}
_result.Path = golangswaggerpaths.Join(_basePath, _path)
return &_result, nil
}
// Must is a helper function to panic when the url builder returns an error
func (o *GetSparklinesURL) Must(u *url.URL, err error) *url.URL {
if err != nil {
panic(err)
}
if u == nil {
panic("url can't be nil")
}
return u
}
// String returns the string representation of the path with query string
func (o *GetSparklinesURL) String() string {
return o.Must(o.Build()).String()
}
// BuildFull builds a full url with scheme, host, path and query string
func (o *GetSparklinesURL) BuildFull(scheme, host string) (*url.URL, error) {
if scheme == "" {
return nil, errors.New("scheme is required for a full url on GetSparklinesURL")
}
if host == "" {
return nil, errors.New("host is required for a full url on GetSparklinesURL")
}
base, err := o.Build()
if err != nil {
return nil, err
}
base.Scheme = scheme
base.Host = host
return base, nil
}
// StringFull returns the string representation of a complete url
func (o *GetSparklinesURL) StringFull(scheme, host string) string {
return o.Must(o.BuildFull(scheme, host)).String()
}

View File

@ -106,6 +106,9 @@ func NewZrokAPI(spec *loads.Document) *ZrokAPI {
MetadataGetShareMetricsHandler: metadata.GetShareMetricsHandlerFunc(func(params metadata.GetShareMetricsParams, principal *rest_model_zrok.Principal) middleware.Responder {
return middleware.NotImplemented("operation metadata.GetShareMetrics has not yet been implemented")
}),
MetadataGetSparklinesHandler: metadata.GetSparklinesHandlerFunc(func(params metadata.GetSparklinesParams, principal *rest_model_zrok.Principal) middleware.Responder {
return middleware.NotImplemented("operation metadata.GetSparklines has not yet been implemented")
}),
AdminGrantsHandler: admin.GrantsHandlerFunc(func(params admin.GrantsParams, principal *rest_model_zrok.Principal) middleware.Responder {
return middleware.NotImplemented("operation admin.Grants has not yet been implemented")
}),
@ -263,6 +266,8 @@ type ZrokAPI struct {
MetadataGetShareDetailHandler metadata.GetShareDetailHandler
// MetadataGetShareMetricsHandler sets the operation handler for the get share metrics operation
MetadataGetShareMetricsHandler metadata.GetShareMetricsHandler
// MetadataGetSparklinesHandler sets the operation handler for the get sparklines operation
MetadataGetSparklinesHandler metadata.GetSparklinesHandler
// AdminGrantsHandler sets the operation handler for the grants operation
AdminGrantsHandler admin.GrantsHandler
// AccountInviteHandler sets the operation handler for the invite operation
@ -447,6 +452,9 @@ func (o *ZrokAPI) Validate() error {
if o.MetadataGetShareMetricsHandler == nil {
unregistered = append(unregistered, "metadata.GetShareMetricsHandler")
}
if o.MetadataGetSparklinesHandler == nil {
unregistered = append(unregistered, "metadata.GetSparklinesHandler")
}
if o.AdminGrantsHandler == nil {
unregistered = append(unregistered, "admin.GrantsHandler")
}
@ -694,6 +702,10 @@ func (o *ZrokAPI) initHandlerCache() {
if o.handlers["POST"] == nil {
o.handlers["POST"] = make(map[string]http.Handler)
}
o.handlers["POST"]["/sparklines"] = metadata.NewGetSparklines(o.context, o.MetadataGetSparklinesHandler)
if o.handlers["POST"] == nil {
o.handlers["POST"] = make(map[string]http.Handler)
}
o.handlers["POST"]["/grants"] = admin.NewGrants(o.context, o.AdminGrantsHandler)
if o.handlers["POST"] == nil {
o.handlers["POST"] = make(map[string]http.Handler)

View File

@ -25,6 +25,8 @@ model/enableResponse.ts
model/environment.ts
model/environmentAndResources.ts
model/frontend.ts
model/getSparklines200Response.ts
model/getSparklinesRequest.ts
model/grantsRequest.ts
model/inviteRequest.ts
model/inviteTokenGenerateRequest.ts

View File

@ -19,6 +19,8 @@ import { Configuration } from '../model/configuration';
import { Environment } from '../model/environment';
import { EnvironmentAndResources } from '../model/environmentAndResources';
import { Frontend } from '../model/frontend';
import { GetSparklines200Response } from '../model/getSparklines200Response';
import { GetSparklinesRequest } from '../model/getSparklinesRequest';
import { ListMemberships200Response } from '../model/listMemberships200Response';
import { ListOrganizationMembers200Response } from '../model/listOrganizationMembers200Response';
import { Metrics } from '../model/metrics';
@ -656,6 +658,72 @@ export class MetadataApi {
});
});
}
/**
*
* @param body
*/
public async getSparklines (body?: GetSparklinesRequest, options: {headers: {[name: string]: string}} = {headers: {}}) : Promise<{ response: http.IncomingMessage; body: GetSparklines200Response; }> {
const localVarPath = this.basePath + '/sparklines';
let localVarQueryParameters: any = {};
let localVarHeaderParams: any = (<any>Object).assign({}, this._defaultHeaders);
const produces = ['application/zrok.v1+json'];
// give precedence to 'application/json'
if (produces.indexOf('application/json') >= 0) {
localVarHeaderParams.Accept = 'application/json';
} else {
localVarHeaderParams.Accept = produces.join(',');
}
let localVarFormParams: any = {};
(<any>Object).assign(localVarHeaderParams, options.headers);
let localVarUseFormData = false;
let localVarRequestOptions: localVarRequest.Options = {
method: 'POST',
qs: localVarQueryParameters,
headers: localVarHeaderParams,
uri: localVarPath,
useQuerystring: this._useQuerystring,
json: true,
body: ObjectSerializer.serialize(body, "GetSparklinesRequest")
};
let authenticationPromise = Promise.resolve();
if (this.authentications.key.apiKey) {
authenticationPromise = authenticationPromise.then(() => this.authentications.key.applyToRequest(localVarRequestOptions));
}
authenticationPromise = authenticationPromise.then(() => this.authentications.default.applyToRequest(localVarRequestOptions));
let interceptorPromise = authenticationPromise;
for (const interceptor of this.interceptors) {
interceptorPromise = interceptorPromise.then(() => interceptor(localVarRequestOptions));
}
return interceptorPromise.then(() => {
if (Object.keys(localVarFormParams).length) {
if (localVarUseFormData) {
(<any>localVarRequestOptions).formData = localVarFormParams;
} else {
localVarRequestOptions.form = localVarFormParams;
}
}
return new Promise<{ response: http.IncomingMessage; body: GetSparklines200Response; }>((resolve, reject) => {
localVarRequest(localVarRequestOptions, (error, response, body) => {
if (error) {
reject(error);
} else {
if (response.statusCode && response.statusCode >= 200 && response.statusCode <= 299) {
body = ObjectSerializer.deserialize(body, "GetSparklines200Response");
resolve({ response: response, body: body });
} else {
reject(new HttpError(response, body, response.statusCode));
}
}
});
});
});
}
/**
*
*/

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -0,0 +1,32 @@
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { RequestFile } from './models';
import { Metrics } from './metrics';
export class GetSparklines200Response {
'sparklines'?: Array<Metrics>;
static discriminator: string | undefined = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
{
"name": "sparklines",
"baseName": "sparklines",
"type": "Array<Metrics>"
} ];
static getAttributeTypeMap() {
return GetSparklines200Response.attributeTypeMap;
}
}

View File

@ -0,0 +1,43 @@
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { RequestFile } from './models';
export class GetSparklinesRequest {
'account'?: boolean;
'environments'?: Array<string>;
'shares'?: Array<string>;
static discriminator: string | undefined = undefined;
static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [
{
"name": "account",
"baseName": "account",
"type": "boolean"
},
{
"name": "environments",
"baseName": "environments",
"type": "Array<string>"
},
{
"name": "shares",
"baseName": "shares",
"type": "Array<string>"
} ];
static getAttributeTypeMap() {
return GetSparklinesRequest.attributeTypeMap;
}
}

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -19,6 +19,8 @@ export * from './enableResponse';
export * from './environment';
export * from './environmentAndResources';
export * from './frontend';
export * from './getSparklines200Response';
export * from './getSparklinesRequest';
export * from './grantsRequest';
export * from './inviteRequest';
export * from './inviteTokenGenerateRequest';
@ -84,6 +86,8 @@ import { EnableResponse } from './enableResponse';
import { Environment } from './environment';
import { EnvironmentAndResources } from './environmentAndResources';
import { Frontend } from './frontend';
import { GetSparklines200Response } from './getSparklines200Response';
import { GetSparklinesRequest } from './getSparklinesRequest';
import { GrantsRequest } from './grantsRequest';
import { InviteRequest } from './inviteRequest';
import { InviteTokenGenerateRequest } from './inviteTokenGenerateRequest';
@ -157,6 +161,8 @@ let typeMap: {[index: string]: any} = {
"Environment": Environment,
"EnvironmentAndResources": EnvironmentAndResources,
"Frontend": Frontend,
"GetSparklines200Response": GetSparklines200Response,
"GetSparklinesRequest": GetSparklinesRequest,
"GrantsRequest": GrantsRequest,
"InviteRequest": InviteRequest,
"InviteTokenGenerateRequest": InviteTokenGenerateRequest,

View File

@ -2,7 +2,7 @@
* zrok
* zrok client access
*
* The version of the OpenAPI document: 0.3.0
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).

View File

@ -51,6 +51,7 @@ from zrok_api.models.inline_response2002 import InlineResponse2002
from zrok_api.models.inline_response2002_organizations import InlineResponse2002Organizations
from zrok_api.models.inline_response2003 import InlineResponse2003
from zrok_api.models.inline_response2003_memberships import InlineResponse2003Memberships
from zrok_api.models.inline_response2004 import InlineResponse2004
from zrok_api.models.inline_response201 import InlineResponse201
from zrok_api.models.invite_request import InviteRequest
from zrok_api.models.invite_token_generate_request import InviteTokenGenerateRequest
@ -79,6 +80,7 @@ from zrok_api.models.share_response import ShareResponse
from zrok_api.models.shares import Shares
from zrok_api.models.spark_data import SparkData
from zrok_api.models.spark_data_sample import SparkDataSample
from zrok_api.models.sparklines_body import SparklinesBody
from zrok_api.models.unaccess_request import UnaccessRequest
from zrok_api.models.unshare_request import UnshareRequest
from zrok_api.models.update_frontend_request import UpdateFrontendRequest

View File

@ -764,6 +764,99 @@ class MetadataApi(object):
_request_timeout=params.get('_request_timeout'),
collection_formats=collection_formats)
def get_sparklines(self, **kwargs): # noqa: E501
"""get_sparklines # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.get_sparklines(async_req=True)
>>> result = thread.get()
:param async_req bool
:param SparklinesBody body:
:return: InlineResponse2004
If the method is called asynchronously,
returns the request thread.
"""
kwargs['_return_http_data_only'] = True
if kwargs.get('async_req'):
return self.get_sparklines_with_http_info(**kwargs) # noqa: E501
else:
(data) = self.get_sparklines_with_http_info(**kwargs) # noqa: E501
return data
def get_sparklines_with_http_info(self, **kwargs): # noqa: E501
"""get_sparklines # noqa: E501
This method makes a synchronous HTTP request by default. To make an
asynchronous HTTP request, please pass async_req=True
>>> thread = api.get_sparklines_with_http_info(async_req=True)
>>> result = thread.get()
:param async_req bool
:param SparklinesBody body:
:return: InlineResponse2004
If the method is called asynchronously,
returns the request thread.
"""
all_params = ['body'] # noqa: E501
all_params.append('async_req')
all_params.append('_return_http_data_only')
all_params.append('_preload_content')
all_params.append('_request_timeout')
params = locals()
for key, val in six.iteritems(params['kwargs']):
if key not in all_params:
raise TypeError(
"Got an unexpected keyword argument '%s'"
" to method get_sparklines" % key
)
params[key] = val
del params['kwargs']
collection_formats = {}
path_params = {}
query_params = []
header_params = {}
form_params = []
local_var_files = {}
body_params = None
if 'body' in params:
body_params = params['body']
# HTTP header `Accept`
header_params['Accept'] = self.api_client.select_header_accept(
['application/zrok.v1+json']) # noqa: E501
# HTTP header `Content-Type`
header_params['Content-Type'] = self.api_client.select_header_content_type( # noqa: E501
['application/zrok.v1+json']) # noqa: E501
# Authentication setting
auth_settings = ['key'] # noqa: E501
return self.api_client.call_api(
'/sparklines', 'POST',
path_params,
query_params,
header_params,
body=body_params,
post_params=form_params,
files=local_var_files,
response_type='InlineResponse2004', # noqa: E501
auth_settings=auth_settings,
async_req=params.get('async_req'),
_return_http_data_only=params.get('_return_http_data_only'),
_preload_content=params.get('_preload_content', True),
_request_timeout=params.get('_request_timeout'),
collection_formats=collection_formats)
def list_memberships(self, **kwargs): # noqa: E501
"""list_memberships # noqa: E501

View File

@ -41,6 +41,7 @@ from zrok_api.models.inline_response2002 import InlineResponse2002
from zrok_api.models.inline_response2002_organizations import InlineResponse2002Organizations
from zrok_api.models.inline_response2003 import InlineResponse2003
from zrok_api.models.inline_response2003_memberships import InlineResponse2003Memberships
from zrok_api.models.inline_response2004 import InlineResponse2004
from zrok_api.models.inline_response201 import InlineResponse201
from zrok_api.models.invite_request import InviteRequest
from zrok_api.models.invite_token_generate_request import InviteTokenGenerateRequest
@ -69,6 +70,7 @@ from zrok_api.models.share_response import ShareResponse
from zrok_api.models.shares import Shares
from zrok_api.models.spark_data import SparkData
from zrok_api.models.spark_data_sample import SparkDataSample
from zrok_api.models.sparklines_body import SparklinesBody
from zrok_api.models.unaccess_request import UnaccessRequest
from zrok_api.models.unshare_request import UnshareRequest
from zrok_api.models.update_frontend_request import UpdateFrontendRequest

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -0,0 +1,110 @@
# coding: utf-8
"""
zrok
zrok client access # noqa: E501
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""
import pprint
import re # noqa: F401
import six
class InlineResponse2004(object):
"""NOTE: This class is auto generated by the swagger code generator program.
Do not edit the class manually.
"""
"""
Attributes:
swagger_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
swagger_types = {
'sparklines': 'list[Metrics]'
}
attribute_map = {
'sparklines': 'sparklines'
}
def __init__(self, sparklines=None): # noqa: E501
"""InlineResponse2004 - a model defined in Swagger""" # noqa: E501
self._sparklines = None
self.discriminator = None
if sparklines is not None:
self.sparklines = sparklines
@property
def sparklines(self):
"""Gets the sparklines of this InlineResponse2004. # noqa: E501
:return: The sparklines of this InlineResponse2004. # noqa: E501
:rtype: list[Metrics]
"""
return self._sparklines
@sparklines.setter
def sparklines(self, sparklines):
"""Sets the sparklines of this InlineResponse2004.
:param sparklines: The sparklines of this InlineResponse2004. # noqa: E501
:type: list[Metrics]
"""
self._sparklines = sparklines
def to_dict(self):
"""Returns the model properties as a dict"""
result = {}
for attr, _ in six.iteritems(self.swagger_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(map(
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
value
))
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict") else item,
value.items()
))
else:
result[attr] = value
if issubclass(InlineResponse2004, dict):
for key, value in self.items():
result[key] = value
return result
def to_str(self):
"""Returns the string representation of the model"""
return pprint.pformat(self.to_dict())
def __repr__(self):
"""For `print` and `pprint`"""
return self.to_str()
def __eq__(self, other):
"""Returns true if both objects are equal"""
if not isinstance(other, InlineResponse2004):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""Returns true if both objects are not equal"""
return not self == other

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -5,7 +5,7 @@
zrok client access # noqa: E501
OpenAPI spec version: 0.3.0
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""

View File

@ -0,0 +1,162 @@
# coding: utf-8
"""
zrok
zrok client access # noqa: E501
OpenAPI spec version: 1.0.0
Generated by: https://github.com/swagger-api/swagger-codegen.git
"""
import pprint
import re # noqa: F401
import six
class SparklinesBody(object):
"""NOTE: This class is auto generated by the swagger code generator program.
Do not edit the class manually.
"""
"""
Attributes:
swagger_types (dict): The key is attribute name
and the value is attribute type.
attribute_map (dict): The key is attribute name
and the value is json key in definition.
"""
swagger_types = {
'account': 'bool',
'environments': 'list[str]',
'shares': 'list[str]'
}
attribute_map = {
'account': 'account',
'environments': 'environments',
'shares': 'shares'
}
def __init__(self, account=None, environments=None, shares=None): # noqa: E501
"""SparklinesBody - a model defined in Swagger""" # noqa: E501
self._account = None
self._environments = None
self._shares = None
self.discriminator = None
if account is not None:
self.account = account
if environments is not None:
self.environments = environments
if shares is not None:
self.shares = shares
@property
def account(self):
"""Gets the account of this SparklinesBody. # noqa: E501
:return: The account of this SparklinesBody. # noqa: E501
:rtype: bool
"""
return self._account
@account.setter
def account(self, account):
"""Sets the account of this SparklinesBody.
:param account: The account of this SparklinesBody. # noqa: E501
:type: bool
"""
self._account = account
@property
def environments(self):
"""Gets the environments of this SparklinesBody. # noqa: E501
:return: The environments of this SparklinesBody. # noqa: E501
:rtype: list[str]
"""
return self._environments
@environments.setter
def environments(self, environments):
"""Sets the environments of this SparklinesBody.
:param environments: The environments of this SparklinesBody. # noqa: E501
:type: list[str]
"""
self._environments = environments
@property
def shares(self):
"""Gets the shares of this SparklinesBody. # noqa: E501
:return: The shares of this SparklinesBody. # noqa: E501
:rtype: list[str]
"""
return self._shares
@shares.setter
def shares(self, shares):
"""Sets the shares of this SparklinesBody.
:param shares: The shares of this SparklinesBody. # noqa: E501
:type: list[str]
"""
self._shares = shares
def to_dict(self):
"""Returns the model properties as a dict"""
result = {}
for attr, _ in six.iteritems(self.swagger_types):
value = getattr(self, attr)
if isinstance(value, list):
result[attr] = list(map(
lambda x: x.to_dict() if hasattr(x, "to_dict") else x,
value
))
elif hasattr(value, "to_dict"):
result[attr] = value.to_dict()
elif isinstance(value, dict):
result[attr] = dict(map(
lambda item: (item[0], item[1].to_dict())
if hasattr(item[1], "to_dict") else item,
value.items()
))
else:
result[attr] = value
if issubclass(SparklinesBody, dict):
for key, value in self.items():
result[key] = value
return result
def to_str(self):
"""Returns the string representation of the model"""
return pprint.pformat(self.to_dict())
def __repr__(self):
"""For `print` and `pprint`"""
return self.to_str()
def __eq__(self, other):
"""Returns true if both objects are equal"""
if not isinstance(other, SparklinesBody):
return False
return self.__dict__ == other.__dict__
def __ne__(self, other):
"""Returns true if both objects are not equal"""
return not self == other

View File

@ -865,6 +865,41 @@ paths:
500:
description: internal server error
/sparklines:
post:
tags:
- metadata
security:
- key: []
operationId: getSparklines
parameters:
- name: body
in: body
schema:
properties:
account:
type: boolean
environments:
type: array
items:
type: string
shares:
type: array
items:
type: string
responses:
200:
description: sparklines data
schema:
properties:
sparklines:
type: array
items:
$ref: "#/definitions/metrics"
401:
description: unauthorized
500:
description: internal server error
/version:
get:

View File

@ -146,6 +146,21 @@ export function getShareMetrics(shrToken, options) {
return gateway.request(getShareMetricsOperation, parameters)
}
/**
* @param {object} options Optional options
* @param {object} [options.body]
* @return {Promise<object>} sparklines data
*/
export function getSparklines(options) {
if (!options) options = {}
const parameters = {
body: {
body: options.body
}
}
return gateway.request(getSparklinesOperation, parameters)
}
/**
*/
export function version() {
@ -267,6 +282,17 @@ const getShareMetricsOperation = {
]
}
const getSparklinesOperation = {
path: '/sparklines',
contentTypes: ['application/zrok.v1+json'],
method: 'post',
security: [
{
id: 'key'
}
]
}
const versionOperation = {
path: '/version',
method: 'get'

View File

@ -7,6 +7,7 @@ apis/index.ts
index.ts
models/AccessRequest.ts
models/AccessResponse.ts
models/AddOrganizationMemberRequest.ts
models/AuthUser.ts
models/ChangePasswordRequest.ts
models/CreateAccountRequest.ts
@ -14,6 +15,7 @@ models/CreateFrontendRequest.ts
models/CreateFrontendResponse.ts
models/CreateIdentity201Response.ts
models/CreateIdentityRequest.ts
models/CreateOrganizationRequest.ts
models/DeleteFrontendRequest.ts
models/DisableRequest.ts
models/EnableRequest.ts
@ -21,9 +23,17 @@ models/EnableResponse.ts
models/Environment.ts
models/EnvironmentAndResources.ts
models/Frontend.ts
models/GetSparklines200Response.ts
models/GetSparklinesRequest.ts
models/GrantsRequest.ts
models/InviteRequest.ts
models/InviteTokenGenerateRequest.ts
models/ListMemberships200Response.ts
models/ListMemberships200ResponseMembershipsInner.ts
models/ListOrganizationMembers200Response.ts
models/ListOrganizationMembers200ResponseMembersInner.ts
models/ListOrganizations200Response.ts
models/ListOrganizations200ResponseOrganizationsInner.ts
models/LoginRequest.ts
models/Metrics.ts
models/MetricsSample.ts
@ -36,6 +46,7 @@ models/RegenerateToken200Response.ts
models/RegenerateTokenRequest.ts
models/RegisterRequest.ts
models/RegisterResponse.ts
models/RemoveOrganizationMemberRequest.ts
models/ResetPasswordRequest.ts
models/Share.ts
models/ShareRequest.ts

View File

@ -15,19 +15,26 @@
import * as runtime from '../runtime';
import type {
AddOrganizationMemberRequest,
CreateAccountRequest,
CreateFrontendRequest,
CreateFrontendResponse,
CreateIdentity201Response,
CreateIdentityRequest,
CreateOrganizationRequest,
DeleteFrontendRequest,
GrantsRequest,
InviteTokenGenerateRequest,
ListOrganizationMembers200Response,
ListOrganizations200Response,
PublicFrontend,
RegenerateToken200Response,
RemoveOrganizationMemberRequest,
UpdateFrontendRequest,
} from '../models/index';
import {
AddOrganizationMemberRequestFromJSON,
AddOrganizationMemberRequestToJSON,
CreateAccountRequestFromJSON,
CreateAccountRequestToJSON,
CreateFrontendRequestFromJSON,
@ -38,20 +45,32 @@ import {
CreateIdentity201ResponseToJSON,
CreateIdentityRequestFromJSON,
CreateIdentityRequestToJSON,
CreateOrganizationRequestFromJSON,
CreateOrganizationRequestToJSON,
DeleteFrontendRequestFromJSON,
DeleteFrontendRequestToJSON,
GrantsRequestFromJSON,
GrantsRequestToJSON,
InviteTokenGenerateRequestFromJSON,
InviteTokenGenerateRequestToJSON,
ListOrganizationMembers200ResponseFromJSON,
ListOrganizationMembers200ResponseToJSON,
ListOrganizations200ResponseFromJSON,
ListOrganizations200ResponseToJSON,
PublicFrontendFromJSON,
PublicFrontendToJSON,
RegenerateToken200ResponseFromJSON,
RegenerateToken200ResponseToJSON,
RemoveOrganizationMemberRequestFromJSON,
RemoveOrganizationMemberRequestToJSON,
UpdateFrontendRequestFromJSON,
UpdateFrontendRequestToJSON,
} from '../models/index';
export interface AddOrganizationMemberOperationRequest {
body?: AddOrganizationMemberRequest;
}
export interface CreateAccountOperationRequest {
body?: CreateAccountRequest;
}
@ -64,10 +83,18 @@ export interface CreateIdentityOperationRequest {
body?: CreateIdentityRequest;
}
export interface CreateOrganizationOperationRequest {
body?: CreateOrganizationRequest;
}
export interface DeleteFrontendOperationRequest {
body?: DeleteFrontendRequest;
}
export interface DeleteOrganizationRequest {
body?: RegenerateToken200Response;
}
export interface GrantsOperationRequest {
body?: GrantsRequest;
}
@ -76,6 +103,14 @@ export interface InviteTokenGenerateOperationRequest {
body?: InviteTokenGenerateRequest;
}
export interface ListOrganizationMembersRequest {
body?: RegenerateToken200Response;
}
export interface RemoveOrganizationMemberOperationRequest {
body?: RemoveOrganizationMemberRequest;
}
export interface UpdateFrontendOperationRequest {
body?: UpdateFrontendRequest;
}
@ -85,6 +120,36 @@ export interface UpdateFrontendOperationRequest {
*/
export class AdminApi extends runtime.BaseAPI {
/**
*/
async addOrganizationMemberRaw(requestParameters: AddOrganizationMemberOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organization/add`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: AddOrganizationMemberRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async addOrganizationMember(requestParameters: AddOrganizationMemberOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.addOrganizationMemberRaw(requestParameters, initOverrides);
}
/**
*/
async createAccountRaw(requestParameters: CreateAccountOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RegenerateToken200Response>> {
@ -178,6 +243,37 @@ export class AdminApi extends runtime.BaseAPI {
return await response.value();
}
/**
*/
async createOrganizationRaw(requestParameters: CreateOrganizationOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<RegenerateToken200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organization`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: CreateOrganizationRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => RegenerateToken200ResponseFromJSON(jsonValue));
}
/**
*/
async createOrganization(requestParameters: CreateOrganizationOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<RegenerateToken200Response> {
const response = await this.createOrganizationRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async deleteFrontendRaw(requestParameters: DeleteFrontendOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
@ -208,6 +304,36 @@ export class AdminApi extends runtime.BaseAPI {
await this.deleteFrontendRaw(requestParameters, initOverrides);
}
/**
*/
async deleteOrganizationRaw(requestParameters: DeleteOrganizationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organization`,
method: 'DELETE',
headers: headerParameters,
query: queryParameters,
body: RegenerateToken200ResponseToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async deleteOrganization(requestParameters: DeleteOrganizationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.deleteOrganizationRaw(requestParameters, initOverrides);
}
/**
*/
async grantsRaw(requestParameters: GrantsOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
@ -296,6 +422,95 @@ export class AdminApi extends runtime.BaseAPI {
return await response.value();
}
/**
*/
async listOrganizationMembersRaw(requestParameters: ListOrganizationMembersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListOrganizationMembers200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organization/list`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RegenerateToken200ResponseToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ListOrganizationMembers200ResponseFromJSON(jsonValue));
}
/**
*/
async listOrganizationMembers(requestParameters: ListOrganizationMembersRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListOrganizationMembers200Response> {
const response = await this.listOrganizationMembersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async listOrganizationsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListOrganizations200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organizations`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ListOrganizations200ResponseFromJSON(jsonValue));
}
/**
*/
async listOrganizations(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListOrganizations200Response> {
const response = await this.listOrganizationsRaw(initOverrides);
return await response.value();
}
/**
*/
async removeOrganizationMemberRaw(requestParameters: RemoveOrganizationMemberOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/organization/remove`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: RemoveOrganizationMemberRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.VoidApiResponse(response);
}
/**
*/
async removeOrganizationMember(requestParameters: RemoveOrganizationMemberOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<void> {
await this.removeOrganizationMemberRaw(requestParameters, initOverrides);
}
/**
*/
async updateFrontendRaw(requestParameters: UpdateFrontendOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<void>> {

View File

@ -18,6 +18,10 @@ import type {
Environment,
EnvironmentAndResources,
Frontend,
GetSparklines200Response,
GetSparklinesRequest,
ListMemberships200Response,
ListOrganizationMembers200Response,
Metrics,
ModelConfiguration,
Overview,
@ -30,6 +34,14 @@ import {
EnvironmentAndResourcesToJSON,
FrontendFromJSON,
FrontendToJSON,
GetSparklines200ResponseFromJSON,
GetSparklines200ResponseToJSON,
GetSparklinesRequestFromJSON,
GetSparklinesRequestToJSON,
ListMemberships200ResponseFromJSON,
ListMemberships200ResponseToJSON,
ListOrganizationMembers200ResponseFromJSON,
ListOrganizationMembers200ResponseToJSON,
MetricsFromJSON,
MetricsToJSON,
ModelConfigurationFromJSON,
@ -66,6 +78,19 @@ export interface GetShareMetricsRequest {
duration?: string;
}
export interface GetSparklinesOperationRequest {
body?: GetSparklinesRequest;
}
export interface ListOrgMembersRequest {
organizationToken: string;
}
export interface OrgAccountOverviewRequest {
organizationToken: string;
accountEmail: string;
}
/**
*
*/
@ -338,6 +363,142 @@ export class MetadataApi extends runtime.BaseAPI {
return await response.value();
}
/**
*/
async getSparklinesRaw(requestParameters: GetSparklinesOperationRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<GetSparklines200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
headerParameters['Content-Type'] = 'application/zrok.v1+json';
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/sparklines`,
method: 'POST',
headers: headerParameters,
query: queryParameters,
body: GetSparklinesRequestToJSON(requestParameters['body']),
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => GetSparklines200ResponseFromJSON(jsonValue));
}
/**
*/
async getSparklines(requestParameters: GetSparklinesOperationRequest = {}, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<GetSparklines200Response> {
const response = await this.getSparklinesRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async listMembershipsRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListMemberships200Response>> {
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/memberships`,
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ListMemberships200ResponseFromJSON(jsonValue));
}
/**
*/
async listMemberships(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListMemberships200Response> {
const response = await this.listMembershipsRaw(initOverrides);
return await response.value();
}
/**
*/
async listOrgMembersRaw(requestParameters: ListOrgMembersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<ListOrganizationMembers200Response>> {
if (requestParameters['organizationToken'] == null) {
throw new runtime.RequiredError(
'organizationToken',
'Required parameter "organizationToken" was null or undefined when calling listOrgMembers().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/members/{organizationToken}`.replace(`{${"organizationToken"}}`, encodeURIComponent(String(requestParameters['organizationToken']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => ListOrganizationMembers200ResponseFromJSON(jsonValue));
}
/**
*/
async listOrgMembers(requestParameters: ListOrgMembersRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<ListOrganizationMembers200Response> {
const response = await this.listOrgMembersRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async orgAccountOverviewRaw(requestParameters: OrgAccountOverviewRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Overview>> {
if (requestParameters['organizationToken'] == null) {
throw new runtime.RequiredError(
'organizationToken',
'Required parameter "organizationToken" was null or undefined when calling orgAccountOverview().'
);
}
if (requestParameters['accountEmail'] == null) {
throw new runtime.RequiredError(
'accountEmail',
'Required parameter "accountEmail" was null or undefined when calling orgAccountOverview().'
);
}
const queryParameters: any = {};
const headerParameters: runtime.HTTPHeaders = {};
if (this.configuration && this.configuration.apiKey) {
headerParameters["x-token"] = await this.configuration.apiKey("x-token"); // key authentication
}
const response = await this.request({
path: `/overview/{organizationToken}/{accountEmail}`.replace(`{${"organizationToken"}}`, encodeURIComponent(String(requestParameters['organizationToken']))).replace(`{${"accountEmail"}}`, encodeURIComponent(String(requestParameters['accountEmail']))),
method: 'GET',
headers: headerParameters,
query: queryParameters,
}, initOverrides);
return new runtime.JSONApiResponse(response, (jsonValue) => OverviewFromJSON(jsonValue));
}
/**
*/
async orgAccountOverview(requestParameters: OrgAccountOverviewRequest, initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<Overview> {
const response = await this.orgAccountOverviewRaw(requestParameters, initOverrides);
return await response.value();
}
/**
*/
async overviewRaw(initOverrides?: RequestInit | runtime.InitOverrideFunction): Promise<runtime.ApiResponse<Overview>> {

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface AddOrganizationMemberRequest
*/
export interface AddOrganizationMemberRequest {
/**
*
* @type {string}
* @memberof AddOrganizationMemberRequest
*/
token?: string;
/**
*
* @type {string}
* @memberof AddOrganizationMemberRequest
*/
email?: string;
/**
*
* @type {boolean}
* @memberof AddOrganizationMemberRequest
*/
admin?: boolean;
}
/**
* Check if a given object implements the AddOrganizationMemberRequest interface.
*/
export function instanceOfAddOrganizationMemberRequest(value: object): value is AddOrganizationMemberRequest {
return true;
}
export function AddOrganizationMemberRequestFromJSON(json: any): AddOrganizationMemberRequest {
return AddOrganizationMemberRequestFromJSONTyped(json, false);
}
export function AddOrganizationMemberRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AddOrganizationMemberRequest {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'email': json['email'] == null ? undefined : json['email'],
'admin': json['admin'] == null ? undefined : json['admin'],
};
}
export function AddOrganizationMemberRequestToJSON(value?: AddOrganizationMemberRequest | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'email': value['email'],
'admin': value['admin'],
};
}

View File

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface CreateOrganizationRequest
*/
export interface CreateOrganizationRequest {
/**
*
* @type {string}
* @memberof CreateOrganizationRequest
*/
description?: string;
}
/**
* Check if a given object implements the CreateOrganizationRequest interface.
*/
export function instanceOfCreateOrganizationRequest(value: object): value is CreateOrganizationRequest {
return true;
}
export function CreateOrganizationRequestFromJSON(json: any): CreateOrganizationRequest {
return CreateOrganizationRequestFromJSONTyped(json, false);
}
export function CreateOrganizationRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): CreateOrganizationRequest {
if (json == null) {
return json;
}
return {
'description': json['description'] == null ? undefined : json['description'],
};
}
export function CreateOrganizationRequestToJSON(value?: CreateOrganizationRequest | null): any {
if (value == null) {
return value;
}
return {
'description': value['description'],
};
}

View File

@ -0,0 +1,67 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { Metrics } from './Metrics';
import {
MetricsFromJSON,
MetricsFromJSONTyped,
MetricsToJSON,
} from './Metrics';
/**
*
* @export
* @interface GetSparklines200Response
*/
export interface GetSparklines200Response {
/**
*
* @type {Array<Metrics>}
* @memberof GetSparklines200Response
*/
sparklines?: Array<Metrics>;
}
/**
* Check if a given object implements the GetSparklines200Response interface.
*/
export function instanceOfGetSparklines200Response(value: object): value is GetSparklines200Response {
return true;
}
export function GetSparklines200ResponseFromJSON(json: any): GetSparklines200Response {
return GetSparklines200ResponseFromJSONTyped(json, false);
}
export function GetSparklines200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetSparklines200Response {
if (json == null) {
return json;
}
return {
'sparklines': json['sparklines'] == null ? undefined : ((json['sparklines'] as Array<any>).map(MetricsFromJSON)),
};
}
export function GetSparklines200ResponseToJSON(value?: GetSparklines200Response | null): any {
if (value == null) {
return value;
}
return {
'sparklines': value['sparklines'] == null ? undefined : ((value['sparklines'] as Array<any>).map(MetricsToJSON)),
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface GetSparklinesRequest
*/
export interface GetSparklinesRequest {
/**
*
* @type {boolean}
* @memberof GetSparklinesRequest
*/
account?: boolean;
/**
*
* @type {Array<string>}
* @memberof GetSparklinesRequest
*/
environments?: Array<string>;
/**
*
* @type {Array<string>}
* @memberof GetSparklinesRequest
*/
shares?: Array<string>;
}
/**
* Check if a given object implements the GetSparklinesRequest interface.
*/
export function instanceOfGetSparklinesRequest(value: object): value is GetSparklinesRequest {
return true;
}
export function GetSparklinesRequestFromJSON(json: any): GetSparklinesRequest {
return GetSparklinesRequestFromJSONTyped(json, false);
}
export function GetSparklinesRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): GetSparklinesRequest {
if (json == null) {
return json;
}
return {
'account': json['account'] == null ? undefined : json['account'],
'environments': json['environments'] == null ? undefined : json['environments'],
'shares': json['shares'] == null ? undefined : json['shares'],
};
}
export function GetSparklinesRequestToJSON(value?: GetSparklinesRequest | null): any {
if (value == null) {
return value;
}
return {
'account': value['account'],
'environments': value['environments'],
'shares': value['shares'],
};
}

View File

@ -0,0 +1,67 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { ListMemberships200ResponseMembershipsInner } from './ListMemberships200ResponseMembershipsInner';
import {
ListMemberships200ResponseMembershipsInnerFromJSON,
ListMemberships200ResponseMembershipsInnerFromJSONTyped,
ListMemberships200ResponseMembershipsInnerToJSON,
} from './ListMemberships200ResponseMembershipsInner';
/**
*
* @export
* @interface ListMemberships200Response
*/
export interface ListMemberships200Response {
/**
*
* @type {Array<ListMemberships200ResponseMembershipsInner>}
* @memberof ListMemberships200Response
*/
memberships?: Array<ListMemberships200ResponseMembershipsInner>;
}
/**
* Check if a given object implements the ListMemberships200Response interface.
*/
export function instanceOfListMemberships200Response(value: object): value is ListMemberships200Response {
return true;
}
export function ListMemberships200ResponseFromJSON(json: any): ListMemberships200Response {
return ListMemberships200ResponseFromJSONTyped(json, false);
}
export function ListMemberships200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListMemberships200Response {
if (json == null) {
return json;
}
return {
'memberships': json['memberships'] == null ? undefined : ((json['memberships'] as Array<any>).map(ListMemberships200ResponseMembershipsInnerFromJSON)),
};
}
export function ListMemberships200ResponseToJSON(value?: ListMemberships200Response | null): any {
if (value == null) {
return value;
}
return {
'memberships': value['memberships'] == null ? undefined : ((value['memberships'] as Array<any>).map(ListMemberships200ResponseMembershipsInnerToJSON)),
};
}

View File

@ -0,0 +1,76 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ListMemberships200ResponseMembershipsInner
*/
export interface ListMemberships200ResponseMembershipsInner {
/**
*
* @type {string}
* @memberof ListMemberships200ResponseMembershipsInner
*/
token?: string;
/**
*
* @type {string}
* @memberof ListMemberships200ResponseMembershipsInner
*/
description?: string;
/**
*
* @type {boolean}
* @memberof ListMemberships200ResponseMembershipsInner
*/
admin?: boolean;
}
/**
* Check if a given object implements the ListMemberships200ResponseMembershipsInner interface.
*/
export function instanceOfListMemberships200ResponseMembershipsInner(value: object): value is ListMemberships200ResponseMembershipsInner {
return true;
}
export function ListMemberships200ResponseMembershipsInnerFromJSON(json: any): ListMemberships200ResponseMembershipsInner {
return ListMemberships200ResponseMembershipsInnerFromJSONTyped(json, false);
}
export function ListMemberships200ResponseMembershipsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListMemberships200ResponseMembershipsInner {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'description': json['description'] == null ? undefined : json['description'],
'admin': json['admin'] == null ? undefined : json['admin'],
};
}
export function ListMemberships200ResponseMembershipsInnerToJSON(value?: ListMemberships200ResponseMembershipsInner | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'description': value['description'],
'admin': value['admin'],
};
}

View File

@ -0,0 +1,67 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { ListOrganizationMembers200ResponseMembersInner } from './ListOrganizationMembers200ResponseMembersInner';
import {
ListOrganizationMembers200ResponseMembersInnerFromJSON,
ListOrganizationMembers200ResponseMembersInnerFromJSONTyped,
ListOrganizationMembers200ResponseMembersInnerToJSON,
} from './ListOrganizationMembers200ResponseMembersInner';
/**
*
* @export
* @interface ListOrganizationMembers200Response
*/
export interface ListOrganizationMembers200Response {
/**
*
* @type {Array<ListOrganizationMembers200ResponseMembersInner>}
* @memberof ListOrganizationMembers200Response
*/
members?: Array<ListOrganizationMembers200ResponseMembersInner>;
}
/**
* Check if a given object implements the ListOrganizationMembers200Response interface.
*/
export function instanceOfListOrganizationMembers200Response(value: object): value is ListOrganizationMembers200Response {
return true;
}
export function ListOrganizationMembers200ResponseFromJSON(json: any): ListOrganizationMembers200Response {
return ListOrganizationMembers200ResponseFromJSONTyped(json, false);
}
export function ListOrganizationMembers200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListOrganizationMembers200Response {
if (json == null) {
return json;
}
return {
'members': json['members'] == null ? undefined : ((json['members'] as Array<any>).map(ListOrganizationMembers200ResponseMembersInnerFromJSON)),
};
}
export function ListOrganizationMembers200ResponseToJSON(value?: ListOrganizationMembers200Response | null): any {
if (value == null) {
return value;
}
return {
'members': value['members'] == null ? undefined : ((value['members'] as Array<any>).map(ListOrganizationMembers200ResponseMembersInnerToJSON)),
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ListOrganizationMembers200ResponseMembersInner
*/
export interface ListOrganizationMembers200ResponseMembersInner {
/**
*
* @type {string}
* @memberof ListOrganizationMembers200ResponseMembersInner
*/
email?: string;
/**
*
* @type {boolean}
* @memberof ListOrganizationMembers200ResponseMembersInner
*/
admin?: boolean;
}
/**
* Check if a given object implements the ListOrganizationMembers200ResponseMembersInner interface.
*/
export function instanceOfListOrganizationMembers200ResponseMembersInner(value: object): value is ListOrganizationMembers200ResponseMembersInner {
return true;
}
export function ListOrganizationMembers200ResponseMembersInnerFromJSON(json: any): ListOrganizationMembers200ResponseMembersInner {
return ListOrganizationMembers200ResponseMembersInnerFromJSONTyped(json, false);
}
export function ListOrganizationMembers200ResponseMembersInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListOrganizationMembers200ResponseMembersInner {
if (json == null) {
return json;
}
return {
'email': json['email'] == null ? undefined : json['email'],
'admin': json['admin'] == null ? undefined : json['admin'],
};
}
export function ListOrganizationMembers200ResponseMembersInnerToJSON(value?: ListOrganizationMembers200ResponseMembersInner | null): any {
if (value == null) {
return value;
}
return {
'email': value['email'],
'admin': value['admin'],
};
}

View File

@ -0,0 +1,67 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
import type { ListOrganizations200ResponseOrganizationsInner } from './ListOrganizations200ResponseOrganizationsInner';
import {
ListOrganizations200ResponseOrganizationsInnerFromJSON,
ListOrganizations200ResponseOrganizationsInnerFromJSONTyped,
ListOrganizations200ResponseOrganizationsInnerToJSON,
} from './ListOrganizations200ResponseOrganizationsInner';
/**
*
* @export
* @interface ListOrganizations200Response
*/
export interface ListOrganizations200Response {
/**
*
* @type {Array<ListOrganizations200ResponseOrganizationsInner>}
* @memberof ListOrganizations200Response
*/
organizations?: Array<ListOrganizations200ResponseOrganizationsInner>;
}
/**
* Check if a given object implements the ListOrganizations200Response interface.
*/
export function instanceOfListOrganizations200Response(value: object): value is ListOrganizations200Response {
return true;
}
export function ListOrganizations200ResponseFromJSON(json: any): ListOrganizations200Response {
return ListOrganizations200ResponseFromJSONTyped(json, false);
}
export function ListOrganizations200ResponseFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListOrganizations200Response {
if (json == null) {
return json;
}
return {
'organizations': json['organizations'] == null ? undefined : ((json['organizations'] as Array<any>).map(ListOrganizations200ResponseOrganizationsInnerFromJSON)),
};
}
export function ListOrganizations200ResponseToJSON(value?: ListOrganizations200Response | null): any {
if (value == null) {
return value;
}
return {
'organizations': value['organizations'] == null ? undefined : ((value['organizations'] as Array<any>).map(ListOrganizations200ResponseOrganizationsInnerToJSON)),
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface ListOrganizations200ResponseOrganizationsInner
*/
export interface ListOrganizations200ResponseOrganizationsInner {
/**
*
* @type {string}
* @memberof ListOrganizations200ResponseOrganizationsInner
*/
token?: string;
/**
*
* @type {string}
* @memberof ListOrganizations200ResponseOrganizationsInner
*/
description?: string;
}
/**
* Check if a given object implements the ListOrganizations200ResponseOrganizationsInner interface.
*/
export function instanceOfListOrganizations200ResponseOrganizationsInner(value: object): value is ListOrganizations200ResponseOrganizationsInner {
return true;
}
export function ListOrganizations200ResponseOrganizationsInnerFromJSON(json: any): ListOrganizations200ResponseOrganizationsInner {
return ListOrganizations200ResponseOrganizationsInnerFromJSONTyped(json, false);
}
export function ListOrganizations200ResponseOrganizationsInnerFromJSONTyped(json: any, ignoreDiscriminator: boolean): ListOrganizations200ResponseOrganizationsInner {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'description': json['description'] == null ? undefined : json['description'],
};
}
export function ListOrganizations200ResponseOrganizationsInnerToJSON(value?: ListOrganizations200ResponseOrganizationsInner | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'description': value['description'],
};
}

View File

@ -0,0 +1,68 @@
/* tslint:disable */
/* eslint-disable */
/**
* zrok
* zrok client access
*
* The version of the OpenAPI document: 1.0.0
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
* https://openapi-generator.tech
* Do not edit the class manually.
*/
import { mapValues } from '../runtime';
/**
*
* @export
* @interface RemoveOrganizationMemberRequest
*/
export interface RemoveOrganizationMemberRequest {
/**
*
* @type {string}
* @memberof RemoveOrganizationMemberRequest
*/
token?: string;
/**
*
* @type {string}
* @memberof RemoveOrganizationMemberRequest
*/
email?: string;
}
/**
* Check if a given object implements the RemoveOrganizationMemberRequest interface.
*/
export function instanceOfRemoveOrganizationMemberRequest(value: object): value is RemoveOrganizationMemberRequest {
return true;
}
export function RemoveOrganizationMemberRequestFromJSON(json: any): RemoveOrganizationMemberRequest {
return RemoveOrganizationMemberRequestFromJSONTyped(json, false);
}
export function RemoveOrganizationMemberRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): RemoveOrganizationMemberRequest {
if (json == null) {
return json;
}
return {
'token': json['token'] == null ? undefined : json['token'],
'email': json['email'] == null ? undefined : json['email'],
};
}
export function RemoveOrganizationMemberRequestToJSON(value?: RemoveOrganizationMemberRequest | null): any {
if (value == null) {
return value;
}
return {
'token': value['token'],
'email': value['email'],
};
}

View File

@ -2,6 +2,7 @@
/* eslint-disable */
export * from './AccessRequest';
export * from './AccessResponse';
export * from './AddOrganizationMemberRequest';
export * from './AuthUser';
export * from './ChangePasswordRequest';
export * from './CreateAccountRequest';
@ -9,6 +10,7 @@ export * from './CreateFrontendRequest';
export * from './CreateFrontendResponse';
export * from './CreateIdentity201Response';
export * from './CreateIdentityRequest';
export * from './CreateOrganizationRequest';
export * from './DeleteFrontendRequest';
export * from './DisableRequest';
export * from './EnableRequest';
@ -16,9 +18,17 @@ export * from './EnableResponse';
export * from './Environment';
export * from './EnvironmentAndResources';
export * from './Frontend';
export * from './GetSparklines200Response';
export * from './GetSparklinesRequest';
export * from './GrantsRequest';
export * from './InviteRequest';
export * from './InviteTokenGenerateRequest';
export * from './ListMemberships200Response';
export * from './ListMemberships200ResponseMembershipsInner';
export * from './ListOrganizationMembers200Response';
export * from './ListOrganizationMembers200ResponseMembersInner';
export * from './ListOrganizations200Response';
export * from './ListOrganizations200ResponseOrganizationsInner';
export * from './LoginRequest';
export * from './Metrics';
export * from './MetricsSample';
@ -31,6 +41,7 @@ export * from './RegenerateToken200Response';
export * from './RegenerateTokenRequest';
export * from './RegisterRequest';
export * from './RegisterResponse';
export * from './RemoveOrganizationMemberRequest';
export * from './ResetPasswordRequest';
export * from './Share';
export * from './ShareRequest';