openapi: 3.0.0 info: title: Tyk Dashboard Admin API version: 5.3.0 description: >- For Tyk On-Premises installations only, the Dashboard Admin API has two endpoints and is used to set up and provision a Tyk Dashboard instance without the command line. In order to use the Dashboard Admin API, you'll need to get the `admin_secret` value from your Tyk Dashboard configurations. The secret you set should then be sent along as a header with each Dashboard Admin API Request in order for it to be successful: ``` admin-auth: ``` servers: - url: http://localhost/ - url: https://localhost/ tags: - name: Export description: >- To make Tyk installations more portable, the Export API enables you to export key configuration objects required to back-up and re-deploy a basic Tyk Pro installation. - name: Import description: >- The import API enables you to add Organisations, APIs and Policies back into a Tyk installation while retaining their base IDs so that they work together. - name: Single Sign On description: >- The Dashboard SSO API allows you to implement custom authentication schemes for the Dashboard and Portal. Our Tyk Identity Broker (TIB) internally also uses this API. - name: Dashboard URL Reload description: >- Since the Dashboard can have multiple URLs associated with it. It is possible to force a URL reload by calling an API endpoint of the Dashboard API. - name: Organisations description: >- The organisations API gives the ability to manage your Tyk organisation(s). - name: Users description: >- The admin portion of the users API gives you the ability to manage password reset policies for your Dashboard users. paths: /admin/system/reload: get: summary: Reloads dashboard urls description: Reloads dashboard urls. operationId: reloadURLs tags: - Dashboard URL Reload responses: '200': description: URLs reloaded successfully. content: application/json: schema: properties: status: type: string example: status: ok '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised /admin/sso/: post: summary: Generate authentication token description: >- The Dashboard exposes the /admin/sso Dashboard API which allows you to generate a temporary authentication token, valid for 60 seconds. operationId: generateAuthToken tags: - Single Sign On requestBody: content: application/json: schema: properties: ForSection: type: string enum: - dashboard - portal OrgID: type: string EmailAddress: type: string GroupID: type: string example: ForSection: dashboard OrgID: 588b4f0bb275ff0001cc7471 EmailAddress: name@somewhere.com GroupID: '' responses: '200': description: Additional Permissions updated successfully. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: OK Message: SSO Nonce created Meta: YTNiOGUzZjctYWZkYi00OTNhLTYwODItZTAzMDI3MjM0OTEw '400': description: Back Request. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: >- Cannot create an SSO session for an invalid payload: [Error: Org id not found ('588b4f0bb275ff0001cc7471').] '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised /admin/organisations/{orgID}: get: summary: Export Organisations description: >- The organisation object is the most fundamental object in a Tyk setup, all other ownership properties hang off the relationship between an organisation and its APIs, Policies and API Tokens. operationId: exportOrgs tags: - Export parameters: - name: orgID in: path description: ID of organisation required: true schema: type: string responses: '200': description: Organisation exported successfully. content: application/json: schema: properties: apis: type: array items: $ref: '#/components/schemas/APIDefinition' example: id: 53ac07777cbb8c2d53000002 owner_name: Test owner_slug: test cname_enabled: true cname: my.domain.com apis: - api_human_name: API 2 api_id: 5fa2db834e07444f760b7ceb314209fb - api_human_name: API 1 api_id: 7a6ddeca9244448a4233866938a0d6e2 - api_human_name: API 3 api_id: 109eacaa50b24b64651a1d4dce8ec385 developer_quota: 123 developer_count: 21 event_options: key_event: webhook: '' email: '' redis: true key_request_event: webhook: '' email: '' redis: false hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false '400': description: Back Request. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Request body malformed '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised '404': description: Org not found. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Could not retrieve org detail /admin/organisations/import: post: summary: Import organisations description: >- The organisation object is the most fundamental object in a Tyk setup, all other ownership properties hang off the relationship between an organisation and its APIs, Policies and API Tokens. operationId: importOrgs tags: - Import requestBody: content: application/json: schema: properties: apis: type: array items: $ref: '#/components/schemas/APIDefinition' example: id: 53ac07777cbb8c2d53000002 owner_name: Test owner_slug: test cname_enabled: true cname: my.domain.com apis: - api_human_name: API 2 api_id: 5fa2db834e07444f760b7ceb314209fb - api_human_name: API 1 api_id: 7a6ddeca9244448a4233866938a0d6e2 - api_human_name: API 3 api_id: 109eacaa50b24b64651a1d4dce8ec385 developer_quota: 123 developer_count: 21 event_options: key_event: webhook: '' email: '' redis: true key_request_event: webhook: '' email: '' redis: false hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false responses: '200': description: Org imported successfully. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: OK Message: Org imported Meta: 53ac07777cbb8c2d53000002 '400': description: Back Request. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Failed to save new Org object to DB '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised /admin/apis/import: post: summary: Import APIs description: The import APIs operates on lists of APIs. operationId: importAPIs tags: - Import requestBody: content: application/json: schema: properties: apis: type: array items: type: object properties: api_model: type: object api_definition: $ref: '#/components/schemas/APIDefinition' hook_references: type: array items: type: object is_site: type: boolean sort_by: type: integer example: apis: - api_model: {} api_definition: api_human_name: API 2 api_id: 5fa2db834e07444f760b7ceb314209fb hook_references: [] is_site: false sort_by: 0 - api_model: {} api_definition: api_human_name: API 1 api_id: 7a6ddeca9244448a4233866938a0d6e2 hook_references: [] is_site: false sort_by: 0 responses: '200': description: APIs imported successfully. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: OK Message: APIs imported Meta: 5fa2db834e07444f760b7ceb314209fb: true 7a6ddeca9244448a4233866938a0d6e2: true '400': description: Back Request. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Request body malformed '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised /admin/policies/import: post: summary: Import Policies description: The import Policies operates on lists of Policies. operationId: importPolocies tags: - Import requestBody: content: application/json: schema: properties: data: type: array items: $ref: '#/components/schemas/Policy' example: data: - access_rights: 5fa2db834e07444f760b7ceb314209fb: allowed_urls: [] api_id: 5fa2db834e07444f760b7ceb314209fb api_name: API 2 versions: - Default 7a6ddeca9244448a4233866938a0d6e2: allowed_urls: [] api_id: 7a6ddeca9244448a4233866938a0d6e2 api_name: API 1 versions: - Default active: true date_created: '0001-01-01T00:00:00Z' hmac_enabled: false is_inactive: false key_expires_in: 0 last_updated: '1478791603' name: Default org_id: 53ac07777cbb8c2d53000002 partitions: acl: false quota: false rate_limit: false per: 60 quota_max: -1 quota_renewal_rate: 3600 rate: 1000 tags: [] responses: '200': description: Policies imported successfully. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: OK Message: Policies imported Meta: 61df10078f11dd00097cb55f: true '400': description: Back Request. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Failed to save new Org object to DB '401': description: Unauthorized. content: application/json: schema: $ref: '#/components/schemas/apiStatusMessage' example: Status: Error Message: Not authorised /admin/users/{USER_ID}/actions/allow_reset_passwords: parameters: - name: USER_ID in: path description: User ID of the user whose password is being reset required: true schema: type: string - name: admin-auth in: header description: admin_secret value from your tyk_analtyics.conf required: true schema: type: string put: summary: Allow password reset for a User description: Allow password reset for a User. operationId: allowResetPassword tags: - Users responses: '200': description: Password reset for user enabled content: application/json: example: Status: OK Message: User updated Meta: api_model: {} first_name: John last_name: Doe email_address: john@test.com org_id: 60ef3a1dcb83670001bf2df9 active: true id: 614215edb2d47190f98b3b79 access_key: 68b225c4376748207453c235ed8e2a82 user_permissions: IsAdmin: admin ResetPassword: admin group_id: '' password_max_days: 0 password_updated: '2021-09-15T15:49:01.863Z' PWHistory: [] last_login_date: '2021-09-15T15:49:49.754Z' created_at: '2021-09-15T15:49:01Z' /admin/users/{USER_ID}/actions/disallow_reset_passwords: parameters: - name: USER_ID in: path description: >- User ID of the user whose password reset capability is being disallowed required: true schema: type: string - name: admin-auth in: header description: admin_secret value from your tyk_analtyics.conf required: true schema: type: string put: summary: Disallow password reset for a User description: Disallow password reset for a User. operationId: disallowResetPassword tags: - Users responses: '200': description: Password reset for user disabled content: application/json: example: Status: OK Message: User updated Meta: api_model: {} first_name: John last_name: Doe email_address: john@test.com org_id: 60ef3a1dcb83670001bf2df9 active: true id: 614215edb2d47190f98b3b79 access_key: 68b225c4376748207453c235ed8e2a82 user_permissions: IsAdmin: admin group_id: '' password_max_days: 0 password_updated: '2021-09-15T15:49:01.863Z' PWHistory: [] last_login_date: '2021-09-15T15:49:49.754Z' created_at: '2021-09-15T15:49:01Z' /admin/organisations/{org-id}: parameters: - name: org-id in: path description: Organisation ID of the org to add, update, or delete. required: true schema: type: string - name: admin-auth in: header description: admin_secret value from your tyk_analtyics.conf required: true schema: type: string get: summary: Retrieve a single organisation description: Retrieve a single organisation operationId: getOrg tags: - Organisations responses: '200': description: Organisation retrieved content: application/json: example: id: 5cc03283d07e7f00019404b3 owner_name: TestOrg5 Ltd. owner_slug: testorg cname_enabled: true cname: www.tyk-portal-test.com apis: - api_human_name: 'First API #Test' api_id: 5508bd9429434d5768c423a04db259ea developer_quota: 0 developer_count: 0 event_options: {} hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false cloud: false org_options_meta: {} put: summary: Update organisation details description: >- Update Organisation details. This operation will replace the existing Organisation details with those provided in the request payload. It is important to provide the entire object - for example linked APIs - to avoid overwriting existing data with empty values. operationId: updateOrg tags: - Organisations requestBody: content: application/json: schema: $ref: '#/components/schemas/OrganisationDocument' example: id: 5cc03283d07e7f00019404b3 owner_name: Jively owner_slug: testorg cname: jive.ly cname_enabled: true apis: - api_human_name: 'First API #Test' api_id: 5508bd9429434d5768c423a04db259ea developer_quota: 0 developer_count: 0 event_options: {} hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false cloud: false org_options_meta: {} responses: '200': description: Organisation updated successfully content: application/json: schema: type: object example: Status: OK Message: Org updated Meta: '' delete: summary: Delete an organisation description: Delete an organisation operationId: deleteOrg tags: - Organisations responses: '200': description: Organisation deleted content: application/json: schema: type: object example: Status: OK Message: Org deleted Meta: '' /admin/organisations/: parameters: - name: admin-auth in: header description: admin_secret value from your tyk_analtyics.conf required: true schema: type: string get: summary: List all organisations description: List all organisations operationId: getOrgs tags: - Organisations responses: '200': description: Organisations retrieved successfully content: application/json: schema: type: object example: organisations: - id: 5cc03283d07e7f00019404b3 owner_name: TestOrg5 Ltd. owner_slug: testorg cname_enabled: true cname: www.tyk-portal-test.com apis: - api_human_name: 'First API #Test' api_id: 5508bd9429434d5768c423a04db259ea developer_quota: 0 developer_count: 0 event_options: {} hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false cloud: false org_options_meta: {} - id: 5ccae84aa402ce00018b5435 owner_name: Jively owner_slug: '' cname_enabled: true cname: jive.ly apis: [] developer_quota: 0 developer_count: 0 event_options: {} hybrid_enabled: false ui: languages: {} hide_help: false default_lang: '' login_page: {} nav: {} uptime: {} portal_section: {} designer: {} dont_show_admin_sockets: false dont_allow_license_management: false dont_allow_license_management_view: false cloud: false org_options_meta: {} pages: 0 post: summary: Create an Organisation description: Create an Organisation operationId: createOrg tags: - Organisations requestBody: content: application/json: schema: type: object example: owner_name: Jively cname: jive.ly cname_enabled: true responses: '200': description: Organisation created content: application/json: schema: type: object example: Status: OK Message: Org created Meta: 54b53d3aeba6db5c35000002 components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: Admin-Auth schemas: apiStatusMessage: description: apiStatusMessage represents an API status message properties: message: description: Response details type: string x-go-name: Message status: type: string x-go-name: Status type: object x-go-package: github.com/TykTechnologies/tyk APIDefinition: properties: tags: items: type: string type: array x-go-name: Tags CORS: properties: allow_credentials: type: boolean x-go-name: AllowCredentials allowed_headers: items: type: string type: array x-go-name: AllowedHeaders allowed_methods: items: type: string type: array x-go-name: AllowedMethods allowed_origins: items: type: string type: array x-go-name: AllowedOrigins debug: type: boolean x-go-name: Debug enable: type: boolean x-go-name: Enable exposed_headers: items: type: string type: array x-go-name: ExposedHeaders max_age: format: int64 type: integer x-go-name: MaxAge options_passthrough: type: boolean x-go-name: OptionsPassthrough type: object active: type: boolean x-go-name: Active allowed_ips: items: type: string type: array x-go-name: AllowedIPs api_id: type: string x-go-name: APIID auth: $ref: '#/components/schemas/Auth' auth_provider: $ref: '#/components/schemas/AuthProviderMeta' base_identity_provided_by: $ref: '#/components/schemas/AuthTypeEnum' basic_auth: properties: body_password_regexp: type: string x-go-name: BodyPasswordRegexp body_user_regexp: type: string x-go-name: BodyUserRegexp cache_ttl: format: int64 type: integer x-go-name: CacheTTL disable_caching: type: boolean x-go-name: DisableCaching extract_from_body: type: boolean x-go-name: ExtractFromBody type: object x-go-name: BasicAuth blacklisted_ips: items: type: string type: array x-go-name: BlacklistedIPs cache_options: $ref: '#/components/schemas/CacheOptions' certificates: items: type: string type: array x-go-name: Certificates client_certificates: items: type: string type: array x-go-name: ClientCertificates config_data: additionalProperties: type: object type: object x-go-name: ConfigData custom_middleware: $ref: '#/components/schemas/MiddlewareSection' custom_middleware_bundle: type: string x-go-name: CustomMiddlewareBundle definition: properties: key: type: string x-go-name: Key location: type: string x-go-name: Location strip_path: type: boolean x-go-name: StripPath type: object x-go-name: VersionDefinition disable_quota: type: boolean x-go-name: DisableQuota disable_rate_limit: type: boolean x-go-name: DisableRateLimit do_not_track: type: boolean x-go-name: DoNotTrack domain: type: string x-go-name: Domain dont_set_quota_on_create: type: boolean x-go-name: DontSetQuotasOnCreate enable_batch_request_support: type: boolean x-go-name: EnableBatchRequestSupport enable_context_vars: type: boolean x-go-name: EnableContextVars enable_coprocess_auth: type: boolean x-go-name: EnableCoProcessAuth enable_ip_blacklisting: type: boolean x-go-name: EnableIpBlacklisting enable_ip_whitelisting: type: boolean x-go-name: EnableIpWhiteListing enable_jwt: type: boolean x-go-name: EnableJWT enable_signature_checking: type: boolean x-go-name: EnableSignatureChecking event_handlers: $ref: '#/components/schemas/EventHandlerMetaConfig' expire_analytics_after: format: int64 type: integer x-go-name: ExpireAnalyticsAfter global_rate_limit: $ref: '#/components/schemas/GlobalRateLimit' hmac_allowed_algorithms: items: type: string type: array x-go-name: HmacAllowedAlgorithms hmac_allowed_clock_skew: format: double type: number x-go-name: HmacAllowedClockSkew id: $ref: '#/components/schemas/ObjectId' internal: type: boolean x-go-name: Internal jwt_client_base_field: type: string x-go-name: JWTClientIDBaseField jwt_expires_at_validation_skew: format: uint64 type: integer x-go-name: JWTExpiresAtValidationSkew jwt_identity_base_field: type: string x-go-name: JWTIdentityBaseField jwt_issued_at_validation_skew: format: uint64 type: integer x-go-name: JWTIssuedAtValidationSkew jwt_not_before_validation_skew: format: uint64 type: integer x-go-name: JWTNotBeforeValidationSkew jwt_policy_field_name: type: string x-go-name: JWTPolicyFieldName jwt_scope_claim_name: type: string x-go-name: JWTScopeClaimName jwt_scope_to_policy_mapping: additionalProperties: type: string type: object x-go-name: JWTScopeToPolicyMapping jwt_signing_method: type: string x-go-name: JWTSigningMethod jwt_skip_kid: type: boolean x-go-name: JWTSkipKid jwt_source: type: string x-go-name: JWTSource name: type: string x-go-name: Name notifications: $ref: '#/components/schemas/NotificationsManager' oauth_meta: properties: allowed_access_types: items: $ref: '#/components/schemas/AccessRequestType' type: array x-go-name: AllowedAccessTypes allowed_authorize_types: items: $ref: '#/components/schemas/AuthorizeRequestType' type: array x-go-name: AllowedAuthorizeTypes auth_login_redirect: type: string x-go-name: AuthorizeLoginRedirect type: object x-go-name: Oauth2Meta openid_options: $ref: '#/components/schemas/OpenIDOptions' org_id: type: string x-go-name: OrgID pinned_public_keys: additionalProperties: type: string type: object x-go-name: PinnedPublicKeys proxy: properties: check_host_against_uptime_tests: type: boolean x-go-name: CheckHostAgainstUptimeTests disable_strip_slash: type: boolean x-go-name: DisableStripSlash enable_load_balancing: type: boolean x-go-name: EnableLoadBalancing listen_path: type: string x-go-name: ListenPath preserve_host_header: type: boolean x-go-name: PreserveHostHeader service_discovery: $ref: '#/components/schemas/ServiceDiscoveryConfiguration' strip_listen_path: type: boolean x-go-name: StripListenPath target_list: items: type: string type: array x-go-name: Targets target_url: type: string x-go-name: TargetURL transport: properties: proxy_url: type: string x-go-name: ProxyURL ssl_ciphers: items: type: string type: array x-go-name: SSLCipherSuites ssl_insecure_skip_verify: type: boolean x-go-name: SSLInsecureSkipVerify ssl_min_version: format: uint16 type: integer x-go-name: SSLMinVersion type: object x-go-name: Transport type: object x-go-name: Proxy response_processors: items: $ref: '#/components/schemas/ResponseProcessor' type: array x-go-name: ResponseProcessors session_lifetime: format: int64 type: integer x-go-name: SessionLifetime session_provider: $ref: '#/components/schemas/SessionProviderMeta' slug: type: string x-go-name: Slug strip_auth_data: type: boolean x-go-name: StripAuthData tag_headers: items: type: string type: array x-go-name: TagHeaders upstream_certificates: additionalProperties: type: string type: object x-go-name: UpstreamCertificates uptime_tests: properties: check_list: items: $ref: '#/components/schemas/HostCheckObject' type: array x-go-name: CheckList config: properties: expire_utime_after: format: int64 type: integer x-go-name: ExpireUptimeAnalyticsAfter recheck_wait: format: int64 type: integer x-go-name: RecheckWait service_discovery: $ref: '#/components/schemas/ServiceDiscoveryConfiguration' type: object x-go-name: Config type: object x-go-name: UptimeTests use_basic_auth: type: boolean x-go-name: UseBasicAuth use_keyless: type: boolean x-go-name: UseKeylessAccess use_mutual_tls_auth: type: boolean x-go-name: UseMutualTLSAuth use_oauth2: type: boolean x-go-name: UseOauth2 use_openid: type: boolean x-go-name: UseOpenID use_standard_auth: type: boolean x-go-name: UseStandardAuth version_data: properties: default_version: type: string x-go-name: DefaultVersion not_versioned: type: boolean x-go-name: NotVersioned versions: additionalProperties: $ref: '#/components/schemas/VersionInfo' type: object x-go-name: Versions type: object x-go-name: VersionData title: >- APIDefinition represents the configuration for a single proxied API and it's versions. type: object x-go-package: github.com/TykTechnologies/tyk/apidef Auth: properties: auth_header_name: type: string x-go-name: AuthHeaderName cookie_name: type: string x-go-name: CookieName param_name: type: string x-go-name: ParamName signature: $ref: '#/components/schemas/SignatureConfig' use_certificate: type: boolean x-go-name: UseCertificate use_cookie: type: boolean x-go-name: UseCookie use_param: type: boolean x-go-name: UseParam validate_signature: type: boolean x-go-name: ValidateSignature type: object x-go-package: github.com/TykTechnologies/tyk/apidef ApiDocument: properties: api_human_name: type: string api_id: type: string additionalProperties: false type: object required: - api_human_name - api_id EventConfig: properties: webhook: type: string email: type: string redis: type: boolean additionalProperties: false type: object required: - webhook - email - redis OpenPolicyConf: properties: rules: type: string enabled: type: boolean additionalProperties: false type: object required: - rules - enabled OrganisationDocument: description: The fields that describe the "organisation" object as stored in Tyk properties: id: type: string owner_name: type: string owner_slug: type: string cname_enabled: type: boolean cname: type: string apis: items: $ref: '#/components/schemas/ApiDocument' type: array sso_enabled: type: boolean developer_quota: type: integer developer_count: type: integer event_options: additionalProperties: $ref: '#/components/schemas/EventConfig' type: object hybrid_enabled: type: boolean ui: $ref: '#/components/schemas/UIOptions' org_options_meta: type: object open_policy: $ref: '#/components/schemas/OpenPolicyConf' additional_permissions: additionalProperties: type: string type: object additionalProperties: false type: object required: - id - owner_name - owner_slug - cname_enabled - cname - apis - sso_enabled - developer_quota - developer_count - event_options - hybrid_enabled - ui - org_options_meta - open_policy - additional_permissions UIOptions: properties: languages: additionalProperties: type: string type: object hide_help: type: boolean default_lang: type: string login_page: type: object nav: type: object uptime: type: object portal_section: type: object designer: type: object dont_show_admin_sockets: type: boolean dont_allow_license_management: type: boolean dont_allow_license_management_view: type: boolean cloud: type: boolean dev: type: boolean additionalProperties: false type: object required: - languages - hide_help - default_lang - login_page - nav - uptime - portal_section - designer - dont_show_admin_sockets - dont_allow_license_management - dont_allow_license_management_view - cloud - dev SignatureConfig: properties: algorithm: type: string x-go-name: Algorithm allowed_clock_skew: format: int64 type: integer x-go-name: AllowedClockSkew error_code: format: int64 type: integer x-go-name: ErrorCode error_message: type: string x-go-name: ErrorMessage header: type: string x-go-name: Header secret: type: string x-go-name: Secret type: object x-go-package: github.com/TykTechnologies/tyk/apidef AuthProviderMeta: properties: meta: additionalProperties: type: object type: object x-go-name: Meta name: $ref: '#/components/schemas/AuthProviderCode' storage_engine: $ref: '#/components/schemas/StorageEngineCode' type: object x-go-package: github.com/TykTechnologies/tyk/apidef AuthProviderCode: type: string x-go-package: github.com/TykTechnologies/tyk/apidef StorageEngineCode: type: string x-go-package: github.com/TykTechnologies/tyk/apidef AuthTypeEnum: type: string x-go-package: github.com/TykTechnologies/tyk/apidef CacheOptions: properties: cache_all_safe_requests: type: boolean x-go-name: CacheAllSafeRequests cache_control_ttl_header: type: string x-go-name: CacheControlTTLHeader cache_response_codes: items: format: int64 type: integer type: array x-go-name: CacheOnlyResponseCodes cache_timeout: format: int64 type: integer x-go-name: CacheTimeout enable_cache: type: boolean x-go-name: EnableCache enable_upstream_cache_control: type: boolean x-go-name: EnableUpstreamCacheControl type: object x-go-package: github.com/TykTechnologies/tyk/apidef MiddlewareSection: properties: auth_check: $ref: '#/components/schemas/MiddlewareDefinition' driver: $ref: '#/components/schemas/MiddlewareDriver' id_extractor: $ref: '#/components/schemas/MiddlewareIdExtractor' post: items: $ref: '#/components/schemas/MiddlewareDefinition' type: array x-go-name: Post post_key_auth: items: $ref: '#/components/schemas/MiddlewareDefinition' type: array x-go-name: PostKeyAuth pre: items: $ref: '#/components/schemas/MiddlewareDefinition' type: array x-go-name: Pre response: items: $ref: '#/components/schemas/MiddlewareDefinition' type: array x-go-name: Response type: object x-go-package: github.com/TykTechnologies/tyk/apidef MiddlewareDefinition: properties: name: type: string x-go-name: Name path: type: string x-go-name: Path require_session: type: boolean x-go-name: RequireSession type: object x-go-package: github.com/TykTechnologies/tyk/apidef MiddlewareDriver: type: string x-go-package: github.com/TykTechnologies/tyk/apidef MiddlewareIdExtractor: properties: extract_from: $ref: '#/components/schemas/IdExtractorSource' extract_with: $ref: '#/components/schemas/IdExtractorType' extractor_config: additionalProperties: type: object type: object x-go-name: ExtractorConfig type: object x-go-package: github.com/TykTechnologies/tyk/apidef IdExtractorSource: type: string x-go-package: github.com/TykTechnologies/tyk/apidef IdExtractorType: type: string x-go-package: github.com/TykTechnologies/tyk/apidef EventHandlerMetaConfig: properties: events: x-go-name: Events type: object x-go-package: github.com/TykTechnologies/tyk/apidef GlobalRateLimit: properties: per: format: double type: number x-go-name: Per rate: format: double type: number x-go-name: Rate type: object x-go-package: github.com/TykTechnologies/tyk/apidef ObjectId: description: http://www.mongodb.org/display/DOCS/Object+IDs title: >- ObjectId is a unique ID identifying a BSON value. It must be exactly 12 bytes long. MongoDB objects by default have such a property set in their "_id" property. type: string x-go-package: github.com/TykTechnologies/tyk/vendor/gopkg.in/mgo.v2/bson NotificationsManager: description: 'TODO: Make this more generic' properties: oauth_on_keychange_url: type: string x-go-name: OAuthKeyChangeURL shared_secret: type: string x-go-name: SharedSecret title: >- NotificationsManager handles sending notifications to OAuth endpoints to notify the provider of key changes. type: object x-go-package: github.com/TykTechnologies/tyk/apidef AccessRequestType: description: AccessRequestType is the type for OAuth param `grant_type` type: string x-go-package: github.com/TykTechnologies/tyk/vendor/github.com/lonelycode/osin AuthorizeRequestType: description: AuthorizeRequestType is the type for OAuth param `response_type` type: string x-go-package: github.com/TykTechnologies/tyk/vendor/github.com/lonelycode/osin OpenIDOptions: properties: providers: items: $ref: '#/components/schemas/OIDProviderConfig' type: array x-go-name: Providers segregate_by_client: type: boolean x-go-name: SegregateByClient type: object x-go-package: github.com/TykTechnologies/tyk/apidef OIDProviderConfig: properties: client_ids: additionalProperties: type: string type: object x-go-name: ClientIDs issuer: type: string x-go-name: Issuer type: object x-go-package: github.com/TykTechnologies/tyk/apidef ServiceDiscoveryConfiguration: properties: cache_timeout: format: int64 type: integer x-go-name: CacheTimeout data_path: type: string x-go-name: DataPath endpoint_returns_list: type: boolean x-go-name: EndpointReturnsList parent_data_path: type: string x-go-name: ParentDataPath port_data_path: type: string x-go-name: PortDataPath query_endpoint: type: string x-go-name: QueryEndpoint target_path: type: string x-go-name: TargetPath use_discovery_service: type: boolean x-go-name: UseDiscoveryService use_nested_query: type: boolean x-go-name: UseNestedQuery use_target_list: type: boolean x-go-name: UseTargetList type: object x-go-package: github.com/TykTechnologies/tyk/apidef ResponseProcessor: properties: name: type: string x-go-name: Name options: type: object x-go-name: Options type: object x-go-package: github.com/TykTechnologies/tyk/apidef SessionProviderMeta: properties: meta: additionalProperties: type: object type: object x-go-name: Meta name: $ref: '#/components/schemas/SessionProviderCode' storage_engine: $ref: '#/components/schemas/StorageEngineCode' type: object x-go-package: github.com/TykTechnologies/tyk/apidef SessionProviderCode: type: string x-go-package: github.com/TykTechnologies/tyk/apidef VersionInfo: properties: paths: properties: black_list: items: type: string type: array x-go-name: BlackList ignored: items: type: string type: array x-go-name: Ignored white_list: items: type: string type: array x-go-name: WhiteList type: object x-go-name: Paths expires: type: string x-go-name: Expires extended_paths: $ref: '#/components/schemas/ExtendedPathsSet' global_headers: additionalProperties: type: string type: object x-go-name: GlobalHeaders global_headers_remove: items: type: string type: array x-go-name: GlobalHeadersRemove global_size_limit: format: int64 type: integer x-go-name: GlobalSizeLimit name: type: string x-go-name: Name override_target: type: string x-go-name: OverrideTarget use_extended_paths: type: boolean x-go-name: UseExtendedPaths type: object x-go-package: github.com/TykTechnologies/tyk/apidef ExtendedPathsSet: properties: advance_cache_config: items: $ref: '#/components/schemas/CacheMeta' type: array x-go-name: AdvanceCacheConfig black_list: items: $ref: '#/components/schemas/EndPointMeta' type: array x-go-name: BlackList cache: items: type: string type: array x-go-name: Cached circuit_breakers: items: $ref: '#/components/schemas/CircuitBreakerMeta' type: array x-go-name: CircuitBreaker do_not_track_endpoints: items: $ref: '#/components/schemas/TrackEndpointMeta' type: array x-go-name: DoNotTrackEndpoints hard_timeouts: items: $ref: '#/components/schemas/HardTimeoutMeta' type: array x-go-name: HardTimeouts ignored: items: $ref: '#/components/schemas/EndPointMeta' type: array x-go-name: Ignored internal: items: $ref: '#/components/schemas/InternalMeta' type: array x-go-name: Internal method_transforms: items: $ref: '#/components/schemas/MethodTransformMeta' type: array x-go-name: MethodTransforms size_limits: items: $ref: '#/components/schemas/RequestSizeMeta' type: array x-go-name: SizeLimit track_endpoints: items: $ref: '#/components/schemas/TrackEndpointMeta' type: array x-go-name: TrackEndpoints transform: items: $ref: '#/components/schemas/TemplateMeta' type: array x-go-name: Transform transform_headers: items: $ref: '#/components/schemas/HeaderInjectionMeta' type: array x-go-name: TransformHeader transform_jq: items: $ref: '#/components/schemas/TransformJQMeta' type: array x-go-name: TransformJQ transform_jq_response: items: $ref: '#/components/schemas/TransformJQMeta' type: array x-go-name: TransformJQResponse transform_response: items: $ref: '#/components/schemas/TemplateMeta' type: array x-go-name: TransformResponse transform_response_headers: items: $ref: '#/components/schemas/HeaderInjectionMeta' type: array x-go-name: TransformResponseHeader url_rewrites: items: $ref: '#/components/schemas/URLRewriteMeta' type: array x-go-name: URLRewrite validate_json: items: $ref: '#/components/schemas/ValidatePathMeta' type: array x-go-name: ValidateJSON virtual: items: $ref: '#/components/schemas/VirtualMeta' type: array x-go-name: Virtual white_list: items: $ref: '#/components/schemas/EndPointMeta' type: array x-go-name: WhiteList type: object x-go-package: github.com/TykTechnologies/tyk/apidef CacheMeta: properties: cache_response_codes: items: format: int64 type: integer type: array x-go-name: CacheOnlyResponseCodes cache_key_regex: type: string x-go-name: CacheKeyRegex method: type: string x-go-name: Method path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef EndPointMeta: properties: method_actions: additionalProperties: $ref: '#/components/schemas/EndpointMethodMeta' type: object x-go-name: MethodActions path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef EndpointMethodMeta: properties: action: $ref: '#/components/schemas/EndpointMethodAction' code: format: int64 type: integer x-go-name: Code data: type: string x-go-name: Data headers: additionalProperties: type: string type: object x-go-name: Headers type: object x-go-package: github.com/TykTechnologies/tyk/apidef EndpointMethodAction: type: string x-go-package: github.com/TykTechnologies/tyk/apidef CircuitBreakerMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path return_to_service_after: format: int64 type: integer x-go-name: ReturnToServiceAfter samples: format: int64 type: integer x-go-name: Samples threshold_percent: format: double type: number x-go-name: ThresholdPercent type: object x-go-package: github.com/TykTechnologies/tyk/apidef TrackEndpointMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef HardTimeoutMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path timeout: format: int64 type: integer x-go-name: TimeOut type: object x-go-package: github.com/TykTechnologies/tyk/apidef InternalMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef MethodTransformMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path to_method: type: string x-go-name: ToMethod type: object x-go-package: github.com/TykTechnologies/tyk/apidef RequestSizeMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path size_limit: format: int64 type: integer x-go-name: SizeLimit type: object x-go-package: github.com/TykTechnologies/tyk/apidef TemplateMeta: properties: method: type: string x-go-name: Method path: type: string x-go-name: Path template_data: $ref: '#/components/schemas/TemplateData' type: object x-go-package: github.com/TykTechnologies/tyk/apidef TemplateData: properties: enable_session: type: boolean x-go-name: EnableSession input_type: $ref: '#/components/schemas/RequestInputType' template_mode: $ref: '#/components/schemas/TemplateMode' template_source: type: string x-go-name: TemplateSource type: object x-go-package: github.com/TykTechnologies/tyk/apidef RequestInputType: type: string x-go-package: github.com/TykTechnologies/tyk/apidef TemplateMode: type: string x-go-package: github.com/TykTechnologies/tyk/apidef HeaderInjectionMeta: properties: act_on: type: boolean x-go-name: ActOnResponse add_headers: additionalProperties: type: string type: object x-go-name: AddHeaders delete_headers: items: type: string type: array x-go-name: DeleteHeaders method: type: string x-go-name: Method path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef TransformJQMeta: properties: filter: type: string x-go-name: Filter method: type: string x-go-name: Method path: type: string x-go-name: Path type: object x-go-package: github.com/TykTechnologies/tyk/apidef URLRewriteMeta: properties: MatchRegexp: $ref: '#/components/schemas/Regexp' match_pattern: type: string x-go-name: MatchPattern method: type: string x-go-name: Method path: type: string x-go-name: Path rewrite_to: type: string x-go-name: RewriteTo triggers: items: $ref: '#/components/schemas/RoutingTrigger' type: array x-go-name: Triggers type: object x-go-package: github.com/TykTechnologies/tyk/apidef Regexp: description: Regexp is a wrapper around regexp.Regexp but with caching properties: FromCache: type: boolean type: object x-go-package: github.com/TykTechnologies/tyk/regexp RoutingTrigger: properties: 'on': $ref: '#/components/schemas/RoutingTriggerOnType' options: $ref: '#/components/schemas/RoutingTriggerOptions' rewrite_to: type: string x-go-name: RewriteTo type: object x-go-package: github.com/TykTechnologies/tyk/apidef RoutingTriggerOnType: type: string x-go-package: github.com/TykTechnologies/tyk/apidef RoutingTriggerOptions: properties: header_matches: additionalProperties: $ref: '#/components/schemas/StringRegexMap' type: object x-go-name: HeaderMatches path_part_matches: additionalProperties: $ref: '#/components/schemas/StringRegexMap' type: object x-go-name: PathPartMatches payload_matches: $ref: '#/components/schemas/StringRegexMap' query_val_matches: additionalProperties: $ref: '#/components/schemas/StringRegexMap' type: object x-go-name: QueryValMatches request_context_matches: additionalProperties: $ref: '#/components/schemas/StringRegexMap' type: object x-go-name: RequestContextMatches session_meta_matches: additionalProperties: $ref: '#/components/schemas/StringRegexMap' type: object x-go-name: SessionMetaMatches type: object x-go-package: github.com/TykTechnologies/tyk/apidef StringRegexMap: properties: match_rx: type: string x-go-name: MatchPattern reverse: type: boolean x-go-name: Reverse type: object x-go-package: github.com/TykTechnologies/tyk/apidef ValidatePathMeta: properties: error_response_code: description: >- Allows override of default 422 Unprocessible Entity response code for validation errors. format: int64 type: integer x-go-name: ErrorResponseCode method: type: string x-go-name: Method path: type: string x-go-name: Path schema: additionalProperties: type: object type: object x-go-name: Schema schema_b64: type: string x-go-name: SchemaB64 type: object x-go-package: github.com/TykTechnologies/tyk/apidef VirtualMeta: properties: function_source_type: type: string x-go-name: FunctionSourceType function_source_uri: type: string x-go-name: FunctionSourceURI method: type: string x-go-name: Method path: type: string x-go-name: Path proxy_on_error: type: boolean x-go-name: ProxyOnError response_function_name: type: string x-go-name: ResponseFunctionName use_session: type: boolean x-go-name: UseSession type: object x-go-package: github.com/TykTechnologies/tyk/apidef HostCheckObject: properties: body: type: string x-go-name: Body headers: additionalProperties: type: string type: object x-go-name: Headers method: type: string x-go-name: Method url: type: string x-go-name: CheckURL type: object x-go-package: github.com/TykTechnologies/tyk/apidef Policy: properties: _id: $ref: '#/components/schemas/ObjectId' type: object x-go-name: ID id: type: string x-go-name: ID name: type: string x-go-name: Name org_id: type: string x-go-name: OrgID rate: format: double type: number x-go-name: Rate per: format: double type: number x-go-name: Per quota_max: format: int64 type: integer x-go-name: QuotaMax quota_renewal_rate: format: int64 type: integer x-go-name: QuotaRenewalRate throttle_interval: format: double type: number x-go-name: ThrottleInterval throttle_retry_limit: type: number x-go-name: ThrottleRetryLimit max_query_depth: type: number x-go-name: MaxQueryDepth access_rights: $ref: '#/components/schemas/AccessDefinition' type: object x-go-name: AccessRights hmac_enabled: type: boolean x-go-name: HMACEnabled enable_http_signature_validation: type: boolean x-go-name: EnableHTTPSignatureValidation active: type: boolean x-go-name: Active is_inactive: type: boolean x-go-name: IsInactive tags: type: array items: type: string x-go-name: Tags key_expires_in: format: int64 type: number x-go-name: KeyExpiresIn partitions: $ref: '#/components/schemas/PolicyPartitions' type: object x-go-name: Partitions last_updated: type: string x-go-name: LastUpdates meta_data: type: object x-go-name: MetaData graphql_access_rights: $ref: '#/components/schemas/GraphAccessDefinition' type: object x-go-package: github.com/TykTechnologies/tyk/user AccessDefinition: description: AccessDefinition defines which versions of an API a key has access to properties: allowed_urls: items: $ref: '#/components/schemas/AccessSpec' type: array x-go-name: AllowedURLs api_id: type: string x-go-name: APIID api_name: type: string x-go-name: APIName limit: $ref: '#/components/schemas/APILimit' versions: items: type: string type: array x-go-name: Versions type: object x-go-package: github.com/TykTechnologies/tyk/user AccessSpec: description: >- AccessSpecs define what URLS a user has access to an what methods are enabled properties: methods: items: type: string type: array x-go-name: Methods url: type: string x-go-name: URL type: object x-go-package: github.com/TykTechnologies/tyk/user APILimit: description: APILimit stores quota and rate limit on ACL level (per API) properties: per: format: double type: number x-go-name: Per quota_max: format: int64 type: integer x-go-name: QuotaMax quota_remaining: format: int64 type: integer x-go-name: QuotaRemaining quota_renewal_rate: format: int64 type: integer x-go-name: QuotaRenewalRate quota_renews: format: int64 type: integer x-go-name: QuotaRenews rate: format: double type: number x-go-name: Rate set_by_policy: type: boolean x-go-name: SetByPolicy throttle_interval: format: double type: number x-go-name: ThrottleInterval throttle_retry_limit: format: int64 type: integer x-go-name: ThrottleRetryLimit type: object x-go-package: github.com/TykTechnologies/tyk/user PolicyPartitions: properties: quota: type: boolean x-go-name: Quota rate_limit: type: boolean x-go-name: RateLimit complexity: type: boolean x-go-name: Complexity acl: type: boolean x-go-name: Acl per_api: type: boolean x-go-name: PerAPI type: object x-go-package: github.com/TykTechnologies/tyk/user GraphAccessDefinition: type: object x-go-package: github.com/TykTechnologies/tyk/user security: - ApiKeyAuth: []