Documentation ¶
Overview ¶
+kubebuilder:object:generate=true
Index ¶
- func Marshal(v interface{}) ([]byte, error)
- type APICatalogue
- type APIDefinitionSpec
- type APIDefinitionSpecList
- type APIDescription
- type APIDocumentation
- type APIProtocol
- type AccessTypeEnum
- type AuthConfig
- type AuthProviderCode
- type AuthProviderMeta
- type AuthType
- type AuthTypeEnum
- type AuthorizeTypeEnum
- type BasicAuthMeta
- type BundleManifest
- type CORS
- type CacheMeta
- type CacheOptions
- type CheckCommand
- type CircuitBreakerMeta
- type DCROptions
- type DataSourceConfig
- type DocumentationType
- type EmailConfigMeta
- type EmailCopyOptions
- type EndPointMeta
- type EndpointMethodAction
- type EndpointMethodMeta
- type EventHandlerMetaConfig
- type EventHandlerTriggerConfig
- type ExtendedPathsSet
- type Float64
- type GlobalRateLimit
- type GrantTypeEnum
- type GraphQLConfig
- type GraphQLConfigVersion
- type GraphQLEngineConfig
- type GraphQLEngineDataSource
- type GraphQLEngineDataSourceKind
- type GraphQLExecutionMode
- type GraphQLFieldConfig
- type GraphQLPlayground
- type GraphQLProxyConfig
- type GraphQLSubgraphConfig
- type GraphQLSubgraphEntity
- type GraphQLSupergraphConfig
- type GraphQLTypeFields
- type HardTimeoutMeta
- type HeaderInjectionMeta
- type HostCheckObject
- type HttpMethod
- type IdExtractorConfig
- type IdExtractorSource
- type IdExtractorType
- type InternalMeta
- type ListAPIOptions
- type MailOptions
- type MapStringInterfaceType
- type MappingConfiguration
- type MethodTransformMeta
- type MiddlewareDefinition
- type MiddlewareDriver
- type MiddlewareIdExtractor
- type MiddlewareSection
- type NotificationsManager
- type OAuth2Meta
- type OIDProviderConfig
- type OpenIDOptions
- type Percent
- type PortalModelPortalConfig
- type Proxy
- type ProxyTransport
- type RequestInputType
- type RequestSigningMeta
- type RequestSizeMeta
- type ResponseProcessor
- type ResponseTypeEnum
- type Result
- type RewriteToInternal
- type RoutingTrigger
- type RoutingTriggerOnType
- type RoutingTriggerOptions
- type ServiceDiscoveryConfiguration
- type SessionProviderCode
- type SessionProviderMeta
- type SignatureConfig
- type SourceConfig
- type StatusCodeTypeNameMapping
- type StorageEngineCode
- type StringRegexMap
- type SubGraphSpec
- type SubGraphStatus
- type SuperGraphSpec
- type Target
- type TargetInternal
- type TemplateData
- type TemplateMeta
- type TemplateMode
- type TrackEndpointMeta
- type TransformJQMeta
- type TykEvent
- type TykEventHandlerName
- type TypeFieldConfiguration
- type URLRewriteMeta
- type UptimeTestConfig
- type UptimeTests
- type ValidatePathMeta
- type VersionData
- type VersionDefinition
- type VersionInfo
- type VersionInfoPaths
- type VirtualMeta
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type APICatalogue ¶
type APICatalogue struct { Id string `json:"id"` OrgId string `json:"org_id"` APIS []APIDescription `json:"apis"` Email string `json:"email"` }
func (*APICatalogue) DeepCopy ¶
func (in *APICatalogue) DeepCopy() *APICatalogue
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APICatalogue.
func (*APICatalogue) DeepCopyInto ¶
func (in *APICatalogue) DeepCopyInto(out *APICatalogue)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIDefinitionSpec ¶
type APIDefinitionSpec struct { // For server use only, do not use ID string `json:"id,omitempty"` // Only set this field if you are referring // to an existing API def. // The Operator will use this APIID to link the CR with the API in Tyk // Note: The values in the CR will become the new source of truth, overriding the existing API Definition APIID string `json:"api_id,omitempty"` Name string `json:"name"` // OrgID is overwritten - no point setting this OrgID string `json:"org_id,omitempty"` // Active specifies if the api is enabled or not Active bool `json:"active,omitempty"` // Proxy Proxy Proxy `json:"proxy"` // +optional ListenPort int `json:"listen_port"` Protocol APIProtocol `json:"protocol"` EnableProxyProtocol bool `json:"enable_proxy_protocol,omitempty"` // Domain represents a custom host header that the gateway will listen on for this API Domain string `json:"domain,omitempty"` // DoNotTrack disables endpoint tracking for this API DoNotTrack *bool `json:"do_not_track,omitempty"` // UseKeylessAccess will switch off all key checking. Some analytics will still be recorded, but rate-limiting, // quotas and security policies will not be possible (there is no session to attach requests to). UseKeylessAccess bool `json:"use_keyless,omitempty"` // UseOAuth2 enables oauth2 authorization UseOauth2 bool `json:"use_oauth2,omitempty"` //+optional Oauth2Meta *OAuth2Meta `json:"oauth_meta,omitempty"` // StripAuthData ensures that any security tokens used for accessing APIs are stripped and not leaked to the upstream StripAuthData bool `json:"strip_auth_data,omitempty"` Auth AuthConfig `json:"auth,omitempty"` // +optional AuthConfigs map[string]AuthConfig `json:"auth_configs,omitempty"` // UseStandardAuth enables simple bearer token authentication UseStandardAuth bool `json:"use_standard_auth,omitempty"` UseMutualTLSAuth bool `json:"use_mutual_tls_auth,omitempty"` ClientCertificates []string `json:"client_certificates,omitempty"` ClientCertificateRefs []string `json:"client_certificate_refs,omitempty"` // PinnedPublicKeys allows you to whitelist public keys used to generate certificates, so you will be protected in // case an upstream certificate is compromised. Please use PinnedPublicKeysRefs if using cert-manager. PinnedPublicKeys map[string]string `json:"pinned_public_keys,omitempty"` // PinnedPublicKeysRefs allows you to specify public keys using k8s secret. // It takes domain name as a key and secret name as a value. PinnedPublicKeysRefs map[string]string `json:"pinned_public_keys_refs,omitempty"` // UpstreamCertificates is a map of domains and certificate IDs that is used by the Tyk // Gateway to provide mTLS support for upstreams UpstreamCertificates map[string]string `json:"upstream_certificates,omitempty"` // UpstreamCertificateRefs is a map of domains and secret names that is used internally // to obtain certificates from secrets in order to establish mTLS support for upstreams UpstreamCertificateRefs map[string]string `json:"upstream_certificate_refs,omitempty"` // EnableJWT set JWT as the access method for this API. EnableJWT bool `json:"enable_jwt,omitempty"` // Enable Go Plugin Auth. Needs to be combined with "use_keyless:false" UseGoPluginAuth bool `json:"use_go_plugin_auth,omitempty"` EnableCoProcessAuth bool `json:"enable_coprocess_auth,omitempty"` // JWTSigningMethod algorithm used to sign jwt token // +kubebuilder:validation:Enum=rsa;hmac;ecdsa JWTSigningMethod string `json:"jwt_signing_method,omitempty"` // JWTSource Must either be a base64 encoded valid RSA/HMAC key or a url to a // resource serving JWK, this key will then be used to validate inbound JWT and // throttle them according to the centralised JWT options and fields set in the // configuration. JWTSource string `json:"jwt_source,omitempty"` // JWTIdentityBaseField Identifies the user or identity to be used in the // Claims of the JWT. This will fallback to sub if not found. This field forms // the basis of a new “virtual” token that gets used after validation. It means // policy attributes are carried forward through Tyk for attribution purposes. JWTIdentityBaseField string `json:"jwt_identity_base_field,omitempty"` // JWTClientIDBaseField is the name of the field on JWT claim to use for client // id. This field is mutually exclusive to jwt_identity_base_field, meaning you // can only set/use one and jwt_identity_base_field takes precedence when both // are set. JWTClientIDBaseField string `json:"jwt_client_base_field,omitempty"` // JWTPolicyFieldName The policy ID to apply to the virtual token generated for a JWT JWTPolicyFieldName string `json:"jwt_policy_field_name,omitempty"` // JWTDefaultPolicies is a list of policies that will be used when base policy // can't be extracted from the JWT token. When this list is provided the first // element will be used as the base policy while the rest of elements will be applied. JWTDefaultPolicies []string `json:"jwt_default_policies,omitempty"` // JWTIssuedAtValidationSkew adds validation for issued at JWT claim. // Given // now = current unix time // skew = jwt_issued_at_validation_skew // iat = the issued at jwt claim // If iat > (now + skew) then validation will fail with "token used before issued" JWTIssuedAtValidationSkew uint64 `json:"jwt_issued_at_validation_skew,omitempty"` // JWTExpiresAtValidationSkew adds validation for expired at JWT claim. // Given // now = current unix time // skew = jwt_expires_at_validation_skew // exp = expired at // If exp > (now - skew) then validation will fail with "token has expired" JWTExpiresAtValidationSkew uint64 `json:"jwt_expires_at_validation_skew,omitempty"` // JWTNotBeforeValidationSkew adds validation for not before JWT claim. // Given // now = current unix time // skew = jwt_not_before_validation_skew // nbf = the not before jwt claim // If nbf > (now + skew) then validation will fail with "token is not valid yet" JWTNotBeforeValidationSkew uint64 `json:"jwt_not_before_validation_skew,omitempty"` // JWTSkipKid when true we ingore using kid as the identity for a JWT token and // instead use jwt_identity_base_field if it was set or fallback to sub JWT // claim. JWTSkipKid bool `json:"jwt_skip_kid,omitempty"` // JWTScopeToPolicyMapping this is a mapping of scope value to policy id. If // this is set then a scope value found in this map will make the mappend // policy to be applied. JWTScopeToPolicyMapping map[string]string `json:"jwt_scope_to_policy_mapping,omitempty"` // JWTScopeClaimName overides the key used for scope values in the JWT claims. // By default the value is "scope" JWTScopeClaimName string `json:"jwt_scope_claim_name,omitempty"` VersionDefinition VersionDefinition `json:"definition,omitempty"` VersionData VersionData `json:"version_data,omitempty"` // DisableRateLimit allows you to disable rate limits in a given API Definition. DisableRateLimit bool `json:"disable_rate_limit,omitempty"` // DisableQuota allows you to disable quota middleware in a given API Definition. DisableQuota bool `json:"disable_quota,omitempty"` // GlobalRateLimit is an API Level Global Rate Limit, which assesses all traffic coming into the API from all // sources and ensures that the overall rate limit is not exceeded. GlobalRateLimit GlobalRateLimit `json:"global_rate_limit,omitempty"` CustomMiddleware MiddlewareSection `json:"custom_middleware,omitempty"` CustomMiddlewareBundle string `json:"custom_middleware_bundle,omitempty"` CacheOptions CacheOptions `json:"cache_options,omitempty"` // SessionLifetime this is duration in seconds before the session key expires // in redis. // // Example: // If you want the session keys to be alive only 24 hours you can set this // value to 86400 that we can break down to // 60 * 60 * 24 = Total seconds in a day //+optional SessionLifetime int64 `json:"session_lifetime,omitempty"` // Internal tells Tyk Gateway that this is a virtual API. It can only be routed to from other APIs. Internal bool `json:"internal,omitempty"` // EnableIPWhiteListing activates the ip whitelisting middleware. EnableIPWhiteListing bool `json:"enable_ip_whitelisting,omitempty"` // AllowedIPs is a list of IP address that are whitelisted.When this is // provided all IP address that is not on this list will be blocked and a 403 http // status will be returned. The IP address can be IPv4 or IPv6.IP in // CIDR notation is also supported. AllowedIPs []string `json:"allowed_ips,omitempty"` // EnableIPBlacklisting activates the ip blacklisting middleware. EnableIPBlacklisting bool `json:"enable_ip_blacklisting,omitempty"` // BlacklistedIPs is a list of IP address that will be blacklisted.This means if // origin IP matches any IP in this list a 403 http status code will be // returned. The IP address can be IPv4 or IPv6. IP in CIDR notation is also // supported. BlacklistedIPs []string `json:"blacklisted_ips,omitempty"` ResponseProcessors []ResponseProcessor `json:"response_processors,omitempty"` CORS CORS `json:"CORS,omitempty"` // Certificates is a list of Tyk Certificate IDs. e.g. orgid+fingerprint. Use CertificateSecretNames if using cert-manager Certificates []string `json:"certificates,omitempty"` // CertificateSecretNames represents the names of the secrets that the controller should look for in the current // namespace which contain the certificates. CertificateSecretNames []string `json:"certificate_secret_names,omitempty"` // Tags are named gateway nodes which tell gateway clusters whether to load an API or not. // for example, to load the API in an ARA gateway, you might want to include an `edge` tag. Tags []string `json:"tags,omitempty"` // EnableContextVars extracts request context variables from the start of the middleware chain. // Set this to true to make them available to your transforms. // Context Variables are available in the url rewriter, modify headers and body transforms. EnableContextVars bool `json:"enable_context_vars,omitempty"` // ConfigData can be used to pass custom attributes (a JSON object) into your middleware, such // as a virtual endpoint or header transform. // +optional // +nullable ConfigData *MapStringInterfaceType `json:"config_data"` TagHeaders []string `json:"tag_headers,omitempty"` // EnableDetailedRecording instructs Tyk store the inbound request and outbound response data in HTTP Wire format // as part of the Analytics data EnableDetailedRecording bool `json:"enable_detailed_recording,omitempty"` GraphQL *GraphQLConfig `json:"graphql,omitempty"` }
APIDefinitionSpec represents the configuration for a single proxied API and it's versions.
func (*APIDefinitionSpec) CollectLoopingTarget ¶
func (a *APIDefinitionSpec) CollectLoopingTarget() (targets []Target)
func (*APIDefinitionSpec) DeepCopy ¶
func (in *APIDefinitionSpec) DeepCopy() *APIDefinitionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDefinitionSpec.
func (*APIDefinitionSpec) DeepCopyInto ¶
func (in *APIDefinitionSpec) DeepCopyInto(out *APIDefinitionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIDefinitionSpecList ¶
type APIDefinitionSpecList struct {
Apis []*APIDefinitionSpec `json:"apis"`
}
APIDefinitionSpecList is a list of api definitions
func (*APIDefinitionSpecList) DeepCopy ¶
func (in *APIDefinitionSpecList) DeepCopy() *APIDefinitionSpecList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDefinitionSpecList.
func (*APIDefinitionSpecList) DeepCopyInto ¶
func (in *APIDefinitionSpecList) DeepCopyInto(out *APIDefinitionSpecList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIDescription ¶
type APIDescription struct { // Name is the title of the API that you wish to be published to the catalogue Name string `json:"name,omitempty"` // AuthType displays as a badge next to the name of the API AuthType AuthType `json:"auth_type,omitempty"` // Show toggles visibility of the API in the portal catalogue Show bool `json:"show,omitempty"` // TODO: I don't think this is exposed to the default portal templates. ShortDescription string `json:"short_description,omitempty"` // LongDescription can be markdown. It allows you to describe the capabilities of the API and is displayed just // below the name and AuthType in the catalogue listing page. LongDescription string `json:"long_description,omitempty"` // IsKeyless toggles visibility of the `Request an API Key button`. Use this when AuthType is keyless, jwt or oauth. IsKeyless bool `json:"is_keyless,omitempty"` // Version should always be v2 // +kubebuilder:validation:Optional // +kubebuilder:validation:Enum=v2 // +kubebuilder:default=v2 Version string `json:"version,omitempty"` // Config allows you to optionally override various fields in the PortalConfig. // TODO: This is an advanced capability which has not been fully tested with Tyk Operator as yet. Config *PortalModelPortalConfig `json:"config,omitempty"` // Fields is a generic map of key:value pairs. // You may wish to use this to tag a catalogue as type:internal or type:public // Then apply logic at the template layer to dynamically display catalogue apis to different user types. Fields map[string]string `json:"fields,omitempty"` // PolicyID explicitly sets the policy_id to be published. We do not recommend that this value is set directly. // Rather, use `policyRef` instead. PolicyID string `json:"policy_id,omitempty"` // Do not set Documentation. Use `docs` instead. Documentation string `json:"documentation,omitempty"` }
func (*APIDescription) DeepCopy ¶
func (in *APIDescription) DeepCopy() *APIDescription
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDescription.
func (*APIDescription) DeepCopyInto ¶
func (in *APIDescription) DeepCopyInto(out *APIDescription)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIDocumentation ¶
type APIDocumentation struct { Id string `json:"id,omitempty"` Documentation string `json:"documentation"` DocumentationType DocumentationType `json:"doc_type"` // The policy_id of the APIDescription that this documentation is attached to. APIID string `json:"api_id"` }
func (*APIDocumentation) DeepCopy ¶
func (in *APIDocumentation) DeepCopy() *APIDocumentation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIDocumentation.
func (*APIDocumentation) DeepCopyInto ¶
func (in *APIDocumentation) DeepCopyInto(out *APIDocumentation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type APIProtocol ¶
type APIProtocol string
APIProtocol is the network transport protocol supported by the gateway +kubebuilder:validation:Enum="";h2c;tcp;tls;http;https;
type AccessTypeEnum ¶
type AccessTypeEnum string
+kubebuilder:validation:Enum=authorization_code;refresh_token;password;client_credentials
type AuthConfig ¶
type AuthConfig struct { UseParam bool `json:"use_param,omitempty"` ParamName string `json:"param_name,omitempty"` UseCookie bool `json:"use_cookie,omitempty"` CookieName string `json:"cookie_name,omitempty"` AuthHeaderName string `json:"auth_header_name"` UseCertificate bool `json:"use_certificate,omitempty"` ValidateSignature bool `json:"validate_signature,omitempty"` Signature SignatureConfig `json:"signature,omitempty"` }
func (*AuthConfig) DeepCopy ¶
func (in *AuthConfig) DeepCopy() *AuthConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthConfig.
func (*AuthConfig) DeepCopyInto ¶
func (in *AuthConfig) DeepCopyInto(out *AuthConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthProviderCode ¶
type AuthProviderCode string
ApiDefinitionSpec defines the desired state of ApiDefinition
type AuthProviderMeta ¶
type AuthProviderMeta struct { Name AuthProviderCode `json:"name"` StorageEngine StorageEngineCode `json:"storage_engine"` }
func (*AuthProviderMeta) DeepCopy ¶
func (in *AuthProviderMeta) DeepCopy() *AuthProviderMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthProviderMeta.
func (*AuthProviderMeta) DeepCopyInto ¶
func (in *AuthProviderMeta) DeepCopyInto(out *AuthProviderMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthType ¶
type AuthType string
All auth_type from dashboard validation:Enum=multiAuth;keyless;basic;hmac;jwt;oauth;openid;mutualTLS;authToken;custom;other +kubebuilder:validation:Enum=keyless;jwt;oauth;authToken
type AuthTypeEnum ¶
type AuthTypeEnum string
ApiDefinitionSpec defines the desired state of ApiDefinition
type BasicAuthMeta ¶
type BasicAuthMeta struct { DisableCaching bool `json:"disable_caching"` CacheTTL int `json:"cache_ttl"` ExtractFromBody bool `json:"extract_from_body"` BodyUserRegexp string `json:"body_user_regexp"` BodyPasswordRegexp string `json:"body_password_regexp"` }
func (*BasicAuthMeta) DeepCopy ¶
func (in *BasicAuthMeta) DeepCopy() *BasicAuthMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BasicAuthMeta.
func (*BasicAuthMeta) DeepCopyInto ¶
func (in *BasicAuthMeta) DeepCopyInto(out *BasicAuthMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BundleManifest ¶
type BundleManifest struct { FileList []string `json:"file_list"` CustomMiddleware MiddlewareSection `json:"custom_middleware"` Checksum string `json:"checksum"` Signature string `json:"signature"` }
func (*BundleManifest) DeepCopy ¶
func (in *BundleManifest) DeepCopy() *BundleManifest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundleManifest.
func (*BundleManifest) DeepCopyInto ¶
func (in *BundleManifest) DeepCopyInto(out *BundleManifest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CORS ¶
type CORS struct { // Enable when set to true it enables the cors middleware for the api Enable bool `json:"enable,omitempty"` // AllowedOrigins is a list of origin domains to allow access from. AllowedOrigins []string `json:"allowed_origins,omitempty"` // AllowedMethods is a list of methods to allow access via. AllowedMethods []HttpMethod `json:"allowed_methods,omitempty"` // AllowedHeaders are headers that are allowed within a request. AllowedHeaders []string `json:"allowed_headers,omitempty"` // ExposedHeaders is a list of headers that are exposed back in the response. ExposedHeaders []string `json:"exposed_headers,omitempty"` // AllowCredentials if true will allow cookies AllowCredentials bool `json:"allow_credentials,omitempty"` // MaxAge is the maximum age of credentials MaxAge int `json:"max_age,omitempty"` // OptionsPassthrough allow CORS OPTIONS preflight request to be proxied // directly to upstream, without authentication and rest of checks. This means // that pre-flight requests generated by web-clients such as SwaggerUI or the // Tyk Portal documentation system will be able to test the API using trial // keys. If your service handles CORS natively, then enable this option. OptionsPassthrough bool `json:"options_passthrough,omitempty"` // Debug if true, this option produces log files for the CORS middleware Debug bool `json:"debug,omitempty"` }
func (*CORS) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORS.
func (*CORS) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CacheMeta ¶
type CacheMeta struct { Method HttpMethod `json:"method"` Path string `json:"path"` CacheKeyRegex string `json:"cache_key_regex"` CacheOnlyResponseCodes []int `json:"cache_response_codes"` }
func (*CacheMeta) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheMeta.
func (*CacheMeta) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CacheOptions ¶
type CacheOptions struct { // EnableCache turns global cache middleware on or off. // It is still possible to enable caching on a per-path basis by explicitly setting the endpoint cache middleware. // see `spec.version_data.versions.{VERSION}.extended_paths.cache[]` EnableCache bool `json:"enable_cache,omitempty"` // CacheTimeout is the TTL for a cached object in seconds CacheTimeout int64 `json:"cache_timeout"` // CacheAllSafeRequests caches responses to (GET, HEAD, OPTIONS) requests // overrides per-path cache settings in versions, applies across versions CacheAllSafeRequests bool `json:"cache_all_safe_requests,omitempty"` // CacheOnlyResponseCodes is an array of response codes which are safe to cache. e.g. 404 CacheOnlyResponseCodes []int `json:"cache_response_codes,omitempty"` // EnableUpstreamCacheControl instructs Tyk Cache to respect upstream cache control headers EnableUpstreamCacheControl bool `json:"enable_upstream_cache_control,omitempty"` // CacheControlTTLHeader is the response header which tells Tyk how long it is safe to cache the response for CacheControlTTLHeader string `json:"cache_control_ttl_header,omitempty"` // CacheByHeaders allows header values to be used as part of the cache key CacheByHeaders []string `json:"cache_by_headers,omitempty"` }
func (*CacheOptions) DeepCopy ¶
func (in *CacheOptions) DeepCopy() *CacheOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CacheOptions.
func (*CacheOptions) DeepCopyInto ¶
func (in *CacheOptions) DeepCopyInto(out *CacheOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CheckCommand ¶
func (*CheckCommand) DeepCopy ¶
func (in *CheckCommand) DeepCopy() *CheckCommand
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CheckCommand.
func (*CheckCommand) DeepCopyInto ¶
func (in *CheckCommand) DeepCopyInto(out *CheckCommand)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CircuitBreakerMeta ¶
type CircuitBreakerMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` // ThresholdPercent is the percentage of requests that fail before breaker is tripped ThresholdPercent Percent `json:"threshold_percent"` // Samples defines the number of requests to base the ThresholdPercent on Samples int64 `json:"samples"` // ReturnToServiceAfter represents the time in seconds to return back to the service ReturnToServiceAfter int `json:"return_to_service_after"` DisableHalfOpenState bool `json:"disable_half_open_state,omitempty"` }
func (*CircuitBreakerMeta) DeepCopy ¶
func (in *CircuitBreakerMeta) DeepCopy() *CircuitBreakerMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CircuitBreakerMeta.
func (*CircuitBreakerMeta) DeepCopyInto ¶
func (in *CircuitBreakerMeta) DeepCopyInto(out *CircuitBreakerMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DCROptions ¶
type DCROptions struct { // IDPHost is the fully qualified hostname of the Identity Provider. // e.g. https://mysubdomain.eu.auth0.com IDPHost string `json:"idp_host"` // RegistrationEndpoint is the registration_endpoint as presented in the /.well-known/openid-configuration document. RegistrationEndpoint string `json:"registration_endpoint"` // AccessToken represents an optional bearer token to authenticate with against the registration endpoint AccessToken string `json:"access_token,omitempty"` // Provider is an optional enum of the provider which allows Tyk to register clients outside the standard DCR spec // and perform provider specific logic. // If your provider is not in this list, please omit. Upon failure, submit a support ticket so that we may extend // support for your provider. // +kubebuilder:validation:Enum=gluu;keycloak;okta Provider string `json:"provider,omitempty"` // GrantTypes is an array of OAuth 2.0 grant type strings that the client can use at // the token endpoint. GrantTypes []GrantTypeEnum `json:"grant_types"` // ResponseTypes is an array of OAuth 2.0 response type strings that the client can // use at the authorization endpoint. ResponseTypes []ResponseTypeEnum `json:"response_types,omitempty"` // TokenEndpointAuthMethod is an indicator of the requested authentication method for the token endpoint. // "none": The client is a public client and does not have a client secret. // "client_secret_post": The client uses the HTTP POST parameters // "client_secret_basic": The client uses HTTP Basic authentication // +kubebuilder:validation:Enum=client_secret_basic;client_secret_post;client_secret_jwt;private_key_jwt;none TokenEndpointAuthMethod string `json:"token_endpoint_auth_method"` }
DCROptions are the configuration metadata for dynamic client registration. To enable DCR, ensure EnableDCR is true.
func (*DCROptions) DeepCopy ¶
func (in *DCROptions) DeepCopy() *DCROptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DCROptions.
func (*DCROptions) DeepCopyInto ¶
func (in *DCROptions) DeepCopyInto(out *DCROptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataSourceConfig ¶
type DataSourceConfig struct { URL string `json:"url"` Method HttpMethod `json:"method"` Body string `json:"body,omitempty"` DefaultTypeName string `json:"default_type_name,omitempty"` Headers []string `json:"headers,omitempty"` StatusCodeTypeNameMappings []StatusCodeTypeNameMapping `json:"status_code_type_name_mappings,omitempty"` }
func (*DataSourceConfig) DeepCopy ¶
func (in *DataSourceConfig) DeepCopy() *DataSourceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSourceConfig.
func (*DataSourceConfig) DeepCopyInto ¶
func (in *DataSourceConfig) DeepCopyInto(out *DataSourceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DocumentationType ¶
type DocumentationType string
+kubebuilder:validation:Enum=swagger;swagger_custom_url;graphql
type EmailConfigMeta ¶
type EmailConfigMeta struct { Enabled bool `bson:"enabled" json:"enabled"` EmailSubject string `bson:"subject" json:"subject"` EmailBody string `bson:"body" json:"body"` EmailSignoff string `bson:"sign_off" json:"sign_off"` HideTokenData bool `bson:"hide_token_data" json:"hide_token_data"` }
func (*EmailConfigMeta) DeepCopy ¶
func (in *EmailConfigMeta) DeepCopy() *EmailConfigMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailConfigMeta.
func (*EmailConfigMeta) DeepCopyInto ¶
func (in *EmailConfigMeta) DeepCopyInto(out *EmailConfigMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmailCopyOptions ¶
type EmailCopyOptions struct { WelcomeEmail EmailConfigMeta `json:"welcome_email"` APIKeyEmail EmailConfigMeta `json:"key_email"` ResetPasswordEmail EmailConfigMeta `json:"reset_password_email"` }
func (*EmailCopyOptions) DeepCopy ¶
func (in *EmailCopyOptions) DeepCopy() *EmailCopyOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmailCopyOptions.
func (*EmailCopyOptions) DeepCopyInto ¶
func (in *EmailCopyOptions) DeepCopyInto(out *EmailCopyOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndPointMeta ¶
type EndPointMeta struct { Path string `json:"path"` IgnoreCase bool `json:"ignore_case"` MethodActions map[string]EndpointMethodMeta `json:"method_actions"` }
func (*EndPointMeta) DeepCopy ¶
func (in *EndPointMeta) DeepCopy() *EndPointMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndPointMeta.
func (*EndPointMeta) DeepCopyInto ¶
func (in *EndPointMeta) DeepCopyInto(out *EndPointMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointMethodAction ¶
type EndpointMethodAction string
ApiDefinitionSpec defines the desired state of ApiDefinition
type EndpointMethodMeta ¶
type EndpointMethodMeta struct { Action EndpointMethodAction `json:"action"` Code int `json:"code"` Data string `json:"data"` Headers map[string]string `json:"headers"` }
func (*EndpointMethodMeta) DeepCopy ¶
func (in *EndpointMethodMeta) DeepCopy() *EndpointMethodMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointMethodMeta.
func (*EndpointMethodMeta) DeepCopyInto ¶
func (in *EndpointMethodMeta) DeepCopyInto(out *EndpointMethodMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventHandlerMetaConfig ¶
type EventHandlerMetaConfig struct {
Events map[TykEvent][]EventHandlerTriggerConfig `json:"events"`
}
func (*EventHandlerMetaConfig) DeepCopy ¶
func (in *EventHandlerMetaConfig) DeepCopy() *EventHandlerMetaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHandlerMetaConfig.
func (*EventHandlerMetaConfig) DeepCopyInto ¶
func (in *EventHandlerMetaConfig) DeepCopyInto(out *EventHandlerMetaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventHandlerTriggerConfig ¶
type EventHandlerTriggerConfig struct {
Handler TykEventHandlerName `json:"handler_name"`
}
func (*EventHandlerTriggerConfig) DeepCopy ¶
func (in *EventHandlerTriggerConfig) DeepCopy() *EventHandlerTriggerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventHandlerTriggerConfig.
func (*EventHandlerTriggerConfig) DeepCopyInto ¶
func (in *EventHandlerTriggerConfig) DeepCopyInto(out *EventHandlerTriggerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtendedPathsSet ¶
type ExtendedPathsSet struct { Ignored []EndPointMeta `json:"ignored,omitempty"` WhiteList []EndPointMeta `json:"white_list,omitempty"` BlackList []EndPointMeta `json:"black_list,omitempty"` // List of paths which cache middleware should be enabled on Cached []string `json:"cache,omitempty"` Transform []TemplateMeta `json:"transform,omitempty"` TransformResponse []TemplateMeta `json:"transform_response,omitempty"` TransformJQ []TransformJQMeta `json:"transform_jq,omitempty"` TransformJQResponse []TransformJQMeta `json:"transform_jq_response,omitempty"` TransformHeader []HeaderInjectionMeta `json:"transform_headers,omitempty"` TransformResponseHeader []HeaderInjectionMeta `json:"transform_response_headers,omitempty"` AdvanceCacheConfig []CacheMeta `json:"advance_cache_config,omitempty"` HardTimeouts []HardTimeoutMeta `json:"hard_timeouts,omitempty"` CircuitBreaker []CircuitBreakerMeta `json:"circuit_breakers,omitempty"` URLRewrite []URLRewriteMeta `json:"url_rewrites,omitempty"` Virtual []VirtualMeta `json:"virtual,omitempty"` SizeLimit []RequestSizeMeta `json:"size_limits,omitempty"` MethodTransforms []MethodTransformMeta `json:"method_transforms,omitempty"` TrackEndpoints []TrackEndpointMeta `json:"track_endpoints,omitempty"` DoNotTrackEndpoints []TrackEndpointMeta `json:"do_not_track_endpoints,omitempty"` ValidateJSON []ValidatePathMeta `json:"validate_json,omitempty"` Internal []InternalMeta `json:"internal,omitempty"` }
func (*ExtendedPathsSet) DeepCopy ¶
func (in *ExtendedPathsSet) DeepCopy() *ExtendedPathsSet
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtendedPathsSet.
func (*ExtendedPathsSet) DeepCopyInto ¶
func (in *ExtendedPathsSet) DeepCopyInto(out *ExtendedPathsSet)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Float64 ¶
type Float64 string
Float64 is a work around to allow representing floating points as strings +kubebuilder:validation:Pattern="^(?:[-+]?(?:[0-9]+))?(?:\\.[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"
source for pattern https://github.com/asaskevich/govalidator/blob/7a23bdc65eef5f3783e782b436f3065eae3fc72d/patterns.go#L19
func (Float64) MarshalJSON ¶
MarshalJSON marshalls f as a float64 number
func (*Float64) UnmarshalJSON ¶
UnmarshalJSON supports both float64 and a json.Number of float64
type GlobalRateLimit ¶
type GlobalRateLimit struct { // Rate represents the number of requests allowed within a specified time window (Per) Rate int `json:"rate"` // Per represents a time window in seconds Per int `json:"per"` }
func (*GlobalRateLimit) DeepCopy ¶
func (in *GlobalRateLimit) DeepCopy() *GlobalRateLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GlobalRateLimit.
func (*GlobalRateLimit) DeepCopyInto ¶
func (in *GlobalRateLimit) DeepCopyInto(out *GlobalRateLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GrantTypeEnum ¶
type GrantTypeEnum string
+kubebuilder:validation:Enum=client_credentials;authorization_code;refresh_token
type GraphQLConfig ¶
type GraphQLConfig struct { // Enabled indicates if GraphQL proxy should be enabled. Enabled bool `json:"enabled"` ExecutionMode GraphQLExecutionMode `json:"execution_mode"` // Schema is the GraphQL Schema exposed by the GraphQL API/Upstream/Engine. Schema string `json:"schema,omitempty"` // TypeFieldConfigurations is a rule set of data source and mapping of a schema field. TypeFieldConfigurations []TypeFieldConfiguration `json:"type_field_configurations,omitempty"` // GraphQLPlayground is the Playground specific configuration. GraphQLPlayground GraphQLPlayground `json:"playground,omitempty"` // Proxy holds the configuration for a proxy only api. Proxy GraphQLProxyConfig `json:"proxy,omitempty"` // Subgraph holds the configuration for a GraphQL federation subgraph. Subgraph GraphQLSubgraphConfig `json:"subgraph,omitempty"` GraphRef string `json:"graph_ref,omitempty"` // Supergraph holds the configuration for a GraphQL federation supergraph. Supergraph GraphQLSupergraphConfig `json:"supergraph,omitempty"` // Version defines the version of the GraphQL config and engine to be used. Version GraphQLConfigVersion `json:"version,omitempty"` // LastSchemaUpdate contains the date and time of the last triggered schema update to the upstream. LastSchemaUpdate *metav1.Time `json:"last_schema_update,omitempty"` }
GraphQLConfig is the root config object for a GraphQL API.
func (*GraphQLConfig) DeepCopy ¶
func (in *GraphQLConfig) DeepCopy() *GraphQLConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLConfig.
func (*GraphQLConfig) DeepCopyInto ¶
func (in *GraphQLConfig) DeepCopyInto(out *GraphQLConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLConfigVersion ¶ added in v0.10.0
type GraphQLConfigVersion string
+kubebuilder:validation:Enum="1";"2"
type GraphQLEngineConfig ¶ added in v0.10.0
type GraphQLEngineConfig struct { // +nullable FieldConfigs []GraphQLFieldConfig `json:"field_configs"` // +nullable DataSources []GraphQLEngineDataSource `json:"data_sources"` }
func (*GraphQLEngineConfig) DeepCopy ¶ added in v0.10.0
func (in *GraphQLEngineConfig) DeepCopy() *GraphQLEngineConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLEngineConfig.
func (*GraphQLEngineConfig) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLEngineConfig) DeepCopyInto(out *GraphQLEngineConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLEngineDataSource ¶ added in v0.10.0
type GraphQLEngineDataSource struct { Kind GraphQLEngineDataSourceKind `json:"kind"` Name string `json:"name"` Internal bool `json:"internal"` RootFields []GraphQLTypeFields `json:"root_fields"` Config MapStringInterfaceType `json:"config"` }
func (*GraphQLEngineDataSource) DeepCopy ¶ added in v0.10.0
func (in *GraphQLEngineDataSource) DeepCopy() *GraphQLEngineDataSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLEngineDataSource.
func (*GraphQLEngineDataSource) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLEngineDataSource) DeepCopyInto(out *GraphQLEngineDataSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLEngineDataSourceKind ¶ added in v0.10.0
type GraphQLEngineDataSourceKind string
+kubebuilder:validation:Enum=REST;GraphQL
type GraphQLExecutionMode ¶
type GraphQLExecutionMode string
GraphQLExecutionMode is the mode to define how an api behaves. +kubebuilder:validation:Enum="";proxyOnly;executionEngine;supergraph;subgraph
const ( SuperGraphExecutionMode GraphQLExecutionMode = "supergraph" SubGraphExecutionMode GraphQLExecutionMode = "subgraph" )
type GraphQLFieldConfig ¶ added in v0.10.0
type GraphQLFieldConfig struct { TypeName string ` json:"type_name"` FieldName string ` json:"field_name"` DisableDefaultMapping bool ` json:"disable_default_mapping"` Path []string `json:"path"` }
func (*GraphQLFieldConfig) DeepCopy ¶ added in v0.10.0
func (in *GraphQLFieldConfig) DeepCopy() *GraphQLFieldConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLFieldConfig.
func (*GraphQLFieldConfig) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLFieldConfig) DeepCopyInto(out *GraphQLFieldConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLPlayground ¶
type GraphQLPlayground struct { // Enabled indicates if the playground should be enabled. Enabled bool `json:"enabled"` // Path sets the path on which the playground will be hosted if enabled. Path string `json:"path"` }
GraphQLPlayground represents the configuration for the public playground which will be hosted alongside the api.
func (*GraphQLPlayground) DeepCopy ¶
func (in *GraphQLPlayground) DeepCopy() *GraphQLPlayground
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLPlayground.
func (*GraphQLPlayground) DeepCopyInto ¶
func (in *GraphQLPlayground) DeepCopyInto(out *GraphQLPlayground)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLProxyConfig ¶ added in v0.9.0
func (*GraphQLProxyConfig) DeepCopy ¶ added in v0.9.0
func (in *GraphQLProxyConfig) DeepCopy() *GraphQLProxyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLProxyConfig.
func (*GraphQLProxyConfig) DeepCopyInto ¶ added in v0.9.0
func (in *GraphQLProxyConfig) DeepCopyInto(out *GraphQLProxyConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLSubgraphConfig ¶ added in v0.10.0
type GraphQLSubgraphConfig struct {
SDL string `json:"sdl"`
}
func (*GraphQLSubgraphConfig) DeepCopy ¶ added in v0.10.0
func (in *GraphQLSubgraphConfig) DeepCopy() *GraphQLSubgraphConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLSubgraphConfig.
func (*GraphQLSubgraphConfig) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLSubgraphConfig) DeepCopyInto(out *GraphQLSubgraphConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLSubgraphEntity ¶ added in v0.10.0
type GraphQLSubgraphEntity struct { APIID string `json:"api_id,omitempty"` Name string `json:"name"` URL string `json:"url"` SDL string `json:"sdl"` Headers map[string]string `json:"headers,omitempty"` }
func (*GraphQLSubgraphEntity) DeepCopy ¶ added in v0.10.0
func (in *GraphQLSubgraphEntity) DeepCopy() *GraphQLSubgraphEntity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLSubgraphEntity.
func (*GraphQLSubgraphEntity) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLSubgraphEntity) DeepCopyInto(out *GraphQLSubgraphEntity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLSupergraphConfig ¶ added in v0.10.0
type GraphQLSupergraphConfig struct { // UpdatedAt contains the date and time of the last update of a supergraph API. UpdatedAt *metav1.Time `json:"updated_at,omitempty"` Subgraphs []GraphQLSubgraphEntity `json:"subgraphs,omitempty"` MergedSDL string `json:"merged_sdl,omitempty"` GlobalHeaders map[string]string `json:"global_headers,omitempty"` }
func (*GraphQLSupergraphConfig) DeepCopy ¶ added in v0.10.0
func (in *GraphQLSupergraphConfig) DeepCopy() *GraphQLSupergraphConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLSupergraphConfig.
func (*GraphQLSupergraphConfig) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLSupergraphConfig) DeepCopyInto(out *GraphQLSupergraphConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GraphQLTypeFields ¶ added in v0.10.0
func (*GraphQLTypeFields) DeepCopy ¶ added in v0.10.0
func (in *GraphQLTypeFields) DeepCopy() *GraphQLTypeFields
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GraphQLTypeFields.
func (*GraphQLTypeFields) DeepCopyInto ¶ added in v0.10.0
func (in *GraphQLTypeFields) DeepCopyInto(out *GraphQLTypeFields)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HardTimeoutMeta ¶
type HardTimeoutMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` TimeOut int `json:"timeout"` }
func (*HardTimeoutMeta) DeepCopy ¶
func (in *HardTimeoutMeta) DeepCopy() *HardTimeoutMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HardTimeoutMeta.
func (*HardTimeoutMeta) DeepCopyInto ¶
func (in *HardTimeoutMeta) DeepCopyInto(out *HardTimeoutMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HeaderInjectionMeta ¶
type HeaderInjectionMeta struct { DeleteHeaders []string `json:"delete_headers"` AddHeaders map[string]string `json:"add_headers"` Path string `json:"path"` Method HttpMethod `json:"method"` ActOnResponse bool `json:"act_on"` }
func (*HeaderInjectionMeta) DeepCopy ¶
func (in *HeaderInjectionMeta) DeepCopy() *HeaderInjectionMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HeaderInjectionMeta.
func (*HeaderInjectionMeta) DeepCopyInto ¶
func (in *HeaderInjectionMeta) DeepCopyInto(out *HeaderInjectionMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostCheckObject ¶
type HostCheckObject struct { CheckURL string `json:"url"` Protocol string `json:"protocol"` Timeout time.Duration `json:"timeout"` EnableProxyProtocol bool `json:"enable_proxy_protocol"` Commands []CheckCommand `json:"commands"` Method HttpMethod `json:"method"` Headers map[string]string `json:"headers"` Body string `json:"body"` }
func (*HostCheckObject) DeepCopy ¶
func (in *HostCheckObject) DeepCopy() *HostCheckObject
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostCheckObject.
func (*HostCheckObject) DeepCopyInto ¶
func (in *HostCheckObject) DeepCopyInto(out *HostCheckObject)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HttpMethod ¶
type HttpMethod string
HttpMethod represents HTTP request method +kubebuilder:validation:Enum=GET;POST;PUT;PATCH;DELETE;OPTIONS;HEAD;CONNECT;TRACE
type IdExtractorConfig ¶
type IdExtractorConfig struct { HeaderName string `json:"header_name,omitempty"` FormParamName string `json:"param_name,omitempty"` RegexExpression string `json:"regex_expression,omitempty"` RegexMatchIndex int `json:"regex_match_index,omitempty"` }
func (*IdExtractorConfig) DeepCopy ¶
func (in *IdExtractorConfig) DeepCopy() *IdExtractorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdExtractorConfig.
func (*IdExtractorConfig) DeepCopyInto ¶
func (in *IdExtractorConfig) DeepCopyInto(out *IdExtractorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdExtractorSource ¶
type IdExtractorSource string
ApiDefinitionSpec defines the desired state of ApiDefinition
type IdExtractorType ¶
type IdExtractorType string
ApiDefinitionSpec defines the desired state of ApiDefinition
type InternalMeta ¶
type InternalMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*InternalMeta) DeepCopy ¶
func (in *InternalMeta) DeepCopy() *InternalMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalMeta.
func (*InternalMeta) DeepCopyInto ¶
func (in *InternalMeta) DeepCopyInto(out *InternalMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ListAPIOptions ¶
type ListAPIOptions struct { Compressed bool `json:"compressed,omitempty"` Query string `json:"q,omitempty"` Pages int `json:"p,omitempty"` Sort string `json:"sort,omitempty"` Category string `json:"category,omitempty"` AuthType string `json:"auth_type,omitempty"` Graph bool `json:"graph,omitempty"` }
ListAPIOptions options passed as url query when getting a list of api's
func (*ListAPIOptions) DeepCopy ¶
func (in *ListAPIOptions) DeepCopy() *ListAPIOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ListAPIOptions.
func (*ListAPIOptions) DeepCopyInto ¶
func (in *ListAPIOptions) DeepCopyInto(out *ListAPIOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (ListAPIOptions) Params ¶
func (ls ListAPIOptions) Params() url.Values
Params returns url.Values that matches what the admin api expects from ls.
type MailOptions ¶
type MailOptions struct { MailFromName string `json:"mail_from_name"` MailFromEmail string `json:"mail_from_email"` EmailCopy EmailCopyOptions `json:"email_copy"` }
func (*MailOptions) DeepCopy ¶
func (in *MailOptions) DeepCopy() *MailOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MailOptions.
func (*MailOptions) DeepCopyInto ¶
func (in *MailOptions) DeepCopyInto(out *MailOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MapStringInterfaceType ¶ added in v0.8.2
type MapStringInterfaceType struct { // +kubebuilder:pruning:PreserveUnknownFields unstructured.Unstructured `json:",inline"` }
MapStringInterfaceType represents a generic struct used as a map[string]interface{}. Since an arbitrary JSON fields defined as map[string]interface{} is not feasible to use as a Kubernetes CRD, unstructured.Unstructured type is used.
func (*MapStringInterfaceType) DeepCopy ¶ added in v0.8.2
func (in *MapStringInterfaceType) DeepCopy() *MapStringInterfaceType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MapStringInterfaceType.
func (*MapStringInterfaceType) DeepCopyInto ¶ added in v0.8.2
func (in *MapStringInterfaceType) DeepCopyInto(out *MapStringInterfaceType)
func (*MapStringInterfaceType) MarshalJSON ¶ added in v0.8.2
func (in *MapStringInterfaceType) MarshalJSON() (data []byte, err error)
func (*MapStringInterfaceType) UnmarshalJSON ¶ added in v0.8.2
func (in *MapStringInterfaceType) UnmarshalJSON(data []byte) error
type MappingConfiguration ¶
func (*MappingConfiguration) DeepCopy ¶
func (in *MappingConfiguration) DeepCopy() *MappingConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MappingConfiguration.
func (*MappingConfiguration) DeepCopyInto ¶
func (in *MappingConfiguration) DeepCopyInto(out *MappingConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MethodTransformMeta ¶
type MethodTransformMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` ToMethod HttpMethod `json:"to_method"` }
func (*MethodTransformMeta) DeepCopy ¶
func (in *MethodTransformMeta) DeepCopy() *MethodTransformMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MethodTransformMeta.
func (*MethodTransformMeta) DeepCopyInto ¶
func (in *MethodTransformMeta) DeepCopyInto(out *MethodTransformMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareDefinition ¶
type MiddlewareDefinition struct { Name string `json:"name"` Path string `json:"path"` RequireSession bool `json:"require_session,omitempty"` RawBodyOnly bool `json:"raw_body_only,omitempty"` }
func (*MiddlewareDefinition) DeepCopy ¶
func (in *MiddlewareDefinition) DeepCopy() *MiddlewareDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareDefinition.
func (*MiddlewareDefinition) DeepCopyInto ¶
func (in *MiddlewareDefinition) DeepCopyInto(out *MiddlewareDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareDriver ¶
type MiddlewareDriver string
ApiDefinitionSpec defines the desired state of ApiDefinition
type MiddlewareIdExtractor ¶
type MiddlewareIdExtractor struct { ExtractFrom IdExtractorSource `json:"extract_from"` ExtractWith IdExtractorType `json:"extract_with"` ExtractorConfig IdExtractorConfig `json:"extractor_config"` }
func (*MiddlewareIdExtractor) DeepCopy ¶
func (in *MiddlewareIdExtractor) DeepCopy() *MiddlewareIdExtractor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareIdExtractor.
func (*MiddlewareIdExtractor) DeepCopyInto ¶
func (in *MiddlewareIdExtractor) DeepCopyInto(out *MiddlewareIdExtractor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MiddlewareSection ¶
type MiddlewareSection struct { Pre []MiddlewareDefinition `json:"pre,omitempty"` Post []MiddlewareDefinition `json:"post,omitempty"` PostKeyAuth []MiddlewareDefinition `json:"post_key_auth,omitempty"` AuthCheck MiddlewareDefinition `json:"auth_check,omitempty"` Response []MiddlewareDefinition `json:"response,omitempty"` Driver MiddlewareDriver `json:"driver"` IdExtractor MiddlewareIdExtractor `json:"id_extractor,omitempty"` }
func (*MiddlewareSection) DeepCopy ¶
func (in *MiddlewareSection) DeepCopy() *MiddlewareSection
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MiddlewareSection.
func (*MiddlewareSection) DeepCopyInto ¶
func (in *MiddlewareSection) DeepCopyInto(out *MiddlewareSection)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NotificationsManager ¶
type NotificationsManager struct { OAuthKeyChangeURL string `json:"oauth_on_keychange_url"` }
func (*NotificationsManager) DeepCopy ¶
func (in *NotificationsManager) DeepCopy() *NotificationsManager
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NotificationsManager.
func (*NotificationsManager) DeepCopyInto ¶
func (in *NotificationsManager) DeepCopyInto(out *NotificationsManager)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OAuth2Meta ¶
type OAuth2Meta struct { // AllowedAccessTypes are an array of allowable access types. AllowedAccessTypes []AccessTypeEnum `json:"allowed_access_types"` // osin.AccessRequestType // AllowedAuthorizeTypes is an array of allowable `response_type` parameters `token` or authorization code `code`. // Choose token for client_credentials or implicit grant types. AllowedAuthorizeTypes []AuthorizeTypeEnum `json:"allowed_authorize_types"` // osin.AuthorizeRequestType // Login form to handle user login. AuthLoginRedirect string `json:"auth_login_redirect,omitempty"` }
func (*OAuth2Meta) DeepCopy ¶
func (in *OAuth2Meta) DeepCopy() *OAuth2Meta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OAuth2Meta.
func (*OAuth2Meta) DeepCopyInto ¶
func (in *OAuth2Meta) DeepCopyInto(out *OAuth2Meta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDProviderConfig ¶
type OIDProviderConfig struct { Issuer string `json:"issuer"` ClientIDs map[string]string `json:"client_ids"` }
func (*OIDProviderConfig) DeepCopy ¶
func (in *OIDProviderConfig) DeepCopy() *OIDProviderConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDProviderConfig.
func (*OIDProviderConfig) DeepCopyInto ¶
func (in *OIDProviderConfig) DeepCopyInto(out *OIDProviderConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OpenIDOptions ¶
type OpenIDOptions struct { Providers []OIDProviderConfig `json:"providers"` SegregateByClient bool `json:"segregate_by_client"` }
func (*OpenIDOptions) DeepCopy ¶
func (in *OpenIDOptions) DeepCopy() *OpenIDOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenIDOptions.
func (*OpenIDOptions) DeepCopyInto ¶
func (in *OpenIDOptions) DeepCopyInto(out *OpenIDOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Percent ¶
type Percent string
Percent describes a percentage value expressed as a float. This is a positive decimal value that is less than 1 +kubebuilder:validation:Pattern="^0\\.\\d+|1\\.0$"
func (Percent) MarshalJSON ¶
MarshalJSON returns a json string for p. This is a string for normal operations and a float64 when marshalling for dashboard or gateway
func (*Percent) UnmarshalJSON ¶
type PortalModelPortalConfig ¶
type PortalModelPortalConfig struct { // Set by the server. DO NOT set this field it is read only. Id string `json:"id,omitempty"` // OrgID is the organization ID OrgID string `json:"org_id,omitempty"` // SignUpFields is a slice of fields which are asked of the portal developer when they register for an account SignUpFields []string `json:"signup_fields,omitempty"` // KeyRequestFields is a slice of fields which are asked of the portal developer when requesting an api key KeyRequestFields []string `json:"key_request_fields,omitempty"` // RequireKeyApproval requires reviewing of all key requests before approving // them. By default developers will auto-enroll into an API and be given an API // key. If you wish to review key requests before giving developers access to // the API, enable this option and you will manually need to approve them in // the 'Key requests' section of the dashboard. RequireKeyApproval bool `json:"require_key_approval,omitempty"` // SecureKeyApproval enables Secure key approval.By default, API keys when // approved are sent in an email to the Developer. By enabling this option, the // Developer will instead receive a link where they can go to generate the API // key securely SecureKeyApproval bool `json:"secure_key_approval,omitempty"` // RedirectOnKeyRequest redirects key requests. WHen set to true it will // redirect key requests to the url specified in RedirectTo field RedirectOnKeyRequest bool `json:"redirect_on_key_request,omitempty"` // RedirectTo is a url used to redirect key requests RedirectTo string `json:"redirect_to,omitempty"` // EnableMultiSelection enables subscribing to multiple APIs with single // key.User will be able subscript any combination of exposed catalogues of the // same authentication type EnableMultiSelection bool `json:"enable_multi_selection,omitempty"` // DisableLogin disables login on developer portal.If you do not want // developers to be able to login, set this value to true. You can use this // configuration option in the portal templates to display or hide the login // form as well as disabling the actual login method. DisableLogin bool `json:"disable_login,omitempty"` // DisableSignup stop developer sign-up to the portal.This will stop developers // from being able to signup, they will need to be created manually, or // assigned keys via the key management API. DisableSignup bool `json:"disable_signup,omitempty"` DisableAutoLogin bool `json:"disable_auto_login,omitempty"` // CatalogueLoginOnly limits access to catalogues for login users only. CatalogueLoginOnly bool `json:"catalogue_login_only,omitempty"` // OAuthUsageLimit is the maximum permitted number of OAuth clients OAuthUsageLimit int `json:"oauth_usage_limit,omitempty"` Email string `json:"email,omitempty"` MailOptions *MailOptions `json:"mail_options,omitempty"` // EnableDCR activates dynamic client registration. EnableDCR bool `json:"enable_dcr,omitempty"` // DCROptions dynamic client registration options. DCROptions *DCROptions `json:"dcr_options,omitempty"` // Override overides global settings. These Catalogue settings are currently // being overwritten by the Global Catalogue settings. Toggle the checkbox // below to override them for this Catalogue. Override bool `json:"override,omitempty"` }
func (*PortalModelPortalConfig) DeepCopy ¶
func (in *PortalModelPortalConfig) DeepCopy() *PortalModelPortalConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortalModelPortalConfig.
func (*PortalModelPortalConfig) DeepCopyInto ¶
func (in *PortalModelPortalConfig) DeepCopyInto(out *PortalModelPortalConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Proxy ¶
type Proxy struct { // If PreserveHostHeader is set to true then the host header in the outbound request is retained to be the // inbound hostname of the proxy. PreserveHostHeader bool `json:"preserve_host_header,omitempty"` // ListenPath represents the path to listen on. e.g. `/api` or `/` or `/httpbin`. // Any requests coming into the host, on the port that Tyk is configured to run on, that match this path will // have the rules defined in the API Definition applied. Versioning assumes that different versions of an API // will live on the same URL structure. If you are using URL-based versioning (e.g. /v1/function, /v2/function) // then it is recommended to set up a separate non-versioned definition for each version as they are essentially // separate APIs. ListenPath string `json:"listen_path,omitempty"` // TargetURL defines the target URL that the request should be proxied to. TargetURL string `json:"target_url"` TargetInternal *TargetInternal `json:"target_internal,omitempty"` // DisableStripSlash disables the stripping of the slash suffix from a URL. // when `true` a request to http://foo.bar/baz/ will be retained. // when `false` a request to http://foo.bar/baz/ will be matched to http://foo.bar/baz DisableStripSlash bool `json:"disable_strip_slash,omitempty"` // StripListenPath removes the inbound listen path in the outgoing request. // e.g. http://acme.com/httpbin/get where `httpbin` is the listen path. The `httpbin` listen path which is used // to identify the API loaded in Tyk is removed, and the outbound request would be http://httpbin.org/get StripListenPath bool `json:"strip_listen_path,omitempty"` // EnableLoadBalancing enables Tyk's round-robin loadbalancer. Tyk will ignore the TargetURL field, and rely on // the hosts in the Targets list EnableLoadBalancing bool `json:"enable_load_balancing,omitempty"` // Targets defines a list of upstream host targets. Tyk will then round-robin load balance between these targets. // EnableLoadBalancing must be set to true in order to take advantage of this feature. Targets []string `json:"target_list,omitempty"` // CheckHostAgainstUptimeTests will check the hostname of the outbound request against the downtime list generated // by the uptime test host checker. If the host is found, then it is skipped or removed from the load balancer. // This is only valid if uptime tests for the api are enabled. CheckHostAgainstUptimeTests bool `json:"check_host_against_uptime_tests,omitempty"` // Transport section exposes advanced transport level configurations such as minimum TLS version. Transport ProxyTransport `json:"transport,omitempty"` // TODO: Untested. Is there a use-case for SD inside a K8s environment? ServiceDiscovery ServiceDiscoveryConfiguration `json:"service_discovery,omitempty"` }
Proxy outlines the API proxying functionality.
func (*Proxy) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Proxy.
func (*Proxy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProxyTransport ¶
type ProxyTransport struct { // SSLInsecureSkipVerify controls whether it is possible to use self-signed certificates when connecting to the // upstream. This is applied to `TykMakeHttpRequest` & `TykMakeBatchRequest` in virtual endpoint middleware. SSLInsecureSkipVerify bool `json:"ssl_insecure_skip_verify,omitempty"` // SSLCipherSuites is an array of acceptable cipher suites. A list of allowed cipher suites can be found in the // Go Crypto TLS package constants documentation https://golang.org/pkg/crypto/tls/#pkg-constants SSLCipherSuites []string `json:"ssl_ciphers,omitempty"` // SSLMinVersion defines the minimum TLS version the gateway will use to establish a connection to the upstream. // 1.0: 769; 1.1: 770; 1.2: 771; 1.3: 772. // +kubebuilder:validation:Enum=769;770;771;772 SSLMinVersion uint16 `json:"ssl_min_version,omitempty"` // SSLForceCommonNameCheck forces hostname validation against the certificate Common Name SSLForceCommonNameCheck bool `json:"ssl_force_common_name_check,omitempty"` // ProxyURL specifies custom forward proxy & port. e.g. `http(s)://proxy.url:1234` ProxyURL string `json:"proxy_url,omitempty"` }
func (*ProxyTransport) DeepCopy ¶
func (in *ProxyTransport) DeepCopy() *ProxyTransport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProxyTransport.
func (*ProxyTransport) DeepCopyInto ¶
func (in *ProxyTransport) DeepCopyInto(out *ProxyTransport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestInputType ¶
type RequestInputType string
type RequestSigningMeta ¶
type RequestSigningMeta struct { IsEnabled bool `json:"is_enabled"` Secret string `json:"secret"` KeyId string `json:"key_id"` Algorithm string `json:"algorithm"` HeaderList []string `json:"header_list"` CertificateId string `json:"certificate_id"` SignatureHeader string `json:"signature_header"` }
func (*RequestSigningMeta) DeepCopy ¶
func (in *RequestSigningMeta) DeepCopy() *RequestSigningMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSigningMeta.
func (*RequestSigningMeta) DeepCopyInto ¶
func (in *RequestSigningMeta) DeepCopyInto(out *RequestSigningMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RequestSizeMeta ¶
type RequestSizeMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` SizeLimit int64 `json:"size_limit"` }
func (*RequestSizeMeta) DeepCopy ¶
func (in *RequestSizeMeta) DeepCopy() *RequestSizeMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RequestSizeMeta.
func (*RequestSizeMeta) DeepCopyInto ¶
func (in *RequestSizeMeta) DeepCopyInto(out *RequestSizeMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResponseProcessor ¶
type ResponseProcessor struct {
Name string `json:"name"`
}
func (*ResponseProcessor) DeepCopy ¶
func (in *ResponseProcessor) DeepCopy() *ResponseProcessor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResponseProcessor.
func (*ResponseProcessor) DeepCopyInto ¶
func (in *ResponseProcessor) DeepCopyInto(out *ResponseProcessor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Result ¶
type Result struct { Status string // from dashboard api Message string Meta string // from tyk api Key string `json:"key"` Action string `json:"action"` KeyHash string `json:"key_hash,omitempty"` }
Result is a an object returned by most dashboard api's
func (*Result) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Result.
func (*Result) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RewriteToInternal ¶
type RewriteToInternal struct { // API a namespaced/name to the api definition resource that you are // targetting Target Target `json:"target,omitempty"` // Path path on target , this does not include query parameters. // example /myendpoint Path string `json:"path,omitempty"` // Query url query string to add to target // example check_limits=true Query string `json:"query,omitempty"` }
RewriteToInternal defines options that constructs a url that refers to an api that is loaded into the gateway.
func (*RewriteToInternal) DeepCopy ¶
func (in *RewriteToInternal) DeepCopy() *RewriteToInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RewriteToInternal.
func (*RewriteToInternal) DeepCopyInto ¶
func (in *RewriteToInternal) DeepCopyInto(out *RewriteToInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (RewriteToInternal) String ¶
func (i RewriteToInternal) String() string
type RoutingTrigger ¶
type RoutingTrigger struct { On RoutingTriggerOnType `json:"on"` Options RoutingTriggerOptions `json:"options"` RewriteTo string `json:"rewrite_to,omitempty"` RewriteToInternal *RewriteToInternal `json:"rewrite_to_internal,omitempty"` }
func (*RoutingTrigger) DeepCopy ¶
func (in *RoutingTrigger) DeepCopy() *RoutingTrigger
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingTrigger.
func (*RoutingTrigger) DeepCopyInto ¶
func (in *RoutingTrigger) DeepCopyInto(out *RoutingTrigger)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RoutingTriggerOnType ¶
type RoutingTriggerOnType string
ApiDefinitionSpec defines the desired state of ApiDefinition
type RoutingTriggerOptions ¶
type RoutingTriggerOptions struct { HeaderMatches map[string]StringRegexMap `json:"header_matches,omitempty"` QueryValMatches map[string]StringRegexMap `json:"query_val_matches,omitempty"` PathPartMatches map[string]StringRegexMap `json:"path_part_matches,omitempty"` SessionMetaMatches map[string]StringRegexMap `json:"session_meta_matches,omitempty"` RequestContextMatches map[string]StringRegexMap `json:"request_context_matches,omitempty"` PayloadMatches *StringRegexMap `json:"payload_matches,omitempty"` }
func (*RoutingTriggerOptions) DeepCopy ¶
func (in *RoutingTriggerOptions) DeepCopy() *RoutingTriggerOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoutingTriggerOptions.
func (*RoutingTriggerOptions) DeepCopyInto ¶
func (in *RoutingTriggerOptions) DeepCopyInto(out *RoutingTriggerOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceDiscoveryConfiguration ¶
type ServiceDiscoveryConfiguration struct { UseDiscoveryService bool `json:"use_discovery_service"` QueryEndpoint string `json:"query_endpoint"` UseNestedQuery bool `json:"use_nested_query"` ParentDataPath string `json:"parent_data_path"` DataPath string `json:"data_path"` PortDataPath string `json:"port_data_path"` TargetPath string `json:"target_path"` UseTargetList bool `json:"use_target_list"` CacheTimeout int64 `json:"cache_timeout"` EndpointReturnsList bool `json:"endpoint_returns_list"` }
func (*ServiceDiscoveryConfiguration) DeepCopy ¶
func (in *ServiceDiscoveryConfiguration) DeepCopy() *ServiceDiscoveryConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceDiscoveryConfiguration.
func (*ServiceDiscoveryConfiguration) DeepCopyInto ¶
func (in *ServiceDiscoveryConfiguration) DeepCopyInto(out *ServiceDiscoveryConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SessionProviderCode ¶
type SessionProviderCode string
ApiDefinitionSpec defines the desired state of ApiDefinition
type SessionProviderMeta ¶
type SessionProviderMeta struct { Name SessionProviderCode `json:"name"` StorageEngine StorageEngineCode `json:"storage_engine"` }
func (*SessionProviderMeta) DeepCopy ¶
func (in *SessionProviderMeta) DeepCopy() *SessionProviderMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SessionProviderMeta.
func (*SessionProviderMeta) DeepCopyInto ¶
func (in *SessionProviderMeta) DeepCopyInto(out *SessionProviderMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SignatureConfig ¶
type SignatureConfig struct { Algorithm string `json:"algorithm"` Header string `json:"header"` Secret string `json:"secret"` AllowedClockSkew int64 `json:"allowed_clock_skew"` ErrorCode int `json:"error_code"` ErrorMessage string `json:"error_message"` }
func (*SignatureConfig) DeepCopy ¶
func (in *SignatureConfig) DeepCopy() *SignatureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SignatureConfig.
func (*SignatureConfig) DeepCopyInto ¶
func (in *SignatureConfig) DeepCopyInto(out *SignatureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceConfig ¶
type SourceConfig struct { // Kind defines the unique identifier of the DataSource // Kind needs to match to the Planner "DataSourceName" name // +kubebuilder:validation:Enum=GraphQLDataSource;HTTPJSONDataSource Kind string `json:"kind"` // Config is the DataSource specific configuration object // Each Planner needs to make sure to parse their Config Object correctly Config DataSourceConfig `json:"data_source_config,omitempty"` }
func (*SourceConfig) DeepCopy ¶
func (in *SourceConfig) DeepCopy() *SourceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceConfig.
func (*SourceConfig) DeepCopyInto ¶
func (in *SourceConfig) DeepCopyInto(out *SourceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusCodeTypeNameMapping ¶
type StatusCodeTypeNameMapping struct { StatusCode int `json:"status_code"` TypeName string `json:"type_name,omitempty"` }
func (*StatusCodeTypeNameMapping) DeepCopy ¶
func (in *StatusCodeTypeNameMapping) DeepCopy() *StatusCodeTypeNameMapping
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StatusCodeTypeNameMapping.
func (*StatusCodeTypeNameMapping) DeepCopyInto ¶
func (in *StatusCodeTypeNameMapping) DeepCopyInto(out *StatusCodeTypeNameMapping)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageEngineCode ¶
type StorageEngineCode string
ApiDefinitionSpec defines the desired state of ApiDefinition
type StringRegexMap ¶
type StringRegexMap struct { MatchPattern string `json:"match_rx"` Reverse bool `json:"reverse,omitempty"` }
func (*StringRegexMap) DeepCopy ¶
func (in *StringRegexMap) DeepCopy() *StringRegexMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StringRegexMap.
func (*StringRegexMap) DeepCopyInto ¶
func (in *StringRegexMap) DeepCopyInto(out *StringRegexMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubGraphSpec ¶ added in v0.10.0
SubGraphSpec holds the configuration for a GraphQL federation subgraph.
func (*SubGraphSpec) DeepCopy ¶ added in v0.10.0
func (in *SubGraphSpec) DeepCopy() *SubGraphSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubGraphSpec.
func (*SubGraphSpec) DeepCopyInto ¶ added in v0.10.0
func (in *SubGraphSpec) DeepCopyInto(out *SubGraphSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SubGraphStatus ¶ added in v0.10.0
type SubGraphStatus struct {
APIID string `json:"api_id"`
}
func (*SubGraphStatus) DeepCopy ¶ added in v0.10.0
func (in *SubGraphStatus) DeepCopy() *SubGraphStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubGraphStatus.
func (*SubGraphStatus) DeepCopyInto ¶ added in v0.10.0
func (in *SubGraphStatus) DeepCopyInto(out *SubGraphStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SuperGraphSpec ¶ added in v0.10.0
type SuperGraphSpec struct { SubgraphRefs []Target `json:"subgraph_refs"` MergedSDL string `json:"merged_sdl,omitempty"` Schema string `json:"schema,omitempty"` }
SuperGraphSpec defines the desired state of SuperGraph
func (*SuperGraphSpec) DeepCopy ¶ added in v0.10.0
func (in *SuperGraphSpec) DeepCopy() *SuperGraphSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuperGraphSpec.
func (*SuperGraphSpec) DeepCopyInto ¶ added in v0.10.0
func (in *SuperGraphSpec) DeepCopyInto(out *SuperGraphSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Target ¶
type Target struct { // k8s resource name Name string `json:"name"` // The k8s namespace of the resource being targetted. When omitted this will be // set to the namespace of the object that is being reconciled. Namespace string `json:"namespace,omitempty"` }
func (*Target) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.
func (*Target) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetInternal ¶
type TargetInternal struct { // API a namespaced/name to the api definition resource that you are // targetting Target Target `json:"target,omitempty"` // Path path on target , this does not include query parameters. // example /myendpoint Path string `json:"path,omitempty"` // Query url query string to add to target // example check_limits=true Query string `json:"query,omitempty"` }
func (*TargetInternal) DeepCopy ¶
func (in *TargetInternal) DeepCopy() *TargetInternal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInternal.
func (*TargetInternal) DeepCopyInto ¶
func (in *TargetInternal) DeepCopyInto(out *TargetInternal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (TargetInternal) String ¶
func (i TargetInternal) String() string
type TemplateData ¶
type TemplateData struct { Input RequestInputType `json:"input_type"` Mode TemplateMode `json:"template_mode"` EnableSession bool `json:"enable_session"` TemplateSource string `json:"template_source"` }
func (*TemplateData) DeepCopy ¶
func (in *TemplateData) DeepCopy() *TemplateData
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateData.
func (*TemplateData) DeepCopyInto ¶
func (in *TemplateData) DeepCopyInto(out *TemplateData)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateMeta ¶
type TemplateMeta struct { TemplateData TemplateData `json:"template_data"` Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TemplateMeta) DeepCopy ¶
func (in *TemplateMeta) DeepCopy() *TemplateMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TemplateMeta.
func (*TemplateMeta) DeepCopyInto ¶
func (in *TemplateMeta) DeepCopyInto(out *TemplateMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TemplateMode ¶
type TemplateMode string
ApiDefinitionSpec defines the desired state of ApiDefinition
type TrackEndpointMeta ¶
type TrackEndpointMeta struct { Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TrackEndpointMeta) DeepCopy ¶
func (in *TrackEndpointMeta) DeepCopy() *TrackEndpointMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrackEndpointMeta.
func (*TrackEndpointMeta) DeepCopyInto ¶
func (in *TrackEndpointMeta) DeepCopyInto(out *TrackEndpointMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TransformJQMeta ¶
type TransformJQMeta struct { Filter string `json:"filter"` Path string `json:"path"` Method HttpMethod `json:"method"` }
func (*TransformJQMeta) DeepCopy ¶
func (in *TransformJQMeta) DeepCopy() *TransformJQMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransformJQMeta.
func (*TransformJQMeta) DeepCopyInto ¶
func (in *TransformJQMeta) DeepCopyInto(out *TransformJQMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TykEventHandlerName ¶
type TykEventHandlerName string
ApiDefinitionSpec defines the desired state of ApiDefinition
type TypeFieldConfiguration ¶
type TypeFieldConfiguration struct { TypeName string `json:"type_name"` FieldName string `json:"field_name"` Mapping *MappingConfiguration `json:"mapping"` DataSource SourceConfig `json:"data_source"` }
func (*TypeFieldConfiguration) DeepCopy ¶
func (in *TypeFieldConfiguration) DeepCopy() *TypeFieldConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TypeFieldConfiguration.
func (*TypeFieldConfiguration) DeepCopyInto ¶
func (in *TypeFieldConfiguration) DeepCopyInto(out *TypeFieldConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type URLRewriteMeta ¶
type URLRewriteMeta struct { // Path represents the endpoint listen path Path string `json:"path"` Method HttpMethod `json:"method"` // MatchPattern is a regular expression pattern to match the path MatchPattern string `json:"match_pattern"` // RewriteTo is the target path on the upstream, or target URL we wish to rewrite to RewriteTo string `json:"rewrite_to,omitempty"` // RewriteToInternal serves as rewrite_to but used when rewriting to target // internal api's // When rewrite_to and rewrite_to_internal are both provided then // rewrite_to will take rewrite_to_internal RewriteToInternal *RewriteToInternal `json:"rewrite_to_internal,omitempty"` Triggers []RoutingTrigger `json:"triggers,omitempty"` }
func (*URLRewriteMeta) DeepCopy ¶
func (in *URLRewriteMeta) DeepCopy() *URLRewriteMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new URLRewriteMeta.
func (*URLRewriteMeta) DeepCopyInto ¶
func (in *URLRewriteMeta) DeepCopyInto(out *URLRewriteMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeTestConfig ¶
type UptimeTestConfig struct { ExpireUptimeAnalyticsAfter int64 `json:"expire_utime_after"` // must have an expireAt TTL index set (http://docs.mongodb.org/manual/tutorial/expire-data/) ServiceDiscovery ServiceDiscoveryConfiguration `json:"service_discovery"` RecheckWait int `json:"recheck_wait"` }
func (*UptimeTestConfig) DeepCopy ¶
func (in *UptimeTestConfig) DeepCopy() *UptimeTestConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeTestConfig.
func (*UptimeTestConfig) DeepCopyInto ¶
func (in *UptimeTestConfig) DeepCopyInto(out *UptimeTestConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UptimeTests ¶
type UptimeTests struct { CheckList []HostCheckObject `json:"check_list"` Config UptimeTestConfig `json:"config"` }
func (*UptimeTests) DeepCopy ¶
func (in *UptimeTests) DeepCopy() *UptimeTests
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UptimeTests.
func (*UptimeTests) DeepCopyInto ¶
func (in *UptimeTests) DeepCopyInto(out *UptimeTests)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ValidatePathMeta ¶
type ValidatePathMeta struct { // Allows override of default 422 Unprocessable Entity response code for validation errors. ErrorResponseCode int `json:"error_response_code"` Path string `json:"path"` Method HttpMethod `json:"method"` // Schema represents schema field that verifies user requests against a specified // JSON schema and check that the data sent to your API by a consumer is in the right format. Schema *MapStringInterfaceType `json:"schema"` }
func (*ValidatePathMeta) DeepCopy ¶
func (in *ValidatePathMeta) DeepCopy() *ValidatePathMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ValidatePathMeta.
func (*ValidatePathMeta) DeepCopyInto ¶
func (in *ValidatePathMeta) DeepCopyInto(out *ValidatePathMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionData ¶
type VersionData struct { NotVersioned bool `json:"not_versioned"` DefaultVersion string `json:"default_version"` Versions map[string]VersionInfo `json:"versions,omitempty"` }
func (*VersionData) DeepCopy ¶
func (in *VersionData) DeepCopy() *VersionData
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionData.
func (*VersionData) DeepCopyInto ¶
func (in *VersionData) DeepCopyInto(out *VersionData)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionDefinition ¶
type VersionDefinition struct { Location string `json:"location"` Key string `json:"key"` StripPath bool `json:"strip_path"` }
func (*VersionDefinition) DeepCopy ¶
func (in *VersionDefinition) DeepCopy() *VersionDefinition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionDefinition.
func (*VersionDefinition) DeepCopyInto ¶
func (in *VersionDefinition) DeepCopyInto(out *VersionDefinition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionInfo ¶
type VersionInfo struct { Name string `json:"name"` Expires string `json:"expires,omitempty"` Paths *VersionInfoPaths `json:"paths,omitempty"` UseExtendedPaths bool `json:"use_extended_paths,omitempty"` ExtendedPaths *ExtendedPathsSet `json:"extended_paths,omitempty"` GlobalHeaders map[string]string `json:"global_headers,omitempty"` GlobalHeadersRemove []string `json:"global_headers_remove,omitempty"` GlobalResponseHeaders map[string]string `json:"global_response_headers,omitempty"` GlobalResponseHeadersRemove []string `json:"global_response_headers_remove,omitempty"` IgnoreEndpointCase bool `json:"ignore_endpoint_case,omitempty"` GlobalSizeLimit int64 `json:"global_size_limit,omitempty"` OverrideTarget string `json:"override_target,omitempty"` }
func (*VersionInfo) DeepCopy ¶
func (in *VersionInfo) DeepCopy() *VersionInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionInfo.
func (*VersionInfo) DeepCopyInto ¶
func (in *VersionInfo) DeepCopyInto(out *VersionInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VersionInfoPaths ¶
type VersionInfoPaths struct { Ignored []string `json:"ignored,omitempty"` WhiteList []string `json:"white_list,omitempty"` BlackList []string `json:"black_list,omitempty"` }
func (*VersionInfoPaths) DeepCopy ¶
func (in *VersionInfoPaths) DeepCopy() *VersionInfoPaths
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionInfoPaths.
func (*VersionInfoPaths) DeepCopyInto ¶
func (in *VersionInfoPaths) DeepCopyInto(out *VersionInfoPaths)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualMeta ¶
type VirtualMeta struct { ResponseFunctionName string `json:"response_function_name"` FunctionSourceType string `json:"function_source_type"` FunctionSourceURI string `json:"function_source_uri"` Path string `json:"path"` Method HttpMethod `json:"method"` UseSession bool `json:"use_session"` ProxyOnError bool `json:"proxy_on_error"` }
func (*VirtualMeta) DeepCopy ¶
func (in *VirtualMeta) DeepCopy() *VirtualMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualMeta.
func (*VirtualMeta) DeepCopyInto ¶
func (in *VirtualMeta) DeepCopyInto(out *VirtualMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.