serviceaccount

package module
v0.3.3 Latest Latest
Warning

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

Go to latest
Published: Jan 15, 2024 License: Apache-2.0 Imports: 22 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CacheExpires

func CacheExpires(r *http.Response) time.Time

CacheExpires helper function to determine remaining time before repeating a request.

func IsNil

func IsNil(i interface{}) bool

IsNil checks if an input is nil

func NewConfiguration

func NewConfiguration() *config.Configuration

NewConfiguration returns a new Configuration object

func ParameterValueToString

func ParameterValueToString(obj interface{}, key string) string

func PtrBool

func PtrBool(v bool) *bool

PtrBool is a helper routine that returns a pointer to given boolean value.

func PtrFloat32

func PtrFloat32(v float32) *float32

PtrFloat32 is a helper routine that returns a pointer to given float value.

func PtrFloat64

func PtrFloat64(v float64) *float64

PtrFloat64 is a helper routine that returns a pointer to given float value.

func PtrInt

func PtrInt(v int) *int

PtrInt is a helper routine that returns a pointer to given integer value.

func PtrInt32

func PtrInt32(v int32) *int32

PtrInt32 is a helper routine that returns a pointer to given integer value.

func PtrInt64

func PtrInt64(v int64) *int64

PtrInt64 is a helper routine that returns a pointer to given integer value.

func PtrString

func PtrString(v string) *string

PtrString is a helper routine that returns a pointer to given string value.

func PtrTime

func PtrTime(v time.Time) *time.Time

PtrTime is helper routine that returns a pointer to given Time value.

Types

type APIClient

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

APIClient manages communication with the Service Account API API v2.0 In most cases there should be only one, shared, APIClient.

func NewAPIClient

func NewAPIClient(opts ...config.ConfigurationOption) (*APIClient, error)

NewAPIClient creates a new API client. Optionally receives configuration options

func (*APIClient) CreateAccessToken

func (a *APIClient) CreateAccessToken(ctx context.Context, projectId string, serviceAccountEmail string) ApiCreateAccessTokenRequest

CreateAccessToken Create a new Access Token

Create an Access Token for a Service Account. The service token can be then used for API calls (where enabled). Save the response token, as it is not recoverable later. Token metadata can be requested until the token is not expired. Not usable with service accounts.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the Service Account.
@return ApiCreateAccessTokenRequest

func (*APIClient) CreateAccessTokenExecute

func (a *APIClient) CreateAccessTokenExecute(ctx context.Context, projectId string, serviceAccountEmail string) (*AccessToken, error)

func (*APIClient) CreateServiceAccount

func (a *APIClient) CreateServiceAccount(ctx context.Context, projectId string) ApiCreateServiceAccountRequest

CreateServiceAccount Create a new Service Account

Create a new Service Account in a project. The service account only resides in the project, and initially has no roles or permissions on any resources. After creation, the service account can be assigned to this project, other projects in the parent organization or to the parent organization. Not usable with service accounts.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@return ApiCreateServiceAccountRequest

func (*APIClient) CreateServiceAccountExecute

func (a *APIClient) CreateServiceAccountExecute(ctx context.Context, projectId string) (*ServiceAccount, error)

func (*APIClient) CreateServiceAccountKey

func (a *APIClient) CreateServiceAccountKey(ctx context.Context, projectId string, serviceAccountEmail string) ApiCreateServiceAccountKeyRequest

CreateServiceAccountKey Create a new Service Account key

Create a new key to the service account. You can generate an RSA keypair, and post the PUBLIC part of the keypair, or leave empty, then the service will generate a pair. Maximum of 10 key can be added. Not usable with service accounts.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the service account.
@return ApiCreateServiceAccountKeyRequest

func (*APIClient) CreateServiceAccountKeyExecute

func (a *APIClient) CreateServiceAccountKeyExecute(ctx context.Context, projectId string, serviceAccountEmail string) (*CreateServiceAccountKeyResponse, error)

func (*APIClient) CreateShortLivedAccessToken

func (a *APIClient) CreateShortLivedAccessToken(ctx context.Context) ApiCreateShortLivedAccessTokenRequest

CreateShortLivedAccessToken Request short lived API access token (OAUTH2).

