github.com/safedep/dry@v0.0.0-20241016050132-a15651f0548b/apiguard/tykgen/model_api_definition.go (about) 1 /* 2 * Tyk Gateway API 3 * 4 * The Tyk Gateway API is the primary means for integrating your application with the Tyk API Gateway system. This API is very small, and has no granular permissions system. It is intended to be used purely for internal automation and integration. **Warning: Under no circumstances should outside parties be granted access to this API.** The Tyk Gateway API is capable of: * Managing session objects (key generation) * Managing and listing policies * Managing and listing API Definitions (only when not using the Dashboard) * Hot reloads / reloading a cluster configuration * OAuth client creation (only when not using the Dashboard) In order to use the Gateway API, you'll need to set the `secret` parameter in your tyk.conf file. The shared secret you set should then be sent along as a header with each Gateway API Request in order for it to be successful: ``` x-tyk-authorization: <your-secret> ``` <br/> <b>The Tyk Gateway API is subsumed by the Tyk Dashboard API in Pro installations.</b> 5 * 6 * API version: 5.5.0 7 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git) 8 */ 9 package swagger 10 11 type ApiDefinition struct { 12 Tags []string `json:"tags,omitempty"` 13 CORS *ApiDefinitionCors `json:"CORS,omitempty"` 14 Active bool `json:"active,omitempty"` 15 AllowedIps []string `json:"allowed_ips,omitempty"` 16 ApiId string `json:"api_id,omitempty"` 17 Auth *Auth `json:"auth,omitempty"` 18 AuthProvider *AuthProviderMeta `json:"auth_provider,omitempty"` 19 BaseIdentityProvidedBy string `json:"base_identity_provided_by,omitempty"` 20 BasicAuth *ApiDefinitionBasicAuth `json:"basic_auth,omitempty"` 21 BlacklistedIps []string `json:"blacklisted_ips,omitempty"` 22 CacheOptions *CacheOptions `json:"cache_options,omitempty"` 23 Certificates []string `json:"certificates,omitempty"` 24 ClientCertificates []string `json:"client_certificates,omitempty"` 25 ConfigData map[string]interface{} `json:"config_data,omitempty"` 26 CustomMiddleware *MiddlewareSection `json:"custom_middleware,omitempty"` 27 CustomMiddlewareBundle string `json:"custom_middleware_bundle,omitempty"` 28 Definition *ApiDefinitionDefinition `json:"definition,omitempty"` 29 DisableQuota bool `json:"disable_quota,omitempty"` 30 DisableRateLimit bool `json:"disable_rate_limit,omitempty"` 31 DoNotTrack bool `json:"do_not_track,omitempty"` 32 Domain string `json:"domain,omitempty"` 33 DontSetQuotaOnCreate bool `json:"dont_set_quota_on_create,omitempty"` 34 EnableBatchRequestSupport bool `json:"enable_batch_request_support,omitempty"` 35 EnableContextVars bool `json:"enable_context_vars,omitempty"` 36 EnableCoprocessAuth bool `json:"enable_coprocess_auth,omitempty"` 37 EnableIpBlacklisting bool `json:"enable_ip_blacklisting,omitempty"` 38 EnableIpWhitelisting bool `json:"enable_ip_whitelisting,omitempty"` 39 EnableJwt bool `json:"enable_jwt,omitempty"` 40 EnableSignatureChecking bool `json:"enable_signature_checking,omitempty"` 41 EventHandlers *EventHandlerMetaConfig `json:"event_handlers,omitempty"` 42 ExpireAnalyticsAfter int64 `json:"expire_analytics_after,omitempty"` 43 GlobalRateLimit *GlobalRateLimit `json:"global_rate_limit,omitempty"` 44 HmacAllowedAlgorithms []string `json:"hmac_allowed_algorithms,omitempty"` 45 HmacAllowedClockSkew float64 `json:"hmac_allowed_clock_skew,omitempty"` 46 Id string `json:"id,omitempty"` 47 Internal bool `json:"internal,omitempty"` 48 JwtClientBaseField string `json:"jwt_client_base_field,omitempty"` 49 JwtExpiresAtValidationSkew int32 `json:"jwt_expires_at_validation_skew,omitempty"` 50 JwtIdentityBaseField string `json:"jwt_identity_base_field,omitempty"` 51 JwtIssuedAtValidationSkew int32 `json:"jwt_issued_at_validation_skew,omitempty"` 52 JwtNotBeforeValidationSkew int32 `json:"jwt_not_before_validation_skew,omitempty"` 53 JwtPolicyFieldName string `json:"jwt_policy_field_name,omitempty"` 54 JwtScopeClaimName string `json:"jwt_scope_claim_name,omitempty"` 55 JwtScopeToPolicyMapping map[string]string `json:"jwt_scope_to_policy_mapping,omitempty"` 56 JwtSigningMethod string `json:"jwt_signing_method,omitempty"` 57 JwtSkipKid bool `json:"jwt_skip_kid,omitempty"` 58 JwtSource string `json:"jwt_source,omitempty"` 59 Name string `json:"name,omitempty"` 60 Notifications *NotificationsManager `json:"notifications,omitempty"` 61 OauthMeta *ApiDefinitionOauthMeta `json:"oauth_meta,omitempty"` 62 OpenidOptions *OpenIdOptions `json:"openid_options,omitempty"` 63 OrgId string `json:"org_id,omitempty"` 64 PinnedPublicKeys map[string]string `json:"pinned_public_keys,omitempty"` 65 Proxy *ApiDefinitionProxy `json:"proxy,omitempty"` 66 ResponseProcessors []ResponseProcessor `json:"response_processors,omitempty"` 67 SessionLifetime int64 `json:"session_lifetime,omitempty"` 68 SessionProvider *SessionProviderMeta `json:"session_provider,omitempty"` 69 Slug string `json:"slug,omitempty"` 70 StripAuthData bool `json:"strip_auth_data,omitempty"` 71 TagHeaders []string `json:"tag_headers,omitempty"` 72 UpstreamCertificates map[string]string `json:"upstream_certificates,omitempty"` 73 UptimeTests *ApiDefinitionUptimeTests `json:"uptime_tests,omitempty"` 74 UseBasicAuth bool `json:"use_basic_auth,omitempty"` 75 UseKeyless bool `json:"use_keyless,omitempty"` 76 UseMutualTlsAuth bool `json:"use_mutual_tls_auth,omitempty"` 77 UseOauth2 bool `json:"use_oauth2,omitempty"` 78 UseOpenid bool `json:"use_openid,omitempty"` 79 UseStandardAuth bool `json:"use_standard_auth,omitempty"` 80 VersionData *ApiDefinitionVersionData `json:"version_data,omitempty"` 81 }