Request a short lived API access token with OAUTH2. Compatible with [Using JWTs as Authorization Grants](https://www.rfc-editor.org/rfc/rfc7523.html#section-2.1) You can request a token with a self signed token, or with a refresh token.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@return ApiCreateShortLivedAccessTokenRequest

func (*APIClient) CreateShortLivedAccessTokenExecute

func (a *APIClient) CreateShortLivedAccessTokenExecute(ctx context.Context) (*CreateShortLivedAccessTokenResponse, error)

func (*APIClient) DeleteAccessToken

func (a *APIClient) DeleteAccessToken(ctx context.Context, projectId string, serviceAccountEmail string, accessTokenId string) ApiDeleteAccessTokenRequest

DeleteAccessToken Revoke Access Token

Revoke an Access Token. The access token is instantly revoked, any following calls with the token will be unauthorized. The token metadata is still stored until the expiration time.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The ID of the Service Account.
@param accessTokenId The ID of the Access Token.
@return ApiDeleteAccessTokenRequest

func (*APIClient) DeleteAccessTokenExecute

func (a *APIClient) DeleteAccessTokenExecute(ctx context.Context, projectId string, serviceAccountEmail string, accessTokenId string) error

func (*APIClient) DeleteServiceAccount

func (a *APIClient) DeleteServiceAccount(ctx context.Context, projectId string, serviceAccountEmail string) ApiDeleteServiceAccountRequest

DeleteServiceAccount Delete Service Account

Delete a Service Account.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the Service Account.
@return ApiDeleteServiceAccountRequest

func (*APIClient) DeleteServiceAccountExecute

func (a *APIClient) DeleteServiceAccountExecute(ctx context.Context, projectId string, serviceAccountEmail string) error

func (*APIClient) DeleteServiceAccountKey

func (a *APIClient) DeleteServiceAccountKey(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) ApiDeleteServiceAccountKeyRequest

DeleteServiceAccountKey Delete a service account key

Delete a key

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the service account.
@param keyId ID of the key.
@return ApiDeleteServiceAccountKeyRequest

func (*APIClient) DeleteServiceAccountKeyExecute

func (a *APIClient) DeleteServiceAccountKeyExecute(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) error

func (*APIClient) GetConfig

func (c *APIClient) GetConfig() *config.Configuration

Allow modification of underlying config for alternate implementations and testing Caution: modifying the configuration while live can cause data races and potentially unwanted behavior

func (*APIClient) GetJWKS

func (a *APIClient) GetJWKS(ctx context.Context, serviceAccountEmail string) ApiGetJWKSRequest

GetJWKS Get JSON Web Key set of the service account

Get JSON Web Key set of the service account

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param serviceAccountEmail The email of the service account.
@return ApiGetJWKSRequest

func (*APIClient) GetJWKSExecute

func (a *APIClient) GetJWKSExecute(ctx context.Context, serviceAccountEmail string) (*JWKS, error)

func (*APIClient) GetServiceAccountKey

func (a *APIClient) GetServiceAccountKey(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) ApiGetServiceAccountKeyRequest

GetServiceAccountKey Get service account key details

Get key details

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the service account.
@param keyId ID of the key.
@return ApiGetServiceAccountKeyRequest

func (*APIClient) GetServiceAccountKeyExecute

func (a *APIClient) GetServiceAccountKeyExecute(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) (*GetServiceAccountKeyResponse, error)

func (*APIClient) ListAccessTokens

func (a *APIClient) ListAccessTokens(ctx context.Context, projectId string, serviceAccountEmail string) ApiListAccessTokensRequest

ListAccessTokens List Access Tokens of Service Account

Get all Access Tokens of a Service Account. The token itself is not returned, only the metadata about the access tokens. Access tokens are listed until they are expired. Revoked tokens are returned until expired.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the Service Account.
@return ApiListAccessTokensRequest

func (*APIClient) ListAccessTokensExecute

func (a *APIClient) ListAccessTokensExecute(ctx context.Context, projectId string, serviceAccountEmail string) (*ListAccessTokensResponse, error)

func (*APIClient) ListServiceAccountKeys

func (a *APIClient) ListServiceAccountKeys(ctx context.Context, projectId string, serviceAccountEmail string) ApiListServiceAccountKeysRequest

ListServiceAccountKeys List all keys that belong to the service account

List all keys that belong to the service account

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the service account.
@return ApiListServiceAccountKeysRequest

func (*APIClient) ListServiceAccountKeysExecute

func (a *APIClient) ListServiceAccountKeysExecute(ctx context.Context, projectId string, serviceAccountEmail string) (*ListServiceAccountKeysResponse, error)

func (*APIClient) ListServiceAccounts

func (a *APIClient) ListServiceAccounts(ctx context.Context, projectId string) ApiListServiceAccountsRequest

ListServiceAccounts List all Service Accounts

List all Service Account resources in a project. Returns the service account resources, not the service accounts that has access to the project.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@return ApiListServiceAccountsRequest

func (*APIClient) ListServiceAccountsExecute

func (a *APIClient) ListServiceAccountsExecute(ctx context.Context, projectId string) (*ListServiceAccountsResponse, error)

func (*APIClient) PartialUpdateServiceAccountKey

func (a *APIClient) PartialUpdateServiceAccountKey(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) ApiPartialUpdateServiceAccountKeyRequest

PartialUpdateServiceAccountKey Update Service Account key

Update a key. You can activate or deactivate a key, or set/delete validUntil. Not usable with service accounts.

@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
@param projectId The ID of the project.
@param serviceAccountEmail The email of the service account.
@param keyId ID of the key.
@return ApiPartialUpdateServiceAccountKeyRequest

func (*APIClient) PartialUpdateServiceAccountKeyExecute

func (a *APIClient) PartialUpdateServiceAccountKeyExecute(ctx context.Context, projectId string, serviceAccountEmail string, keyId string) (*PartialUpdateServiceAccountKeyResponse, error)

type AccessToken

type AccessToken struct {
	// Newly created access tokens are valid, and can be revoked if needed.
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the access token.
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// Unique ID of the access token. Also used as JTI field.
	// REQUIRED
	Id *string `json:"id"`
	// The access token in JWT format. Use this with `Bearer` prefix for API calls. Store it, as it is not recoverable later.
	// REQUIRED
	Token *string `json:"token"`
	// Approximate expiration time of the access token. Check the JWT for actual validity date.
	// REQUIRED
	ValidUntil *time.Time `json:"validUntil"`
}

type AccessTokenMetadata

type AccessTokenMetadata struct {
	// If true, access token can be used for authorized API calls, if false, the token is not usable anymore.
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the access token.
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// Unique ID of the access token. Also used as JTI field.
	// REQUIRED
	Id *string `json:"id"`
	// Approximate expiration time of the access token. Check the JWT for actual validity date.
	// REQUIRED
	ValidUntil *time.Time `json:"validUntil"`
}

type ApiCreateAccessTokenRequest

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

func (ApiCreateAccessTokenRequest) CreateAccessTokenPayload

func (r ApiCreateAccessTokenRequest) CreateAccessTokenPayload(createAccessTokenPayload CreateAccessTokenPayload) ApiCreateAccessTokenRequest

func (ApiCreateAccessTokenRequest) Execute

type ApiCreateServiceAccountKeyRequest

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

func (ApiCreateServiceAccountKeyRequest) CreateServiceAccountKeyPayload

func (r ApiCreateServiceAccountKeyRequest) CreateServiceAccountKeyPayload(createServiceAccountKeyPayload CreateServiceAccountKeyPayload) ApiCreateServiceAccountKeyRequest

func (ApiCreateServiceAccountKeyRequest) Execute

type ApiCreateServiceAccountRequest

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

func (ApiCreateServiceAccountRequest) CreateServiceAccountPayload

func (r ApiCreateServiceAccountRequest) CreateServiceAccountPayload(createServiceAccountPayload CreateServiceAccountPayload) ApiCreateServiceAccountRequest

func (ApiCreateServiceAccountRequest) Execute

type ApiCreateShortLivedAccessTokenRequest

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

func (ApiCreateShortLivedAccessTokenRequest) Assertion

func (ApiCreateShortLivedAccessTokenRequest) Execute

func (ApiCreateShortLivedAccessTokenRequest) GrantType

func (ApiCreateShortLivedAccessTokenRequest) RefreshToken

type ApiDeleteAccessTokenRequest

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

func (ApiDeleteAccessTokenRequest) Execute

func (r ApiDeleteAccessTokenRequest) Execute() error

type ApiDeleteServiceAccountKeyRequest

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

func (ApiDeleteServiceAccountKeyRequest) Execute

type ApiDeleteServiceAccountRequest

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

func (ApiDeleteServiceAccountRequest) Execute

type ApiGetJWKSRequest

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

func (ApiGetJWKSRequest) Execute

func (r ApiGetJWKSRequest) Execute() (*JWKS, error)

type ApiGetServiceAccountKeyRequest

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

func (ApiGetServiceAccountKeyRequest) Execute

func (ApiGetServiceAccountKeyRequest) Format

type ApiListAccessTokensRequest

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

func (ApiListAccessTokensRequest) Execute

type ApiListServiceAccountKeysRequest

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

func (ApiListServiceAccountKeysRequest) Execute

type ApiListServiceAccountsRequest

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

func (ApiListServiceAccountsRequest) Execute

type ApiPartialUpdateServiceAccountKeyRequest

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

func (ApiPartialUpdateServiceAccountKeyRequest) Execute

func (ApiPartialUpdateServiceAccountKeyRequest) PartialUpdateServiceAccountKeyPayload

func (r ApiPartialUpdateServiceAccountKeyRequest) PartialUpdateServiceAccountKeyPayload(partialUpdateServiceAccountKeyPayload PartialUpdateServiceAccountKeyPayload) ApiPartialUpdateServiceAccountKeyRequest

type AuthError

type AuthError struct {
	// REQUIRED
	Error *AuthErrorError `json:"error"`
}

type AuthErrorError

type AuthErrorError struct {
	// REQUIRED
	Code *int64 `json:"code"`
	// REQUIRED
	Message *string `json:"message"`
	// REQUIRED
	Status *string `json:"status"`
}

type CreateAccessTokenPayload

type CreateAccessTokenPayload struct {
	// The duration in days for how long the new Access Token should be valid.
	// REQUIRED
	TtlDays *int64 `json:"ttlDays"`
}

type CreateInternalServiceAccountPayload

type CreateInternalServiceAccountPayload struct {
	// The requested name of the service account. The service will generate a unique email from this name.
	// REQUIRED
	Name *string `json:"name"`
	// The requested suffix for the service account. The service will generate a unique email from this name.
	// REQUIRED
	Suffix *string `json:"suffix"`
}

type CreateServiceAccountKeyPayload

type CreateServiceAccountKeyPayload struct {
	// Optional, public key part of the user generated RSA key-pair wrapped in a [X.509 v3 certificate](https://www.rfc-editor.org/rfc/rfc5280)
	PublicKey *string `json:"publicKey,omitempty"`
	// Optional, date of key expiration. When omitted, key is valid until deleted
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

type CreateServiceAccountKeyResponse

type CreateServiceAccountKeyResponse struct {
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the key
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// REQUIRED
	Credentials *CreateServiceAccountKeyResponseCredentials `json:"credentials"`
	// Unique ID of the key.
	// REQUIRED
	Id *string `json:"id"`
	// REQUIRED
	KeyAlgorithm *string `json:"keyAlgorithm"`
	// REQUIRED
	KeyOrigin *string `json:"keyOrigin"`
	// REQUIRED
	KeyType *string `json:"keyType"`
	// Public key, that was provider, or was generated by the service account API
	// REQUIRED
	PublicKey *string `json:"publicKey"`
	// If specified, the timestamp until the key is active. May be null
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

type CreateServiceAccountKeyResponseCredentials

type CreateServiceAccountKeyResponseCredentials struct {
	// Audience - service account API URL
	// REQUIRED
	Aud *string `json:"aud"`
	// Service account email
	// REQUIRED
	Iss *string `json:"iss"`
	// Key id to use
	// REQUIRED
	Kid *string `json:"kid"`
	// Private key. Only present, if the service account API was generating the key. Not recoverable later.
	PrivateKey *string `json:"privateKey,omitempty"`
	// Service account id
	// REQUIRED
	Sub *string `json:"sub"`
}

type CreateServiceAccountPayload

type CreateServiceAccountPayload struct {
	// The requested name of the service account. The service will generate a unique email from this name.
	// REQUIRED
	Name *string `json:"name"`
}

type CreateShortLivedAccessTokenResponse

type CreateShortLivedAccessTokenResponse struct {
	// The short lived token that can be used for API access
	// REQUIRED
	AccessToken *string `json:"access_token"`
	// REQUIRED
	ExpiresIn *int64 `json:"expires_in"`
	// Refresh token that can be used to request a new access token when it expires (and before refresh token expires). Tokens are rotated.
	// REQUIRED
	RefreshToken *string `json:"refresh_token"`
	// scope field of the self signed token
	// REQUIRED
	Scope *string `json:"scope"`
	// REQUIRED
	TokenType *string `json:"token_type"`
}

type DefaultApiService

type DefaultApiService service

DefaultApiService DefaultApi service

type Error

type Error struct {
	// REQUIRED
	Error *string `json:"error"`
	// REQUIRED
	Message *string `json:"message"`
	// REQUIRED
	Path *string `json:"path"`
	// REQUIRED
	Status *int64 `json:"status"`
	// REQUIRED
	TimeStamp *time.Time `json:"timeStamp"`
}

type GetServiceAccountKeyResponse

type GetServiceAccountKeyResponse struct {
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the key
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// REQUIRED
	Credentials *GetServiceAccountKeyResponseCredentials `json:"credentials"`
	// Unique ID of the key.
	// REQUIRED
	Id *string `json:"id"`
	// REQUIRED
	KeyAlgorithm *string `json:"keyAlgorithm"`
	// REQUIRED
	KeyOrigin *string `json:"keyOrigin"`
	// REQUIRED
	KeyType *string `json:"keyType"`
	// Public key, in the requested format
	PublicKey *string `json:"publicKey,omitempty"`
	// If specified, the timestamp until the key is active. May be null
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

type GetServiceAccountKeyResponseCredentials

type GetServiceAccountKeyResponseCredentials struct {
	// Audience - service account API URL
	// REQUIRED
	Aud *string `json:"aud"`
	// Service account email
	// REQUIRED
	Iss *string `json:"iss"`
	// Key id to use
	// REQUIRED
	Kid *string `json:"kid"`
	// Service account id
	// REQUIRED
	Sub *string `json:"sub"`
}

type ImpersonateServiceAccountPayload

type ImpersonateServiceAccountPayload struct {
	// Lifetime of the created access token in seconds.
	Lifetime *int64 `json:"lifetime,omitempty"`
}

type ImpersonateServiceAccountResponse

type ImpersonateServiceAccountResponse struct {
	// The short lived token that can be used for API access
	// REQUIRED
	AccessToken *string `json:"access_token"`
	// Time in seconds till token expires
	// REQUIRED
	ExpiresIn *int64 `json:"expires_in"`
	// REQUIRED
	TokenType *string `json:"token_type"`
}

type IntrospectJWTPayload

type IntrospectJWTPayload struct {
	// REQUIRED
	Token         *string `json:"token"`
	TokenTypeHint *string `json:"token_type_hint,omitempty"`
}

type IntrospectJWTResponse

type IntrospectJWTResponse struct {
	// REQUIRED
	Active    *bool     `json:"active"`
	Aud       *[]string `json:"aud,omitempty"`
	ClientId  *string   `json:"client_id,omitempty"`
	Exp       *int64    `json:"exp,omitempty"`
	Iat       *int64    `json:"iat,omitempty"`
	Iss       *string   `json:"iss,omitempty"`
	Jti       *string   `json:"jti,omitempty"`
	Scope     *string   `json:"scope,omitempty"`
	Sub       *string   `json:"sub,omitempty"`
	TokenType *string   `json:"token_type,omitempty"`
	Username  *string   `json:"username,omitempty"`
}

type JWK

type JWK struct {
	Alg *string `json:"alg,omitempty"`
	// REQUIRED
	E   *string `json:"e"`
	Kid *string `json:"kid,omitempty"`
	Ks  *string `json:"ks,omitempty"`
	// REQUIRED
	N      *string `json:"n"`
	Ops    *string `json:"ops,omitempty"`
	Use    *string `json:"use,omitempty"`
	X5c    *string `json:"x5c,omitempty"`
	X5t    *string `json:"x5t,omitempty"`
	X5t256 *string `json:"x5t256,omitempty"`
	X5u    *string `json:"x5u,omitempty"`
}

type JWKS

type JWKS struct {
	// REQUIRED
	Keys *[]JWK `json:"keys"`
}

type ListAccessTokensResponse

type ListAccessTokensResponse struct {
	Items *[]AccessTokenMetadata `json:"items,omitempty"`
}

type ListServiceAccountKeysResponse

type ListServiceAccountKeysResponse struct {
	// REQUIRED
	Items *[]ServiceAccountKeyListResponse `json:"items"`
}

type ListServiceAccountsResponse

type ListServiceAccountsResponse struct {
	// REQUIRED
	Items *[]ServiceAccount `json:"items"`
}

type MappedNullable

type MappedNullable interface {
	ToMap() (map[string]interface{}, error)
}

type NullableBool

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

func NewNullableBool

func NewNullableBool(val *bool) *NullableBool

func (NullableBool) Get

func (v NullableBool) Get() *bool

func (NullableBool) IsSet

func (v NullableBool) IsSet() bool

func (NullableBool) MarshalJSON

func (v NullableBool) MarshalJSON() ([]byte, error)

func (*NullableBool) Set

func (v *NullableBool) Set(val *bool)

func (*NullableBool) UnmarshalJSON

func (v *NullableBool) UnmarshalJSON(src []byte) error

func (*NullableBool) Unset

func (v *NullableBool) Unset()

type NullableFloat32

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

func NewNullableFloat32

func NewNullableFloat32(val *float32) *NullableFloat32

func (NullableFloat32) Get

func (v NullableFloat32) Get() *float32

func (NullableFloat32) IsSet

func (v NullableFloat32) IsSet() bool

func (NullableFloat32) MarshalJSON

func (v NullableFloat32) MarshalJSON() ([]byte, error)

func (*NullableFloat32) Set

func (v *NullableFloat32) Set(val *float32)

func (*NullableFloat32) UnmarshalJSON

func (v *NullableFloat32) UnmarshalJSON(src []byte) error

func (*NullableFloat32) Unset

func (v *NullableFloat32) Unset()

type NullableFloat64

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

func NewNullableFloat64

func NewNullableFloat64(val *float64) *NullableFloat64

func (NullableFloat64) Get

func (v NullableFloat64) Get() *float64

func (NullableFloat64) IsSet

func (v NullableFloat64) IsSet() bool

func (NullableFloat64) MarshalJSON

func (v NullableFloat64) MarshalJSON() ([]byte, error)

func (*NullableFloat64) Set

func (v *NullableFloat64) Set(val *float64)

func (*NullableFloat64) UnmarshalJSON

func (v *NullableFloat64) UnmarshalJSON(src []byte) error

func (*NullableFloat64) Unset

func (v *NullableFloat64) Unset()

type NullableInt

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

func NewNullableInt

func NewNullableInt(val *int) *NullableInt

func (NullableInt) Get

func (v NullableInt) Get() *int

func (NullableInt) IsSet

func (v NullableInt) IsSet() bool

func (NullableInt) MarshalJSON

func (v NullableInt) MarshalJSON() ([]byte, error)

func (*NullableInt) Set

func (v *NullableInt) Set(val *int)

func (*NullableInt) UnmarshalJSON

func (v *NullableInt) UnmarshalJSON(src []byte) error

func (*NullableInt) Unset

func (v *NullableInt) Unset()

type NullableInt32

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

func NewNullableInt32

func NewNullableInt32(val *int32) *NullableInt32

func (NullableInt32) Get

func (v NullableInt32) Get() *int32

func (NullableInt32) IsSet

func (v NullableInt32) IsSet() bool

func (NullableInt32) MarshalJSON

func (v NullableInt32) MarshalJSON() ([]byte, error)

func (*NullableInt32) Set

func (v *NullableInt32) Set(val *int32)

func (*NullableInt32) UnmarshalJSON

func (v *NullableInt32) UnmarshalJSON(src []byte) error

func (*NullableInt32) Unset

func (v *NullableInt32) Unset()

type NullableInt64

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

func NewNullableInt64

func NewNullableInt64(val *int64) *NullableInt64

func (NullableInt64) Get

func (v NullableInt64) Get() *int64

func (NullableInt64) IsSet

func (v NullableInt64) IsSet() bool

func (NullableInt64) MarshalJSON

func (v NullableInt64) MarshalJSON() ([]byte, error)

func (*NullableInt64) Set

func (v *NullableInt64) Set(val *int64)

func (*NullableInt64) UnmarshalJSON

func (v *NullableInt64) UnmarshalJSON(src []byte) error

func (*NullableInt64) Unset

func (v *NullableInt64) Unset()

type NullableString

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

func NewNullableString

func NewNullableString(val *string) *NullableString

func (NullableString) Get

func (v NullableString) Get() *string

func (NullableString) IsSet

func (v NullableString) IsSet() bool

func (NullableString) MarshalJSON

func (v NullableString) MarshalJSON() ([]byte, error)

func (*NullableString) Set

func (v *NullableString) Set(val *string)

func (*NullableString) UnmarshalJSON

func (v *NullableString) UnmarshalJSON(src []byte) error

func (*NullableString) Unset

func (v *NullableString) Unset()

type NullableTime

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

func NewNullableTime

func NewNullableTime(val *time.Time) *NullableTime

func (NullableTime) Get

func (v NullableTime) Get() *time.Time

func (NullableTime) IsSet

func (v NullableTime) IsSet() bool

func (NullableTime) MarshalJSON

func (v NullableTime) MarshalJSON() ([]byte, error)

func (*NullableTime) Set

func (v *NullableTime) Set(val *time.Time)

func (*NullableTime) UnmarshalJSON

func (v *NullableTime) UnmarshalJSON(src []byte) error

func (*NullableTime) Unset

func (v *NullableTime) Unset()

type PartialUpdateServiceAccountKeyPayload

type PartialUpdateServiceAccountKeyPayload struct {
	// Active keys are valid, while inactive keys are temporarily deactivated.
	Active *bool `json:"active,omitempty"`
	// Optional, date of key expiration. To disable, set time to \"9999-01-01T01:01:01Z\"
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

type PartialUpdateServiceAccountKeyResponse

type PartialUpdateServiceAccountKeyResponse struct {
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the key
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// Unique ID of the key.
	// REQUIRED
	Id *string `json:"id"`
	// REQUIRED
	KeyAlgorithm *string `json:"keyAlgorithm"`
	// REQUIRED
	KeyOrigin *string `json:"keyOrigin"`
	// REQUIRED
	KeyType *string `json:"keyType"`
	// If specified, the timestamp until the key is active. May be null
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

type ScimError

type ScimError struct {
	// REQUIRED
	Response *ScimErrorResponseDetail `json:"response"`
	// REQUIRED
	Status *string `json:"status"`
}

type ScimErrorResponseDetail

type ScimErrorResponseDetail struct {
	Detail   *[]string `json:"detail,omitempty"`
	Schemas  *[]string `json:"schemas,omitempty"`
	ScimType *string   `json:"scimType,omitempty"`
}

type ScimListResponse

type ScimListResponse struct {
	// REQUIRED
	Resources *[]ScimServiceAccount `json:"Resources"`
	// The number of service accounts returned in a list response page. Required when partial results are returned due to pagination.
	// REQUIRED
	ItemsPerPage *int64 `json:"itemsPerPage"`
	// SCIM schema used.
	// REQUIRED
	Schemas *[]string `json:"schemas"`
	// The 1-based index of the first result in the current set of list results. Required when partial results are returned due to pagination.
	// REQUIRED
	StartIndex *int64 `json:"startIndex"`
	// The total number of results returned by the list or query operation.  The value may be larger than the number of resources returned
	// REQUIRED
	TotalResults *int64 `json:"totalResults"`
}

type ScimSchemaServiceAccount

type ScimSchemaServiceAccount struct {
	// SCIM resource attributes.
	// REQUIRED
	Attributes *[]ScimSchemaServiceAccountAttributesInner `json:"attributes"`
	// The schema's human-readable description.
	Description *string `json:"description,omitempty"`
	// The unique URI of the schema.
	// REQUIRED
	Id *string `json:"id"`
	// SCIM schema meta information.
	// REQUIRED
	Meta *map[string]interface{} `json:"meta"`
	// The schema's human-readable name.
	Name *string `json:"name,omitempty"`
}

type ScimSchemaServiceAccountAttributesInner

type ScimSchemaServiceAccountAttributesInner struct {
	// Boolean value that specifies whether or not a string attribute is case sensitive.
	CaseExact *string `json:"caseExact,omitempty"`
	// Attribute's human-readable description.
	Description *string `json:"description,omitempty"`
	// Boolean value indicating attribute's plurality.
	MultiValued *string `json:"multiValued,omitempty"`
	// Keyword indicating the circumstances under which the value of the attribute can be (re)defined.
	Mutability *string `json:"mutability,omitempty"`
	// Attribute's name.
	Name *string `json:"name,omitempty"`
	// Boolean value indicating wheter attribute is required or not.
	Required *string `json:"required,omitempty"`
	// Keyword that indicates when an attribute and associated values are returned in response to a GET request or in response to a PUT, POST, or PATCH request.
	Returned *string `json:"returned,omitempty"`
	// Attributes's data type.
	Type *string `json:"type,omitempty"`
	// Keyword value that specifies how the service provider enforces uniqueness of attribute values.
	Uniqueness *string `json:"uniqueness,omitempty"`
}

type ScimServiceAccount

type ScimServiceAccount struct {
	// Unique identifier of the service account in format of an email address generated by the service containing the prefix provided by the user during creation.
	// REQUIRED
	Email *string `json:"email"`
	// Unique ID of the service account. It is also used in the 'sub' field of the service accounts access tokens.
	// REQUIRED
	Id *string `json:"id"`
	// A Boolean value indicating internal service accounts.
	// REQUIRED
	Internal *bool `json:"internal"`
	// REQUIRED
	Meta *ScimServiceAccountMeta `json:"meta"`
	// Name of the service account, suitable for display to end-users.
	// REQUIRED
	Name *string `json:"name"`
	// Identifier of related project.
	// REQUIRED
	ProjectId *string `json:"projectId"`
	// Array of strings containing SCIM's primary/base schema URI.
	// REQUIRED
	Schemas *[]string `json:"schemas"`
}

type ScimServiceAccountMeta

type ScimServiceAccountMeta struct {
	// Timestamp service account was created
	// REQUIRED
	Created *time.Time `json:"created"`
	// Timestamp service account was last modified
	// REQUIRED
	LastModified *time.Time `json:"lastModified"`
	// The URI of the service account being returned.
	// REQUIRED
	Location *string `json:"location"`
	// Name of the SCIM resource type
	// REQUIRED
	ResourceType *string `json:"resourceType"`
	// The version of the service account being returned. Currently empty.
	// REQUIRED
	Version *string `json:"version"`
}

type ServiceAccount

type ServiceAccount struct {
	// Unique identifier of the service account in format of an email address generated by the service containing the prefix provided by the user during creation.
	// REQUIRED
	Email *string `json:"email"`
	// Unique ID of the service account. It is also used in the 'sub' field of the service accounts access tokens.
	// REQUIRED
	Id *string `json:"id"`
	// Flag indicating internal service accounts
	// REQUIRED
	Internal *bool `json:"internal"`
	// ID of the related project
	// REQUIRED
	ProjectId *string `json:"projectId"`
}

type ServiceAccountKeyListResponse

type ServiceAccountKeyListResponse struct {
	// REQUIRED
	Active *bool `json:"active"`
	// Creation time of the key
	// REQUIRED
	CreatedAt *time.Time `json:"createdAt"`
	// Unique ID of the key.
	// REQUIRED
	Id *string `json:"id"`
	// REQUIRED
	KeyAlgorithm *string `json:"keyAlgorithm"`
	// REQUIRED
	KeyOrigin *string `json:"keyOrigin"`
	// REQUIRED
	KeyType *string `json:"keyType"`
	// If specified, the timestamp until the key is active. May be null
	ValidUntil *time.Time `json:"validUntil,omitempty"`
}

Jump to

Keyboard shortcuts

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