openapi: 3.1.0 info: title: Konnect API - Go SDK version: 0.0.1 description: The Konnect platform API contact: name: Kong Inc url: https://konghq.com email: support@konghq.com license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0.html servers: - url: https://global.api.konghq.com - url: https://us.api.konghq.com - url: https://eu.api.konghq.com - url: https://au.api.konghq.com security: - personalAccessToken: [] - systemAccountAccessToken: [] - konnectAccessToken: [] - serviceAccessToken: [] tags: - name: Control Planes - name: Control Plane Groups - name: Auth Settings - name: Invites - name: Roles - name: Team Membership - name: Teams - name: Users - name: System Accounts - name: System Accounts - Access Tokens - name: System Accounts - Roles - name: System Accounts - Team Membership - name: Me - name: Authentication - name: Impersonation Settings - name: Data-Plane Group Configurations - name: Networks - name: Transit Gateways - name: Provider Accounts - name: Custom Domains - name: Cloud Gateways Resource Quotas - name: Resource Configurations - name: Resource Availability - name: Notifications description: Operations related to notifications - name: DCR Providers description: > Dynamic Client Registration Providers are configurations representing an external Identity Provider whose clients (i.e. Applications) Konnect will be authorized to manage. For instance, they will be able to perform dynamic client registration (DCR) with the provider. The DCR provider provides credentials to each DCR-enabled application in Konnect that can be used to access Product Versions that the app is registered for. - name: App Auth Strategies description: > Application Auth Strategies are sets of plugin configurations that represent how the gateway will perform authentication and authorization for a Product Version. Called “Auth Strategy” for short in the context of portals/applications. The plugins are synced to any Gateway Service that is currently linked or becomes linked to the Product Version. - description: DP Nodes name: DP Nodes - description: DP Certificates name: DP Certificates - description: Custom Plugin Schemas name: Custom Plugin Schemas - description: Config Stores name: Config Stores - description: Config Store Secrets name: Config Store Secrets - name: CustomPlugins - description: > Service entities are abstractions of your microservice interfaces or formal APIs. For example, a service could be a data transformation microservice or a billing API.

The main attribute of a service is the destination URL for proxying traffic. This URL can be set as a single string or by specifying its protocol, host, port and path individually.

Services are associated to routes, and a single service can have many routes associated with it. Routes are entrypoints in Kong Gateway which define rules to match client requests. Once a route is matched, Kong Gateway proxies the request to its associated service. See the [Proxy Reference](https://docs.konghq.com/gateway/latest/how-kong-works/routing-traffic/) for a detailed explanation of how Kong proxies traffic.

Services can be both [tagged and filtered by tags](https://docs.konghq.com/gateway/latest/admin-api/#tags). name: Services - description: > Route entities define rules to match client requests. Each route is associated with a service, and a service may have multiple routes associated to it. Every request matching a given route will be proxied to the associated service. You need at least one matching rule that applies to the protocol being matched by the route.

The combination of routes and services, and the separation of concerns between them, offers a powerful routing mechanism with which it is possible to define fine-grained entrypoints in Kong Gateway leading to different upstream services of your infrastructure.

Depending on the protocol, one of the following attributes must be set:
- `http`: At least one of `methods`, `hosts`, `headers`, or `paths` - `https`: At least one of `methods`, `hosts`, `headers`, `paths`, or `snis` - `tcp`: At least one of `sources` or `destinations` - `tls`: at least one of `sources`, `destinations`, or `snis` - `tls_passthrough`: set `snis` - `grpc`: At least one of `hosts`, `headers`, or `paths` - `grpcs`: At least one of `hosts`, `headers`, `paths`, or `snis` - `ws`: At least one of `hosts`, `headers`, or `paths` - `wss`: At least one of `hosts`, `headers`, `paths`, or `snis`
A route can't have both `tls` and `tls_passthrough` protocols at same time.

Learn more about the router: - [Configure routes using expressions](https://docs.konghq.com/gateway/latest/key-concepts/routes/expressions) - [Router Expressions language reference](https://docs.konghq.com/gateway/latest/reference/router-expressions-language/) name: Routes - name: Degraphql_routes - description: > A plugin entity represents a plugin configuration that will be executed during the HTTP request/response lifecycle. Plugins let you add functionality to services that run behind a Kong Gateway instance, like authentication or rate limiting. You can find more information about available plugins and which values each plugin accepts at the [Plugin Hub](https://docs.konghq.com/hub/).

When adding a plugin configuration to a service, the plugin will run on every request made by a client to that service. If a plugin needs to be tuned to different values for some specific consumers, you can do so by creating a separate plugin instance that specifies both the service and the consumer, through the service and consumer fields.

Plugins can be both [tagged and filtered by tags](https://docs.konghq.com/gateway/latest/admin-api/#tags). name: Plugins - description: > The consumer object represents a consumer - or a user - of a service. You can either rely on Kong Gateway as the primary datastore, or you can map the consumer list with your database to keep consistency between Kong Gateway and your existing primary datastore. name: Consumers - description: >- Consumer groups enable the organization and categorization of consumers (users or applications) within an API ecosystem. By grouping consumers together, you eliminate the need to manage them individually, providing a scalable, efficient approach to managing configurations. name: Consumer Groups - description: > A certificate object represents a public certificate, and can be optionally paired with the corresponding private key. These objects are used by Kong Gateway to handle SSL/TLS termination for encrypted requests, or for use as a trusted CA store when validating peer certificate of client/service.

Certificates are optionally associated with SNI objects to tie a cert/key pair to one or more hostnames.

If intermediate certificates are required in addition to the main certificate, they should be concatenated together into one string. name: Certificates - description: >- An SNI object represents a many-to-one mapping of hostnames to a certificate.

A certificate object can have many hostnames associated with it. When Kong Gateway receives an SSL request, it uses the SNI field in the Client Hello to look up the certificate object based on the SNI associated with the certificate. name: SNIs - description: >- A CA certificate object represents a trusted certificate authority. These objects are used by Kong Gateway to verify the validity of a client or server certificate. name: CA Certificates - description: >- The upstream object represents a virtual hostname and can be used to load balance incoming requests over multiple services (targets).

An upstream also includes a [health checker](https://docs.konghq.com/gateway/latest/how-kong-works/health-checks/), which can enable and disable targets based on their ability or inability to serve requests. The configuration for the health checker is stored in the upstream object, and applies to all of its targets. name: Upstreams - description: > Vault objects are used to configure different vault connectors for [managing secrets](https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/). Configuring a vault lets you reference secrets from other entities. This allows for a proper separation of secrets and configuration and prevents secret sprawl.

For example, you could store a certificate and a key in a vault, then reference them from a certificate entity. This way, the certificate and key are not stored in the entity directly and are more secure.

Secrets rotation can be managed using [TTLs](https://docs.konghq.com/gateway/latest/kong-enterprise/secrets-management/advanced-usage/). name: Vaults - description: > A key object holds a representation of asymmetric keys in various formats. When Kong Gateway or a Kong plugin requires a specific public or private key to perform certain operations, it can use this entity. name: Keys - description: > A JSON Web key set. Key sets are the preferred way to expose keys to plugins because they tell the plugin where to look for keys or have a scoping mechanism to restrict plugins to specific keys. name: KeySets - name: API-keys - name: Basic-auth credentials - name: JWTs - name: HMAC-auth credentials - name: MTLS-auth credentials - name: ACLs - name: Partials paths: /v1/notifications/configurations: get: summary: List available user configurations. description: List available user configurations. operationId: list-user-configurations parameters: - $ref: '#/components/parameters/ConfigurationFilter' responses: '200': $ref: '#/components/responses/UserConfigurationListResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Notifications /v1/notifications/configurations/{eventId}/subscriptions: get: summary: List event subscriptions. description: List event subscriptions. operationId: list-event-subscriptions parameters: - $ref: '#/components/parameters/eventId' responses: '200': $ref: '#/components/responses/EventSubscriptionListResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Notifications post: summary: Create a new subscription for an event. description: Create a new subscription for an event. operationId: create-event-subscription parameters: - $ref: '#/components/parameters/eventId' requestBody: $ref: '#/components/requestBodies/EventSubscriptionRequest' responses: '201': $ref: '#/components/responses/EventSubscriptionResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications /v1/notifications/configurations/{eventId}/subscriptions/{subscriptionId}: parameters: - $ref: '#/components/parameters/eventId' - $ref: '#/components/parameters/subscriptionId' get: summary: Get subscription for an event. description: Get subscription for an event. operationId: get-event-subscription responses: '200': $ref: '#/components/responses/EventSubscriptionResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications patch: summary: Update subscription for an event. description: Update subscription for an event. operationId: update-event-subscription requestBody: $ref: '#/components/requestBodies/EventSubscriptionRequest' responses: '200': $ref: '#/components/responses/EventSubscriptionResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications delete: summary: Delete subscription associated with event. description: Delete subscription associated with event. operationId: delete-event-subscription responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications /v1/notifications/inbox: get: summary: List available notifications. description: List available notifications. operationId: list-notifications parameters: - $ref: '#/components/parameters/PageBefore' - $ref: '#/components/parameters/PageAfter' - $ref: '#/components/parameters/NotificationFilter' responses: '200': $ref: '#/components/responses/NotificationListResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Notifications /v1/notifications/inbox/{notificationId}: get: summary: Get notification details. description: Get notification details. operationId: get-notification-details parameters: - $ref: '#/components/parameters/notificationId' responses: '200': $ref: '#/components/responses/NotificationResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications patch: summary: Update notification. description: Update notification. operationId: update-notification parameters: - $ref: '#/components/parameters/notificationId' requestBody: $ref: '#/components/requestBodies/NotificationUpdateRequest' responses: '200': $ref: '#/components/responses/NotificationResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications delete: summary: Delete notification. description: Delete notification. operationId: delete-notification parameters: - $ref: '#/components/parameters/notificationId' responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications /v1/notifications/inbox/bulk: post: summary: Mark a list of notifications to a status. description: Mark a list of notifications to a status. operationId: bulk-notifications requestBody: $ref: '#/components/requestBodies/BulkRequest' responses: '200': description: No Content '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Notifications /v2/application-auth-strategies: post: x-speakeasy-entity-operation: ApplicationAuthStrategy#create summary: Create App Auth Strategy operationId: create-app-auth-strategy description: Creates an application auth strategy. requestBody: $ref: '#/components/requestBodies/CreateAppAuthStrategy' responses: '201': $ref: '#/components/responses/CreateAppAuthStrategy' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - App Auth Strategies get: summary: List App Auth Strategies operationId: list-app-auth-strategies description: Returns a paginated collection of application auth strategies. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/SortAppAuthStrategies' - schema: type: object properties: strategy_type: $ref: '#/components/schemas/StringFieldFilter' name: $ref: '#/components/schemas/StringFieldFilter' display_name: $ref: '#/components/schemas/StringFieldFilter' dcr_provider_id: $ref: '#/components/schemas/UuidFieldFilter' dcr_provider_name: $ref: '#/components/schemas/StringFieldFilter' dcr_provider_type: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter application auth strategies returned in the response. required: false style: deepObject responses: '200': $ref: '#/components/responses/ListAppAuthStrategies' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - App Auth Strategies /v2/application-auth-strategies/{authStrategyId}: parameters: - $ref: '#/components/parameters/AuthStrategyId' get: x-speakeasy-entity-operation: ApplicationAuthStrategy#read summary: Get App Auth Strategy description: Returns an application auth strategy. operationId: get-app-auth-strategy responses: '200': $ref: '#/components/responses/GetAppAuthStrategy' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - App Auth Strategies put: summary: Replace App Auth Strategy operationId: replace-app-auth-strategy description: Replaces an application auth strategy. requestBody: $ref: '#/components/requestBodies/CreateAppAuthStrategy' responses: '201': $ref: '#/components/responses/CreateAppAuthStrategy' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - App Auth Strategies patch: x-speakeasy-entity-operation: ApplicationAuthStrategy#update summary: Update App Auth Strategy operationId: update-app-auth-strategy description: Updates an application auth strategy. requestBody: $ref: '#/components/requestBodies/UpdateAppAuthStrategy' responses: '200': $ref: '#/components/responses/UpdateAppAuthStrategy' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - App Auth Strategies delete: x-speakeasy-entity-operation: ApplicationAuthStrategy#delete summary: Delete App Auth Strategy description: >- Deletes an application auth strategy. An application auth strategy can be deleted ONLY if it's not used by any product version within any portal regardless of their publication statuses. If an application auth strategy is still in use the request will result in an HTTP 409 CONFLICT. operationId: delete-app-auth-strategy responses: '204': description: No Content. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - App Auth Strategies /v2/cloud-gateways/availability.json: get: x-speakeasy-group: CloudGateways operationId: get-availability-json summary: Get Resource Availability JSON description: > Get Cloud Gateways Availability JSON document for describing cloud provider and region availability, pricing, gateway version availability, and instance type information. security: [] responses: '200': $ref: >- #/components/responses/RetrieveCloudGatewaysAvailabilityDocumentResponse tags: - Resource Availability servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/configurations: get: x-speakeasy-group: CloudGateways summary: List Configurations description: > Returns a paginated collection of configurations across control-planes for an organization (restricted by permitted control-plane reads). operationId: list-configurations parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/ConfigurationsFilter' responses: '200': $ref: '#/components/responses/ListConfigurationsResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Data-Plane Group Configurations servers: - url: https://global.api.konghq.com/ put: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayConfiguration#create,update summary: Create Configuration description: > Creates a new configuration for a control-plane (restricted by permitted control-plane permissions for configurations). This request will replace any existing configuration for the requested control_plane_id and control_plane_geo by performing a diff. From this diff, new resources detected in the requested configuration will be added, resources not found in the request configuration but in the previous will be deleted, and resources found in both will be updated to the requested configuration. Networks referenced in this request that are in an offline state will automatically initialize (i.e. move to an initializing state). operationId: create-configuration requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateConfigurationRequest' responses: '200': $ref: '#/components/responses/CreateConfigurationResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/CloudGatewaysForbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/CloudGatewaysConflict' tags: - Data-Plane Group Configurations servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/configurations/{configurationId}: get: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayConfiguration#get summary: Get Configuration description: >- Retrieves a configuration by ID (restricted by permitted control-plane read). operationId: get-configuration parameters: - $ref: '#/components/parameters/ConfigurationId' responses: '200': $ref: '#/components/responses/RetrieveConfigurationResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Data-Plane Group Configurations servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/custom-domains: get: x-speakeasy-group: CloudGateways summary: List Custom Domains description: > Returns a paginated collection of custom domains across control-planes for an organization (restricted by permitted control-plane reads). operationId: list-custom-domains parameters: - $ref: '#/components/parameters/CustomDomainsFilter' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListCustomDomainsResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Custom Domains servers: - url: https://global.api.konghq.com/ post: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayCustomDomain#create summary: Create Custom Domain description: > Creates a new custom domain for a control-plane (restricted by permitted control-plane associate-custom-domain action). operationId: create-custom-domains requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateCustomDomainRequest' responses: '201': $ref: '#/components/responses/CreateCustomDomainResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Custom Domains servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/custom-domains/{customDomainId}: get: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayCustomDomain#read summary: Get Custom Domain description: >- Retrieves a custom domain by ID (restricted by permitted control-plane reads). operationId: get-custom-domain parameters: - $ref: '#/components/parameters/CustomDomainId' responses: '200': $ref: '#/components/responses/RetrieveCustomDomainResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Custom Domains servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayCustomDomain#delete x-speakeasy-retries: strategy: backoff backoff: initialInterval: 10000 maxInterval: 60000 maxElapsedTime: 1800000 exponent: 1.5 statusCodes: - 400 retryConnectionErrors: false summary: Delete Custom Domain description: >- Deletes a custom domain by ID (restricted by permitted control-plane reads). operationId: delete-custom-domain parameters: - $ref: '#/components/parameters/CustomDomainId' responses: '204': description: No Content '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Custom Domains servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/custom-domains/{customDomainId}/online-status: get: x-speakeasy-group: CloudGateways summary: Get Custom Domain Online Status description: Retrieves the CNAME and SSL status of a custom domain. operationId: get-custom-domain-online-status parameters: - $ref: '#/components/parameters/CustomDomainId' responses: '200': $ref: '#/components/responses/RetrieveCustomDomainOnlineStatusResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Custom Domains servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/default-resource-configurations: get: x-speakeasy-group: CloudGateways summary: List Default Resource Configurations description: > Returns a paginated collection of default resource configurations for cloud-gateways, along with organizationally-defined overrides for those resource configurations. Resource configurations are settings that are applied to all cloud gateway resources in an organization. For example, the "data-plane-group-idle-timeout-minutes" resource configuration sets the idle timeout for all data plane groups in an organization. operationId: list-default-resource-configurations parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListDefaultResourceConfigurationsResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Resource Configurations servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/default-resource-quotas: get: x-speakeasy-group: CloudGateways summary: List Default Resource Quotas description: > Returns a paginated collection of default resource quotas for cloud-gateways, along with organizationally-defined overrides for those resource quotas. operationId: list-default-resource-quotas parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListDefaultResourceQuotasResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Cloud Gateways Resource Quotas servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/networks: get: x-speakeasy-group: CloudGateways summary: List Networks description: Returns a paginated list of networks. operationId: list-networks parameters: - $ref: '#/components/parameters/NetworksFilter' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListNetworksResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Networks servers: - url: https://global.api.konghq.com/ post: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayNetwork#create summary: Create Network description: Creates a new network for a given provider account. operationId: create-network requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateNetworkRequest' responses: '201': $ref: '#/components/responses/CreateNetworkResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/CloudGatewaysForbidden' '409': $ref: '#/components/responses/Conflict' tags: - Networks servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/networks/{networkId}: get: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayNetwork#read summary: Get Network description: Retrieves a network by ID. operationId: get-network parameters: - $ref: '#/components/parameters/NetworkId' responses: '200': $ref: '#/components/responses/RetrieveNetworkResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Networks servers: - url: https://global.api.konghq.com/ patch: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayNetwork#update summary: Update Network description: Updates a network by ID. operationId: update-network parameters: - $ref: '#/components/parameters/NetworkId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PatchNetworkRequest' responses: '200': $ref: '#/components/responses/PatchNetworkResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/CloudGatewaysForbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Networks servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayNetwork#delete x-speakeasy-retries: strategy: backoff backoff: initialInterval: 10000 maxInterval: 60000 maxElapsedTime: 1800000 exponent: 1.5 statusCodes: - 400 retryConnectionErrors: false summary: Delete Network description: Deletes a network by ID. operationId: delete-network parameters: - $ref: '#/components/parameters/NetworkId' responses: '204': description: No Content '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Networks servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/networks/{networkId}/configuration-references: get: x-speakeasy-group: CloudGateways description: List Network Configuration References summary: > Returns a paginated collection of configurations that reference a network. operationId: list-network-configurations parameters: - $ref: '#/components/parameters/NetworkId' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListNetworkConfigurationReferencesResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Networks servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/networks/{networkId}/transit-gateways: get: x-speakeasy-group: CloudGateways summary: List Transit Gateways description: Returns a paginated collection of transit gateways for a given network. operationId: list-transit-gateways parameters: - $ref: '#/components/parameters/NetworkId' - $ref: '#/components/parameters/TransitGatewaysFilter' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListTransitGatewaysResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Transit Gateways servers: - url: https://global.api.konghq.com/ post: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayTransitGateway#create x-speakeasy-retries: strategy: backoff backoff: initialInterval: 30000 maxInterval: 60000 maxElapsedTime: 3600000 exponent: 1.5 statusCodes: - 400 retryConnectionErrors: false summary: Create Transit Gateway description: Creates a new transit gateway for a given network. operationId: create-transit-gateway parameters: - $ref: '#/components/parameters/NetworkId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateTransitGatewayRequest' responses: '201': $ref: '#/components/responses/CreateTransitGatewayResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Transit Gateways servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/networks/{networkId}/transit-gateways/{transitGatewayId}: get: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayTransitGateway#read summary: Get Transit Gateway description: Retrieves a transit gateway by ID for a given network. operationId: get-transit-gateway parameters: - $ref: '#/components/parameters/NetworkId' - $ref: '#/components/parameters/TransitGatewayId' responses: '200': $ref: '#/components/responses/RetrieveTransitGatewayResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Transit Gateways servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayTransitGateway#delete x-speakeasy-retries: strategy: backoff backoff: initialInterval: 10000 maxInterval: 60000 maxElapsedTime: 1800000 exponent: 1.5 statusCodes: - 400 retryConnectionErrors: false summary: Delete Transit Gateway description: Deletes a transit gateway by ID for a given network. operationId: delete-transit-gateway parameters: - $ref: '#/components/parameters/NetworkId' - $ref: '#/components/parameters/TransitGatewayId' responses: '204': description: No Content '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Transit Gateways servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/provider-accounts: get: x-speakeasy-group: CloudGateways x-speakeasy-entity-operation: CloudGatewayProviderAccountList#read summary: List Provider Accounts description: >- Returns a a paginated collection of provider accounts for an organization. operationId: list-provider-accounts parameters: - $ref: '#/components/parameters/ProviderAccountsFilter' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListProviderAccountsResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Provider Accounts servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/provider-accounts/{providerAccountId}: get: x-speakeasy-group: CloudGateways summary: Get Provider Account description: Retrieves a provider account by ID. operationId: get-provider-account parameters: - $ref: '#/components/parameters/ProviderAccountId' responses: '200': $ref: '#/components/responses/RetrieveProviderAccountResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Provider Accounts servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/resource-configurations: get: x-speakeasy-group: CloudGateways summary: List Resource Configurations description: > Returns a paginated collection of resource configurations for an organization. Resource configurations are settings that are applied to all cloud gateway resources in an organization. For example, the "data-plane-group-idle-timeout-minutes" resource configuration sets the idle timeout for all data plane groups in an organization. operationId: list-resource-configurations parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListResourceConfigurationsResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Resource Configurations servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/resource-configurations/{resourceConfigurationId}: get: x-speakeasy-group: CloudGateways summary: Get Resource Configuration description: Retrieves a resource configuration by ID. operationId: get-resource-configuration parameters: - $ref: '#/components/parameters/ResourceConfigurationId' responses: '200': $ref: '#/components/responses/RetrieveResourceConfigurationResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Resource Configurations servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/resource-quotas: get: x-speakeasy-group: CloudGateways summary: List Resource Quotas description: | Returns a paginated collection of resource quotas for an organization. operationId: list-resource-quotas parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListResourceQuotasResponse' '400': $ref: '#/components/responses/CloudGatewaysBadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Cloud Gateways Resource Quotas servers: - url: https://global.api.konghq.com/ /v2/cloud-gateways/resource-quotas/{resourceQuotaId}: get: x-speakeasy-group: CloudGateways summary: Get Resource Quota description: Retrieves a resource quota by ID. operationId: get-resource-quota parameters: - $ref: '#/components/parameters/ResourceQuotaId' responses: '200': $ref: '#/components/responses/RetrieveResourceQuotaResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Cloud Gateways Resource Quotas servers: - url: https://global.api.konghq.com/ /v2/control-planes: get: x-speakeasy-entity-operation: GatewayControlPlaneList#read summary: List Control Planes responses: '200': $ref: '#/components/responses/ListControlPlanesResponse' '400': $ref: '#/components/responses/ControlPlanesBadRequest' '401': $ref: '#/components/responses/ControlPlaneUnauthenticated' '403': $ref: '#/components/responses/ControlPlanePermissionDenied' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' operationId: list-control-planes description: >- Returns an array of control plane objects containing information about the Konnect Control Planes. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/ControlPlaneFilter' - $ref: '#/components/parameters/FilterByLabels' - $ref: '#/components/parameters/ControlPlaneSort' tags: - Control Planes parameters: [] post: x-speakeasy-entity-operation: GatewayControlPlane#create summary: Create Control Plane operationId: create-control-plane responses: '201': $ref: '#/components/responses/CreateControlPlaneResponse' '400': $ref: '#/components/responses/ControlPlanesBadRequest' '401': $ref: '#/components/responses/ControlPlaneUnauthenticated' '403': $ref: '#/components/responses/ControlPlanePermissionDenied' '409': $ref: '#/components/responses/ControlPlaneConflict' '500': $ref: '#/components/responses/InternalServerError' '503': $ref: '#/components/responses/ServiceUnavailable' tags: - Control Planes requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateControlPlaneRequest' description: Create a control plane in the Konnect Organization. /v2/control-planes/{controlPlaneId}/config-stores: get: summary: List all config stores for a control plane operationId: list-config-stores parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' responses: '200': $ref: '#/components/responses/ListConfigStoresResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreUnauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Config Stores post: x-speakeasy-entity-operation: GatewayConfigStore#create summary: Create Config Store description: Create a Config Store operationId: create-config-store responses: '201': $ref: '#/components/responses/ConfigStoreResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreUnauthorized' '403': $ref: '#/components/responses/Forbidden' '415': $ref: '#/components/responses/UnsupportedMediaType' parameters: - $ref: '#/components/parameters/controlPlaneId' requestBody: $ref: '#/components/requestBodies/CreateConfigStoreRequest' tags: - Config Stores /v2/control-planes/{controlPlaneId}/config-stores/{configStoreId}: parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/configStoreId' get: x-speakeasy-entity-operation: GatewayConfigStore#read summary: Fetch Config Store description: Returns a Config Store operationId: get-config-store responses: '200': $ref: '#/components/responses/ConfigStoreResponse' '401': $ref: '#/components/responses/ConfigStoreUnauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Config Stores put: x-speakeasy-entity-operation: GatewayConfigStore#update summary: Update an individual Config Store description: Updates a Config Store operationId: update-config-store responses: '200': $ref: '#/components/responses/ConfigStoreResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreNotFound' '415': $ref: '#/components/responses/UnsupportedMediaType' requestBody: $ref: '#/components/requestBodies/UpdateConfigStoreRequest' tags: - Config Stores delete: x-speakeasy-entity-operation: GatewayConfigStore#delete summary: Delete Config Store description: Removes a config store operationId: delete-config-store parameters: - schema: type: string default: 'false' enum: - 'true' - 'false' name: force in: query description: >- If true, delete specified config store and all secrets, even if there are secrets linked to the config store If false, do not allow deletion if there are secrets linked to the config store responses: '204': description: Config Store was deleted successfully. '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreUnauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Config Stores /v2/control-planes/{controlPlaneId}/config-stores/{configStoreId}/secrets: parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/configStoreId' post: summary: Create Config Store Secret description: Creates a secret for a Config Store. operationId: create-config-store-secret responses: '201': $ref: '#/components/responses/ConfigStoreSecretResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreSecretUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreSecretNotFound' '415': $ref: '#/components/responses/UnsupportedMediaType' requestBody: $ref: '#/components/requestBodies/CreateConfigStoreSecretRequest' tags: - Config Store Secrets get: summary: List Config Store Secrets parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' description: Returns a collection of all secrets for a Config Store. operationId: list-config-store-secrets responses: '200': $ref: '#/components/responses/ListConfigStoreSecretsResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreSecretUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreSecretNotFound' tags: - Config Store Secrets /v2/control-planes/{controlPlaneId}/config-stores/{configStoreId}/secrets/{key}: parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/configStoreId' - schema: type: string example: ConfigStoreSecretKey name: key in: path required: true description: Config Store Secret key get: summary: Fetch Config Store Secret description: Returns a secret for the Config Store. operationId: get-config-store-secret responses: '200': $ref: '#/components/responses/ConfigStoreSecretResponse' '401': $ref: '#/components/responses/ConfigStoreSecretUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreSecretNotFound' tags: - Config Store Secrets put: summary: Update Config Store Secret description: Updates a secret for a Config Store. operationId: update-config-store-secret responses: '200': $ref: '#/components/responses/ConfigStoreSecretResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ConfigStoreSecretUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreSecretNotFound' '415': $ref: '#/components/responses/UnsupportedMediaType' requestBody: $ref: '#/components/requestBodies/UpdateConfigStoreSecretRequest' tags: - Config Store Secrets delete: summary: Delete Config Store Secret description: Removes a secret from a Config Store. operationId: delete-config-store-secret responses: '204': description: Secret for the Config Store was deleted successfully. '401': $ref: '#/components/responses/ConfigStoreSecretUnauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/ConfigStoreSecretNotFound' tags: - Config Store Secrets /v2/control-planes/{controlPlaneId}/core-entities/acls: get: operationId: list-acl summary: List all ACLs description: List all ACLs parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing ACLs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ACL' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - ACLs parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/acls/{ACLId}: get: operationId: get-acl summary: Fetch an ACL description: Get an ACL using ID. responses: '200': description: Successfully fetched ACL content: application/json: schema: $ref: '#/components/schemas/ACL' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - ACLs parameters: - $ref: '#/components/parameters/ACLId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/basic-auths: get: operationId: list-basic-auth summary: List all Basic-auth credentials description: List all Basic-auth credentials parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Basic-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/BasicAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Basic-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/basic-auths/{BasicAuthId}: get: operationId: get-basic-auth summary: Fetch a Basic-auth credential description: Get a Basic-auth credential using ID. responses: '200': description: Successfully fetched Basic-auth credential content: application/json: schema: $ref: '#/components/schemas/BasicAuth' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Basic-auth credentials parameters: - $ref: '#/components/parameters/BasicAuthId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/ca_certificates: get: operationId: list-ca_certificate summary: List all CA Certificates description: List all CA Certificates parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing CA Certificates content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/CACertificate' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - CA Certificates parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-ca_certificate summary: Create a new CA Certificate description: Create a new CA Certificate requestBody: description: Description of the new CA Certificate for creation required: true content: application/json: schema: $ref: '#/components/schemas/CACertificate' responses: '201': description: Successfully created CA Certificate content: application/json: schema: $ref: '#/components/schemas/CACertificate' '401': $ref: '#/components/responses/HTTP401Error' tags: - CA Certificates /v2/control-planes/{controlPlaneId}/core-entities/ca_certificates/{CACertificateId}: delete: operationId: delete-ca_certificate summary: Delete a CA Certificate description: Delete a CA Certificate parameters: - $ref: '#/components/parameters/CACertificateId' responses: '204': description: Successfully deleted CA Certificate or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - CA Certificates get: operationId: get-ca_certificate summary: Fetch a CA Certificate description: Get a CA Certificate using ID. responses: '200': description: Successfully fetched CA Certificate content: application/json: schema: $ref: '#/components/schemas/CACertificate' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - CA Certificates parameters: - $ref: '#/components/parameters/CACertificateId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-ca_certificate summary: Upsert a CA Certificate description: Create or Update CA Certificate using ID. requestBody: description: Description of the CA Certificate required: true content: application/json: schema: $ref: '#/components/schemas/CACertificate' responses: '200': description: Successfully upserted CA Certificate content: application/json: schema: $ref: '#/components/schemas/CACertificate' '401': $ref: '#/components/responses/HTTP401Error' tags: - CA Certificates /v2/control-planes/{controlPlaneId}/core-entities/certificates: get: operationId: list-certificate summary: List all Certificates description: List all Certificates parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Certificates content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Certificate' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Certificates parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-certificate summary: Create a new Certificate description: Create a new Certificate requestBody: description: Description of the new Certificate for creation required: true content: application/json: schema: $ref: '#/components/schemas/Certificate' responses: '201': description: Successfully created Certificate content: application/json: schema: $ref: '#/components/schemas/Certificate' '401': $ref: '#/components/responses/HTTP401Error' tags: - Certificates /v2/control-planes/{controlPlaneId}/core-entities/certificates/{CertificateId}: delete: operationId: delete-certificate summary: Delete a Certificate description: Delete a Certificate parameters: - $ref: '#/components/parameters/CertificateId' responses: '204': description: Successfully deleted Certificate or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Certificates get: operationId: get-certificate summary: Fetch a Certificate description: Get a Certificate using ID. responses: '200': description: Successfully fetched Certificate content: application/json: schema: $ref: '#/components/schemas/Certificate' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Certificates parameters: - $ref: '#/components/parameters/CertificateId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-certificate summary: Upsert a Certificate description: Create or Update Certificate using ID. requestBody: description: Description of the Certificate required: true content: application/json: schema: $ref: '#/components/schemas/Certificate' responses: '200': description: Successfully upserted Certificate content: application/json: schema: $ref: '#/components/schemas/Certificate' '401': $ref: '#/components/responses/HTTP401Error' tags: - Certificates /v2/control-planes/{controlPlaneId}/core-entities/certificates/{CertificateId}/snis: get: operationId: list-sni-with-certificate summary: List all SNIs associated with a Certificate description: List all SNIs associated with a Certificate parameters: - $ref: '#/components/parameters/CertificateId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing SNIs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/SNI' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - SNIs parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-sni-with-certificate summary: Create a new SNI associated with a Certificate description: Create a new SNI associated with a Certificate parameters: - $ref: '#/components/parameters/CertificateId' requestBody: description: Description of new SNI for creation required: true content: application/json: schema: $ref: '#/components/schemas/SNIWithoutParents' responses: '201': description: Successfully created SNI content: application/json: schema: $ref: '#/components/schemas/SNI' tags: - SNIs /v2/control-planes/{controlPlaneId}/core-entities/certificates/{CertificateId}/snis/{SNIId}: delete: operationId: delete-sni-with-certificate summary: Delete a an SNI associated with a Certificate description: Delete a an SNI associated with a Certificate using ID or name. parameters: - $ref: '#/components/parameters/CertificateId' - $ref: '#/components/parameters/SNIId' responses: '204': description: Successfully deleted SNI or the resource didn't exist tags: - SNIs get: operationId: get-sni-with-certificate summary: Fetch an SNI associated with a Certificate description: Get an SNI associated with a Certificate using ID or name. parameters: - $ref: '#/components/parameters/CertificateId' - $ref: '#/components/parameters/SNIId' responses: '200': description: Successfully fetched SNI content: application/json: schema: $ref: '#/components/schemas/SNI' '404': description: Resource does not exist tags: - SNIs parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-sni-with-certificate summary: Upsert an SNI associated with a Certificate description: Create or Update an SNI associated with a Certificate using ID or name. parameters: - $ref: '#/components/parameters/CertificateId' - $ref: '#/components/parameters/SNIId' requestBody: description: Description of the SNI required: true content: application/json: schema: $ref: '#/components/schemas/SNIWithoutParents' responses: '200': description: Successfully upserted SNI content: application/json: schema: $ref: '#/components/schemas/SNI' tags: - SNIs /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups: get: operationId: list-consumer_group summary: List all Consumer Groups description: List all Consumer Groups parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Consumer Groups content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ConsumerGroup' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumer Groups parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-consumer_group summary: Create a new Consumer Group description: Create a new Consumer Group requestBody: description: Description of the new Consumer Group for creation required: true content: application/json: schema: $ref: '#/components/schemas/ConsumerGroup' responses: '201': description: Successfully created Consumer Group content: application/json: schema: $ref: '#/components/schemas/ConsumerGroup' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumer Groups /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups/{ConsumerGroupId}: delete: operationId: delete-consumer_group summary: Delete a Consumer Group description: Delete a Consumer Group parameters: - $ref: '#/components/parameters/ConsumerGroupId' responses: '204': description: Successfully deleted Consumer Group or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumer Groups get: operationId: get-consumer_group summary: Fetch a Consumer Group description: Get a Consumer Group using ID. responses: '200': description: Successfully fetched Consumer Group content: application/json: schema: $ref: '#/components/schemas/ConsumerGroupInsideWrapper' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Consumer Groups parameters: - $ref: '#/components/parameters/ConsumerGroupId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-consumer_group summary: Upsert a Consumer Group description: Create or Update Consumer Group using ID. requestBody: description: Description of the Consumer Group required: true content: application/json: schema: $ref: '#/components/schemas/ConsumerGroup' responses: '200': description: Successfully upserted Consumer Group content: application/json: schema: $ref: '#/components/schemas/ConsumerGroup' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumer Groups /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups/{ConsumerGroupId}/consumers: delete: operationId: remove-all-consumers-from-consumer-group summary: Remove consumers from consumer group description: >- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Removes all consumers from a consumer groups. This operation does not delete the consumer group. responses: '204': description: Consumers removed from group '404': description: Consumer group or consumer association does not exist tags: - Consumer Groups get: operationId: list-consumers-for-consumer-group summary: List all Consumers in a Consumer Group description: List all consumers in a consumer group parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing of consumers content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Consumer' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Consumer Groups parameters: - $ref: '#/components/parameters/ConsumerGroupIdManageConsumers' - $ref: '#/components/parameters/controlPlaneId' post: x-speakeasy-entity-operation: GatewayConsumerGroupMember#create operationId: add-consumer-to-group summary: Add consumer to consumer group description: Add a consumer to a consumer group requestBody: content: application/json: schema: type: object properties: consumer: type: string example: cf4c7e60-11db-49dd-b300-7c7e5f0f7e6b x-speakeasy-name-override: consumer_id responses: '201': description: Consumer added to group content: application/json: schema: type: object properties: consumer_group: $ref: '#/components/schemas/ConsumerGroup' consumers: type: array items: $ref: '#/components/schemas/Consumer' tags: - Consumer Groups /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups/{ConsumerGroupId}/consumers/{ConsumerId}: delete: x-speakeasy-entity-operation: GatewayConsumerGroupMember#delete operationId: remove-consumer-from-group summary: Remove consumer from consumer group description: Remove a consumer from a consumer group responses: '204': description: Consumer removed from group tags: - Consumer Groups parameters: - $ref: '#/components/parameters/ConsumerGroupIdManageConsumers' - name: ConsumerId in: path required: true schema: type: string - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups/{ConsumerGroupId}/plugins: get: operationId: list-plugin-with-consumer_group summary: List all Plugins associated with a Consumer Group description: List all Plugins associated with a Consumer Group parameters: - $ref: '#/components/parameters/ConsumerGroupId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Plugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Plugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-plugin-with-consumer_group summary: Create a new Plugin associated with a Consumer Group description: Create a new Plugin associated with a Consumer Group parameters: - $ref: '#/components/parameters/ConsumerGroupId' requestBody: description: Description of new Plugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '201': description: Successfully created Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/consumer_groups/{ConsumerGroupId}/plugins/{PluginId}: delete: operationId: delete-plugin-with-consumer_group summary: Delete a a Plugin associated with a Consumer Group description: Delete a a Plugin associated with a Consumer Group using ID. parameters: - $ref: '#/components/parameters/ConsumerGroupId' - $ref: '#/components/parameters/PluginId' responses: '204': description: Successfully deleted Plugin or the resource didn't exist tags: - Plugins get: operationId: get-plugin-with-consumer_group summary: Fetch a Plugin associated with a Consumer Group description: Get a Plugin associated with a Consumer Group using ID. parameters: - $ref: '#/components/parameters/ConsumerGroupId' - $ref: '#/components/parameters/PluginId' responses: '200': description: Successfully fetched Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '404': description: Resource does not exist tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-plugin-with-consumer_group summary: Upsert a Plugin associated with a Consumer Group description: Create or Update a Plugin associated with a Consumer Group using ID. parameters: - $ref: '#/components/parameters/ConsumerGroupId' - $ref: '#/components/parameters/PluginId' requestBody: description: Description of the Plugin required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '200': description: Successfully upserted Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/consumers: get: operationId: list-consumer summary: List all Consumers description: List all Consumers parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Consumers content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Consumer' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumers parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-consumer summary: Create a new Consumer description: Create a new Consumer requestBody: description: Description of the new Consumer for creation required: true content: application/json: schema: $ref: '#/components/schemas/Consumer' responses: '201': description: Successfully created Consumer content: application/json: schema: $ref: '#/components/schemas/Consumer' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumers /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerId}: delete: operationId: delete-consumer summary: Delete a Consumer description: Delete a Consumer parameters: - $ref: '#/components/parameters/ConsumerId' responses: '204': description: Successfully deleted Consumer or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumers get: operationId: get-consumer summary: Fetch a Consumer description: Get a Consumer using ID or username. responses: '200': description: Successfully fetched Consumer content: application/json: schema: $ref: '#/components/schemas/Consumer' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Consumers parameters: - $ref: '#/components/parameters/ConsumerId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-consumer summary: Upsert a Consumer description: Create or Update Consumer using ID or username. requestBody: description: Description of the Consumer required: true content: application/json: schema: $ref: '#/components/schemas/Consumer' responses: '200': description: Successfully upserted Consumer content: application/json: schema: $ref: '#/components/schemas/Consumer' '401': $ref: '#/components/responses/HTTP401Error' tags: - Consumers /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerId}/consumer_groups: delete: operationId: remove-consumer-from-all-consumer-groups summary: Remove consumer from consumer group description: >- Removes a consumer from all consumer groups. This operation does not delete the consumer group. parameters: - $ref: '#/components/parameters/ConsumerId' responses: '204': description: Consumer removed from all groups '404': description: Consumer does not exist tags: - Consumer Groups get: operationId: list-consumer-groups-for-consumer summary: List all Consumer Groups a Consumer belongs to description: List all Consumer Groups a Consumer belongs to parameters: - $ref: '#/components/parameters/ConsumerId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing consumer groups content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ConsumerGroup' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Consumer Groups parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: add-consumer-to-specific-consumer-group summary: Add consumer to a specific consumer group description: Add a consumer to a consumer group parameters: - $ref: '#/components/parameters/ConsumerId' requestBody: content: application/json: schema: type: object properties: group: type: string example: fedee695-2ae2-4e45-877a-776d9b2fc793 x-speakeasy-name-override: group responses: '201': description: Consumer added to a specific group content: application/json: schema: type: object properties: consumer: $ref: '#/components/schemas/Consumer' consumer_groups: type: array items: $ref: '#/components/schemas/ConsumerGroup' tags: - Consumer Groups /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerId}/consumer_groups/{ConsumerGroupId}: delete: operationId: remove-consumer-from-consumer-group summary: Remove consumer from consumer group description: >- Removes a consumer from a consumer group. This operation does not delete the consumer group. parameters: - $ref: '#/components/parameters/ConsumerId' - $ref: '#/components/parameters/ConsumerGroupId' responses: '204': description: Consumer removed from group tags: - Consumer Groups parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/acls: get: operationId: list-acl-with-consumer summary: List all ACLs associated with a Consumer description: List all ACLs associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing ACLs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ACL' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - ACLs parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-acl-with-consumer summary: Create a new ACL associated with a Consumer description: Create a new ACL associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new ACL for creation required: true content: application/json: schema: $ref: '#/components/schemas/ACLWithoutParents' responses: '201': description: Successfully created ACL content: application/json: schema: $ref: '#/components/schemas/ACL' tags: - ACLs /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/acls/{ACLId}: delete: operationId: delete-acl-with-consumer summary: Delete a an ACL associated with a Consumer description: Delete a an ACL associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/ACLId' responses: '204': description: Successfully deleted ACL or the resource didn't exist tags: - ACLs get: operationId: get-acl-with-consumer summary: Fetch an ACL associated with a Consumer description: Get an ACL associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/ACLId' responses: '200': description: Successfully fetched ACL content: application/json: schema: $ref: '#/components/schemas/ACL' '404': description: Resource does not exist tags: - ACLs parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-acl-with-consumer summary: Upsert an ACL associated with a Consumer description: Create or Update an ACL associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/ACLId' requestBody: description: Description of the ACL required: true content: application/json: schema: $ref: '#/components/schemas/ACLWithoutParents' responses: '200': description: Successfully upserted ACL content: application/json: schema: $ref: '#/components/schemas/ACL' tags: - ACLs /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/basic-auth: get: operationId: list-basic-auth-with-consumer summary: List all Basic-auth credentials associated with a Consumer description: List all Basic-auth credentials associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Basic-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/BasicAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Basic-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-basic-auth-with-consumer summary: Create a new Basic-auth credential associated with a Consumer description: Create a new Basic-auth credential associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new Basic-auth credential for creation required: true content: application/json: schema: $ref: '#/components/schemas/BasicAuthWithoutParents' responses: '201': description: Successfully created Basic-auth credential content: application/json: schema: $ref: '#/components/schemas/BasicAuth' tags: - Basic-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/basic-auth/{BasicAuthId}: delete: operationId: delete-basic-auth-with-consumer summary: Delete a a Basic-auth credential associated with a Consumer description: Delete a a Basic-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/BasicAuthId' responses: '204': description: >- Successfully deleted Basic-auth credential or the resource didn't exist tags: - Basic-auth credentials get: operationId: get-basic-auth-with-consumer summary: Fetch a Basic-auth credential associated with a Consumer description: Get a Basic-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/BasicAuthId' responses: '200': description: Successfully fetched Basic-auth credential content: application/json: schema: $ref: '#/components/schemas/BasicAuth' '404': description: Resource does not exist tags: - Basic-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-basic-auth-with-consumer summary: Upsert a Basic-auth credential associated with a Consumer description: >- Create or Update a Basic-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/BasicAuthId' requestBody: description: Description of the Basic-auth credential required: true content: application/json: schema: $ref: '#/components/schemas/BasicAuthWithoutParents' responses: '200': description: Successfully upserted Basic-auth credential content: application/json: schema: $ref: '#/components/schemas/BasicAuth' tags: - Basic-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/hmac-auth: get: operationId: list-hmac-auth-with-consumer summary: List all HMAC-auth credentials associated with a Consumer description: List all HMAC-auth credentials associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing HMAC-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/HMACAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - HMAC-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-hmac-auth-with-consumer summary: Create a new HMAC-auth credential associated with a Consumer description: Create a new HMAC-auth credential associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new HMAC-auth credential for creation required: true content: application/json: schema: $ref: '#/components/schemas/HMACAuthWithoutParents' responses: '201': description: Successfully created HMAC-auth credential content: application/json: schema: $ref: '#/components/schemas/HMACAuth' tags: - HMAC-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/hmac-auth/{HMACAuthId}: delete: operationId: delete-hmac-auth-with-consumer summary: Delete a a HMAC-auth credential associated with a Consumer description: Delete a a HMAC-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/HMACAuthId' responses: '204': description: >- Successfully deleted HMAC-auth credential or the resource didn't exist tags: - HMAC-auth credentials get: operationId: get-hmac-auth-with-consumer summary: Fetch a HMAC-auth credential associated with a Consumer description: Get a HMAC-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/HMACAuthId' responses: '200': description: Successfully fetched HMAC-auth credential content: application/json: schema: $ref: '#/components/schemas/HMACAuth' '404': description: Resource does not exist tags: - HMAC-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-hmac-auth-with-consumer summary: Upsert a HMAC-auth credential associated with a Consumer description: >- Create or Update a HMAC-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/HMACAuthId' requestBody: description: Description of the HMAC-auth credential required: true content: application/json: schema: $ref: '#/components/schemas/HMACAuthWithoutParents' responses: '200': description: Successfully upserted HMAC-auth credential content: application/json: schema: $ref: '#/components/schemas/HMACAuth' tags: - HMAC-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/jwt: get: operationId: list-jwt-with-consumer summary: List all JWTs associated with a Consumer description: List all JWTs associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing JWTs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/JWT' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - JWTs parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-jwt-with-consumer summary: Create a new JWT associated with a Consumer description: Create a new JWT associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new JWT for creation content: application/json: schema: $ref: '#/components/schemas/JWTWithoutParents' responses: '201': description: Successfully created JWT content: application/json: schema: $ref: '#/components/schemas/JWT' tags: - JWTs /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/jwt/{JWTId}: delete: operationId: delete-jwt-with-consumer summary: Delete a a JWT associated with a Consumer description: Delete a a JWT associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/JWTId' responses: '204': description: Successfully deleted JWT or the resource didn't exist tags: - JWTs get: operationId: get-jwt-with-consumer summary: Fetch a JWT associated with a Consumer description: Get a JWT associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/JWTId' responses: '200': description: Successfully fetched JWT content: application/json: schema: $ref: '#/components/schemas/JWT' '404': description: Resource does not exist tags: - JWTs parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-jwt-with-consumer summary: Upsert a JWT associated with a Consumer description: Create or Update a JWT associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/JWTId' requestBody: description: Description of the JWT content: application/json: schema: $ref: '#/components/schemas/JWTWithoutParents' responses: '200': description: Successfully upserted JWT content: application/json: schema: $ref: '#/components/schemas/JWT' tags: - JWTs /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/key-auth: get: operationId: list-key-auth-with-consumer summary: List all API-keys associated with a Consumer description: List all API-keys associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing API-keys content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/KeyAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - API-keys parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-key-auth-with-consumer summary: Create a new API-key associated with a Consumer description: Create a new API-key associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new API-key for creation content: application/json: schema: $ref: '#/components/schemas/KeyAuthWithoutParents' responses: '201': description: Successfully created API-key content: application/json: schema: $ref: '#/components/schemas/KeyAuth' tags: - API-keys /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/key-auth/{KeyAuthId}: delete: operationId: delete-key-auth-with-consumer summary: Delete a an API-key associated with a Consumer description: Delete a an API-key associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/KeyAuthId' responses: '204': description: Successfully deleted API-key or the resource didn't exist tags: - API-keys get: operationId: get-key-auth-with-consumer summary: Fetch an API-key associated with a Consumer description: Get an API-key associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/KeyAuthId' responses: '200': description: Successfully fetched API-key content: application/json: schema: $ref: '#/components/schemas/KeyAuth' '404': description: Resource does not exist tags: - API-keys parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-key-auth-with-consumer summary: Upsert an API-key associated with a Consumer description: Create or Update an API-key associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/KeyAuthId' requestBody: description: Description of the API-key content: application/json: schema: $ref: '#/components/schemas/KeyAuthWithoutParents' responses: '200': description: Successfully upserted API-key content: application/json: schema: $ref: '#/components/schemas/KeyAuth' tags: - API-keys /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/mtls-auth: get: operationId: list-mtls-auth-with-consumer summary: List all MTLS-auth credentials associated with a Consumer description: List all MTLS-auth credentials associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing MTLS-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/MTLSAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - MTLS-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-mtls-auth-with-consumer summary: Create a new MTLS-auth credential associated with a Consumer description: Create a new MTLS-auth credential associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new MTLS-auth credential for creation required: true content: application/json: schema: $ref: '#/components/schemas/MTLSAuthWithoutParents' responses: '201': description: Successfully created MTLS-auth credential content: application/json: schema: $ref: '#/components/schemas/MTLSAuth' tags: - MTLS-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/mtls-auth/{MTLSAuthId}: delete: operationId: delete-mtls-auth-with-consumer summary: Delete a a MTLS-auth credential associated with a Consumer description: Delete a a MTLS-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/MTLSAuthId' responses: '204': description: >- Successfully deleted MTLS-auth credential or the resource didn't exist tags: - MTLS-auth credentials get: operationId: get-mtls-auth-with-consumer summary: Fetch a MTLS-auth credential associated with a Consumer description: Get a MTLS-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/MTLSAuthId' responses: '200': description: Successfully fetched MTLS-auth credential content: application/json: schema: $ref: '#/components/schemas/MTLSAuth' '404': description: Resource does not exist tags: - MTLS-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-mtls-auth-with-consumer summary: Upsert a MTLS-auth credential associated with a Consumer description: >- Create or Update a MTLS-auth credential associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/MTLSAuthId' requestBody: description: Description of the MTLS-auth credential required: true content: application/json: schema: $ref: '#/components/schemas/MTLSAuthWithoutParents' responses: '200': description: Successfully upserted MTLS-auth credential content: application/json: schema: $ref: '#/components/schemas/MTLSAuth' tags: - MTLS-auth credentials /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/plugins: get: operationId: list-plugin-with-consumer summary: List all Plugins associated with a Consumer description: List all Plugins associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Plugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Plugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-plugin-with-consumer summary: Create a new Plugin associated with a Consumer description: Create a new Plugin associated with a Consumer parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' requestBody: description: Description of new Plugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '201': description: Successfully created Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/consumers/{ConsumerIdForNestedEntities}/plugins/{PluginId}: delete: operationId: delete-plugin-with-consumer summary: Delete a a Plugin associated with a Consumer description: Delete a a Plugin associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PluginId' responses: '204': description: Successfully deleted Plugin or the resource didn't exist tags: - Plugins get: operationId: get-plugin-with-consumer summary: Fetch a Plugin associated with a Consumer description: Get a Plugin associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PluginId' responses: '200': description: Successfully fetched Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '404': description: Resource does not exist tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-plugin-with-consumer summary: Upsert a Plugin associated with a Consumer description: Create or Update a Plugin associated with a Consumer using ID. parameters: - $ref: '#/components/parameters/ConsumerIdForNestedEntities' - $ref: '#/components/parameters/PluginId' requestBody: description: Description of the Plugin required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '200': description: Successfully upserted Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/custom-plugins: get: operationId: list-custom-plugin summary: List all CustomPlugins description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. List all CustomPlugins parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing CustomPlugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/CustomPlugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - CustomPlugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-custom-plugin summary: Create a new CustomPlugin description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Create a new CustomPlugin requestBody: description: Description of the new CustomPlugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/CustomPlugin' responses: '201': description: Successfully created CustomPlugin content: application/json: schema: $ref: '#/components/schemas/CustomPlugin' '401': $ref: '#/components/responses/HTTP401Error' tags: - CustomPlugins /v2/control-planes/{controlPlaneId}/core-entities/custom-plugins/{CustomPluginId}: delete: operationId: delete-custom-plugin summary: Delete a CustomPlugin description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Delete a CustomPlugin parameters: - $ref: '#/components/parameters/CustomPluginId' responses: '204': description: Successfully deleted CustomPlugin or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - CustomPlugins get: operationId: get-custom-plugin summary: Fetch a CustomPlugin description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Get a CustomPlugin using ID or name. responses: '200': description: Successfully fetched CustomPlugin content: application/json: schema: $ref: '#/components/schemas/CustomPlugin' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - CustomPlugins parameters: - $ref: '#/components/parameters/CustomPluginId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-custom-plugin summary: Upsert a CustomPlugin description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Create or Update CustomPlugin using ID or name. requestBody: description: Description of the CustomPlugin required: true content: application/json: schema: $ref: '#/components/schemas/CustomPlugin' responses: '200': description: Successfully upserted CustomPlugin content: application/json: schema: $ref: '#/components/schemas/CustomPlugin' '401': $ref: '#/components/responses/HTTP401Error' tags: - CustomPlugins /v2/control-planes/{controlPlaneId}/core-entities/degraphql_routes: get: operationId: list-degraphql_route summary: List all Degraphql_routes description: List all Degraphql_routes parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Degraphql_routes content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Degraphql_route' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Degraphql_routes parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/degraphql_routes/{Degraphql_routeId}: get: operationId: get-degraphql_route summary: Fetch a Degraphql_route description: Get a Degraphql_route using ID or name. responses: '200': description: Successfully fetched Degraphql_route content: application/json: schema: $ref: '#/components/schemas/Degraphql_route' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Degraphql_routes parameters: - $ref: '#/components/parameters/Degraphql_routeId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/hmac-auths: get: operationId: list-hmac-auth summary: List all HMAC-auth credentials description: List all HMAC-auth credentials parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing HMAC-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/HMACAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - HMAC-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/hmac-auths/{HMACAuthId}: get: operationId: get-hmac-auth summary: Fetch a HMAC-auth credential description: Get a HMAC-auth credential using ID. responses: '200': description: Successfully fetched HMAC-auth credential content: application/json: schema: $ref: '#/components/schemas/HMACAuth' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - HMAC-auth credentials parameters: - $ref: '#/components/parameters/HMACAuthId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/jwts: get: operationId: list-jwt summary: List all JWTs description: List all JWTs parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing JWTs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/JWT' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - JWTs parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/jwts/{JWTId}: get: operationId: get-jwt summary: Fetch a JWT description: Get a JWT using ID. responses: '200': description: Successfully fetched JWT content: application/json: schema: $ref: '#/components/schemas/JWT' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - JWTs parameters: - $ref: '#/components/parameters/JWTId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/key-auths: get: operationId: list-key-auth summary: List all API-keys description: List all API-keys parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing API-keys content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/KeyAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - API-keys parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/key-auths/{KeyAuthId}: get: operationId: get-key-auth summary: Fetch an API-key description: Get an API-key using ID. responses: '200': description: Successfully fetched API-key content: application/json: schema: $ref: '#/components/schemas/KeyAuth' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - API-keys parameters: - $ref: '#/components/parameters/KeyAuthId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/key-sets: get: operationId: list-key-set summary: List all KeySets description: List all KeySets parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing KeySets content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/KeySet' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - KeySets parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-key-set summary: Create a new KeySet description: Create a new KeySet requestBody: description: Description of the new KeySet for creation required: true content: application/json: schema: $ref: '#/components/schemas/KeySet' responses: '201': description: Successfully created KeySet content: application/json: schema: $ref: '#/components/schemas/KeySet' '401': $ref: '#/components/responses/HTTP401Error' tags: - KeySets /v2/control-planes/{controlPlaneId}/core-entities/key-sets/{KeySetId}: delete: operationId: delete-key-set summary: Delete a KeySet description: Delete a KeySet parameters: - $ref: '#/components/parameters/KeySetId' responses: '204': description: Successfully deleted KeySet or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - KeySets get: operationId: get-key-set summary: Fetch a KeySet description: Get a KeySet using ID or name. responses: '200': description: Successfully fetched KeySet content: application/json: schema: $ref: '#/components/schemas/KeySet' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - KeySets parameters: - $ref: '#/components/parameters/KeySetId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-key-set summary: Upsert a KeySet description: Create or Update KeySet using ID or name. requestBody: description: Description of the KeySet required: true content: application/json: schema: $ref: '#/components/schemas/KeySet' responses: '200': description: Successfully upserted KeySet content: application/json: schema: $ref: '#/components/schemas/KeySet' '401': $ref: '#/components/responses/HTTP401Error' tags: - KeySets /v2/control-planes/{controlPlaneId}/core-entities/key-sets/{KeySetId}/keys: get: operationId: list-key-with-key-set summary: List all Keys associated with a KeySet description: List all Keys associated with a KeySet parameters: - $ref: '#/components/parameters/KeySetId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Keys content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Key' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Keys parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-key-with-key-set summary: Create a new Key associated with a KeySet description: Create a new Key associated with a KeySet parameters: - $ref: '#/components/parameters/KeySetId' requestBody: description: Description of new Key for creation required: true content: application/json: schema: $ref: '#/components/schemas/KeyWithoutParents' responses: '201': description: Successfully created Key content: application/json: schema: $ref: '#/components/schemas/Key' tags: - Keys /v2/control-planes/{controlPlaneId}/core-entities/key-sets/{KeySetId}/keys/{KeyId}: delete: operationId: delete-key-with-key-set summary: Delete a a Key associated with a KeySet description: Delete a a Key associated with a KeySet using ID or name. parameters: - $ref: '#/components/parameters/KeySetId' - $ref: '#/components/parameters/KeyId' responses: '204': description: Successfully deleted Key or the resource didn't exist tags: - Keys get: operationId: get-key-with-key-set summary: Fetch a Key associated with a KeySet description: Get a Key associated with a KeySet using ID or name. parameters: - $ref: '#/components/parameters/KeySetId' - $ref: '#/components/parameters/KeyId' responses: '200': description: Successfully fetched Key content: application/json: schema: $ref: '#/components/schemas/Key' '404': description: Resource does not exist tags: - Keys parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-key-with-key-set summary: Upsert a Key associated with a KeySet description: Create or Update a Key associated with a KeySet using ID or name. parameters: - $ref: '#/components/parameters/KeySetId' - $ref: '#/components/parameters/KeyId' requestBody: description: Description of the Key required: true content: application/json: schema: $ref: '#/components/schemas/KeyWithoutParents' responses: '200': description: Successfully upserted Key content: application/json: schema: $ref: '#/components/schemas/Key' tags: - Keys /v2/control-planes/{controlPlaneId}/core-entities/keys: get: operationId: list-key summary: List all Keys description: List all Keys parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Keys content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Key' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Keys parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-key summary: Create a new Key description: Create a new Key requestBody: description: Description of the new Key for creation required: true content: application/json: schema: $ref: '#/components/schemas/Key' responses: '201': description: Successfully created Key content: application/json: schema: $ref: '#/components/schemas/Key' '401': $ref: '#/components/responses/HTTP401Error' tags: - Keys /v2/control-planes/{controlPlaneId}/core-entities/keys/{KeyId}: delete: operationId: delete-key summary: Delete a Key description: Delete a Key parameters: - $ref: '#/components/parameters/KeyId' responses: '204': description: Successfully deleted Key or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Keys get: operationId: get-key summary: Fetch a Key description: Get a Key using ID or name. responses: '200': description: Successfully fetched Key content: application/json: schema: $ref: '#/components/schemas/Key' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Keys parameters: - $ref: '#/components/parameters/KeyId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-key summary: Upsert a Key description: Create or Update Key using ID or name. requestBody: description: Description of the Key required: true content: application/json: schema: $ref: '#/components/schemas/Key' responses: '200': description: Successfully upserted Key content: application/json: schema: $ref: '#/components/schemas/Key' '401': $ref: '#/components/responses/HTTP401Error' tags: - Keys /v2/control-planes/{controlPlaneId}/core-entities/mtls-auths: get: operationId: list-mtls-auth summary: List all MTLS-auth credentials description: List all MTLS-auth credentials parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing MTLS-auth credentials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/MTLSAuth' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - MTLS-auth credentials parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/mtls-auths/{MTLSAuthId}: get: operationId: get-mtls-auth summary: Fetch a MTLS-auth credential description: Get a MTLS-auth credential using ID. responses: '200': description: Successfully fetched MTLS-auth credential content: application/json: schema: $ref: '#/components/schemas/MTLSAuth' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - MTLS-auth credentials parameters: - $ref: '#/components/parameters/MTLSAuthId' - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/partials: get: operationId: list-partial summary: List all Partials description: List all Partials parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Partials content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Partial' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Partials parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-partial summary: Create a new Partial description: Create a new Partial requestBody: description: Description of the new Partial for creation required: true content: application/json: schema: $ref: '#/components/schemas/Partial' responses: '201': description: Successfully created Partial content: application/json: schema: $ref: '#/components/schemas/Partial' '401': $ref: '#/components/responses/HTTP401Error' tags: - Partials /v2/control-planes/{controlPlaneId}/core-entities/partials/{PartialId}: delete: operationId: delete-partial summary: Delete a Partial description: Delete a Partial parameters: - $ref: '#/components/parameters/PartialId' responses: '204': description: Successfully deleted Partial or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Partials get: operationId: get-partial summary: Fetch a Partial description: Get a Partial using ID. responses: '200': description: Successfully fetched Partial content: application/json: schema: $ref: '#/components/schemas/Partial' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Partials parameters: - $ref: '#/components/parameters/PartialId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-partial summary: Upsert a Partial description: Create or Update Partial using ID. requestBody: description: Description of the Partial required: true content: application/json: schema: $ref: '#/components/schemas/Partial' responses: '200': description: Successfully upserted Partial content: application/json: schema: $ref: '#/components/schemas/Partial' '401': $ref: '#/components/responses/HTTP401Error' tags: - Partials /v2/control-planes/{controlPlaneId}/core-entities/partials/{PartialId}/links: get: operationId: list-partial-link summary: List partial links description: List all plugins linked to the partial parameters: - $ref: '#/components/parameters/PartialId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: The plugins linked to the partial content: application/json: schema: type: object properties: count: description: The total number of plugins linked to the partial type: integer example: 10 data: type: array items: $ref: '#/components/schemas/PartialLink' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Partial Links parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/plugin-schemas: parameters: - $ref: '#/components/parameters/controlPlaneId' get: summary: List custom plugin schemas associated with a control plane responses: '200': $ref: '#/components/responses/list-plugin-schemas' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' operationId: list-plugin-schemas description: >- Returns an array of custom plugins schemas associated with a control plane. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' tags: - Custom Plugin Schemas post: x-speakeasy-entity-operation: GatewayCustomPluginSchema#create summary: Upload custom plugin schema operationId: create-plugin-schemas responses: '201': $ref: '#/components/responses/plugin-schemas' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '409': $ref: '#/components/responses/Conflict' tags: - Custom Plugin Schemas description: Upload a custom plugin schema associated with a control plane. requestBody: $ref: '#/components/requestBodies/create-plugin-schemas' /v2/control-planes/{controlPlaneId}/core-entities/plugin-schemas/{name}: parameters: - $ref: '#/components/parameters/controlPlaneId' - schema: type: string example: myplugin name: name in: path required: true description: The custom plugin name get: x-speakeasy-entity-operation: GatewayCustomPluginSchema#read summary: Fetch custom plugin schema responses: '200': $ref: '#/components/responses/plugin-schemas' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' operationId: get-plugin-schema description: Returns information about a custom plugin from a given name. tags: - Custom Plugin Schemas delete: x-speakeasy-entity-operation: GatewayCustomPluginSchema#delete summary: Delete custom plugin schema operationId: delete-plugin-schemas responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' description: Delete an individual custom plugin schema. tags: - Custom Plugin Schemas put: x-speakeasy-entity-operation: GatewayCustomPluginSchema#update summary: Create or update a custom plugin schema operationId: update-plugin-schemas responses: '200': $ref: '#/components/responses/plugin-schemas' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' description: Create or update an individual custom plugin schema. tags: - Custom Plugin Schemas requestBody: $ref: '#/components/requestBodies/create-plugin-schemas' /v2/control-planes/{controlPlaneId}/core-entities/plugins: get: operationId: list-plugin summary: List all Plugins description: List all Plugins parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Plugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Plugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-plugin summary: Create a new Plugin description: Create a new Plugin requestBody: description: Description of the new Plugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/Plugin' responses: '201': description: Successfully created Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '401': $ref: '#/components/responses/HTTP401Error' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/plugins/{PluginId}: delete: operationId: delete-plugin summary: Delete a Plugin description: Delete a Plugin parameters: - $ref: '#/components/parameters/PluginId' responses: '204': description: Successfully deleted Plugin or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Plugins get: operationId: get-plugin summary: Fetch a Plugin description: Get a Plugin using ID. responses: '200': description: Successfully fetched Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Plugins parameters: - $ref: '#/components/parameters/PluginId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-plugin summary: Upsert a Plugin description: Create or Update Plugin using ID. requestBody: description: Description of the Plugin required: true content: application/json: schema: $ref: '#/components/schemas/Plugin' responses: '200': description: Successfully upserted Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '401': $ref: '#/components/responses/HTTP401Error' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/routes: get: operationId: list-route summary: List all Routes description: List all Routes parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Routes content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Route' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Routes parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-route summary: Create a new Route description: Create a new Route requestBody: description: Description of the new Route for creation required: true content: application/json: schema: $ref: '#/components/schemas/Route' responses: '201': description: Successfully created Route content: application/json: schema: $ref: '#/components/schemas/Route' '401': $ref: '#/components/responses/HTTP401Error' tags: - Routes /v2/control-planes/{controlPlaneId}/core-entities/routes/{RouteId}: delete: operationId: delete-route summary: Delete a Route description: Delete a Route parameters: - $ref: '#/components/parameters/RouteId' responses: '204': description: Successfully deleted Route or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Routes get: operationId: get-route summary: Fetch a Route description: Get a Route using ID or name. responses: '200': description: Successfully fetched Route content: application/json: schema: $ref: '#/components/schemas/Route' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Routes parameters: - $ref: '#/components/parameters/RouteId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-route summary: Upsert a Route description: Create or Update Route using ID or name. requestBody: description: Description of the Route required: true content: application/json: schema: $ref: '#/components/schemas/Route' responses: '200': description: Successfully upserted Route content: application/json: schema: $ref: '#/components/schemas/Route' '401': $ref: '#/components/responses/HTTP401Error' tags: - Routes /v2/control-planes/{controlPlaneId}/core-entities/routes/{RouteId}/plugins: get: operationId: list-plugin-with-route summary: List all Plugins associated with a Route description: List all Plugins associated with a Route parameters: - $ref: '#/components/parameters/RouteId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Plugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Plugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-plugin-with-route summary: Create a new Plugin associated with a Route description: Create a new Plugin associated with a Route parameters: - $ref: '#/components/parameters/RouteId' requestBody: description: Description of new Plugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '201': description: Successfully created Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/routes/{RouteId}/plugins/{PluginId}: delete: operationId: delete-plugin-with-route summary: Delete a a Plugin associated with a Route description: Delete a a Plugin associated with a Route using ID. parameters: - $ref: '#/components/parameters/RouteId' - $ref: '#/components/parameters/PluginId' responses: '204': description: Successfully deleted Plugin or the resource didn't exist tags: - Plugins get: operationId: get-plugin-with-route summary: Fetch a Plugin associated with a Route description: Get a Plugin associated with a Route using ID. parameters: - $ref: '#/components/parameters/RouteId' - $ref: '#/components/parameters/PluginId' responses: '200': description: Successfully fetched Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '404': description: Resource does not exist tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-plugin-with-route summary: Upsert a Plugin associated with a Route description: Create or Update a Plugin associated with a Route using ID. parameters: - $ref: '#/components/parameters/RouteId' - $ref: '#/components/parameters/PluginId' requestBody: description: Description of the Plugin required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '200': description: Successfully upserted Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/schemas/plugins/{pluginName}: get: operationId: fetch-plugin-schema summary: Fetch plugin schema description: Get the schema for a plugin responses: '200': description: The schema for the plugin content: application/json: schema: type: object properties: fields: type: array items: additionalProperties: true type: object tags: - Plugins parameters: - name: pluginName in: path description: The name of the plugin required: true schema: type: string - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/core-entities/services: get: operationId: list-service summary: List all Services description: List all Services parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Services content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Service' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Services parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-service summary: Create a new Service description: Create a new Service requestBody: description: Description of the new Service for creation required: true content: application/json: schema: $ref: '#/components/schemas/Service' responses: '201': description: Successfully created Service content: application/json: schema: $ref: '#/components/schemas/Service' '401': $ref: '#/components/responses/HTTP401Error' tags: - Services /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}: delete: operationId: delete-service summary: Delete a Service description: Delete a Service parameters: - $ref: '#/components/parameters/ServiceId' responses: '204': description: Successfully deleted Service or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Services get: operationId: get-service summary: Fetch a Service description: Get a Service using ID or name. responses: '200': description: Successfully fetched Service content: application/json: schema: $ref: '#/components/schemas/Service' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Services parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-service summary: Upsert a Service description: Create or Update Service using ID or name. requestBody: description: Description of the Service required: true content: application/json: schema: $ref: '#/components/schemas/Service' responses: '200': description: Successfully upserted Service content: application/json: schema: $ref: '#/components/schemas/Service' '401': $ref: '#/components/responses/HTTP401Error' tags: - Services /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/degraphql/routes: get: operationId: list-degraphql_route-with-service summary: List all Degraphql_routes associated with a Service description: List all Degraphql_routes associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Degraphql_routes content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Degraphql_route' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Degraphql_routes parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-degraphql_route-with-service summary: Create a new Degraphql_route associated with a Service description: Create a new Degraphql_route associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' requestBody: description: Description of new Degraphql_route for creation required: true content: application/json: schema: $ref: '#/components/schemas/Degraphql_routeWithoutParents' responses: '201': description: Successfully created Degraphql_route content: application/json: schema: $ref: '#/components/schemas/Degraphql_route' tags: - Degraphql_routes /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/degraphql/routes/{Degraphql_routeId}: delete: operationId: delete-degraphql_route-with-service summary: Delete a a Degraphql_route associated with a Service description: Delete a a Degraphql_route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/Degraphql_routeId' responses: '204': description: Successfully deleted Degraphql_route or the resource didn't exist tags: - Degraphql_routes get: operationId: get-degraphql_route-with-service summary: Fetch a Degraphql_route associated with a Service description: Get a Degraphql_route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/Degraphql_routeId' responses: '200': description: Successfully fetched Degraphql_route content: application/json: schema: $ref: '#/components/schemas/Degraphql_route' '404': description: Resource does not exist tags: - Degraphql_routes parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-degraphql_route-with-service summary: Upsert a Degraphql_route associated with a Service description: >- Create or Update a Degraphql_route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/Degraphql_routeId' requestBody: description: Description of the Degraphql_route required: true content: application/json: schema: $ref: '#/components/schemas/Degraphql_routeWithoutParents' responses: '200': description: Successfully upserted Degraphql_route content: application/json: schema: $ref: '#/components/schemas/Degraphql_route' tags: - Degraphql_routes /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/plugins: get: operationId: list-plugin-with-service summary: List all Plugins associated with a Service description: List all Plugins associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Plugins content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Plugin' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-plugin-with-service summary: Create a new Plugin associated with a Service description: Create a new Plugin associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' requestBody: description: Description of new Plugin for creation required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '201': description: Successfully created Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/plugins/{PluginId}: delete: operationId: delete-plugin-with-service summary: Delete a a Plugin associated with a Service description: Delete a a Plugin associated with a Service using ID. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PluginId' responses: '204': description: Successfully deleted Plugin or the resource didn't exist tags: - Plugins get: operationId: get-plugin-with-service summary: Fetch a Plugin associated with a Service description: Get a Plugin associated with a Service using ID. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PluginId' responses: '200': description: Successfully fetched Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' '404': description: Resource does not exist tags: - Plugins parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-plugin-with-service summary: Upsert a Plugin associated with a Service description: Create or Update a Plugin associated with a Service using ID. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PluginId' requestBody: description: Description of the Plugin required: true content: application/json: schema: $ref: '#/components/schemas/PluginWithoutParents' responses: '200': description: Successfully upserted Plugin content: application/json: schema: $ref: '#/components/schemas/Plugin' tags: - Plugins /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/routes: get: operationId: list-route-with-service summary: List all Routes associated with a Service description: List all Routes associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Routes content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Route' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Routes parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-route-with-service summary: Create a new Route associated with a Service description: Create a new Route associated with a Service parameters: - $ref: '#/components/parameters/ServiceId' requestBody: description: Description of new Route for creation required: true content: application/json: schema: $ref: '#/components/schemas/RouteWithoutParents' responses: '201': description: Successfully created Route content: application/json: schema: $ref: '#/components/schemas/Route' tags: - Routes /v2/control-planes/{controlPlaneId}/core-entities/services/{ServiceId}/routes/{RouteId}: delete: operationId: delete-route-with-service summary: Delete a a Route associated with a Service description: Delete a a Route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/RouteId' responses: '204': description: Successfully deleted Route or the resource didn't exist tags: - Routes get: operationId: get-route-with-service summary: Fetch a Route associated with a Service description: Get a Route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/RouteId' responses: '200': description: Successfully fetched Route content: application/json: schema: $ref: '#/components/schemas/Route' '404': description: Resource does not exist tags: - Routes parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-route-with-service summary: Upsert a Route associated with a Service description: Create or Update a Route associated with a Service using ID or name. parameters: - $ref: '#/components/parameters/ServiceId' - $ref: '#/components/parameters/RouteId' requestBody: description: Description of the Route required: true content: application/json: schema: $ref: '#/components/schemas/RouteWithoutParents' responses: '200': description: Successfully upserted Route content: application/json: schema: $ref: '#/components/schemas/Route' tags: - Routes /v2/control-planes/{controlPlaneId}/core-entities/snis: get: operationId: list-sni summary: List all SNIs description: List all SNIs parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing SNIs content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/SNI' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - SNIs parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-sni summary: Create a new SNI description: Create a new SNI requestBody: description: Description of the new SNI for creation required: true content: application/json: schema: $ref: '#/components/schemas/SNI' responses: '201': description: Successfully created SNI content: application/json: schema: $ref: '#/components/schemas/SNI' '401': $ref: '#/components/responses/HTTP401Error' tags: - SNIs /v2/control-planes/{controlPlaneId}/core-entities/snis/{SNIId}: delete: operationId: delete-sni summary: Delete an SNI description: Delete an SNI parameters: - $ref: '#/components/parameters/SNIId' responses: '204': description: Successfully deleted SNI or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - SNIs get: operationId: get-sni summary: Fetch an SNI description: Get an SNI using ID or name. responses: '200': description: Successfully fetched SNI content: application/json: schema: $ref: '#/components/schemas/SNI' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - SNIs parameters: - $ref: '#/components/parameters/SNIId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-sni summary: Upsert a SNI description: Create or Update SNI using ID or name. requestBody: description: Description of the SNI required: true content: application/json: schema: $ref: '#/components/schemas/SNI' responses: '200': description: Successfully upserted SNI content: application/json: schema: $ref: '#/components/schemas/SNI' '401': $ref: '#/components/responses/HTTP401Error' tags: - SNIs /v2/control-planes/{controlPlaneId}/core-entities/upstreams: get: operationId: list-upstream summary: List all Upstreams description: List all Upstreams parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Upstreams content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Upstream' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Upstreams parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-upstream summary: Create a new Upstream description: Create a new Upstream requestBody: description: Description of the new Upstream for creation required: true content: application/json: schema: $ref: '#/components/schemas/Upstream' responses: '201': description: Successfully created Upstream content: application/json: schema: $ref: '#/components/schemas/Upstream' '401': $ref: '#/components/responses/HTTP401Error' tags: - Upstreams /v2/control-planes/{controlPlaneId}/core-entities/upstreams/{UpstreamId}: delete: operationId: delete-upstream summary: Delete an Upstream description: Delete an Upstream parameters: - $ref: '#/components/parameters/UpstreamId' responses: '204': description: Successfully deleted Upstream or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Upstreams get: operationId: get-upstream summary: Fetch an Upstream description: Get an Upstream using ID or name. responses: '200': description: Successfully fetched Upstream content: application/json: schema: $ref: '#/components/schemas/Upstream' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Upstreams parameters: - $ref: '#/components/parameters/UpstreamId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-upstream summary: Upsert a Upstream description: Create or Update Upstream using ID or name. requestBody: description: Description of the Upstream required: true content: application/json: schema: $ref: '#/components/schemas/Upstream' responses: '200': description: Successfully upserted Upstream content: application/json: schema: $ref: '#/components/schemas/Upstream' '401': $ref: '#/components/responses/HTTP401Error' tags: - Upstreams /v2/control-planes/{controlPlaneId}/core-entities/upstreams/{UpstreamIdForTarget}/targets: get: operationId: list-target-with-upstream summary: List all Targets associated with an Upstream description: List all Targets associated with an Upstream parameters: - $ref: '#/components/parameters/UpstreamIdForTarget' - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Targets content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Target' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' tags: - Targets parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-target-with-upstream summary: Create a new Target associated with an Upstream description: Create a new Target associated with an Upstream parameters: - $ref: '#/components/parameters/UpstreamIdForTarget' requestBody: description: Description of new Target for creation required: true content: application/json: schema: $ref: '#/components/schemas/TargetWithoutParents' responses: '201': description: Successfully created Target content: application/json: schema: $ref: '#/components/schemas/Target' tags: - Targets /v2/control-planes/{controlPlaneId}/core-entities/upstreams/{UpstreamIdForTarget}/targets/{TargetId}: delete: operationId: delete-target-with-upstream summary: Delete a a Target associated with an Upstream description: Delete a a Target associated with an Upstream using ID or target. parameters: - $ref: '#/components/parameters/UpstreamIdForTarget' - $ref: '#/components/parameters/TargetId' responses: '204': description: Successfully deleted Target or the resource didn't exist tags: - Targets get: operationId: get-target-with-upstream summary: Fetch a Target associated with an Upstream description: Get a Target associated with an Upstream using ID or target. parameters: - $ref: '#/components/parameters/UpstreamIdForTarget' - $ref: '#/components/parameters/TargetId' responses: '200': description: Successfully fetched Target content: application/json: schema: $ref: '#/components/schemas/Target' '404': description: Resource does not exist tags: - Targets parameters: - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-target-with-upstream summary: Upsert a Target associated with an Upstream description: >- Create or Update a Target associated with an Upstream using ID or target. parameters: - $ref: '#/components/parameters/UpstreamIdForTarget' - $ref: '#/components/parameters/TargetId' requestBody: description: Description of the Target required: true content: application/json: schema: $ref: '#/components/schemas/TargetWithoutParents' responses: '200': description: Successfully upserted Target content: application/json: schema: $ref: '#/components/schemas/Target' tags: - Targets /v2/control-planes/{controlPlaneId}/core-entities/vaults: get: operationId: list-vault summary: List all Vaults description: List all Vaults parameters: - $ref: '#/components/parameters/PaginationSize' - $ref: '#/components/parameters/PaginationOffset' - $ref: '#/components/parameters/PaginationTagsFilter' responses: '200': description: A successful response listing Vaults content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Vault' next: $ref: '#/components/schemas/PaginationNextResponse' offset: $ref: '#/components/schemas/PaginationOffsetResponse' '401': $ref: '#/components/responses/HTTP401Error' tags: - Vaults parameters: - $ref: '#/components/parameters/controlPlaneId' post: operationId: create-vault summary: Create a new Vault description: Create a new Vault requestBody: description: Description of the new Vault for creation required: true content: application/json: schema: $ref: '#/components/schemas/Vault' responses: '201': description: Successfully created Vault content: application/json: schema: $ref: '#/components/schemas/Vault' '401': $ref: '#/components/responses/HTTP401Error' tags: - Vaults /v2/control-planes/{controlPlaneId}/core-entities/vaults/{VaultId}: delete: operationId: delete-vault summary: Delete a Vault description: Delete a Vault parameters: - $ref: '#/components/parameters/VaultId' responses: '204': description: Successfully deleted Vault or the resource didn't exist '401': $ref: '#/components/responses/HTTP401Error' tags: - Vaults get: operationId: get-vault summary: Fetch a Vault description: Get a Vault using ID or prefix. responses: '200': description: Successfully fetched Vault content: application/json: schema: $ref: '#/components/schemas/Vault' '401': $ref: '#/components/responses/HTTP401Error' '404': description: Resource does not exist tags: - Vaults parameters: - $ref: '#/components/parameters/VaultId' - $ref: '#/components/parameters/controlPlaneId' put: operationId: upsert-vault summary: Upsert a Vault description: Create or Update Vault using ID or prefix. requestBody: description: Description of the Vault required: true content: application/json: schema: $ref: '#/components/schemas/Vault' responses: '200': description: Successfully upserted Vault content: application/json: schema: $ref: '#/components/schemas/Vault' '401': $ref: '#/components/responses/HTTP401Error' tags: - Vaults /v2/control-planes/{controlPlaneId}/dp-client-certificates: parameters: - $ref: '#/components/parameters/controlPlaneId' get: summary: List DP Client Certificates responses: '200': $ref: '#/components/responses/ListDataPlaneCertificatesResponse' operationId: list-dp-client-certificates tags: - DP Certificates description: >- Returns a list of pinned dataplane client certificates that are associated to this control plane. A pinned dataplane certificate allows dataplanes configured with the certificate and corresponding private key to establish connection with this control plane. post: x-speakeasy-entity-operation: GatewayDataPlaneClientCertificate#create summary: Pin New DP Client Certificate description: >- Pin a new DP Client Certificate to this control plane. A pinned dataplane certificate allows dataplanes configured with the certificate and corresponding private key to establish connection with this control plane. operationId: create-dataplane-certificate requestBody: $ref: '#/components/requestBodies/DataPlaneClientCertificateRequest' responses: '201': $ref: '#/components/responses/DataPlaneClientCertificateResponse' tags: - DP Certificates /v2/control-planes/{controlPlaneId}/dp-client-certificates/{certificateId}: parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/DataPlaneCertificateId' get: x-speakeasy-entity-operation: GatewayDataPlaneClientCertificate#read summary: Fetch DP Client Certificate tags: - DP Certificates responses: '200': $ref: '#/components/responses/DataPlaneClientCertificateResponse' operationId: get-dataplane-certificate description: >- Retrieve a pinned dataplane client certificate associated to this control plane. A pinned dataplane certificate allows dataplanes configured with the certificate and corresponding private key to establish connection with this control plane. delete: x-speakeasy-entity-operation: GatewayDataPlaneClientCertificate#delete summary: Delete DP Client Certificate operationId: delete-dataplane-certificate responses: '204': description: No Content tags: - DP Certificates description: >- Remove a pinned dataplane client certificate associated to this control plane. Removing a pinned dataplane certificate would invalidate any dataplanes currently connected to this control plane using this certificate. /v2/control-planes/{controlPlaneId}/expected-config-hash: get: summary: Fetch Expected Config Hash tags: - DP Nodes responses: '200': $ref: '#/components/responses/GetExpectedConfigHashResponse' operationId: get-expected-config-hash description: >- Retrieve the expected config hash for this control plane. The expected config hash can be used to verify if the config hash of a data plane node is up to date with the control plane. The config hash will be the same if they are in sync. parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/nodes: get: summary: List Data Plane Node Records responses: '200': $ref: '#/components/responses/list-nodes' operationId: list-dataplane-nodes tags: - DP Nodes description: >- Returns a list of data plane node records that are associated to this control plane. A data plane node record contains metadata information for the data plane running Kong Gateway. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{controlPlaneId}/nodes/{nodeId}: parameters: - $ref: '#/components/parameters/controlPlaneId' - $ref: '#/components/parameters/nodeId' get: summary: Fetch Data Plane Node Record responses: '200': $ref: '#/components/responses/get-node' operationId: get-nodes-node_id tags: - DP Nodes description: >- Retrieve a specific data plane node record associated to this control plane. A data plane node record contains all the metadata information of the Kong Gateway dataplane. parameters: - $ref: '#/components/parameters/pagination-size' - $ref: '#/components/parameters/pagination-tags-filter' delete: summary: Delete Data Plane Node Record operationId: delete-nodes-node_id responses: '204': description: No Content tags: - DP Nodes description: >- Remove a specific data plane node record associated to this control plane. Deleting this record does not prevent the data plane node from re-connecting to the control plane. /v2/control-planes/{controlPlaneId}/nodes/eol: get: summary: List End-of-Life Data Plane Node Records responses: '200': $ref: '#/components/responses/list-nodes-eol' operationId: get-nodes-eol tags: - DP Nodes description: >- Returns a list of records of data plane nodes, whose versions are approaching End of Full Support/End of Life, that are associated with this control plane. Each record contains a data plane node's id, version, and corresponding resolution message to upgrade to the closest Long Term Support version. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' parameters: - $ref: '#/components/parameters/controlPlaneId' /v2/control-planes/{id}: parameters: - schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: id in: path required: true description: The control plane ID get: x-speakeasy-entity-operation: GatewayControlPlane#read summary: Fetch Control Plane responses: '200': $ref: '#/components/responses/RetrieveControlPlaneResponse' '400': $ref: '#/components/responses/ControlPlanesBadRequest' '401': $ref: '#/components/responses/ControlPlaneUnauthenticated' '403': $ref: '#/components/responses/ControlPlanePermissionDenied' '404': $ref: '#/components/responses/ControlPlaneNotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' operationId: get-control-plane description: Returns information about an individual control plane. tags: - Control Planes patch: x-speakeasy-entity-operation: GatewayControlPlane#update summary: Update Control Plane operationId: update-control-plane responses: '200': $ref: '#/components/responses/UpdateControlPlaneResponse' '400': $ref: '#/components/responses/ControlPlanesBadRequest' '401': $ref: '#/components/responses/ControlPlaneUnauthenticated' '403': $ref: '#/components/responses/ControlPlanePermissionDenied' '404': $ref: '#/components/responses/ControlPlaneNotFound' '500': $ref: '#/components/responses/InternalServerError' '503': $ref: '#/components/responses/ServiceUnavailable' description: Update an individual control plane. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateControlPlaneRequest' tags: - Control Planes delete: x-speakeasy-entity-operation: GatewayControlPlane#delete summary: Delete Control Plane operationId: delete-control-plane responses: '204': description: No Content '400': $ref: '#/components/responses/ControlPlanesBadRequest' '401': $ref: '#/components/responses/ControlPlaneUnauthenticated' '403': $ref: '#/components/responses/ControlPlanePermissionDenied' '404': $ref: '#/components/responses/ControlPlaneNotFound' '500': $ref: '#/components/responses/InternalServerError' '503': $ref: '#/components/responses/ServiceUnavailable' description: Delete an individual control plane. tags: - Control Planes /v2/control-planes/{id}/group-member-status: parameters: - schema: type: string name: id in: path required: true description: ID of a control plane get: summary: Control Plane Group Member Status operationId: get-control-planes-id-group-member-status tags: - Control Plane Groups description: Determines the group membership status of a control plane. responses: '200': $ref: '#/components/responses/GetGroupMemberStatus' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' /v2/control-planes/{id}/group-memberships: parameters: - schema: type: string name: id in: path required: true description: ID of a control plane group get: summary: List Control Plane Group Memberships tags: - Control Plane Groups responses: '200': $ref: '#/components/responses/ListGroupMemberships' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' operationId: get-control-planes-id-group-memberships description: >- Returns an array of control planes that are a member of this control plane group. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageAfter' put: summary: Upsert Control Plane Group Members operationId: put-control-planes-id-group-memberships responses: '204': description: No Content '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' requestBody: $ref: '#/components/requestBodies/GroupMembershipUpsert' tags: - Control Plane Groups description: Adds one or more control planes as a member of a control plane group. /v2/control-planes/{id}/group-memberships/add: parameters: - schema: type: string name: id in: path required: true description: ID of a control plane group post: x-speakeasy-entity-operation: GatewayControlPlaneMembership#create summary: Add Control Plane Group Members operationId: post-control-planes-id-group-memberships-add responses: '204': description: No Content '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' requestBody: $ref: '#/components/requestBodies/GroupMembershipAdd' tags: - Control Plane Groups description: Adds one or more control planes as a member of a control plane group. /v2/control-planes/{id}/group-memberships/remove: parameters: - schema: type: string name: id in: path required: true description: ID of a control plane group post: x-speakeasy-entity-operation: GatewayControlPlaneMembership#delete summary: Remove Control Plane Group Members operationId: post-control-planes-id-group-memberships-remove requestBody: $ref: '#/components/requestBodies/GroupMembershipRemove' tags: - Control Plane Groups description: >- Removes one or more control planes from the members of a control plane group. responses: '204': description: No Content '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' /v2/control-planes/{id}/group-status: parameters: - schema: type: string name: id in: path required: true description: ID of a control plane group get: summary: Get Control Plane Group Status tags: - Control Plane Groups responses: '200': $ref: '#/components/responses/GetGroupStatus' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/ServiceUnavailable' operationId: get-control-planes-id-group-status description: >- Returns the status of a control plane group, including existing conflicts. /v2/dcr-providers: post: summary: Create DCR provider operationId: create-dcr-provider description: Creates a DCR provider. requestBody: $ref: '#/components/requestBodies/CreateDcrProvider' responses: '201': $ref: '#/components/responses/CreateDcrProvider' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - DCR Providers get: summary: List DCR Providers operationId: list-dcr-providers description: Returns a paginated collection of DCR providers. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/SortDcrProviders' - $ref: '#/components/parameters/FilterDcrProvidersById' - $ref: '#/components/parameters/FilterDcrProvidersByIdShort' - $ref: '#/components/parameters/FilterDcrProvidersByIdContains' - $ref: '#/components/parameters/FilterDcrProvidersByIssuer' - $ref: '#/components/parameters/FilterDcrProvidersByIssuerShort' - $ref: '#/components/parameters/FilterDcrProvidersByIssuerContains' - $ref: '#/components/parameters/FilterDcrProvidersByName' - $ref: '#/components/parameters/FilterDcrProvidersByNameShort' - $ref: '#/components/parameters/FilterDcrProvidersByNameContains' - $ref: '#/components/parameters/FilterDcrProvidersByProviderType' - $ref: '#/components/parameters/FilterDcrProvidersByProviderTypeShort' - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientId' - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientIdShort' - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientIdContains' - $ref: '#/components/parameters/FilterDcrProvidersByInitialClientAudience' - $ref: >- #/components/parameters/FilterDcrProvidersByInitialClientAudienceShort - $ref: >- #/components/parameters/FilterDcrProvidersByInitialClientAudienceContains responses: '200': $ref: '#/components/responses/ListDcrProviders' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - DCR Providers /v2/dcr-providers/{dcrProviderId}: parameters: - $ref: '#/components/parameters/DcrProviderId' get: summary: Fetch DCR provider description: Returns a DCR provider. operationId: get-dcr-provider responses: '200': $ref: '#/components/responses/GetDcrProvider' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - DCR Providers patch: summary: Update DCR provider description: Updates a DCR provider. operationId: update-dcr-provider requestBody: $ref: '#/components/requestBodies/UpdateDcrProvider' responses: '200': $ref: '#/components/responses/GetDcrProvider' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - DCR Providers delete: summary: Delete DCR provider description: Deletes a DCR provider. operationId: delete-dcr-provider responses: '204': description: No Content. '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - DCR Providers /v2/dcr-providers/{dcrProviderId}/verify: parameters: - $ref: '#/components/parameters/DcrProviderId' post: summary: Verify DCR provider configuration. description: >- Verifies if a DCR provider is configured properly. Returns 200 for success, 4xx for failure. operationId: verify-dcr-provider responses: '200': $ref: '#/components/responses/VerifyDcrProvider' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - DCR Providers /v3/authenticate/{organizationLoginPath}: get: summary: SSO Callback description: Callback for authenticating via an organization's IdP operationId: authenticate-sso tags: - Authentication parameters: - in: path name: organizationLoginPath description: The login path for the organization. required: true schema: type: string - in: query name: return_to description: Return destination for the callback. schema: type: string responses: '302': description: Found '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' servers: - url: https://global.api.konghq.com/ /v3/authentication-settings: get: summary: Get Auth Settings description: >- Returns authentication configuration, which determines how users can log in and how they are assigned to teams. operationId: get-authentication-settings tags: - Auth Settings responses: '200': $ref: '#/components/responses/AuthenticationSettings' '401': $ref: '#/components/responses/IdentityUnauthenticated' servers: - url: https://global.api.konghq.com/ patch: summary: Update Auth Settings description: Updates authentication configuration. operationId: update-authentication-settings requestBody: $ref: '#/components/requestBodies/UpdateAuthenticationSettings' tags: - Auth Settings responses: '200': $ref: '#/components/responses/AuthenticationSettings' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' servers: - url: https://global.api.konghq.com/ /v3/identity-provider: get: summary: Fetch IdP Configuration operationId: get-idp-configuration responses: '200': $ref: '#/components/responses/IdPConfiguration' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Auth Settings description: Fetch the IdP configuration. servers: - url: https://global.api.konghq.com/ parameters: [] patch: summary: Update IdP Configuration operationId: update-idp-configuration responses: '200': $ref: '#/components/responses/IdPConfiguration' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' description: Update the IdP configuration. requestBody: $ref: '#/components/requestBodies/UpdateIdPConfiguration' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ /v3/identity-provider/team-group-mappings: get: summary: Fetch Team Group Mappings operationId: get-team-group-mappings parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/TeamGroupMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' tags: - Auth Settings description: >- Retrieves the mappings between Konnect Teams and Identity Provider Groups. Returns a 400 error if an Identity Provider has not yet been configured. servers: - url: https://global.api.konghq.com/ patch: summary: Patch Mappings by Team ID operationId: patch-team-group-mappings responses: '200': $ref: '#/components/responses/TeamGroupMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' tags: - Auth Settings description: >- Allows partial updates to the mappings between Konnect Teams and Identity Provider Groups. The request body must be keyed on team ID. For a given team ID, the given group list is a complete replacement. To remove all mappings for a given team, provide an empty group list. Returns a 400 error if an Identity Provider has not yet been configured, or if a team ID in the request body is not found or is not a UUID. requestBody: $ref: '#/components/requestBodies/PatchTeamGroupMappings' servers: - url: https://global.api.konghq.com/ /v3/identity-provider/team-mappings: put: summary: Update Team Mappings operationId: update-idp-team-mappings responses: '200': $ref: '#/components/responses/TeamMappingCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '412': $ref: '#/components/responses/PreconditionFailed' tags: - Auth Settings description: Updates the IdP group to Konnect team mapping. requestBody: $ref: '#/components/requestBodies/UpdateTeamMappings' servers: - url: https://global.api.konghq.com/ get: summary: Fetch Team Mapping operationId: get-idp-team-mappings parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/TeamMappingResponse' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '412': $ref: '#/components/responses/PreconditionFailed' tags: - Auth Settings description: Fetch the IdP group to Konnect team mapping. servers: - url: https://global.api.konghq.com/ /v3/identity-providers: get: summary: Retrieve Identity Providers description: > Retrieves the identity providers available within the organization. This operation provides information about various identity providers for SAML or OIDC authentication integrations. operationId: get-identity-providers parameters: - schema: type: object properties: type: $ref: '#/components/schemas/StringFieldEqualsFilter' in: query name: filter description: Filter identity providers returned in the response. required: false style: deepObject responses: '200': $ref: '#/components/responses/IdentityProviders' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ post: summary: Create Identity Provider description: > Creates a new identity provider. This operation allows the creation of a new identity provider for authentication purposes. operationId: create-identity-provider requestBody: $ref: '#/components/requestBodies/CreateIdentityProviderRequest' responses: '201': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/CreateIdentityProviderPermissionDenied' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ /v3/identity-providers/{id}: parameters: - schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: id in: path required: true description: ID of the identity provider. get: summary: Get Identity Provider description: > Retrieves the configuration of a single identity provider. This operation returns information about a specific identity provider's settings and authentication integration details. operationId: get-identity-provider responses: '200': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ patch: summary: Update Identity Provider description: > Updates the configuration of an existing identity provider. This operation allows modifications to be made to an existing identity provider's configuration. operationId: update-identity-provider requestBody: $ref: '#/components/requestBodies/UpdateIdentityProviderRequest' responses: '200': $ref: '#/components/responses/IdentityProvider' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ delete: summary: Delete Identity Provider description: > Deletes an existing identity provider configuration. This operation removes a specific identity provider from the organization. operationId: delete-identity-provider responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Auth Settings servers: - url: https://global.api.konghq.com/ /v3/invites: post: summary: Invite User description: >- Sends an invitation email to invite a user to the Konnect organization. The email contains a link with a one time token to accept the invitation. Upon accepting the invitation, the user is directed to https://cloud.konghq.com/login to complete registration. operationId: invite-user requestBody: $ref: '#/components/requestBodies/InviteUser' responses: '201': description: Created '400': $ref: '#/components/responses/IdentityBadRequest' '409': $ref: '#/components/responses/IdentityConflict' '429': $ref: '#/components/responses/RateLimited' tags: - Invites servers: - url: https://global.api.konghq.com/ /v3/organizations/impersonation: get: summary: Get Impersonation Settings description: >- Returns Impersonation Settings, which determines if user impersonation is allowed for an organization. operationId: get-impersonation-settings tags: - Impersonation Settings responses: '200': $ref: '#/components/responses/GetImpersonationSettingsResponse' '401': $ref: '#/components/responses/IdentityUnauthenticated' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ patch: summary: Update Impersonation Settings description: Updates Impersonation Settings. operationId: update-impersonation-settings requestBody: $ref: '#/components/requestBodies/UpdateImpersonationSettingsRequest' tags: - Impersonation Settings responses: '200': $ref: '#/components/responses/UpdateImpersonationSettingsResponse' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' servers: - url: https://global.api.konghq.com/ /v3/organizations/me: get: summary: Retrieve My Organization tags: - Me responses: '200': $ref: '#/components/responses/MeOrganization' '401': $ref: '#/components/responses/IdentityUnauthenticated' operationId: get-organizations-me description: >- Returns the organization of the user identified in the token of the request. servers: - url: https://global.api.konghq.com/ /v3/roles: get: summary: Get Predefined Roles description: Retrieves the predefined, or system managed, roles. operationId: get-predefined-roles responses: '200': $ref: '#/components/responses/Roles' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' tags: - Roles servers: - url: https://global.api.konghq.com/ /v3/system-accounts: get: summary: List System Accounts tags: - System Accounts responses: '200': $ref: '#/components/responses/SystemAccountCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' operationId: get-system-accounts description: >- Returns an array of system accounts (SA) in the organization. Returns 400 if any filter parameters are invalid. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' description: $ref: '#/components/schemas/StringFieldFilter' konnect_managed: $ref: '#/components/schemas/BooleanFieldFilter' in: query name: filter description: Filter system accounts returned in the response. required: false style: deepObject servers: - url: https://global.api.konghq.com/ post: x-speakeasy-entity-operation: SystemAccount#create summary: Create System Account operationId: post-system-accounts tags: - System Accounts description: >- Creates a system account. Returns a 409 if a system account with the same name already exists. requestBody: $ref: '#/components/requestBodies/CreateSystemAccount' responses: '201': $ref: '#/components/responses/SystemAccountSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '409': $ref: '#/components/responses/IdentityConflict' servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}: get: x-speakeasy-entity-operation: SystemAccount#read summary: Fetch System Account tags: - System Accounts responses: '200': $ref: '#/components/responses/SystemAccountSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-system-accounts-id description: >- Returns the system account (SA) for the SA ID specified as a path parameter. servers: - url: https://global.api.konghq.com/ parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. x-speakeasy-match: id patch: x-speakeasy-entity-operation: SystemAccount#update summary: Update System Account operationId: patch-system-accounts-id responses: '200': $ref: '#/components/responses/SystemAccountSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: >- Updates the specified system account. Returns a 409 if the updated name is the same as another system account in the organization. tags: - System Accounts requestBody: $ref: '#/components/requestBodies/UpdateSystemAccount' servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-entity-operation: SystemAccount#delete summary: Delete System Account operationId: delete-system-accounts-id responses: '204': description: No Content '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' description: >- Deletes the specified system account. Returns 404 if the requested account was not found. tags: - System Accounts servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}/access-tokens: get: summary: List System Account Access Tokens tags: - System Accounts - Access Tokens responses: '200': $ref: '#/components/responses/SystemAccountAccessTokenCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-system-account-id-access-tokens description: >- Returns the access tokens for the specified system account. Returns 400 if any filter parameters are invalid. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter access tokens returned in the response. required: false style: deepObject servers: - url: https://global.api.konghq.com/ parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. post: x-speakeasy-entity-operation: SystemAccountAccessToken#create summary: Create System Account Access Token operationId: post-system-accounts-id-access-tokens responses: '201': $ref: '#/components/responses/SystemAccountAccessTokenCreated' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: >- Creates an access token for the specified system account (SA). The access token can be used for authenticating API and CLI requests. The token will only be displayed once on creation. Returns a 409 if the system account already has a token with the same name. requestBody: $ref: '#/components/requestBodies/CreateSystemAccountAccessToken' tags: - System Accounts - Access Tokens servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}/access-tokens/{tokenId}: get: x-speakeasy-entity-operation: SystemAccountAccessToken#read summary: Fetch System Account Access Token responses: '200': $ref: '#/components/responses/SystemAccountAccessTokenSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-system-accounts-id-access-tokens-id description: >- Returns the system account (SA) access token for the SA Access Token ID specified as a path parameter. parameters: [] tags: - System Accounts - Access Tokens servers: - url: https://global.api.konghq.com/ parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. - schema: type: string name: tokenId in: path required: true description: ID of the system account access token. x-speakeasy-match: id patch: x-speakeasy-entity-operation: SystemAccountAccessToken#update summary: Update System Account Access Token operationId: patch-system-accounts-id-access-tokens-id responses: '200': $ref: '#/components/responses/SystemAccountAccessTokenSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: >- Updates the specified access token. Returns a 409 if the updated name is the same as another token belonging to the specified system user. requestBody: $ref: '#/components/requestBodies/UpdateSystemAccountAccessToken' tags: - System Accounts - Access Tokens servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-entity-operation: SystemAccountAccessToken#delete summary: Delete System Account Access Token operationId: delete-system-accounts-id-access-tokens-id responses: '204': description: No Content '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' description: Deletes the specified token. Returns 404 if the token was not found. tags: - System Accounts - Access Tokens servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}/assigned-roles: parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. get: summary: Fetch Assigned Roles for System Account responses: '200': $ref: '#/components/responses/AssignedRoleCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-system-accounts-accountId-assigned-roles description: >- Lists the roles belonging to a system account. Returns 400 if any filter parameters are invalid. parameters: - schema: type: object properties: role_name: $ref: '#/components/schemas/StringFieldEqualsFilter' entity_type_name: $ref: '#/components/schemas/StringFieldEqualsFilter' in: query name: filter description: Filter roles returned in the response. required: false style: deepObject tags: - System Accounts - Roles servers: - url: https://global.api.konghq.com/ post: x-speakeasy-entity-operation: SystemAccountRole#create summary: Create Assigned Role for System Account operationId: post-system-accounts-accountId-assigned-roles responses: '201': $ref: '#/components/responses/AssignedRoleSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: >- Assigns a role to a system account. Returns 409 if role is already assigned. requestBody: $ref: '#/components/requestBodies/AssignRole' tags: - System Accounts - Roles servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}/assigned-roles/{roleId}: parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. - schema: type: string name: roleId in: path required: true description: ID of the role. x-speakeasy-match: id delete: x-speakeasy-entity-operation: SystemAccountRole#delete summary: Delete Assigned Role from System Account operationId: delete-system-accounts-accountId-assigned-roles-roleId responses: '204': description: No Content '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' description: >- Removes an assigned role from a system account. Returns 404 if the system account or assigned role were not found. tags: - System Accounts - Roles servers: - url: https://global.api.konghq.com/ /v3/system-accounts/{accountId}/teams: parameters: - schema: type: string name: accountId in: path required: true description: ID of the system account. get: summary: List Teams for a System Account responses: '200': $ref: '#/components/responses/TeamCollection' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-system-accounts-accountId-teams description: Returns a paginated list of a teams that the system account belongs to. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter teams returned in the response. required: false style: deepObject tags: - System Accounts - Team Membership servers: - url: https://global.api.konghq.com/ /v3/teams: get: summary: List Teams responses: '200': $ref: '#/components/responses/TeamCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' operationId: list-teams description: >- Returns an array of team objects containing information about the Konnect Teams. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter teams returned in the response. required: false style: deepObject tags: - Teams servers: - url: https://global.api.konghq.com/ parameters: [] post: x-speakeasy-entity-operation: Team#create summary: Create Team operationId: create-team responses: '201': $ref: '#/components/responses/TeamSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '403': $ref: '#/components/responses/IdentityPermissionDenied' tags: - Teams requestBody: $ref: '#/components/requestBodies/CreateTeam' description: 'Creates a team in the Konnect Organization. ' servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}: parameters: - schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: teamId in: path required: true description: The team ID x-speakeasy-match: id get: x-speakeasy-entity-operation: Team#read summary: Fetch Team responses: '200': $ref: '#/components/responses/TeamSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-team description: Returns information about a team from a given team ID. tags: - Teams servers: - url: https://global.api.konghq.com/ patch: x-speakeasy-entity-operation: Team#update summary: Update Team operationId: update-team responses: '200': $ref: '#/components/responses/TeamSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' description: Updates an individual team. requestBody: $ref: '#/components/requestBodies/UpdateTeam' tags: - Teams servers: - url: https://global.api.konghq.com/ delete: x-speakeasy-entity-operation: Team#delete summary: Delete Team operationId: delete-team responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' description: Deletes an individual team. Returns 404 if the team is not found. tags: - Teams servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/assigned-roles: parameters: - schema: type: string format: uuid example: e81bc3e5-e9db-4764-b7dd-e81e39072cbe name: teamId in: path required: true description: The team ID get: summary: List Team Roles tags: - Roles responses: '200': $ref: '#/components/responses/AssignedRoleCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' operationId: list-team-roles description: >- Lists the roles belonging to a team. Returns 400 if any filter parameters are invalid. parameters: - schema: type: object properties: role_name: $ref: '#/components/schemas/StringFieldEqualsFilter' entity_type_name: $ref: '#/components/schemas/StringFieldEqualsFilter' in: query name: filter description: Filter roles returned in the response. required: false style: deepObject servers: - url: https://global.api.konghq.com/ post: x-speakeasy-entity-operation: TeamRole#create summary: Assign Team Role operationId: teams-assign-role responses: '201': $ref: '#/components/responses/AssignedRoleSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: Assigns a role to a team. Returns 409 if role is already assigned. requestBody: $ref: '#/components/requestBodies/AssignRole' tags: - Roles servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/assigned-roles/{roleId}: parameters: - schema: type: string format: uuid example: e81bc3e5-e9db-4764-b7dd-e81e39072cbe name: teamId in: path required: true description: The team ID. - schema: type: string example: 8350205f-a305-4e39-abe9-bc082a80091a format: uuid name: roleId in: path required: true description: The role ID. x-speakeasy-match: id delete: x-speakeasy-entity-operation: TeamRole#delete summary: Remove Team Role operationId: teams-remove-role responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Roles description: >- Removes an assigned role from a team. Returns 404 if the requested team or assigned role were not found. servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/system-accounts: parameters: - schema: type: string name: teamId in: path required: true description: ID of the team. get: summary: List System Accounts on a Team responses: '200': $ref: '#/components/responses/SystemAccountCollection' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-teams-teamId-system-accounts description: >- Returns a paginated list of system accounts that belong to the team specified in the path parameter. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter system accounts returned in the response. required: false style: deepObject tags: - System Accounts - Team Membership servers: - url: https://global.api.konghq.com/ post: x-speakeasy-entity-operation: SystemAccountTeam#create summary: Add System Account to a Team operationId: post-teams-teamId-system-accounts responses: '201': description: Created '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: >- Adds a system account to a team. Returns a 409 if the system account is already a member of the team. requestBody: $ref: '#/components/requestBodies/AddSystemAccountToTeam' tags: - System Accounts - Team Membership servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/system-accounts/{accountId}: parameters: - schema: type: string name: teamId in: path required: true description: ID of the team. - schema: type: string name: accountId in: path required: true description: ID of the system account. delete: x-speakeasy-entity-operation: SystemAccountTeam#delete summary: Remove System Account From Team operationId: delete-teams-teamId-system-accounts-accountId responses: '204': description: No Content '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/IdentityNotFound' description: >- Removes a system account from a team. Returns 404 if the team or system account were not found. tags: - System Accounts - Team Membership servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/users: parameters: - schema: type: string example: d32d905a-ed33-46a3-a093-d8f536af9a8a format: uuid name: teamId in: path required: true description: ID of the team. get: summary: List Team Users responses: '200': $ref: '#/components/responses/UserCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' operationId: list-team-users description: >- Returns a paginated list of users that belong to the team specified in the path parameter. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: id: $ref: '#/components/schemas/StringFieldEqualsFilter' email: $ref: '#/components/schemas/StringFieldFilter' full_name: $ref: '#/components/schemas/StringFieldFilter' active: $ref: '#/components/schemas/BooleanFieldFilter' in: query name: filter description: Filter users returned in the response. required: false style: deepObject tags: - Team Membership servers: - url: https://global.api.konghq.com/ post: x-speakeasy-entity-operation: TeamUser#create summary: Add User operationId: add-user-to-team responses: '201': description: Created '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: Adds a user to a team. requestBody: $ref: '#/components/requestBodies/AddUserToTeam' tags: - Team Membership servers: - url: https://global.api.konghq.com/ /v3/teams/{teamId}/users/{userId}: parameters: - schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: userId in: path required: true description: User ID - schema: type: string example: d32d905a-ed33-46a3-a093-d8f536af9a8a format: uuid name: teamId in: path required: true description: Team ID. delete: x-speakeasy-entity-operation: TeamUser#delete summary: Remove User operationId: remove-user-from-team responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' description: >- Removes a user from a team. If the user was removed, returns a 204 empty response. Returns 404 if the user or team were not found. tags: - Team Membership servers: - url: https://global.api.konghq.com/ /v3/users: get: summary: List Users tags: - Users responses: '200': $ref: '#/components/responses/UserCollection' '400': $ref: '#/components/responses/IdentityBadRequest' operationId: list-users description: Returns a paginated list of user objects. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: id: $ref: '#/components/schemas/StringFieldEqualsFilter' email: $ref: '#/components/schemas/StringFieldFilter' full_name: $ref: '#/components/schemas/StringFieldFilter' active: $ref: '#/components/schemas/BooleanFieldFilter' in: query name: filter description: Filter users returned in the response. required: false style: deepObject servers: - url: https://global.api.konghq.com/ /v3/users/{userId}: parameters: - schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: userId in: path required: true description: The ID of the user being deleted. get: summary: Fetch User tags: - Users responses: '200': $ref: '#/components/responses/UserSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' operationId: get-user description: Returns the user object for the user ID specified as a path parameter. servers: - url: https://global.api.konghq.com/ patch: summary: Update User operationId: update-user responses: '200': $ref: '#/components/responses/UserSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' description: Update an individual user. requestBody: $ref: '#/components/requestBodies/UpdateUser' tags: - Users servers: - url: https://global.api.konghq.com/ delete: summary: Delete User operationId: delete-user responses: '204': description: No Content '404': $ref: '#/components/responses/IdentityNotFound' description: >- Deletes an individual user. Returns 404 if the requested user was not found. tags: - Users servers: - url: https://global.api.konghq.com/ /v3/users/{userId}/assigned-roles: parameters: - schema: type: string format: uuid example: e81bc3e5-e9db-4764-b7dd-e81e39072cbe name: userId in: path required: true description: The user ID get: summary: List User Roles tags: - Roles responses: '200': $ref: '#/components/responses/AssignedRoleCollection' '400': $ref: '#/components/responses/IdentityBadRequest' '404': $ref: '#/components/responses/IdentityNotFound' operationId: list-user-roles description: >- Lists the roles assigned to a user. Returns 400 if any filter parameters are invalid. parameters: - schema: type: object properties: role_name: $ref: '#/components/schemas/StringFieldEqualsFilter' entity_type_name: $ref: '#/components/schemas/StringFieldEqualsFilter' in: query name: filter description: Filter roles returned in the response. required: false style: deepObject servers: - url: https://global.api.konghq.com/ post: summary: Assign Role operationId: users-assign-role responses: '201': $ref: '#/components/responses/AssignedRoleSingle' '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '403': $ref: '#/components/responses/IdentityPermissionDenied' '404': $ref: '#/components/responses/IdentityNotFound' '409': $ref: '#/components/responses/IdentityConflict' description: Assigns a role to a user. Returns 409 if role is already assigned. requestBody: $ref: '#/components/requestBodies/AssignRole' tags: - Roles servers: - url: https://global.api.konghq.com/ /v3/users/{userId}/assigned-roles/{roleId}: parameters: - schema: type: string format: uuid example: e81bc3e5-e9db-4764-b7dd-e81e39072cbe name: userId in: path required: true description: ID of the user. - schema: type: string example: 8350205f-a305-4e39-abe9-bc082a80091a format: uuid name: roleId in: path required: true description: ID of the role. delete: summary: Remove Role operationId: users-remove-role responses: '204': description: No Content '400': $ref: '#/components/responses/IdentityBadRequest' '401': $ref: '#/components/responses/IdentityUnauthenticated' '404': $ref: '#/components/responses/IdentityNotFound' tags: - Roles description: >- Removes an assigned role from a user. Returns 404 if the requested user or assigned role were not found. servers: - url: https://global.api.konghq.com/ /v3/users/{userId}/teams: parameters: - schema: type: string example: d32d905a-ed33-46a3-a093-d8f536af9a8a format: uuid name: userId in: path required: true description: The user ID. get: summary: List User Teams responses: '200': $ref: '#/components/responses/TeamCollection' '404': $ref: '#/components/responses/IdentityNotFound' operationId: list-user-teams description: Returns a paginated list of a teams that the user belongs to. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - schema: type: object properties: name: $ref: '#/components/schemas/StringFieldFilter' in: query name: filter description: Filter teams returned in the response. required: false style: deepObject tags: - Team Membership servers: - url: https://global.api.konghq.com/ /v3/users/me: get: summary: Retrieve My User Account tags: - Me responses: '200': $ref: '#/components/responses/UserSingle' '401': $ref: '#/components/responses/IdentityUnauthenticated' operationId: get-users-me security: - personalAccessToken: [] - konnectAccessToken: [] description: >- Returns the user account for the user identified in the token of the request. servers: - url: https://global.api.konghq.com/ components: parameters: ControlPlaneFilter: name: filter description: Filters a collection of control-planes. required: false in: query schema: $ref: '#/components/schemas/ControlPlaneFilterParameters' style: deepObject FilterByLabels: name: labels description: Filter control planes in the response by associated labels. in: query required: false schema: type: string example: key:value,existCheck ControlPlaneSort: name: sort description: | Sorts a collection of control-planes. Supported sort attributes are: - created_at required: false in: query schema: $ref: '#/components/schemas/SortQuery' PageSize: name: page[size] description: >- The maximum number of items to include per page. The last page of a collection may include fewer items. required: false in: query allowEmptyValue: true schema: type: integer example: 10 PageNumber: name: page[number] description: Determines which page of the entities to retrieve. required: false in: query allowEmptyValue: true schema: type: integer example: 1 PageAfter: name: page[after] description: >- Request the next page of data, starting with the item after this parameter. required: false in: query allowEmptyValue: true schema: type: string example: ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ NetworksFilter: name: filter description: Filters supported for networks. required: false in: query schema: $ref: '#/components/schemas/NetworksFilterParameters' style: deepObject ProviderAccountsFilter: name: filter description: Filters supported for provider accounts. required: false in: query schema: $ref: '#/components/schemas/ProviderAccountsFilterParameters' style: deepObject ConfigurationsFilter: name: filter description: Filters supported for configurations. required: false in: query schema: $ref: '#/components/schemas/ConfigurationsFilterParameters' style: deepObject TransitGatewaysFilter: name: filter description: Filters supported for transit gateways. required: false in: query schema: $ref: '#/components/schemas/TransitGatewaysFilterParameters' style: deepObject CustomDomainsFilter: name: filter description: Filters supported for custom domains on the global API. required: false in: query schema: $ref: '#/components/schemas/CustomDomainsFilterParameters' style: deepObject ConfigurationId: name: configurationId in: path description: The ID of the configuration to operate on. required: true schema: $ref: '#/components/schemas/ConfigurationId' x-speakeasy-match: id CustomDomainId: name: customDomainId description: ID of the custom domain to operate on. required: true in: path schema: $ref: '#/components/schemas/CustomDomainId' x-speakeasy-match: id NetworkId: name: networkId in: path description: The network to operate on. required: true schema: $ref: '#/components/schemas/NetworkId' x-speakeasy-match: id TransitGatewayId: name: transitGatewayId in: path description: The ID of the transit gateway to operate on. required: true schema: $ref: '#/components/schemas/TransitGatewayId' x-speakeasy-match: id ResourceQuotaId: name: resourceQuotaId in: path description: The ID of the resource quota to operate on. required: true schema: $ref: '#/components/schemas/ResourceQuotaId' ResourceConfigurationId: name: resourceConfigurationId in: path description: The ID of the resource configuration to operate on. required: true schema: $ref: '#/components/schemas/ResourceConfigurationId' ProviderAccountId: name: providerAccountId in: path description: The ID of the provider account to operate on. required: true schema: $ref: '#/components/schemas/ProviderAccountId' notificationId: name: notificationId in: path required: true description: ID of the notification. schema: type: string eventId: name: eventId in: path required: true description: Formatted string ID of the notification event. schema: type: string example: invoice-ready subscriptionId: name: subscriptionId in: path required: true description: Subscription ID of the user configuration. schema: type: string NotificationFilter: name: filter description: Filters a collection of notifications. required: false in: query schema: $ref: '#/components/schemas/NotificationFilterParameters' style: deepObject ConfigurationFilter: name: filter description: Filters a collection of configurations. required: false in: query schema: $ref: '#/components/schemas/ConfigurationFilterParameters' style: deepObject PageBefore: name: page[before] description: >- Request the next page of data, starting with the item before this parameter. required: false in: query allowEmptyValue: true schema: type: string example: ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ DcrProviderId: name: dcrProviderId description: DCR provider identifier in: path required: true schema: $ref: '#/components/schemas/UUID' AuthStrategyId: name: authStrategyId description: Application auth strategy identifier in: path required: true schema: $ref: '#/components/schemas/UUID' x-speakeasy-match: id SortDcrProviders: name: sort description: | Sorts a collection of DCR Providers. Supported sort attributes are: - created_at - updated_at - provider_type - issuer - name in: query required: false schema: type: string SortAppAuthStrategies: name: sort description: > Sorts a collection of application auth strategies. Supported sort attributes are: - created_at - updated_at - strategy_type - name - display_name - dcr_provider_id - dcr_provider_name - dcr_provider_type in: query required: false schema: type: string FilterDcrProvidersById: name: filter[id][eq] description: filters DCR Providers by their id in: query required: false schema: type: string FilterDcrProvidersByIdShort: name: filter[id] description: filters DCR Providers by their id (alias for filter[id][eq]) in: query required: false schema: type: string FilterDcrProvidersByIdContains: name: filter[id][contains] description: filters DCR Providers by their id with a supplied substring in: query required: false schema: type: string FilterDcrProvidersByIssuer: name: filter[issuer][eq] description: filters DCR Providers by their issuer in: query required: false schema: type: string FilterDcrProvidersByIssuerShort: name: filter[issuer] description: filters DCR Providers by their issuer (alias for filter[issuer][eq]) in: query required: false schema: type: string FilterDcrProvidersByIssuerContains: name: filter[issuer][contains] description: filters DCR Providers by their issuer with a supplied substring in: query required: false schema: type: string FilterDcrProvidersByName: name: filter[name][eq] description: filters DCR Providers by their name in: query required: false schema: type: string FilterDcrProvidersByNameShort: name: filter[name] description: filters DCR Providers by their name (alias for filter[name][eq]) in: query required: false schema: type: string FilterDcrProvidersByNameContains: name: filter[name][contains] description: filters DCR Providers by their name with a supplied substring in: query required: false schema: type: string FilterDcrProvidersByProviderType: name: filter[provider_type][eq] description: filters DCR Providers by their provider type in: query required: false schema: type: string FilterDcrProvidersByProviderTypeShort: name: filter[provider_type] description: >- filters DCR Providers by their provider type (alias for filter[provider_type][eq]) in: query required: false schema: type: string FilterDcrProvidersByInitialClientId: name: filter[initial_client_id][eq] description: filters DCR Providers by their initial client id in: query required: false schema: type: string FilterDcrProvidersByInitialClientIdShort: name: filter[initial_client_id] description: >- filters DCR Providers by their initial client id (alias for filter[initial_client_id][eq]) in: query required: false schema: type: string FilterDcrProvidersByInitialClientIdContains: name: filter[initial_client_id][contains] description: >- filters DCR Providers by their initial client id with a supplied substring in: query required: false schema: type: string FilterDcrProvidersByInitialClientAudience: name: filter[initial_client_audience][eq] description: filters DCR Providers by their initial client audience in: query required: false schema: type: string FilterDcrProvidersByInitialClientAudienceShort: name: filter[initial_client_audience] description: >- filters DCR Providers by their initial client audience (alias for filter[initial_client_audience][eq]) in: query required: false schema: type: string FilterDcrProvidersByInitialClientAudienceContains: name: filter[initial_client_audience][contains] description: >- filters DCR Providers by their initial client audience with a supplied substring in: query required: false schema: type: string pagination-size: description: Number of resources to be returned. in: query name: size schema: default: 100 maximum: 1000 minimum: 1 type: integer pagination-tags-filter: description: >- A list of tags to filter the list of resources on. Multiple tags can be concatenated using ',' to mean AND or using '/' to mean OR. example: tag1,tag2 in: query name: tags schema: type: string controlPlaneId: x-speakeasy-param-force-new: true name: controlPlaneId in: path required: true schema: type: string format: uuid example: 9524ec7d-36d9-465d-a8c5-83a3c9390458 description: >- The UUID of your control plane. This variable is available in the Konnect manager. DataPlaneCertificateId: name: certificateId in: path schema: type: string required: true x-speakeasy-match: id configStoreId: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: configStoreId in: path required: true description: Config Store identifier x-speakeasy-match: id nodeId: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: nodeId in: path required: true description: Node identifier ACLId: description: ID of the ACL to lookup example: f28acbfa-c866-4587-b688-0208ac24df21 in: path name: ACLId required: true schema: type: string BasicAuthId: description: ID of the Basic-auth credential to lookup example: 80db1b58-ca7c-4d21-b92a-64eb07725872 in: path name: BasicAuthId required: true schema: type: string CACertificateId: description: ID of the CA Certificate to lookup example: 3c31f18a-f27a-4f9b-8cd4-bf841554612f in: path name: CACertificateId required: true schema: type: string CertificateId: description: ID of the Certificate to lookup example: ddf3cdaa-3329-4961-822a-ce6dbd38eff7 in: path name: CertificateId required: true schema: type: string ConsumerGroupId: description: ID of the Consumer Group to lookup example: '' in: path name: ConsumerGroupId required: true schema: type: string ConsumerGroupIdManageConsumers: in: path name: ConsumerGroupId required: true schema: type: string x-speakeasy-name-override: consumer_group_id ConsumerId: description: ID of the Consumer to lookup example: c1059869-6fa7-4329-a5f5-5946d14ca2c5 in: path name: ConsumerId required: true schema: type: string ConsumerIdForNestedEntities: description: Consumer ID for nested entities example: f28acbfa-c866-4587-b688-0208ac24df21 in: path name: ConsumerIdForNestedEntities required: true schema: type: string CustomPluginId: description: ID of the CustomPlugin to lookup example: '' in: path name: CustomPluginId required: true schema: type: string Degraphql_routeId: description: ID of the Degraphql_route to lookup example: '' in: path name: Degraphql_routeId required: true schema: type: string HMACAuthId: description: ID of the HMAC-auth credential to lookup example: 70e7b00b-72f2-471b-a5ce-9c4171775360 in: path name: HMACAuthId required: true schema: type: string JWTId: description: ID of the JWT to lookup example: 4a7f5faa-8c96-46d6-8214-c87573ef2ac4 in: path name: JWTId required: true schema: type: string KeyAuthId: description: ID of the API-key to lookup example: '' in: path name: KeyAuthId required: true schema: type: string KeyId: description: ID of the Key to lookup example: bba22c06-a632-42be-a018-1b9ff357b5b9 in: path name: KeyId required: true schema: type: string KeySetId: description: ID of the KeySet to lookup example: 6cc34248-50b4-4a81-9201-3bdf7a83f712 in: path name: KeySetId required: true schema: type: string MTLSAuthId: description: ID of the MTLS-auth credential to lookup example: '' in: path name: MTLSAuthId required: true schema: type: string PaginationOffset: allowEmptyValue: true description: >- Offset from which to return the next set of resources. Use the value of the 'offset' field from the response of a list operation as input here to paginate through all the resources in: query name: offset schema: type: string PaginationSize: description: Number of resources to be returned. in: query name: size schema: type: integer default: 100 maximum: 1000 minimum: 1 PaginationTagsFilter: allowEmptyValue: true description: >- A list of tags to filter the list of resources on. Multiple tags can be concatenated using ',' to mean AND or using '/' to mean OR. example: tag1,tag2 in: query name: tags schema: type: string PartialId: description: ID of the Partial to lookup example: '' in: path name: PartialId required: true schema: type: string PluginId: description: ID of the Plugin to lookup example: 3473c251-5b6c-4f45-b1ff-7ede735a366d in: path name: PluginId required: true schema: type: string RouteId: description: ID of the Route to lookup example: a4326a41-aa12-44e3-93e4-6b6e58bfb9d7 in: path name: RouteId required: true schema: type: string SNIId: description: ID of the SNI to lookup example: 64c17a1a-b7d7-4a65-a5a4-42e4a7016e7f in: path name: SNIId required: true schema: type: string ServiceId: description: ID of the Service to lookup example: 7fca84d6-7d37-4a74-a7b0-93e576089a41 in: path name: ServiceId required: true schema: type: string TargetId: description: ID of the Target to lookup example: 5a078780-5d4c-4aae-984a-bdc6f52113d8 in: path name: TargetId required: true schema: type: string UpstreamId: description: ID of the Upstream to lookup example: 426d620c-7058-4ae6-aacc-f85a3204a2c5 in: path name: UpstreamId required: true schema: type: string UpstreamIdForTarget: description: ID or target of the Target to lookup example: 5a078780-5d4c-4aae-984a-bdc6f52113d8 in: path name: UpstreamIdForTarget required: true schema: type: string VaultId: description: ID of the Vault to lookup example: 9d4d6d19-77c6-428e-a965-9bc9647633e9 in: path name: VaultId required: true schema: type: string responses: RetrieveControlPlaneResponse: description: A response to retrieving a single control plane. content: application/json: schema: $ref: '#/components/schemas/ControlPlane' CreateControlPlaneResponse: description: A response to creating a control plane. content: application/json: schema: $ref: '#/components/schemas/ControlPlane' UpdateControlPlaneResponse: description: A response to updating a control plane. content: application/json: schema: $ref: '#/components/schemas/ControlPlane' ListControlPlanesResponse: description: A paginated list response for a collection of control planes. content: application/json: schema: title: ListControlPlanesResponse type: object additionalProperties: false properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/ControlPlane' required: - meta - data ControlPlanesBadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' ControlPlanePermissionDenied: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' ControlPlaneUnauthenticated: description: Unauthenticated content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' ControlPlaneNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' ControlPlaneConflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' InternalServerError: description: Internal Server Error content: application/problem+json: schema: title: InternalServerError type: object description: The error response object. properties: status: type: integer format: int32 x-go-type: int32 description: The HTTP status code. example: 500 enum: - 500 title: type: string description: The error response code. example: Internal Server Error instance: type: string example: konnect:trace:2287285207635123011 description: The Konnect traceback code detail: type: string example: >- Could not propagate control plane changes to control plane cluster service. description: Details about the error. required: - status - title - instance ServiceUnavailable: description: Service Unavailable content: application/problem+json: schema: title: ServiceUnavailableError type: object description: Error response for temporary service unavailability. properties: status: type: integer format: int32 x-go-type: int32 description: The HTTP status code. example: 503 enum: - 503 title: type: string description: The error response code. example: Service Unavailable instance: type: string example: konnect:trace:2287285207635123011 description: The Konnect traceback code detail: type: string example: >- Could not retrieve permissions to check resource accessibility. description: Details about the error. required: - status - title - instance ListGroupMemberships: description: >- A paginated list response for a collection of control plane group memberships. content: application/json: schema: type: object required: - meta - data properties: meta: $ref: '#/components/schemas/CursorPaginatedMetaWithSizeAndTotal' data: type: array description: >- Array of control planes summary who are a child to this control plane group. items: $ref: '#/components/schemas/ControlPlane' GetGroupStatus: description: Status of a control plane group, including existing conflicts. content: application/json: schema: type: object properties: item: $ref: '#/components/schemas/GroupStatus' GetGroupMemberStatus: description: Determines the group membership status of a control plane. content: application/json: schema: $ref: '#/components/schemas/GroupMemberStatus' Internal: description: Internal content: application/problem+json: schema: $ref: '#/components/schemas/BaseError' BadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' Unauthorized: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' type: object title: Unauthorized Response description: The error response object. properties: status: type: integer example: 403 description: The HTTP status code. title: type: string description: The Error Response. example: Unauthorized instance: type: string description: The Konnect traceback code. example: konnect:trace:952172606039454040 detail: type: string description: Details about the error response. example: You do not have permission to perform this action Forbidden: description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' NotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' GetImpersonationSettingsResponse: description: Response for Get Impersonation Settings endpoint content: application/json: schema: type: object title: Get Impersonation Settings Response properties: enabled: type: boolean example: true description: The organization has user impersonation enabled. UpdateImpersonationSettingsResponse: description: Response for Update Impersonation Settings endpoint content: application/json: schema: type: object title: Update Impersonation Settings Response properties: enabled: type: boolean example: true description: The organization has user impersonation enabled. UserSingle: description: A get action response of a single user. content: application/json: schema: $ref: '#/components/schemas/User' UserCollection: description: A paginated list response for a collection of users. content: application/json: schema: type: object title: User Collection Response properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/User' TeamSingle: description: A response including a single team. content: application/json: schema: $ref: '#/components/schemas/Team' TeamCollection: description: A paginated list response for a collection of users. content: application/json: schema: type: object title: Team Collection Response properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/Team' TeamMappingCollection: description: A paginated list response for a collection of team mappings. content: application/json: schema: type: object title: Team Mapping Collection Response properties: data: type: array items: $ref: '#/components/schemas/TeamMapping' TeamGroupMappingCollection: description: A paginated collection of mappings grouped by team_id. content: application/json: schema: type: object title: Team Group Mapping Collection Response properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/TeamGroupMapping' AssignedRoleSingle: description: A get action response of a single assigned role. content: application/json: schema: $ref: '#/components/schemas/AssignedRole' AssignedRoleCollection: description: A paginated list response for a collection of assigned roles. content: application/json: schema: type: object title: Assigned Role Collection Response properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array description: An Array items: $ref: '#/components/schemas/AssignedRole' AuthenticationSettings: description: Response for authentication settings endpoint content: application/json: schema: type: object title: Authentication Settings Response properties: basic_auth_enabled: type: boolean example: true description: The organization has basic auth enabled. oidc_auth_enabled: type: boolean example: false description: The organization has OIDC disabled. saml_auth_enabled: type: boolean example: false description: The organization has SAML disabled. idp_mapping_enabled: type: boolean example: true description: IdP groups determine the Konnect teams a user has. konnect_mapping_enabled: type: boolean example: false description: A Konnect Identity Admin assigns teams to a user. IdentityBadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' IdentityConflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' CreateIdentityProviderPermissionDenied: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' IdentityPermissionDenied: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' PreconditionFailed: description: Precondition Failed content: application/problem+json: schema: type: object title: Precondition Failed Response description: The error response object. properties: status: type: integer description: The HTTP status code. example: 412 title: type: string description: The error response code. example: Precondition Failed instance: type: string description: The Konnect traceback code. example: konnect:trace:1896611024257578096 detail: type: string description: Details about the error response. example: IdP configuration not found RateLimited: description: Rate Limited content: application/problem+json: schema: type: object title: Rate Limited Response description: The error object properties: status: type: integer description: The HTTP response code example: 429 title: type: string example: Rate Limited description: The Error response instance: type: string description: The Konnect traceback ID. example: konnect:trace:3674017986744198214 detail: type: string description: Detailed explanation of the error response. example: Too many requests IdentityUnauthenticated: description: Unauthenticated content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' IdentityNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' TeamMappingResponse: description: A paginated list response for a collection of team mappings. content: application/json: schema: type: object title: Team Mapping Response properties: meta: type: object description: Contains pagination data. properties: page: type: object description: The page object. properties: number: type: integer description: Page number. example: 1 size: type: integer description: Page size. example: 9 total: type: integer description: Total number of results. example: 5 data: type: array items: type: object properties: group: type: string description: Group names. example: 111(@&*$)(@*#_@(gfds re gdsf dfg team_ids: type: array description: Team ID's that belong to the specified group. items: type: string example: 3df49db8-39ff-490d-9fe1-251a3361fb13 Roles: description: The predefined, or system managed, roles. content: application/json: schema: type: object title: Roles Response properties: control_planes: type: object additionalProperties: false required: - name - roles properties: name: type: string enum: - Control Planes roles: type: object properties: admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Admin description: type: string example: >- This role grants full write access to all entities within a control plane. enum: - >- This role grants full write access to all entities within a control plane. certificate_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Certificate Admin description: type: string example: >- This role grants full write access to administer certificates. enum: - >- This role grants full write access to administer certificates. consumer_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Consumer Admin description: type: string example: >- This role grants full write access to administer consumers. enum: - >- This role grants full write access to administer consumers. creator: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Creator description: type: string example: >- Creates a new Control Plane in an organization. The creator becomes the owner of the Control Plane they create. enum: - >- Creates a new Control Plane in an organization. The creator becomes the owner of the Control Plane they create. deployer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Deployer description: type: string example: >- This role grants full write access to administer services, routes and plugins necessary to deploy services in Service Hub. enum: - >- This role grants full write access to administer services, routes and plugins necessary to deploy services in Service Hub. gateway_service_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Gateway Service Admin description: type: string example: >- This role grants full write access to administer gateway services. enum: - >- This role grants full write access to administer gateway services. plugin_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Plugin Admin description: type: string example: >- This role grants full write access to administer plugins. enum: - >- This role grants full write access to administer plugins. route_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Route Admin description: type: string example: >- This role grants full write access to administer routes. enum: - >- This role grants full write access to administer routes. sni_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - SNI Admin description: type: string example: >- This role grants full write access to administer SNIs. enum: - >- This role grants full write access to administer SNIs. upstream_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Upstream Admin description: type: string example: >- This role grants full write access to administer upstreams. enum: - >- This role grants full write access to administer upstreams. viewer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Viewer description: type: string example: >- This role grants read only access to all entities within a control plane. enum: - >- This role grants read only access to all entities within a control plane. api_products: type: object additionalProperties: false required: - name - roles properties: name: type: string enum: - API Products roles: type: object properties: admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Admin description: type: string example: >- This role grants full write access to an API product and its versions. enum: - >- This role grants full write access to an API product and its versions. application_registration: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Application Registration description: type: string example: >- This role grants permission to enable and disable application registration on an API product. enum: - >- This role grants permission to enable and disable application registration on an API product. creator: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Creator description: type: string example: >- This access is required to create API products. This access is not for creating sub-entities such as versions, API specs, etc. enum: - >- This access is required to create API products. This access is not for creating sub-entities such as versions, API specs, etc. deployer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Deployer description: type: string example: >- This role grants permission to deploy and remove an API product from a control plane. enum: - >- This role grants permission to deploy and remove an API product from a control plane. maintainer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Maintainer description: type: string example: >- This role grants all write permission to manage an API product and to administer plugins. enum: - >- This role grants all write permission to manage an API product and to administer plugins. plugins_admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Plugins Admin description: type: string example: >- This role grants full write permission to administer plugins. enum: - >- This role grants full write permission to administer plugins. publisher: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Publisher description: type: string example: >- This role grants permission to publish an API product to one or more portals. enum: - >- This role grants permission to publish an API product to one or more portals. viewer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Viewer description: type: string example: >- Viewer has read-only access to an API product and its sub-entities. enum: - >- Viewer has read-only access to an API product and its sub-entities. audit_logs: type: object additionalProperties: false required: - name - roles properties: name: type: string enum: - Audit Logs roles: type: object properties: admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Admin description: type: string example: >- This role grants full write access to the Audit log configuration. enum: - >- This role grants full write access to the Audit log configuration. identity: type: object additionalProperties: false required: - name - roles properties: name: type: string enum: - Identity roles: type: object properties: admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Admin description: type: string example: >- This role grants full write access to the Identity configuration. enum: - >- This role grants full write access to the Identity configuration. mesh_control_planes: type: object additionalProperties: false required: - name - roles properties: name: type: string enum: - Mesh Control Plane roles: type: object properties: admin: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Admin description: type: string example: >- This role grants full write access to the related to Mesh control planes. enum: - >- This role grants full write access to the related to Mesh control planes. connector: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Connector description: type: string example: >- This role grants a mesh zone to connect to the mesh control plane in Konnect. enum: - >- This role grants a mesh zone to connect to the mesh control plane in Konnect. creator: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Creator description: type: string example: >- This role grants access to create new Mesh control planes. enum: - >- This role grants access to create new Mesh control planes. viewer: type: object additionalProperties: false required: - name - description properties: name: type: string enum: - Viewer description: type: string example: >- This role grants access to read-only permissions to Mesh control planes. enum: - >- This role grants access to read-only permissions to Mesh control planes. SystemAccountCollection: description: A paginated list response for a collection of system accounts. content: application/json: schema: type: object title: System Account Collection Response properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/SystemAccount' SystemAccountSingle: description: A response including a single system account. content: application/json: schema: $ref: '#/components/schemas/SystemAccount' SystemAccountAccessTokenSingle: description: A response including a single system account access token. content: application/json: schema: $ref: '#/components/schemas/SystemAccountAccessToken' SystemAccountAccessTokenCollection: description: >- A paginated list response for a collection of system accounts access tokens. content: application/json: schema: type: object title: System Account Access Token Collection Reponse properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/SystemAccountAccessToken' SystemAccountAccessTokenCreated: description: >- A response including a single system account access token with the token. content: application/json: schema: x-speakeasy-entity: SystemAccountAccessToken type: object title: System Account Access Token Created Response example: id: 497f6eca-6276-4993-bfeb-53cbbbba6f08 name: Sample Access Token created_at: '2022-08-01T14:16:09Z' updated_at: '2022-08-02T08:35:49Z' expires_at: '2022-12-31T12:52:23Z' last_used_at: '2022-10-24T13:05:42Z' properties: id: type: string description: ID of the system account access token. format: uuid readOnly: true name: type: string description: Name of the system account access token. created_at: type: string description: Timestamp of when the system account access token was created. format: date-time readOnly: true updated_at: type: string description: >- Timestamp of when the system account access token was last updated. format: date-time readOnly: true expires_at: type: string description: Timestamp of when the system account access token will expire. format: date-time readOnly: true last_used_at: type: string description: >- Timestamp of when the system account access token was last used. format: date-time readOnly: true token: type: string description: The token of the system account access token. readOnly: true MeOrganization: description: Me Organization content: application/json: schema: type: object title: Me Organization Response example: id: d99c041a-c7cf-46a2-bf3a-44bb5f75400e name: string owner_id: 1c9c3848-5897-4f2c-beed-df6f3e3adb37 created_at: '2023-01-23T17:22:52.150Z' updated_at: '2023-01-23T17:22:52.150Z' state: active retention_period_days: 90 properties: id: type: string description: UUID of the organization. format: uuid readOnly: true name: type: string description: Name of the organization. owner_id: type: string description: Owner ID of the organization. login_path: type: string description: >- Path to organization-specific login when single sign on (SSO) is enabled. Blank otherwise. created_at: type: string description: Date the organization was created. format: date-time readOnly: true updated_at: type: string description: Date the organization was last updated. format: date-time readOnly: true state: type: string description: State of the organization enum: - active - inactive - deleting - deleted retention_period_days: type: integer description: >- The number of days an organization spends inactive before being deleted. IdentityProvider: description: > An identity provider configuration. This response represents the configuration of a specific identity provider, which can be either OIDC or SAML. content: application/json: schema: $ref: '#/components/schemas/IdentityProvider' IdentityProviders: description: > A collection of identity providers. This response contains a collection of identity providers, which may include both OIDC and SAML identity providers. content: application/json: schema: type: array title: Identity Provider Collection Response items: $ref: '#/components/schemas/IdentityProvider' IdPConfiguration: description: A get action response of the IdP configuration. content: application/json: schema: $ref: '#/components/schemas/IdP' RetrieveCloudGatewaysAvailabilityDocumentResponse: description: >- Response format for retrieving the cloud gateways availability JSON document. content: application/json: schema: $ref: '#/components/schemas/AvailabilityDocument' ListNetworkConfigurationReferencesResponse: description: >- A paginated list for a collection of configurations that reference a network. content: application/json: schema: title: ListNetworkConfigurationReferencesResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/NetworkConfigurationReference' required: - meta - data ListConfigurationsResponse: description: A paginated list for a collection of configurations. content: application/json: schema: title: ListConfigurationsResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/ConfigurationManifest' required: - meta - data RetrieveConfigurationResponse: description: Response format for retrieving a configuration by ID. content: application/json: schema: $ref: '#/components/schemas/ConfigurationManifest' CreateConfigurationResponse: description: Response format for creating a configuration. content: application/json: schema: $ref: '#/components/schemas/ConfigurationManifest' ListNetworksResponse: description: A paginated list for a collection of networks. content: application/json: schema: title: ListNetworksResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/Network' required: - meta - data RetrieveNetworkResponse: description: Response format for retrieving a network. content: application/json: schema: $ref: '#/components/schemas/Network' CreateNetworkResponse: description: Response format for creating a network. content: application/json: schema: $ref: '#/components/schemas/Network' PatchNetworkResponse: description: Response format for patching a network. content: application/json: schema: $ref: '#/components/schemas/Network' CreateTransitGatewayResponse: description: Response format for creating a transit gateway. content: application/json: schema: $ref: '#/components/schemas/TransitGatewayResponse' ListTransitGatewaysResponse: description: A paginated list for a collection of transit gateways for a network. content: application/json: schema: title: ListTransitGatewaysResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/TransitGatewayResponse' required: - meta - data RetrieveTransitGatewayResponse: description: Response format for retrieving a transit gateway. content: application/json: schema: $ref: '#/components/schemas/TransitGatewayResponse' ListProviderAccountsResponse: description: A paginated list for a collection of provider accounts. content: application/json: schema: x-speakeasy-entity: CloudGatewayProviderAccountList title: ListCloudGatewayProviderAccountsResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/ProviderAccount' required: - meta - data RetrieveProviderAccountResponse: description: Response format for retrieving a provider account. content: application/json: schema: $ref: '#/components/schemas/ProviderAccount' CreateCustomDomainResponse: description: >- Response format for creating a custom domain for a control-plane in the global API. content: application/json: schema: $ref: '#/components/schemas/CustomDomain' RetrieveCustomDomainResponse: description: Response format for retrieving a custom domain for a control-plane. content: application/json: schema: $ref: '#/components/schemas/CustomDomain' ListCustomDomainsResponse: description: A paginated list for a collection of custom domains. content: application/json: schema: title: ListGlobalCustomDomainsResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/CustomDomain' required: - meta - data RetrieveCustomDomainOnlineStatusResponse: description: >- Response format for retrieving the CNAME and SSL status of a custom domain. content: application/json: schema: $ref: '#/components/schemas/CustomDomainOnlineStatus' RetrieveResourceQuotaResponse: description: Response format for retrieving a resource quota for an organization. content: application/json: schema: $ref: '#/components/schemas/ResourceQuota' ListResourceQuotasResponse: description: A paginated list for a collection of resource quotas. content: application/json: schema: title: ListResourceQuotasResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/ResourceQuota' required: - meta - data ListDefaultResourceQuotasResponse: description: A paginated list for a collection of default resource quotas. content: application/json: schema: title: ListDefaultResourceQuotasResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/DefaultResourceQuota' required: - meta - data CloudGatewaysBadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' CloudGatewaysForbidden: description: Forbidden content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' CloudGatewaysConflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' ListDefaultResourceConfigurationsResponse: description: A paginated list for a collection of default resource configurations. content: application/json: schema: title: ListDefaultResourceConfigurationsResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/DefaultResourceConfiguration' required: - meta - data ListResourceConfigurationsResponse: description: A paginated list for a collection of resource configurations. content: application/json: schema: title: ListResourceConfigurationsResponse type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/ResourceConfiguration' required: - meta - data RetrieveResourceConfigurationResponse: description: >- Response format for retrieving a resource configuration for an organization. content: application/json: schema: $ref: '#/components/schemas/ResourceConfiguration' Conflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' NotificationResponse: description: View a single notification. content: application/json: schema: $ref: '#/components/schemas/Notification' NotificationListResponse: description: A paginated list response for a collection of notifications content: application/json: schema: type: object additionalProperties: false required: - data - meta properties: data: type: array items: $ref: '#/components/schemas/Notification' meta: $ref: '#/components/schemas/CursorMetaPage' UserConfigurationListResponse: description: >- A paginated list response for all notification events and user subscriptions. content: application/json: schema: type: object additionalProperties: false required: - data properties: data: type: array items: $ref: '#/components/schemas/UserConfiguration' EventSubscriptionListResponse: description: >- A paginated list response for all subscriptions associated with an event. content: application/json: schema: type: object additionalProperties: false required: - data - meta properties: data: type: array items: $ref: '#/components/schemas/EventSubscriptionResponse' meta: $ref: '#/components/schemas/CursorMetaPage' EventSubscriptionResponse: description: >- Response containing specific subscription details associated with an event. content: application/json: schema: $ref: '#/components/schemas/EventSubscriptionResponse' CreateDcrProvider: description: A response containing the newly created DCR provider object. content: application/json: schema: $ref: '#/components/schemas/CreateDcrProviderResponse' GetDcrProvider: description: >- A response containing a single DCR provider object. Sensitive fields will be removed from the response. content: application/json: schema: $ref: '#/components/schemas/DcrProviderResponse' ListDcrProviders: description: A paginated list response for a collection of DCR providers content: application/json: schema: $ref: '#/components/schemas/ListDcrProvidersResponse' VerifyDcrProvider: description: >- A response containing the result of attempting to verify a DCR provider configuration. content: application/json: schema: $ref: '#/components/schemas/VerifyDcrProviderResponse' CreateAppAuthStrategy: description: >- A response containing the newly created application auth strategy object. content: application/json: schema: $ref: '#/components/schemas/CreateAppAuthStrategyResponse' GetAppAuthStrategy: description: A response containing a single application auth strategy object. content: application/json: schema: $ref: '#/components/schemas/GetAppAuthStrategyResponse' UpdateAppAuthStrategy: description: A response containing a single updated application auth strategy object. content: application/json: schema: $ref: '#/components/schemas/UpdateAppAuthStrategyResponse' ListAppAuthStrategies: description: >- A paginated list response for a collection of application auth strategies. content: application/json: schema: $ref: '#/components/schemas/ListAppAuthStrategiesResponse' DataPlaneClientCertificateResponse: description: Response body for retrieving a dp-client-certificate. content: application/json: schema: type: object properties: item: $ref: '#/components/schemas/DataPlaneClientCertificate' GetExpectedConfigHashResponse: description: >- Response body for retrieving the expected config hash of the control plane. content: application/json: schema: type: object required: - expected_hash - created_at - updated_at properties: expected_hash: type: string description: The expected configuration hash. created_at: type: integer description: Date the control plane configuration was created. updated_at: type: integer description: Date the control plane configuration was last updated. ListDataPlaneCertificatesResponse: description: Example response content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/DataPlaneClientCertificate' page: type: object properties: total: type: integer list-nodes: description: Example response content: application/json: schema: type: object properties: items: type: array items: type: object properties: id: type: string version: type: string hostname: type: string last_ping: type: integer type: type: string created_at: type: integer updated_at: type: integer config_hash: type: string compatibility_status: type: object properties: state: type: string page: type: object properties: total: type: integer next: type: string list-nodes-eol: description: Example response content: application/json: schema: type: object properties: items: type: array items: type: object properties: node_id: type: string node_version: type: string message: type: string page: type: object properties: total: type: integer get-node: description: Example response content: application/json: schema: type: object properties: item: type: object properties: id: type: string version: type: string hostname: type: string last_ping: type: integer type: type: string created_at: type: integer updated_at: type: integer config_hash: type: string compatibility_status: type: object properties: state: type: string list-plugin-schemas: description: A paginated list response for a collection of custom plugin schemas. content: application/json: schema: type: object properties: items: type: array items: type: object properties: lua_schema: type: string description: The custom plugin schema; `jq -Rs '.' schema.lua`. example: >- return { name = \"myplugin\", fields = { { config = { type = \"record\", fields = { } } } } } name: type: string description: >- The custom plugin name determined by the custom plugin schema. example: myplugin created_at: type: integer description: >- An ISO-8604 timestamp representation of custom plugin schema creation date. example: 1422386534 updated_at: type: integer description: >- An ISO-8604 timestamp representation of custom plugin schema update date. example: 1422412345 page: type: object properties: total: type: integer plugin-schemas: description: A response for a single custom plugin schema. content: application/json: schema: type: object properties: item: x-speakeasy-entity: GatewayCustomPluginSchema type: object properties: lua_schema: type: string description: The custom plugin schema; `jq -Rs '.' schema.lua`. example: >- return { name = \"myplugin\", fields = { { config = { type = \"record\", fields = { } } } } } name: type: string description: >- The custom plugin name determined by the custom plugin schema. example: myplugin created_at: type: integer description: >- An ISO-8604 timestamp representation of custom plugin schema creation date. example: 1422386534 updated_at: type: integer description: >- An ISO-8604 timestamp representation of custom plugin schema update date. example: 1422412345 ListConfigStoresResponse: description: List of Config Stores content: application/json: schema: title: ListConfigStoresResponse type: object required: - data - meta properties: meta: $ref: '#/components/schemas/CursorMeta' data: type: array items: $ref: '#/components/schemas/ConfigStore' ListConfigStoreSecretsResponse: description: List of Config Store Secrets content: application/json: schema: title: ListConfigStoreSecretsResponse type: object required: - data - meta properties: meta: $ref: '#/components/schemas/CursorMeta' data: type: array items: $ref: '#/components/schemas/ConfigStoreSecret' ConfigStoreResponse: description: Config Store content: application/json: schema: $ref: '#/components/schemas/ConfigStore' ConfigStoreSecretResponse: description: Config Store Secret content: application/json: schema: $ref: '#/components/schemas/ConfigStoreSecret' ConfigStoreUnauthorized: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' ConfigStoreSecretUnauthorized: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' ConfigStoreNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' ConfigStoreSecretNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' HTTP401Error: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/GatewayUnauthorizedError' UnsupportedMediaType: description: Unsupported Media Type content: application/problem+json: schema: $ref: '#/components/schemas/UnsupportedMediaTypeError' schemas: GroupMembership: x-speakeasy-entity: GatewayControlPlaneMembership type: object required: - members properties: members: type: array items: type: object required: - id properties: id: type: string CreateControlPlaneRequest: x-speakeasy-entity: GatewayControlPlane title: CreateControlPlaneRequest description: The request schema for the create control plane request. type: object additionalProperties: false properties: name: type: string example: Test Control Plane description: The name of the control plane. description: type: string example: A test control plane for exploration. description: The description of the control plane in Konnect. cluster_type: type: string description: >- The ClusterType value of the cluster associated with the Control Plane. example: CLUSTER_TYPE_CONTROL_PLANE enum: - CLUSTER_TYPE_CONTROL_PLANE - CLUSTER_TYPE_K8S_INGRESS_CONTROLLER - CLUSTER_TYPE_CONTROL_PLANE_GROUP - CLUSTER_TYPE_SERVERLESS - CLUSTER_TYPE_KAFKA_NATIVE_EVENT_PROXY auth_type: type: string description: >- The auth type value of the cluster associated with the Runtime Group. example: pinned_client_certs enum: - pinned_client_certs - pki_client_certs cloud_gateway: type: boolean description: Whether this control-plane can be used for cloud-gateways. example: false proxy_urls: $ref: '#/components/schemas/ProxyURLs' labels: $ref: '#/components/schemas/Labels' required: - name UpdateControlPlaneRequest: title: UpdateControlPlaneRequest description: The request schema for the update control plane request. type: object additionalProperties: false properties: name: type: string example: Test Control Plane description: The name of the control plane. description: type: string example: A test control plane for exploration. description: The description of the control plane in Konnect. auth_type: type: string description: >- The auth type value of the cluster associated with the Runtime Group. example: pinned_client_certs enum: - pinned_client_certs - pki_client_certs proxy_urls: $ref: '#/components/schemas/ProxyURLs' labels: $ref: '#/components/schemas/Labels' ControlPlane: x-speakeasy-entity: GatewayControlPlane type: object description: >- The control plane object contains information about a Kong control plane. additionalProperties: false properties: id: x-speakeasy-param-suppress-computed-diff: true type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The control plane ID. readOnly: true name: type: string example: Test Control Plane description: The name of the control plane. description: type: string example: A test control plane for exploration. description: The description of the control plane in Konnect. labels: $ref: '#/components/schemas/Labels' config: type: object description: CP configuration object for related access endpoints. additionalProperties: false properties: control_plane_endpoint: type: string format: url example: https://acfe5f253f.cp0.konghq.com description: Control Plane Endpoint. readOnly: true telemetry_endpoint: type: string format: url example: https://acfe5f253f.tp0.konghq.com description: Telemetry Endpoint. readOnly: true cluster_type: type: string description: >- The ClusterType value of the cluster associated with the Control Plane. example: CLUSTER_TYPE_CONTROL_PLANE enum: - CLUSTER_TYPE_CONTROL_PLANE - CLUSTER_TYPE_K8S_INGRESS_CONTROLLER - CLUSTER_TYPE_CONTROL_PLANE_GROUP - CLUSTER_TYPE_SERVERLESS - CLUSTER_TYPE_KAFKA_NATIVE_EVENT_PROXY readOnly: true auth_type: type: string description: >- The auth type value of the cluster associated with the Runtime Group. example: pinned_client_certs enum: - pinned_client_certs - pki_client_certs readOnly: true cloud_gateway: type: boolean description: Whether the Control Plane can be used for cloud-gateways. readOnly: true proxy_urls: $ref: '#/components/schemas/ProxyURLs' required: - control_plane_endpoint - telemetry_endpoint - cluster_type - auth_type - cloud_gateway created_at: x-speakeasy-terraform-ignore: true type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An ISO-8604 timestamp representation of control plane creation date. readOnly: true updated_at: x-speakeasy-terraform-ignore: true type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An ISO-8604 timestamp representation of control plane update date. readOnly: true required: - id - name - config - created_at - updated_at GroupStatus: title: GroupStatus type: object description: >- The Group Status object contains information about the status of a control plane group. required: - id - created_at - updated_at - state properties: id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The control plane group ID. readOnly: true created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An ISO-8604 timestamp representation of control plane group status creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An ISO-8604 timestamp representation of control plane group status update date. readOnly: true conflicts: type: array maxItems: 256 items: $ref: '#/components/schemas/GroupConflict' state: type: string description: The state of the control plane group. example: CONFLICT readOnly: true enum: - OK - CONFLICT - UNKNOWN GroupConflict: title: GroupConflict type: object description: >- The Group Conflict object contains information about a conflict in a control plane group. required: - cluster_id - description - resource properties: cluster_id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The ID of a control plane member of a control plane group. readOnly: true description: type: string example: >- conflicting entity found: ID=38d790ad-8b08-4ff5-a074-2e1e9e64d8bd, Name=foo description: The description of the conflict. readOnly: true resource: $ref: '#/components/schemas/GroupConflictResource' GroupConflictResource: title: GroupConflictResource type: object description: A resource causing a conflict in a control plane group. properties: id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The ID of the resource. readOnly: true type: type: string example: service description: The type of the resource. readOnly: true required: - id - type GroupMemberStatus: title: GroupMemberStatus type: object description: >- Object with information determining the group membership status of a control plane. properties: is_member: type: boolean example: true description: >- Boolean indicating if a control plane is a member of a control plane group. readOnly: true required: - is_member Labels: title: Labels type: object example: env: test description: > Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. Keys must be of length 1-63 characters, and cannot start with "kong", "konnect", "mesh", "kic", or "_". additionalProperties: type: string pattern: ^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$ minLength: 1 maxLength: 63 maxProperties: 50 ProxyURL: title: ProxyURL description: >- Proxy URL associated with reaching the data-planes connected to a control-plane. type: object additionalProperties: false properties: host: type: string description: Hostname of the proxy URL. port: type: integer description: Port of the proxy URL. protocol: type: string description: Protocol of the proxy URL. required: - host - port - protocol example: host: example.com port: 443 protocol: https ProxyURLs: title: ProxyURLs description: >- Array of proxy URLs associated with reaching the data-planes connected to a control-plane. type: array format: set items: $ref: '#/components/schemas/ProxyURL' example: - host: example.com port: 443 protocol: https ControlPlaneFilterParameters: title: ControlPlaneFilterParameters type: object additionalProperties: false properties: id: description: >- Returns entities that exact match any of the comma-delimited phrases in the filter string. type: object properties: eq: type: string oeq: type: string additionalProperties: false name: description: Filters on the given string field value by exact match inequality. type: object properties: eq: type: string contains: type: string neq: type: string additionalProperties: false cluster_type: description: Filters on the given string field value by exact match inequality. type: object properties: eq: type: string neq: type: string additionalProperties: false cloud_gateway: $ref: '#/components/schemas/BooleanFieldFilter' StringFieldEqualsFilter: title: StringFieldEqualsFilter description: Filters on the given string field value by exact match. type: string properties: eq: type: string StringFieldOEQFilter: title: StringFieldOEQFilter description: >- Returns entities that exact match any of the comma-delimited phrases in the filter string. type: object additionalProperties: false properties: oeq: type: string required: - oeq StringFieldContainsFilter: title: StringFieldContainsFilter description: Filters on the given string field value by fuzzy match. type: object additionalProperties: false properties: contains: type: string required: - contains StringFieldNEQFilter: title: StringFieldNEQFilter description: Filters on the given string field value by exact match inequality. type: object additionalProperties: false properties: neq: type: string required: - neq BooleanFieldFilter: title: BooleanFieldFilter description: Filter by a boolean value (true/false). type: boolean example: true SortQuery: title: SortQuery type: string example: created_at desc description: > The `asc` suffix is optional as the default sort order is ascending. The `desc` suffix is used to specify a descending order. Multiple sort attributes may be provided via a comma separated list. JSONPath notation may be used to specify a sub-attribute (eg: 'foo.bar desc'). PageMeta: type: object description: >- Contains pagination query parameters and the total number of objects returned. required: - number - size - total properties: number: type: number example: 1 size: type: number example: 10 total: type: number example: 100 PaginatedMeta: type: object title: PaginatedMeta description: returns the pagination information properties: page: $ref: '#/components/schemas/PageMeta' required: - page BaseError: type: object title: Error description: standard error required: - status - title - instance - detail properties: status: type: integer description: > The HTTP status code of the error. Useful when passing the response body to child properties in a frontend UI. Must be returned as an integer. readOnly: true title: type: string description: | A short, human-readable summary of the problem. It should not change between occurences of a problem, except for localization. Should be provided as "Sentence case" for direct use in the UI. readOnly: true type: type: string description: The error type. readOnly: true instance: type: string description: | Used to return the correlation ID back to the user, in the format kong:trace:. This helps us find the relevant logs when a customer reports an issue. readOnly: true detail: type: string description: > A human readable explanation specific to this occurence of the problem. This field may contain request/entity data to help the user understand what went wrong. Enclose variable values in square brackets. Should be provided as "Sentence case" for direct use in the UI. readOnly: true InvalidRules: description: invalid parameters rules type: string readOnly: true nullable: true enum: - required - is_array - is_base64 - is_boolean - is_date_time - is_integer - is_null - is_number - is_object - is_string - is_uuid - is_fqdn - is_arn - unknown_property - missing_reference - is_label - matches_regex - invalid - is_supported_network_availability_zone_list - is_supported_network_cidr_block - is_supported_provider_region InvalidParameterStandard: type: object additionalProperties: false properties: field: type: string example: name readOnly: true rule: $ref: '#/components/schemas/InvalidRules' source: type: string example: body reason: type: string example: is a required field readOnly: true required: - field - reason InvalidParameterMinimumLength: type: object additionalProperties: false properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string readOnly: true nullable: false enum: - min_length - min_digits - min_lowercase - min_uppercase - min_symbols - min_items - min minimum: type: integer example: 8 source: type: string example: body reason: type: string example: must have at least 8 characters readOnly: true required: - field - reason - rule - minimum InvalidParameterMaximumLength: type: object additionalProperties: false properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string readOnly: true nullable: false enum: - max_length - max_items - max maximum: type: integer example: 8 source: type: string example: body reason: type: string example: must not have more than 8 characters readOnly: true required: - field - reason - rule - maximum InvalidParameterChoiceItem: type: object additionalProperties: false properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string readOnly: true nullable: false enum: - enum reason: type: string example: is a required field readOnly: true choices: type: array uniqueItems: true readOnly: true nullable: false minItems: 1 items: {} source: type: string example: body required: - field - reason - rule - choices InvalidParameterDependentItem: type: object additionalProperties: false properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string readOnly: true nullable: true enum: - dependent_fields reason: type: string example: is a required field readOnly: true dependents: type: array uniqueItems: true nullable: true items: {} readOnly: true source: type: string example: body required: - field - rule - reason - dependents InvalidParameters: type: array nullable: false uniqueItems: true minItems: 1 description: invalid parameters items: oneOf: - $ref: '#/components/schemas/InvalidParameterStandard' - $ref: '#/components/schemas/InvalidParameterMinimumLength' - $ref: '#/components/schemas/InvalidParameterMaximumLength' - $ref: '#/components/schemas/InvalidParameterChoiceItem' - $ref: '#/components/schemas/InvalidParameterDependentItem' BadRequestError: allOf: - $ref: '#/components/schemas/BaseError' - type: object required: - invalid_parameters properties: invalid_parameters: $ref: '#/components/schemas/InvalidParameters' UnauthorizedError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 401 title: example: Unauthorized type: example: https://httpstatuses.com/401 instance: example: kong:trace:1234567890 detail: example: Invalid credentials ForbiddenError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 403 title: example: Forbidden type: example: https://httpstatuses.com/403 instance: example: kong:trace:1234567890 detail: example: Forbidden ConflictError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 409 title: example: Conflict type: example: https://httpstatuses.com/409 instance: example: kong:trace:1234567890 detail: example: Conflict NotFoundError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 404 title: example: Not Found type: example: https://httpstatuses.com/404 instance: example: kong:trace:1234567890 detail: example: Not found CursorMetaWithSizeAndTotal: type: object required: - size - next - total properties: next: description: URI to the next page type: string format: path nullable: true size: description: Requested page size type: number example: 10 total: description: >- Total number of objects in the collection; will only be present on the first page type: number example: 974 nullable: true CursorPaginatedMetaWithSizeAndTotal: type: object title: CursorPaginatedMetaWithSizeAndTotal description: returns the pagination information properties: page: $ref: '#/components/schemas/CursorMetaWithSizeAndTotal' required: - page CreatedAt: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An ISO-8601 timestamp representation of entity creation date. readOnly: true UpdatedAt: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An ISO-8601 timestamp representation of entity update date. readOnly: true IdentityProviderEnabled: title: Identity Provider Enabled Property type: boolean description: > Indicates whether the identity provider is enabled. Only one identity provider can be active at a time, such as SAML or OIDC. default: false example: true IdentityProviderType: type: string enum: - oidc - saml description: Specifies the type of identity provider. example: oidc IdentityProviderLoginPath: title: Identity Provider Login Path Property type: string example: myapp description: The path used for initiating login requests with the identity provider. OIDCIdentityProviderIssuer: title: OIDC Identity Provider Issuer Property type: string format: uri description: >- The issuer URI of the identity provider. This is the URL where the provider's metadata can be obtained. example: https://konghq.okta.com/oauth2/default OIDCIdentityProviderClientId: title: OIDC Identity Provider Login Client Id Property type: string example: YOUR_CLIENT_ID description: The client ID assigned to your application by the identity provider. OIDCIdentityProviderClientSecret: title: OIDC Identity Provider Login Client Secret Property type: string example: YOUR_CLIENT_SECRET description: The Client Secret assigned to your application by the identity provider. OIDCIdentityProviderScopes: title: OIDC Identity Provider Scopes Property type: array description: >- The scopes requested by your application when authenticating with the identity provider. default: - email - openid - profile items: type: string OIDCIdentityProviderClaimMappings: title: OIDC Claim Mappings type: object description: > Defines the mappings between OpenID Connect (OIDC) claims and local claims used by your application for authentication. properties: name: type: string example: name description: The claim mapping for the user's name. email: type: string example: email description: The claim mapping for the user's email address. groups: type: string example: groups description: The claim mapping for the user's group membership information. SAMLIdentityProviderMetadataURL: title: SAML Identity Provider Metadata URL type: string format: uri description: >- The identity provider's metadata URL where the identity provider's metadata can be obtained. example: https://mocksaml.com/api/saml/metadata SAMLIdentityProviderMetadata: title: SAML Identity Provider Metadata type: string description: > The identity provider's SAML metadata. If the identity provider supports a metadata URL, you can use the `idp_metadata_url` field instead. example: | CreateIdentityProvider: title: Identity Provider type: object description: >- The identity provider that contains configuration data for creating an authentication integration. properties: type: $ref: '#/components/schemas/IdentityProviderType' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/ConfigureOIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' UpdateIdentityProvider: title: Identity Provider type: object description: >- The identity provider that contains configuration data for updating an authentication integration. properties: enabled: $ref: '#/components/schemas/IdentityProviderEnabled' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/ConfigureOIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' IdentityProvider: title: Identity Provider type: object description: >- The identity provider that contains configuration data for authentication integration. properties: id: $ref: '#/components/schemas/UUID' type: $ref: '#/components/schemas/IdentityProviderType' enabled: $ref: '#/components/schemas/IdentityProviderEnabled' login_path: $ref: '#/components/schemas/IdentityProviderLoginPath' config: type: object oneOf: - $ref: '#/components/schemas/OIDCIdentityProviderConfig' - $ref: '#/components/schemas/SAMLIdentityProviderConfig' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' OIDCIdentityProviderConfig: title: OIDC Identity Provider Config type: object description: >- The identity provider that contains configuration data for the OIDC authentication integration. properties: issuer_url: $ref: '#/components/schemas/OIDCIdentityProviderIssuer' client_id: $ref: '#/components/schemas/OIDCIdentityProviderClientId' scopes: $ref: '#/components/schemas/OIDCIdentityProviderScopes' claim_mappings: $ref: '#/components/schemas/OIDCIdentityProviderClaimMappings' additionalProperties: false required: - issuer_url - client_id ConfigureOIDCIdentityProviderConfig: title: OIDC Identity Provider Config type: object description: >- The identity provider that contains configuration data for the OIDC authentication integration. properties: issuer_url: $ref: '#/components/schemas/OIDCIdentityProviderIssuer' client_id: $ref: '#/components/schemas/OIDCIdentityProviderClientId' client_secret: $ref: '#/components/schemas/OIDCIdentityProviderClientSecret' scopes: $ref: '#/components/schemas/OIDCIdentityProviderScopes' claim_mappings: $ref: '#/components/schemas/OIDCIdentityProviderClaimMappings' additionalProperties: false required: - issuer_url - client_id SAMLIdentityProviderConfig: title: SAML Identity Provider Config type: object description: >- The identity provider that contains configuration data for the SAML authentication integration. properties: idp_metadata_url: $ref: '#/components/schemas/SAMLIdentityProviderMetadataURL' idp_metadata_xml: $ref: '#/components/schemas/SAMLIdentityProviderMetadata' sp_metadata_url: type: string format: uri example: >- https://cloud.konghq.com/v2/authenticate/the-saml-konnect-org/saml/metadata readOnly: true sp_entity_id: type: string description: The entity ID of the service provider (SP). example: https://cloud.konghq.com/sp/00000000-0000-0000-0000-000000000000 readOnly: true login_url: type: string description: >- The URL to redirect users to for initiating login with the identity provider. example: https://cloud.konghq.com/login/the-saml-konnect-org readOnly: true callback_url: type: string description: >- The URL where the SAML identity provider sends authentication responses after successful login attempts. format: uri example: >- https://cloud.konghq.com/v2/authenticate/the-saml-konnect-org/saml/acs readOnly: true additionalProperties: false IdP: title: IdP Configuration type: object description: >- The IdP object contains the configuration data for the OIDC authentication integration. NOTE: The `openid` scope is required. Removing it could break the OIDC integration. properties: issuer: type: string format: uri example: https://myidp.com/oauth2 login_path: type: string example: myapp client_id: type: string example: YOUR_CLIENT_ID scopes: type: array items: type: string claim_mappings: type: object minProperties: 3 properties: name: type: string example: name email: type: string example: email groups: type: string example: custom-groups-claim User: title: User type: object description: >- The user object contains information about an individual user who can use the Konnect application and API. example: id: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 email: user@email.com full_name: Test User preferred_name: test active: true inferred_region: us created_at: '2022-02-07T17:46:57.52Z' updated_at: '2022-10-08T17:00:00.52Z' properties: id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The User ID. readOnly: true email: type: string format: email example: user@email.com maxLength: 250 description: The email registered to the user. full_name: type: string pattern: ^[\w \W]+$ maxLength: 250 description: The User's full name. example: Jane Doe preferred_name: type: string example: Jane maxLength: 250 description: The User's preferred name. active: type: boolean description: Returns True if a user has verified their email address. readOnly: true inferred_region: type: string description: >- The Konnect region closest to the user's IP address. This property might only be set for users on signup through Konnect’s build-in native authentication. example: us readOnly: true created_at: type: string format: date-time example: '2022-02-07T17:46:57.52Z' description: The time stamp for the date the account was registered. readOnly: true updated_at: type: string format: date-time example: '2022-10-08T17:00:00.52Z' description: >- A Unix timestamp representation of the most recent change to the User account. readOnly: true Team: x-speakeasy-entity: Team title: Team type: object description: The team object contains information about a group of users. example: id: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 name: IDM - Developers description: The developers for the IDM API. system_team: false labels: env: test created_at: '1992-02-07T17:46:57.52Z' updated_at: '2022-08-31T17:00:00.52Z' properties: id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: The team ID. readOnly: true name: type: string pattern: ^[\w \W]+$ example: IDM - Developers maxLength: 250 description: The name of the team. description: type: string example: The developers for the IDM API. maxLength: 250 description: The team description in Konnect. system_team: type: boolean description: >- Returns True if a user belongs to a `system_team`. System teams are teams that can manage Konnect objects, like "Organization Admin", or "Service" readOnly: true labels: $ref: '#/components/schemas/Labels' created_at: type: string format: date-time example: '1992-02-07T17:46:57.52Z' description: A Unix timestamp representation of team creation. readOnly: true updated_at: type: string format: date-time example: '2022-02-07T17:00:00.52Z' description: > A Unix timestamp representation of the most recent change to the team object in Konnect. readOnly: true TeamMapping: title: TeamMapping type: object description: A team assignment is a mapping of an IdP group to a Konnect Team. example: group: Service Developers team_ids: - 6801e673-cc10-498a-94cd-4271de07a0d3 properties: group: type: string example: Service Developers description: The IdP group. team_ids: type: array uniqueItems: true description: An array of ID's that are mapped to the specified group. items: type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 TeamGroupMapping: title: TeamGroupMapping type: object description: A map of Konnect Team to IdP groups. example: team_id: 6801e673-cc10-498a-94cd-4271de07a0d3 groups: - Tech Leads - API Engineers properties: team_id: type: string format: uuid example: 6801e673-cc10-498a-94cd-4271de07a0d3 description: The Konnect team ID. groups: type: array uniqueItems: true description: The IdP groups that are mapped to the specified team. items: type: string example: API Engineers AssignedRole: title: AssignedRole type: object description: An assigned role is a role that has been assigned to a user or team. example: id: 54cc6168-ebb1-4300-8168-d62a0dd08fc8 role_name: Viewer entity_id: 18ee2573-dec0-4b83-be99-fa7700bcdc61 entity_type_name: Control Planes entity_region: us properties: id: type: string format: uuid example: eaf7adf1-32c8-4bbf-b960-d1f8456afe67 description: The ID of the role assignment. role_name: type: string example: Viewer description: Name of the role being assigned. entity_id: type: string format: uuid example: 817d0422-45c9-4d88-8d64-45aef05c1ae7 description: A RBAC entity ID. entity_type_name: type: string example: Control Planes description: Name of the entity type the role is being assigned to. entity_region: type: string enum: - us - eu - au - me - in - '*' example: eu description: Region of the entity. SystemAccount: x-speakeasy-entity: SystemAccount title: System Account type: object example: id: 497f6eca-6276-4993-bfeb-53cbbbba6f08 name: Example System Account description: This is a sample system account description. created_at: '2022-08-24T14:15:22Z' updated_at: '2022-10-05T10:33:49Z' konnect_managed: false description: Schema of the system account. properties: id: type: string format: uuid description: ID of the system account. readOnly: true name: type: string description: Name of the system account. description: type: string description: Description of the system account. created_at: type: string format: date-time description: Timestamp of when the system account was created. readOnly: true updated_at: type: string format: date-time description: Timestamp of when the system account was last updated. readOnly: true konnect_managed: type: boolean description: The system account is managed by Konnect (true/false). SystemAccountAccessToken: x-speakeasy-entity: SystemAccountAccessToken title: System Account Access Token example: id: 497f6eca-6276-4993-bfeb-53cbbbba6f08 name: Sample Access Token created_at: '2022-08-01T14:16:09Z' updated_at: '2022-08-02T08:35:49Z' expires_at: '2022-12-31T12:52:23Z' last_used_at: '2022-10-24T13:05:42Z' description: Schema of the system account access token. type: object properties: id: type: string format: uuid description: ID of the system account access token. readOnly: true name: type: string description: Name of the system account access token. created_at: type: string format: date-time description: Timestamp of when the system account access token was created. readOnly: true updated_at: type: string format: date-time description: Timestamp of when the system account access token was last updated. readOnly: true expires_at: type: string format: date-time description: Timestamp of when the system account access token will expire. last_used_at: type: string format: date-time description: Timestamp of when the system account access token was last used. readOnly: true UUID: type: string format: uuid example: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7 description: Contains a unique identifier used by the API for this resource. readOnly: true StringFieldFilter: description: Filters on the given string field value by exact match inequality. type: object properties: eq: type: string contains: type: string ocontains: type: string oeq: type: string neq: type: string additionalProperties: false LabelsUpdate: type: object nullable: true description: > Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. Labels are intended to store **INTERNAL** metadata. Keys must be of length 1-63 characters, and cannot start with "kong", "konnect", "mesh", "kic", or "_". example: env: test maxProperties: 50 additionalProperties: type: string pattern: ^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$ minLength: 1 maxLength: 63 nullable: true writeOnly: true ControlPlaneId: type: string format: uuid example: 0949471e-b759-45ba-87ab-ee63fb781388 ConfigurationId: type: string format: uuid example: edaf40f9-9fb0-4ffe-bb74-4e763a6bd471 readOnly: true DataPlaneGroupId: type: string format: uuid description: >- ID of the data-plane group that represents a deployment target for a set of data-planes. example: cbb8872a-1f83-4806-bf69-fdf0b4783c7e readOnly: true CustomDomainId: type: string format: uuid example: 39ed3790-085d-4605-9627-f96d86aaf425 readOnly: true NetworkId: x-speakeasy-param-suppress-computed-diff: true type: string format: uuid example: 36ae63d3-efd1-4bec-b246-62aa5d3f5695 TransitGatewayId: type: string format: uuid example: 0850820b-d153-4a2a-b9be-7d2204779139 readOnly: true ProviderAccountId: type: string format: uuid example: 929b2449-c69f-44c4-b6ad-9ecec6f811ae ResourceQuotaId: type: string format: uuid example: 9678f205-49a1-47bb-82d9-d01cafa42a0d readOnly: true DefaultResourceQuotaId: type: string format: uuid example: cc504063-f3bb-4e09-8e32-bbcdbc5cd618 readOnly: true ResourceConfigurationId: type: string format: uuid example: 9678f205-49a1-47bb-82d9-d01cafa42a0d readOnly: true DefaultResourceConfigurationId: type: string format: uuid example: cc504063-f3bb-4e09-8e32-bbcdbc5cd618 readOnly: true ControlPlaneGeo: title: Control-Plane Geo description: >- Set of control-plane geos supported for deploying cloud-gateways configurations. type: string enum: - us - eu - au - me - in GatewayVersion: title: Gateway Version description: Supported gateway version. type: string example: '3.2' VersionList: title: Version List description: List of supported gateway versions for cloud gateways. readOnly: true type: array items: $ref: '#/components/schemas/GatewayVersion' InstanceTypeName: type: string enum: - small - medium - large description: Instance type name to indicate capacity. ApiAccess: type: string enum: - private - public - private+public description: Type of API access data-plane groups will support for a configuration. default: private+public InstanceType: title: Instance Type description: Resource parameters and pricing of a given supported instance type. readOnly: true type: object additionalProperties: false properties: name: $ref: '#/components/schemas/InstanceTypeName' hourly_cost: description: >- Hourly cost to run a single cloud gateway instance of this instance type. type: string format: ^(\d)+(\.(\d)+)?$ example: '1.00' v_cpu: description: >- Number of virtual CPUs available to a cloud gateway instance of this instance type. type: string format: ^(\d)+ example: '2' gb_memory: description: >- Number of gigabytes of memory available to a cloud gateway instance of this instance type. type: string format: ^(\d)+ example: '2' required: - name - hourly_cost - v_cpu - gb_memory InstanceTypes: title: Instance Types description: >- List of supported instance types, along with their associated resource parameters and pricing. type: array items: $ref: '#/components/schemas/InstanceType' ProviderRegionName: title: Provider Region Name description: > Human-readable name for cloud provider region. The list of available provider regions can be retrieved via the availability endpoint `/v2/cloud-gateways/availability.json`. type: string example: N. Virginia ProviderRegionId: title: Provider Region ID description: Region ID for cloud provider region. type: string example: us-east-2 ProviderRegion: title: Provider Region description: Region ID and human-readable name for a cloud provider region. type: object additionalProperties: false properties: region: $ref: '#/components/schemas/ProviderRegionId' name: $ref: '#/components/schemas/ProviderRegionName' availability_zones: description: > List of supported availability zones for cloud provider region, for network AZ configuration. type: array items: type: string example: - use2-az1 - use2-az2 - use2-az3 cidr_blocks: description: > List of supported CIDR blocks for cloud provider region, for network CIDR block configuration. type: array items: type: string example: - 10.0.0.0/8 - 100.64.0.0/10 - 172.16.0.0/12 - 192.168.0.0/16 - 198.18.0.0/15 reserved_cidr_blocks: description: > List of reserved CIDR blocks for cloud provider region, to restrict allowed network CIDR block configuration. type: array items: type: string example: - 10.100.0.0/16 - 172.17.0.0/16 required: - region - name - availability_zones - cidr_blocks - reserved_cidr_blocks ProviderRegions: title: Provider Regions description: >- List of available regions to run cloud gateway instances on for a given cloud provider. type: array items: $ref: '#/components/schemas/ProviderRegion' ProviderName: title: Provider Name description: Name of cloud provider. type: string enum: - aws - azure example: aws Provider: title: Provider description: Description of cloud provider that runs cloud gateway instances. type: object additionalProperties: false properties: provider: $ref: '#/components/schemas/ProviderName' regions: $ref: '#/components/schemas/ProviderRegions' required: - provider - regions Providers: title: Providers description: List of supported cloud providers that run cloud gateway instances. type: array items: $ref: '#/components/schemas/Provider' AvailabilityDocument: title: Availability Document description: Document containing availability information for configurations. type: object additionalProperties: false properties: versions: $ref: '#/components/schemas/VersionList' instance_types: $ref: '#/components/schemas/InstanceTypes' providers: $ref: '#/components/schemas/Providers' required: - versions - instance_types - providers ConfigurationDataPlaneGroupAutoscale: oneOf: - $ref: '#/components/schemas/ConfigurationDataPlaneGroupAutoscaleStatic' - $ref: '#/components/schemas/ConfigurationDataPlaneGroupAutoscaleAutopilot' ConfigurationDataPlaneGroupAutoscaleStatic: title: Configuration Autoscale Static description: Object that describes the static autoscaling strategy. type: object properties: kind: type: string enum: - static instance_type: $ref: '#/components/schemas/InstanceTypeName' requested_instances: type: integer example: 3 description: Number of data-planes the deployment target will contain. required: - kind - instance_type - requested_instances additionalProperties: false ConfigurationDataPlaneGroupAutoscaleAutopilot: title: Configuration Autoscale Autopilot description: Object that describes the autopilot autoscaling strategy. type: object properties: kind: type: string enum: - autopilot base_rps: type: integer example: 1 description: >- Base number of requests per second that the deployment target should support. max_rps: type: integer deprecated: true example: 1000 description: >- Max number of requests per second that the deployment target should support. If not set, this defaults to 10x base_rps. This field is deprecated and shouldn't be used in new configurations as it will be removed in a future version. max_rps is now calculated as 10x base_rps. required: - kind - base_rps additionalProperties: false ConfigurationDataPlaneGroupEnvironment: title: Configuration Data-Plane Group Environment description: Array of environment variables to set for a data-plane group. type: array items: $ref: '#/components/schemas/ConfigurationDataPlaneGroupEnvironmentField' ConfigurationDataPlaneGroupEnvironmentField: title: Configuration Data-Plane Group Environment Field description: Environment variable name and value to set for a data-plane group. type: object properties: name: type: string format: ^KONG_[a-zA-Z_]+[a-zA-Z0-9_]* minLength: 6 maxLength: 120 example: KONG_LOG_LEVEL description: > Name of the environment variable field to set for the data-plane group. Must be prefixed by KONG_. value: type: string minLength: 1 maxLength: 120 example: INFO description: >- Value assigned to the environment variable field for the data-plane group. required: - name - value ConfigurationDataPlaneGroupConfig: title: Configuration Data-Plane Group Config Item description: >- Object that describes where a data-plane group will be deployed to, along with how many instances. type: object properties: provider: $ref: '#/components/schemas/ProviderName' region: $ref: '#/components/schemas/ProviderRegionId' cloud_gateway_network_id: $ref: '#/components/schemas/NetworkId' autoscale: $ref: '#/components/schemas/ConfigurationDataPlaneGroupAutoscale' environment: $ref: '#/components/schemas/ConfigurationDataPlaneGroupEnvironment' required: - autoscale - provider - region - cloud_gateway_network_id additionalProperties: false ConfigurationDataPlaneGroupConfigs: title: Configuration Data-Plane Group Configs description: >- Object that describes where data-planes will be deployed to, along with how many instances. type: array items: $ref: '#/components/schemas/ConfigurationDataPlaneGroupConfig' ConfigurationDataPlaneGroup: title: Cloud Gateway Configuration Data-Plane Group description: >- Object that describes the set of data-plane groups currently pointed to this configuration. type: object properties: id: $ref: '#/components/schemas/DataPlaneGroupId' provider: $ref: '#/components/schemas/ProviderName' region: $ref: '#/components/schemas/ProviderRegionId' autoscale: $ref: '#/components/schemas/ConfigurationDataPlaneGroupAutoscale' environment: $ref: '#/components/schemas/ConfigurationDataPlaneGroupEnvironment' cloud_gateway_network_id: $ref: '#/components/schemas/NetworkId' state: type: string enum: - created - initializing - ready - terminating - terminated description: State of the data-plane group. state_metadata: type: object description: > Metadata describing the backing state of the dataplane group and why it may be in an erroneous state. additionalProperties: false properties: reported_status: type: string description: >- Reported status of the dataplane group from backing infrastructure. example: ERROR reason: type: string description: > Reason why the dataplane group may be in an erroneous state, reported from backing infrastructure. example: > Dataplane group could not be deployed due to insufficient cloud provider compute instances. private_ip_addresses: type: array items: type: string description: > List of private IP addresses of the internal load balancer that proxies traffic to this data-plane group. example: - 192.168.248.132 - 192.168.66.81 - 192.168.137.135 egress_ip_addresses: type: array items: type: string description: > List of egress IP addresses for the network that this data-plane group runs on. example: - 71.78.149.75 - 91.149.112.244 - 51.235.15.121 created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of data-plane group creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of data-plane group update date. readOnly: true required: - id - provider - region - autoscale - cloud_gateway_network_id - state - created_at - updated_at NetworkConfigurationReference: $ref: '#/components/schemas/ConfigurationManifest' ConfigurationManifest: x-speakeasy-entity: CloudGatewayConfiguration title: Configuration description: >- Object containing information about a control-plane's cloud-gateways configuration. type: object properties: id: $ref: '#/components/schemas/ConfigurationId' version: $ref: '#/components/schemas/GatewayVersion' api_access: $ref: '#/components/schemas/ApiAccess' dataplane_group_config: $ref: '#/components/schemas/ConfigurationDataPlaneGroupConfigs' dataplane_groups: type: array format: set description: > List of data-plane groups that describe where data-planes will be deployed to, along with how many instances. items: $ref: '#/components/schemas/ConfigurationDataPlaneGroup' entity_version: type: number example: 1 description: > Positive, monotonically increasing version integer, to serialize configuration changes. readOnly: true created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of configuration creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of configuration update date. readOnly: true control_plane_id: $ref: '#/components/schemas/ControlPlaneId' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeo' required: - id - control_plane_id - control_plane_geo - version - dataplane_group_config - dataplane_groups - entity_version - created_at - updated_at CreateConfigurationDataPlaneGroup: title: CreateConfigurationDataPlaneGroup description: >- Object that describes where to deploy a data-plane group, along with how many instances. type: object additionalProperties: false properties: provider: $ref: '#/components/schemas/ProviderName' region: $ref: '#/components/schemas/ProviderRegionId' cloud_gateway_network_id: $ref: '#/components/schemas/NetworkId' autoscale: $ref: '#/components/schemas/ConfigurationDataPlaneGroupAutoscale' environment: $ref: '#/components/schemas/ConfigurationDataPlaneGroupEnvironment' required: - autoscale - provider - region - cloud_gateway_network_id ProviderAccount: title: Cloud Gateway Provider Account description: >- Object containing mapping for organization and cloud provider to account ID. type: object properties: id: $ref: '#/components/schemas/ProviderAccountId' provider: $ref: '#/components/schemas/ProviderName' provider_account_id: type: string description: ID of the cloud provider account. readOnly: true created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of provider account creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of provider account update date. readOnly: true required: - id - provider - provider_account_id - created_at - updated_at NetworkCreateState: title: Network Create State description: Initial state for creating a network. type: string default: initializing enum: - initializing - offline NetworkState: x-speakeasy-terraform-ignore: true title: Network State description: State of the network. enum: - created - initializing - offline - ready - terminating - terminated readOnly: true NetworkStateMetadata: x-speakeasy-terraform-ignore: true title: Network State Metadata description: > Metadata describing the backing state of the network and why it may be in an erroneous state. type: object additionalProperties: false properties: reported_status: type: string description: Reported status of the network from backing infrastructure. example: INVALID reason: type: string description: > Reason why the network may be in an erroneous state, reported from backing infrastructure. example: > Network could not be deployed due to insufficient cloud provider compute instances. readOnly: true NetworkProviderMetadata: x-speakeasy-param-suppress-computed-diff: true title: Network Provider Metadata description: >- Metadata describing attributes returned by cloud-provider for the network. type: object additionalProperties: false properties: vpc_id: title: VPC ID type: string subnet_ids: title: Subnet IDs type: array items: type: string readOnly: true NetworkName: title: Network Name type: string description: Human-readable name of the network. example: us-east-2 network NetworkCIDRBlock: title: Network CIDR Block description: CIDR block configuration for the network. type: string example: 10.0.0.0/8 NetworkAvailabilityZones: type: array items: type: string description: List of availability zones that the network is attached to. example: - use2-az1 - use2-az2 - use2-az3 Network: x-speakeasy-entity: CloudGatewayNetwork title: Network description: >- Object containing information about a network to be used in configurations. type: object properties: id: $ref: '#/components/schemas/NetworkId' name: $ref: '#/components/schemas/NetworkName' default: x-speakeasy-param-suppress-computed-diff: true type: boolean description: > Whether the network is a default network or not. Default networks are Networks that are created automatically by Konnect when an organization is linked to a provider account. example: false cloud_gateway_provider_account_id: $ref: '#/components/schemas/ProviderAccountId' region: $ref: '#/components/schemas/ProviderRegionId' availability_zones: $ref: '#/components/schemas/NetworkAvailabilityZones' cidr_block: $ref: '#/components/schemas/NetworkCIDRBlock' state: $ref: '#/components/schemas/NetworkState' state_metadata: $ref: '#/components/schemas/NetworkStateMetadata' provider_metadata: $ref: '#/components/schemas/NetworkProviderMetadata' transit_gateway_count: x-speakeasy-param-suppress-computed-diff: true type: integer description: The number of transit gateways attached to this network. readOnly: true example: 0 configuration_reference_count: x-speakeasy-param-suppress-computed-diff: true type: integer description: The number of configurations that reference this network. readOnly: true example: 0 entity_version: x-speakeasy-param-suppress-computed-diff: true type: integer description: > Monotonically-increasing version count of the network, to indicate the order of updates to the network. readOnly: true example: 1 created_at: x-speakeasy-param-suppress-computed-diff: true type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of network creation date. readOnly: true updated_at: x-speakeasy-param-suppress-computed-diff: true type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of network update date. readOnly: true required: - id - name - default - cloud_gateway_provider_account_id - region - availability_zones - cidr_block - provider_metadata - state - transit_gateway_count - configuration_reference_count - entity_version - created_at - updated_at CreateNetworkRequest: x-speakeasy-entity: CloudGatewayNetwork title: CreateNetworkRequest description: Request schema for creating a network. type: object additionalProperties: false properties: name: $ref: '#/components/schemas/NetworkName' cloud_gateway_provider_account_id: $ref: '#/components/schemas/ProviderAccountId' region: $ref: '#/components/schemas/ProviderRegionId' availability_zones: $ref: '#/components/schemas/NetworkAvailabilityZones' cidr_block: $ref: '#/components/schemas/NetworkCIDRBlock' state: $ref: '#/components/schemas/NetworkCreateState' required: - name - cloud_gateway_provider_account_id - region - availability_zones - cidr_block PatchNetworkRequest: x-speakeasy-entity: CloudGatewayNetwork title: PatchNetworkRequest description: Request schema for updating a network. type: object additionalProperties: false properties: name: $ref: '#/components/schemas/NetworkName' TransitGatewayState: title: Transit Gateway State type: string description: > The current state of the Transit Gateway. Possible values: - `created` - The attachment has been created but is not attached to transit gateway. - `initializing` - The attachment is in the process of being initialized and is setting up necessary resources. - `pending-acceptance` The attachment request is awaiting acceptance in customer VPC. - `ready` - The transit gateway attachment is fully operational and can route traffic as configured. - `terminating` - The attachment is in the process of being deleted and is no longer accepting new traffic. - `terminated` - The attachment has been fully deleted and is no longer available. enum: - created - initializing - pending-acceptance - ready - terminating - terminated readOnly: true AwsTransitGatewayAttachmentConfig: title: AWS Transit Gateway Attachment Config type: object additionalProperties: false properties: kind: title: AWS Transit Gateway Attachment Type enum: - aws-transit-gateway-attachment transit_gateway_id: title: Transit Gateway ID description: AWS Transit Gateway ID to create attachment to. type: string ram_share_arn: title: RAM Share ARN description: >- Resource Share ARN to verify request to create transit gateway attachment. type: string required: - kind - transit_gateway_id - ram_share_arn AwsVpcPeeringGatewayAttachmentConfig: title: AWS VPC Peering Attachment Config type: object additionalProperties: false properties: kind: title: AWS VPC Peering Attachment Config enum: - aws-vpc-peering-attachment peer_account_id: type: string peer_vpc_id: type: string peer_vpc_region: type: string required: - kind - peer_account_id - peer_vpc_id - peer_vpc_region AzureVNETPeeringAttachmentConfig: title: Azure VNET Peering Attachment Config type: object additionalProperties: false properties: kind: title: Azure VNET Peering Attachment Type enum: - azure-vnet-peering-attachment tenant_id: title: Tenant ID description: Tenant ID for the Azure VNET Peering attachment. type: string subscription_id: title: Subscription ID description: Subscription ID for the Azure VNET Peering attachment. type: string resource_group_name: title: Resource Group Name description: Resource Group Name for the Azure VNET Peering attachment. type: string vnet_name: title: VNET Name description: VNET Name for the Azure VNET Peering attachment. type: string required: - kind - tenant_id - subscription_id - resource_group_name - vnet_name TransitGatewayDnsConfig: title: Transit Gateway DNS Config description: > List of mappings from remote DNS server IP address sets to proxied internal domains, for a transit gateway attachment. type: array items: type: object additionalProperties: false properties: remote_dns_server_ip_addresses: title: Remote DNS Server IP Addresses description: >- Remote DNS Server IP Addresses to connect to for resolving internal DNS via a transit gateway. type: array items: type: string example: - 10.0.0.2 domain_proxy_list: title: Domain Proxy List type: array description: > Internal domain names to proxy for DNS resolution from the listed remote DNS server IP addresses, for a transit gateway. items: type: string example: - foobar.com required: - remote_dns_server_ip_addresses - domain_proxy_list TransitGatewayName: title: Transit Gateway Name type: string description: Human-readable name of the transit gateway. example: us-east-2 transit gateway TransitGatewayCIDRBlocks: title: Transit Gateway CIDR Blocks type: array items: type: string description: > CIDR blocks for constructing a route table for the transit gateway, when attaching to the owning network. example: - 10.0.0.0/8 - 100.64.0.0/10 - 172.16.0.0/12 AwsTransitGatewayResponse: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' cidr_blocks: $ref: '#/components/schemas/TransitGatewayCIDRBlocks' transit_gateway_attachment_config: $ref: '#/components/schemas/AwsTransitGatewayAttachmentConfig' id: $ref: '#/components/schemas/TransitGatewayId' state: $ref: '#/components/schemas/TransitGatewayState' state_metadata: title: TransitGatewayStateMetadata type: object description: > Metadata describing the backing state of the transit gateway and why it may be in an erroneous state. additionalProperties: false properties: reported_status: type: string description: >- Reported status of the transit gateway from backing infrastructure. example: ERROR reason: type: string description: > Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure. example: > Transit Gateway Attachment configuration could not find a resource with the provided ram share arn. readOnly: true entity_version: type: integer description: > Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the transit gateway. readOnly: true example: 1 created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of transit gateway creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of transit gateway update date. readOnly: true required: - name - cidr_blocks - transit_gateway_attachment_config - dns_config - id - state - entity_version - created_at - updated_at title: AWS Transit Gateway AwsVpcPeeringGatewayResponse: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' cidr_blocks: $ref: '#/components/schemas/TransitGatewayCIDRBlocks' transit_gateway_attachment_config: $ref: '#/components/schemas/AwsVpcPeeringGatewayAttachmentConfig' id: $ref: '#/components/schemas/TransitGatewayId' state: $ref: '#/components/schemas/TransitGatewayState' state_metadata: title: TransitGatewayStateMetadata type: object description: > Metadata describing the backing state of the transit gateway and why it may be in an erroneous state. additionalProperties: false properties: reported_status: type: string description: >- Reported status of the transit gateway from backing infrastructure. example: ERROR reason: type: string description: > Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure. example: > Transit Gateway Attachment configuration could not find a resource with the provided ram share arn. readOnly: true entity_version: type: integer description: > Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the transit gateway. readOnly: true example: 1 created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of transit gateway creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of transit gateway update date. readOnly: true required: - name - cidr_blocks - transit_gateway_attachment_config - dns_config - id - state - entity_version - created_at - updated_at title: AWS VPC Peering Gateway AzureTransitGatewayResponse: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' transit_gateway_attachment_config: $ref: '#/components/schemas/AzureVNETPeeringAttachmentConfig' id: $ref: '#/components/schemas/TransitGatewayId' state: $ref: '#/components/schemas/TransitGatewayState' state_metadata: title: TransitGatewayStateMetadata type: object description: > Metadata describing the backing state of the transit gateway and why it may be in an erroneous state. additionalProperties: false properties: reported_status: type: string description: >- Reported status of the transit gateway from backing infrastructure. example: ERROR reason: type: string description: > Reason why the transit gateway may be in an erroneous state, reported from backing infrastructure. example: > Transit Gateway Attachment configuration could not find a resource with the provided ram share arn. readOnly: true entity_version: type: integer description: > Monotonically-increasing version count of the transit gateway, to indicate the order of updates to the transit gateway. readOnly: true example: 1 created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of transit gateway creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of transit gateway update date. readOnly: true required: - name - transit_gateway_attachment_config - id - dns_config - state - entity_version - created_at - updated_at title: Azure Transit Gateway TransitGatewayResponse: oneOf: - $ref: '#/components/schemas/AwsTransitGatewayResponse' - $ref: '#/components/schemas/AwsVpcPeeringGatewayResponse' - $ref: '#/components/schemas/AzureTransitGatewayResponse' CreateAwsTransitGateway: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' cidr_blocks: $ref: '#/components/schemas/TransitGatewayCIDRBlocks' transit_gateway_attachment_config: $ref: '#/components/schemas/AwsTransitGatewayAttachmentConfig' required: - name - cidr_blocks - transit_gateway_attachment_config title: AWS Transit Gateway x-speakeasy-name-override: AWSTransitGateway CreateAwsVpcPeeringGateway: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' cidr_blocks: $ref: '#/components/schemas/TransitGatewayCIDRBlocks' transit_gateway_attachment_config: $ref: '#/components/schemas/AwsVpcPeeringGatewayAttachmentConfig' required: - name - cidr_blocks - transit_gateway_attachment_config title: AWS VPC Peering Gateway x-speakeasy-name-override: AWSVpcPeeringGateway CreateAzureTransitGateway: type: object properties: name: $ref: '#/components/schemas/TransitGatewayName' dns_config: $ref: '#/components/schemas/TransitGatewayDnsConfig' transit_gateway_attachment_config: $ref: '#/components/schemas/AzureVNETPeeringAttachmentConfig' required: - name - transit_gateway_attachment_config title: Azure Transit Gateway x-speakeasy-name-override: AzureTransitGateway CreateTransitGatewayRequest: title: CreateTransitGatewayRequest description: Request schema for creating a transit gateway. type: object oneOf: - $ref: '#/components/schemas/CreateAwsTransitGateway' - $ref: '#/components/schemas/CreateAwsVpcPeeringGateway' - $ref: '#/components/schemas/CreateAzureTransitGateway' CustomDomainState: title: Custom Domain State type: string description: State of the custom domain. enum: - created - initializing - ready - terminating - terminated - error readOnly: true CustomDomainName: title: Custom Domain Name type: string description: Domain name of the custom domain. example: example.com CustomDomain: x-speakeasy-entity: CloudGatewayCustomDomain title: Custom Domain description: Object containing information about a custom domain for a control-plane. type: object properties: id: $ref: '#/components/schemas/CustomDomainId' control_plane_id: $ref: '#/components/schemas/ControlPlaneId' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeo' domain: $ref: '#/components/schemas/CustomDomainName' certificate_id: type: string format: uuid nullable: true description: > Certificate ID for the certificate representing this domain and stored on data-planes for this control-plane. Can be retrieved via the control-planes API for this custom domain's control-plane. readOnly: true example: 3b7cbeee-fbec-440e-a5ef-89e7dec3b9d0 sni_id: type: string format: uuid nullable: true description: > Server Name Indication ID for this domain and stored on data-planes for this control-plane. Can be retrieved via the control-planes API for this custom domain's control-plane. readOnly: true example: a8f11ea8-af09-4422-9735-5d4f8910aba1 state: $ref: '#/components/schemas/CustomDomainState' state_metadata: title: CustomDomainStateMetadata type: object description: > Metadata describing the backing state of the custom domain and why it may be in an erroneous state. additionalProperties: false properties: reported_status: type: string description: >- Reported status of the custom domain from backing infrastructure. example: INVALID reason: type: string description: > Reason why the custom domain may be in an erroneous state, reported from backing infrastructure. example: > CNAME points to '_acme-challenge..gateways.konghq.tech.' instead of '_acme-challenge..acme.gateways.konghq.tech.' readOnly: true entity_version: type: integer description: > Monotonically-increasing version count of the custom domain, to indicate the order of updates to the custom domain. readOnly: true example: 1 created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of custom domain creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of custom domain update date. readOnly: true required: - id - control_plane_id - control_plane_geo - domain - state - state_metadata - entity_version - created_at - updated_at CustomDomainOnlinePropertyStatus: title: Custom Domain Online Property Status description: Set of available statuses for the online properties of a custom domain. type: string readOnly: true enum: - verified - unverified CustomDomainOnlineStatus: title: Custom Domain Online Status type: object properties: cname: $ref: '#/components/schemas/CustomDomainOnlinePropertyStatus' ssl: $ref: '#/components/schemas/CustomDomainOnlinePropertyStatus' additionalProperties: false required: - cname - ssl CreateConfigurationRequest: title: CreateConfigurationRequest description: | Request schema for creating a configuration. type: object additionalProperties: false properties: control_plane_id: $ref: '#/components/schemas/ControlPlaneId' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeo' version: $ref: '#/components/schemas/GatewayVersion' dataplane_groups: type: array format: set description: >- List of data-plane groups that describe where to deploy instances, along with how many instances. items: $ref: '#/components/schemas/CreateConfigurationDataPlaneGroup' api_access: $ref: '#/components/schemas/ApiAccess' required: - control_plane_id - control_plane_geo - version - dataplane_groups CreateCustomDomainRequest: title: CreateCustomDomainRequest description: Request schema for creating a custom domain in the global API. type: object additionalProperties: false properties: control_plane_id: $ref: '#/components/schemas/ControlPlaneId' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeo' domain: $ref: '#/components/schemas/CustomDomainName' required: - control_plane_id - control_plane_geo - domain ResourceQuotaQualifier: description: Enumeration of resources available for quota enforcement. type: string enum: - count/provider-accounts.per-provider - count/networks.not-offline - count/data-planes-estimate - count/serverless-data-planes-estimate ResourceQuotaName: type: string description: The human-readable name of this resource quota. readOnly: true example: Active Networks ResourceQuotaDescription: type: string description: A more verbose description of what this resource quota enforces. readOnly: true example: >- Across the organization, the aggregate number of active networks cannot exceed this value. ResourceQuotaValue: type: integer minimum: 0 description: > The aggregate non-negative integer count of this resource that's allowed for the organization. example: 2 ResourceQuota: title: Resource Quota description: >- Object containing information about a resource quota for an organization. type: object properties: id: $ref: '#/components/schemas/ResourceQuotaId' resource: $ref: '#/components/schemas/ResourceQuotaQualifier' name: $ref: '#/components/schemas/ResourceQuotaName' description: $ref: '#/components/schemas/ResourceQuotaDescription' value: $ref: '#/components/schemas/ResourceQuotaValue' created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of resource quota creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: An RFC-3339 timestamp representation of resource quota update date. readOnly: true required: - id - resource - name - description - value - created_at - updated_at DefaultResourceQuota: title: Default Resource Quota description: >- Object containing information about a default resource quota, and any organizational overrides. type: object properties: id: $ref: '#/components/schemas/DefaultResourceQuotaId' resource: $ref: '#/components/schemas/ResourceQuotaQualifier' name: $ref: '#/components/schemas/ResourceQuotaName' description: $ref: '#/components/schemas/ResourceQuotaDescription' value: $ref: '#/components/schemas/ResourceQuotaValue' overrides: type: array description: Organizational overrides for this default resource quota. items: $ref: '#/components/schemas/ResourceQuota' created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of default resource quota creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of default resource quota update date. readOnly: true required: - id - resource - name - description - value - overrides - created_at - updated_at ResourceConfigurationQualifier: description: >- Enumeration of configuration qualifiers available for organization-wide configuration. type: string enum: - data-plane-group-idle-timeout-minutes ResourceConfigurationValue: type: integer description: The value of this resource configuration. example: 45 ResourceConfigurationName: type: string description: The human-readable name of this resource configuration. readOnly: true example: Data Plane Group Idle Timeout Minutes ResourceConfigurationDescription: type: string description: A more verbose description of what this resource configuration enforces. readOnly: true example: >- The number of minutes that a data plane group can be idle before it is automatically scaled down to zero instances. ConfigurationsFilterParameters: title: ConfigurationsFilterParameters type: object additionalProperties: false properties: control_plane_id: $ref: '#/components/schemas/IDFieldFilter' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeoFieldFilter' CustomDomainsFilterParameters: title: CustomDomainsFilterParameters type: object additionalProperties: false properties: control_plane_id: $ref: '#/components/schemas/IDFieldFilter' control_plane_geo: $ref: '#/components/schemas/ControlPlaneGeoFieldFilter' domain: $ref: '#/components/schemas/CloudGatewaysStringFieldFilterOverride' state: $ref: '#/components/schemas/CustomDomainStateFieldFilter' TransitGatewaysFilterParameters: title: TransitGatewaysFilterParameters type: object additionalProperties: false properties: name: $ref: '#/components/schemas/CloudGatewaysStringFieldFilterOverride' state: $ref: '#/components/schemas/TransitGatewayStateFieldFilter' NetworksFilterParameters: title: NetworksFilterParameters type: object additionalProperties: false properties: name: $ref: '#/components/schemas/CloudGatewaysStringFieldFilterOverride' state: $ref: '#/components/schemas/NetworkStateFieldFilter' ProviderAccountsFilterParameters: title: ProviderAccountsFilterParameters type: object additionalProperties: false properties: provider: $ref: '#/components/schemas/CloudGatewaysStringFieldFilterOverride' CloudGatewaysStringFieldFilterOverride: title: CloudGatewaysStringFieldFilterOverride oneOf: - $ref: '#/components/schemas/CloudGatewaysStringFieldEqualsFilterOverride' - $ref: '#/components/schemas/StringFieldContainsFilter' - $ref: '#/components/schemas/StringFieldNEQFilter' - $ref: '#/components/schemas/StringFieldOEQFilter' - $ref: '#/components/schemas/StringFieldOContainsFilter' CloudGatewaysStringFieldEqualsFilterOverride: title: StringFieldEqualsFilter description: Filters on the given string field value by exact match. oneOf: - type: string - type: object title: StringFieldEqualsComparison additionalProperties: false properties: eq: type: string required: - eq NetworkStateFieldFilter: title: NetworkStateFieldFilter oneOf: - $ref: '#/components/schemas/NetworkStateFieldEqualsFilter' - $ref: '#/components/schemas/NetworkStateFieldNotEqualsFilter' - $ref: '#/components/schemas/NetworkStateFieldOrEqualityFilter' NetworkStateFieldEqualsFilter: title: NetworkStateFieldEqualsFilter description: Filter a network state by exact match. oneOf: - $ref: '#/components/schemas/NetworkState' - type: object title: NetworkStateFieldEqualsComparison properties: eq: $ref: '#/components/schemas/NetworkState' required: - eq NetworkStateFieldNotEqualsFilter: title: NetworkStateFieldNotEqualsFilter description: Filter a network state by inequality match. type: object properties: neq: $ref: '#/components/schemas/NetworkState' required: - neq NetworkStateFieldOrEqualityFilter: title: NetworkStateFieldOrEqualityFilter description: > Filter a network state by determining if the value is equal to any in a set of values, where the set is a comma-delimited list. type: object properties: oeq: type: string required: - oeq CustomDomainStateFieldFilter: title: CustomDomainStateFieldFilter oneOf: - $ref: '#/components/schemas/CustomDomainStateFieldEqualsFilter' - $ref: '#/components/schemas/CustomDomainStateFieldNotEqualsFilter' - $ref: '#/components/schemas/CustomDomainStateFieldOrEqualityFilter' CustomDomainStateFieldEqualsFilter: title: CustomDomainStateFieldEqualsFilter description: Filter custom domain state by exact match. oneOf: - $ref: '#/components/schemas/CustomDomainState' - type: object title: CustomDomainStateFieldEqualsComparison properties: eq: $ref: '#/components/schemas/CustomDomainState' required: - eq CustomDomainStateFieldNotEqualsFilter: title: CustomDomainStateFieldNotEqualsFilter description: Filter custom domain state by inequality match. type: object properties: neq: $ref: '#/components/schemas/CustomDomainState' required: - neq CustomDomainStateFieldOrEqualityFilter: title: CustomDomainStateFieldOrEqualityFilter description: > Filter custom domain state by determining if the value is equal to any in a set of values, where the set is a comma-delimited list. type: object properties: oeq: type: string required: - oeq TransitGatewayStateFieldFilter: title: TransitGatewayStateFieldFilter oneOf: - $ref: '#/components/schemas/TransitGatewayStateFieldEqualsFilter' - $ref: '#/components/schemas/TransitGatewayStateFieldNotEqualsFilter' - $ref: '#/components/schemas/TransitGatewayStateFieldOrEqualityFilter' TransitGatewayStateFieldEqualsFilter: title: TransitGatewayStateFieldEqualsFilter description: Filter transit-gateway state by exact match. oneOf: - $ref: '#/components/schemas/TransitGatewayState' - type: object title: TransitGatewayStateFieldEqualsComparison properties: eq: $ref: '#/components/schemas/TransitGatewayState' required: - eq TransitGatewayStateFieldNotEqualsFilter: title: TransitGatewayStateFieldNotEqualsFilter description: Filter transit-gateway state by inequality match. type: object properties: neq: $ref: '#/components/schemas/TransitGatewayState' required: - neq TransitGatewayStateFieldOrEqualityFilter: title: TransitGatewayStateFieldOrEqualityFilter description: > Filter transit-gateway state by determining if the value is equal to any in a set of values, where the set is a comma-delimited list. type: object properties: oeq: type: string required: - oeq IDFieldFilter: description: >- Returns entities that exact match any of the comma-delimited phrases in the filter string. type: object properties: eq: type: string neq: type: string oeq: type: string additionalProperties: false ControlPlaneGeoFieldFilter: title: ControlPlaneGeoFieldFilter oneOf: - $ref: '#/components/schemas/ControlPlaneGeoFieldEqualsFilter' - $ref: '#/components/schemas/ControlPlaneGeoFieldNotEqualsFilter' - $ref: '#/components/schemas/ControlPlaneGeoFieldOrEqualityFilter' ControlPlaneGeoFieldEqualsFilter: title: ControlPlaneGeoFieldEqualsFilter description: Filter a control-plane geo by exact match. oneOf: - $ref: '#/components/schemas/ControlPlaneGeo' - type: object title: ControlPlaneGeoFieldEqualsComparison properties: eq: $ref: '#/components/schemas/ControlPlaneGeo' required: - eq ControlPlaneGeoFieldNotEqualsFilter: title: ControlPlaneGeoFieldNotEqualsFilter description: Filter a control-plane geo by inequality match. type: object properties: neq: $ref: '#/components/schemas/ControlPlaneGeo' required: - neq ControlPlaneGeoFieldOrEqualityFilter: title: ControlPlaneGeoFieldOrEqualityFilter description: > Filter a control-plane geo by determining if the value is equal to any in a set of values, where the set is a comma-delimited list. type: object properties: oeq: type: string required: - oeq ResourceConfiguration: title: Resource Configuration description: Object containing information about a resource configuration. type: object properties: id: $ref: '#/components/schemas/ResourceConfigurationId' qualifier: $ref: '#/components/schemas/ResourceConfigurationQualifier' value: $ref: '#/components/schemas/ResourceConfigurationValue' required: - id - qualifier - value DefaultResourceConfiguration: title: Default Resource Configuration description: >- Object containing information about a default resource configurations, and any organizational overrides. type: object properties: id: $ref: '#/components/schemas/DefaultResourceConfigurationId' qualifier: $ref: '#/components/schemas/ResourceConfigurationQualifier' name: $ref: '#/components/schemas/ResourceConfigurationName' description: $ref: '#/components/schemas/ResourceConfigurationDescription' value: $ref: '#/components/schemas/ResourceConfigurationValue' overrides: type: array description: Organizational overrides for this default resource configuration. items: $ref: '#/components/schemas/ResourceConfiguration' created_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of default resource configuration creation date. readOnly: true updated_at: type: string format: date-time example: '2022-11-04T20:10:06.927Z' description: >- An RFC-3339 timestamp representation of default resource configuration update date. readOnly: true required: - id - qualifier - name - description - value - overrides - created_at - updated_at StringFieldOContainsFilter: title: StringFieldOContainsFilter description: >- Returns entities that fuzzy-match any of the comma-delimited phrases in the filter string. type: object additionalProperties: false properties: ocontains: type: string required: - ocontains NotificationFilterParameters: title: NotificationFilterParameters type: object additionalProperties: false properties: title: $ref: '#/components/schemas/StringFieldFilter' description: $ref: '#/components/schemas/StringFieldFilter' namespace: $ref: '#/components/schemas/StringFieldFilter' region: $ref: '#/components/schemas/StringFieldFilter' status: $ref: '#/components/schemas/StringFieldFilter' ConfigurationFilterParameters: title: ConfigurationFilterParameters type: object additionalProperties: false properties: event_title: $ref: '#/components/schemas/StringFieldFilter' event_description: $ref: '#/components/schemas/StringFieldFilter' event_namespace: $ref: '#/components/schemas/StringFieldFilter' region: $ref: '#/components/schemas/StringFieldFilter' Notification: type: object description: Properties of a notification. additionalProperties: false required: - id - title - description - status - region - namespace - entity_id - details - created_at - updated_at properties: id: $ref: '#/components/schemas/UUID' title: type: string description: type: string status: $ref: '#/components/schemas/NotificationStatus' region: $ref: '#/components/schemas/NotificationRegion' namespace: $ref: '#/components/schemas/NotificationNamespace' entity_id: type: string description: ID of the entity. Use '*' to represent all entities of this type. details: type: object description: Metadata associated with the notification to build actionable links. created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' NotificationUpdatePayload: description: Status of the notification. type: object required: - status properties: status: $ref: '#/components/schemas/NotificationStatus' NotificationStatus: type: string description: Status of the notification. enum: - READ - UNREAD - ARCHIVED NotificationRegion: type: string description: Region associated to a notification. enum: - US - EU - AU - ME - IN - '*' NotificationChannel: type: object description: Channel subscription details for an event. required: - type - enabled properties: type: $ref: '#/components/schemas/NotificationChannelType' enabled: type: boolean NotificationChannelType: type: string enum: - EMAIL - IN_APP NotificationNamespace: type: string enum: - plan-and-usage - organization - dev-portal - cloud-gateways - gateway-manager EntityTypes: type: string enum: - billing-invoice - access-token - webhook - dev-portal - dataplane-group - dataplane UserConfiguration: description: Properties of an event. type: object required: - event_id - event_title - event_description - event_namespace - event_subscription_count - default_subscription properties: event_id: type: string event_title: type: string event_description: type: string event_namespace: $ref: '#/components/schemas/NotificationNamespace' event_subscription_count: type: integer default_subscription: type: array items: $ref: '#/components/schemas/DefaultSubscription' DefaultSubscription: type: object required: - channel - enabled properties: channel: $ref: '#/components/schemas/NotificationChannelType' enabled: type: boolean EventSubscriptionResponse: properties: id: $ref: '#/components/schemas/UUID' entity_type: $ref: '#/components/schemas/EntityTypes' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' regions: type: array items: $ref: '#/components/schemas/NotificationRegion' entities: type: array items: type: string description: ID of the entity. Use '*' to represent all entities of this type. channels: type: array items: $ref: '#/components/schemas/NotificationChannel' enabled: type: boolean description: Enable/Disable complete subscription within an event. name: type: string description: User provided name of the subscription. description: Properties associated with an event subscription. required: - id - entity_type - created_at - updated_at - regions - entities - channels - enabled - name type: object EventSubscription: description: Properties associated with an event subscription. type: object required: - regions - entities - channels - enabled - name properties: regions: type: array items: $ref: '#/components/schemas/NotificationRegion' entities: type: array items: type: string description: ID of the entity. Use '*' to represent all entities of this type. channels: type: array items: $ref: '#/components/schemas/NotificationChannel' enabled: type: boolean description: Enable/Disable complete subscription within an event. name: type: string description: User provided name of the subscription. BulkPayload: description: Request body schema for bulk status update. type: object required: - ids - status properties: ids: type: array items: type: string minItems: 1 maxItems: 100 uniqueItems: true status: $ref: '#/components/schemas/NotificationStatus' CursorMetaPage: type: object required: - size - next - previous properties: first: description: URI to the first page type: string format: path last: description: URI to the last page type: string format: path next: description: URI to the next page type: string format: path nullable: true previous: description: URI to the previous page type: string format: path nullable: true size: description: Requested page size type: number example: 10 DcrConfigPropertyInitialClientId: title: DcrConfigPropertyInitialClientId type: string maxLength: 256 description: > This ID should be copied from your identity provider's settings after you create a client and assign it as the management client for DCR for this developer portal DcrConfigPropertyInitialClientSecret: title: DcrConfigPropertyInitialClientSecret type: string maxLength: 256 description: > This secret should be copied from your identity provider's settings after you create a client and assign it as the management client for DCR for this developer portal DcrConfigPropertyDcrToken: title: DcrConfigPropertyInitialDcrToken type: string maxLength: 256 description: > This secret should be copied from your identity provider's settings after you create a client and assign it as the management client for DCR for this developer portal DcrConfigPropertyInitialClientAudience: title: DcrConfigPropertyInitialClientAudience type: string maxLength: 256 nullable: true description: > This is the audience value used for the initial client. If using a custom domain on Auth0, this must be set as to the Auth0 Management API audience value. If left blank, the issuer will be used instead. DcrConfigPropertyApiKey: title: DcrConfigPropertyApiKey type: string pattern: ^[a-zA-Z0-9_]+$ minLength: 12 maxLength: 256 description: > This is the API Key that will be sent with each HTTP request to the custom DCR server. It can be verified on the server to ensure that incoming requests are coming from Konnect. DcrConfigPropertyDisableEventHooks: title: DcrConfigPropertyDisableEventHooks type: boolean description: >- This flag disables all the event-hooks on the application flow for the DCR provider. DcrConfigPropertyDisableRefreshSecret: title: DcrConfigPropertyDisableRefreshSecret type: boolean description: >- This flag disable the refresh-secret endpoint on the application flow for the DCR provider. DcrConfigAuth0InResponse: title: DcrConfigAuth0InResponse type: object description: A DCR provider configuration for Auth0 additionalProperties: false required: - initial_client_id - initial_client_audience - use_developer_managed_scopes properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_audience: $ref: '#/components/schemas/DcrConfigPropertyInitialClientAudience' use_developer_managed_scopes: type: boolean CreateDcrConfigAuth0InRequest: title: DcrConfigAuth0InRequest type: object description: Payload to create an Auth0 DCR provider. additionalProperties: false required: - initial_client_id - initial_client_secret properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' initial_client_audience: $ref: '#/components/schemas/DcrConfigPropertyInitialClientAudience' use_developer_managed_scopes: type: boolean UpdateDcrConfigAuth0InRequest: title: DcrConfigAuth0InRequest type: object description: Payload to update an Auth0 DCR provider. additionalProperties: false properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' initial_client_audience: $ref: '#/components/schemas/DcrConfigPropertyInitialClientAudience' use_developer_managed_scopes: type: boolean DcrConfigAzureAdInResponse: title: DcrConfigAzureAdInResponse type: object description: A DCR provider configuration for Azure AD additionalProperties: false required: - initial_client_id properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' CreateDcrConfigAzureAdInRequest: title: DcrConfigAzureAdInRequest type: object description: Payload to create an Azure AD DCR provider. additionalProperties: false required: - initial_client_id - initial_client_secret properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' UpdateDcrConfigAzureAdInRequest: title: DcrConfigAzureAdInRequest type: object description: Payload to update an Azure AD DCR provider. additionalProperties: false properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' DcrConfigCurityInResponse: title: DcrConfigCurityInResponse type: object description: A DCR provider configuration for Curity additionalProperties: false required: - initial_client_id properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' CreateDcrConfigCurityInRequest: title: DcrConfigCurityInRequest type: object description: Payload to create a Curity DCR provider. additionalProperties: false required: - initial_client_id - initial_client_secret properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' UpdateDcrConfigCurityInRequest: title: DcrConfigCurityInRequest type: object description: Payload to update a Curity DCR provider. additionalProperties: false properties: initial_client_id: $ref: '#/components/schemas/DcrConfigPropertyInitialClientId' initial_client_secret: $ref: '#/components/schemas/DcrConfigPropertyInitialClientSecret' DcrConfigOktaInResponse: title: DcrConfigOktaInResponse type: object description: A DCR provider configuration for Okta additionalProperties: false CreateDcrConfigOktaInRequest: title: DcrConfigOktaInRequest type: object description: Payload to create an Okta DCR provider. additionalProperties: false required: - dcr_token properties: dcr_token: $ref: '#/components/schemas/DcrConfigPropertyDcrToken' UpdateDcrConfigOktaInRequest: title: DcrConfigOktaInRequest type: object description: Payload to update an Okta DCR provider. additionalProperties: false properties: dcr_token: $ref: '#/components/schemas/DcrConfigPropertyDcrToken' DcrConfigHttpInResponse: title: DcrConfigHttpInResponse type: object description: A DCR provider configuration for HTTP additionalProperties: false required: - dcr_base_url properties: dcr_base_url: type: string format: url disable_event_hooks: $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks' disable_refresh_secret: $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret' CreateDcrConfigHttpInRequest: title: CreateDcrConfigHttpInRequest type: object description: Payload to create an HTTP DCR provider. additionalProperties: false required: - dcr_base_url - api_key properties: dcr_base_url: $ref: '#/components/schemas/DcrBaseUrl' api_key: $ref: '#/components/schemas/DcrConfigPropertyApiKey' disable_event_hooks: $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks' disable_refresh_secret: $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret' UpdateDcrConfigHttpInRequest: title: CreateDcrConfigHttpInRequest type: object description: Payload to update an HTTP DCR provider. additionalProperties: false properties: dcr_base_url: $ref: '#/components/schemas/DcrBaseUrl' api_key: $ref: '#/components/schemas/DcrConfigPropertyApiKey' disable_event_hooks: $ref: '#/components/schemas/DcrConfigPropertyDisableEventHooks' disable_refresh_secret: $ref: '#/components/schemas/DcrConfigPropertyDisableRefreshSecret' DcrProviderType: title: DcrProviderType type: string description: >- The type of DCR provider. Can be one of the following - auth0, azureAd, curity, okta, http enum: - auth0 - azureAd - curity - okta - http DcrProviderBase: type: object description: Properties common to all DCR Providers. additionalProperties: false required: - id - name - provider_type - issuer - active - dcr_config - created_at - updated_at properties: id: $ref: '#/components/schemas/UUID' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' provider_type: type: string description: >- The type of DCR provider. Can be one of the following - auth0, azureAd, curity, okta, http issuer: type: string description: The issuer of the DCR provider. format: url maxLength: 256 active: readOnly: true type: boolean description: At least one active auth strategy is using this DCR provider. dcr_config: type: object description: The DCR configuration for this DCR provider. labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' DcrProviderAuth0: title: DCR provider - Auth0 type: object description: >- A DCR provider for Auth0 -- only properties not included in DcrProviderBase required: - provider_type - dcr_config properties: provider_type: type: string enum: - auth0 dcr_config: $ref: '#/components/schemas/DcrConfigAuth0InResponse' DcrProviderAzureAd: title: DCR provider - Azure AD type: object description: >- A DCR provider for Azure AD -- only properties not included in DcrProviderBase required: - provider_type - dcr_config properties: provider_type: type: string enum: - azureAd dcr_config: $ref: '#/components/schemas/DcrConfigAzureAdInResponse' DcrProviderCurity: title: DCR provider - Curity type: object description: >- A DCR provider for Curity -- only properties not included in DcrProviderBase required: - provider_type - dcr_config properties: provider_type: type: string enum: - curity dcr_config: $ref: '#/components/schemas/DcrConfigCurityInResponse' DcrProviderOkta: title: DCR provider - OKTA type: object description: >- A DCR provider for Okta -- only properties not included in DcrProviderBase required: - provider_type - dcr_config properties: provider_type: type: string enum: - okta dcr_config: $ref: '#/components/schemas/DcrConfigOktaInResponse' DcrProviderHttp: title: DCR provider - HTTP type: object description: >- A DCR provider for HTTP -- only properties not included in DcrProviderBase required: - provider_type - dcr_config properties: provider_type: type: string enum: - http dcr_config: $ref: '#/components/schemas/DcrConfigHttpInResponse' CreateDcrProviderResponse: type: object description: A response containing the newly created DCR provider object. allOf: - $ref: '#/components/schemas/DcrProviderBase' - discriminator: propertyName: provider_type type: object oneOf: - $ref: '#/components/schemas/DcrProviderAuth0' - $ref: '#/components/schemas/DcrProviderAzureAd' - $ref: '#/components/schemas/DcrProviderCurity' - $ref: '#/components/schemas/DcrProviderOkta' - $ref: '#/components/schemas/DcrProviderHttp' DcrProviderResponse: type: object description: >- A response containing a single DCR provider object. Sensitive fields will be removed from the response. allOf: - $ref: '#/components/schemas/DcrProviderBase' - discriminator: propertyName: provider_type type: object oneOf: - $ref: '#/components/schemas/DcrProviderAuth0' - $ref: '#/components/schemas/DcrProviderAzureAd' - $ref: '#/components/schemas/DcrProviderCurity' - $ref: '#/components/schemas/DcrProviderOkta' - $ref: '#/components/schemas/DcrProviderHttp' CreateDcrProviderRequestAuth0: title: CreateDcrProviderRequestAuth0 type: object description: Request body for creating an Auth0 DCR provider. required: - provider_type - dcr_config - name - issuer properties: provider_type: type: string enum: - auth0 dcr_config: $ref: '#/components/schemas/CreateDcrConfigAuth0InRequest' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/Labels' CreateDcrProviderRequestAzureAd: title: CreateDcrProviderRequestAzureAd type: object description: Request body for creating an Azure AD DCR provider. required: - provider_type - dcr_config - name - issuer properties: provider_type: type: string enum: - azureAd dcr_config: $ref: '#/components/schemas/CreateDcrConfigAzureAdInRequest' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/Labels' CreateDcrProviderRequestCurity: title: CreateDcrProviderRequestCurity type: object description: Request body for creating a Curity DCR provider. required: - provider_type - dcr_config - name - issuer properties: provider_type: type: string enum: - curity dcr_config: $ref: '#/components/schemas/CreateDcrConfigCurityInRequest' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/Labels' CreateDcrProviderRequestOkta: title: CreateDcrProviderRequestOkta type: object description: Request body for creating an Okta DCR provider. required: - provider_type - dcr_config - name - issuer properties: provider_type: type: string enum: - okta dcr_config: $ref: '#/components/schemas/CreateDcrConfigOktaInRequest' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/Labels' CreateDcrProviderRequestHttp: title: CreateDcrProviderRequestHttp type: object description: Request body for creating an HTTP DCR provider. required: - provider_type - dcr_config - name - issuer properties: provider_type: type: string enum: - http dcr_config: $ref: '#/components/schemas/CreateDcrConfigHttpInRequest' name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/Labels' CreateDcrProviderRequest: title: CreateDcrProviderRequest description: >- Request body for creating a DCR provider. The provider_type cannot be updated after creation. type: object discriminator: propertyName: provider_type mapping: auth0: '#/components/schemas/CreateDcrProviderRequestAuth0' azureAd: '#/components/schemas/CreateDcrProviderRequestAzureAd' curity: '#/components/schemas/CreateDcrProviderRequestCurity' okta: '#/components/schemas/CreateDcrProviderRequestOkta' http: '#/components/schemas/CreateDcrProviderRequestHttp' oneOf: - $ref: '#/components/schemas/CreateDcrProviderRequestAuth0' - $ref: '#/components/schemas/CreateDcrProviderRequestAzureAd' - $ref: '#/components/schemas/CreateDcrProviderRequestCurity' - $ref: '#/components/schemas/CreateDcrProviderRequestOkta' - $ref: '#/components/schemas/CreateDcrProviderRequestHttp' UpdateDcrProviderRequest: type: object title: UpdateDcrProviderRequest description: >- A set of updates to a DCR provider. The provider_type cannot be updated after creation. additionalProperties: false properties: name: $ref: '#/components/schemas/DcrProviderName' display_name: $ref: '#/components/schemas/DcrProviderDisplayName' issuer: type: string format: url maxLength: 256 labels: $ref: '#/components/schemas/LabelsUpdate' dcr_config: anyOf: - $ref: '#/components/schemas/UpdateDcrConfigAuth0InRequest' - $ref: '#/components/schemas/UpdateDcrConfigAzureAdInRequest' - $ref: '#/components/schemas/UpdateDcrConfigCurityInRequest' - $ref: '#/components/schemas/UpdateDcrConfigOktaInRequest' - $ref: '#/components/schemas/UpdateDcrConfigHttpInRequest' ListDcrProvidersResponse: title: ListDcrProvidersResponse type: object description: A paginated list response for a collection of DCR providers additionalProperties: false required: - data - meta properties: data: type: array items: $ref: '#/components/schemas/DcrProviderResponse' meta: $ref: '#/components/schemas/PaginatedMeta' VerifyDcrProviderResponse: title: VerifyDcrProviderResponse type: object description: >- A response containing the result of attempting to verify a DCR provider configuration. additionalProperties: false required: - status - errors properties: status: type: string enum: - success - failed errors: type: array items: type: string AppAuthStrategyConfigKeyAuth: title: AppAuthStrategyConfigKeyAuth description: > The most basic mode to configure an Application Auth Strategy for an API Product Version. Using this mode will allow developers to generate API keys that will authenticate their application requests. Once authenticated, an application will be granted access to any Product Version it is registered for that is configured for Key Auth. type: object additionalProperties: false properties: key_names: type: array maxItems: 10 minItems: 1 items: type: string maxLength: 256 description: >- The names of the headers containing the API key. You can specify multiple header names. PartialAppAuthStrategyConfigOpenIDConnect: title: PartialAppAuthStrategyConfigOpenIDConnect description: > A more advanced mode to configure an API Product Version’s Application Auth Strategy. Using this mode will allow developers to use API credentials issued from an external IdP that will authenticate their application requests. Once authenticated, an application will be granted access to any Product Version it is registered for that is configured for the same Auth Strategy. An OIDC strategy may be used in conjunction with a DCR provider to automatically create the IdP application. type: object additionalProperties: true properties: issuer: type: string format: url maxLength: 256 credential_claim: type: array maxItems: 10 items: type: string maxLength: 128 scopes: type: array maxItems: 50 items: type: string maxLength: 128 auth_methods: type: array maxItems: 10 items: type: string maxLength: 64 AppAuthStrategyConfigOpenIDConnect: title: AppAuthStrategyConfigOpenIDConnect description: > A more advanced mode to configure an API Product Version’s Application Auth Strategy. Using this mode will allow developers to use API credentials issued from an external IdP that will authenticate their application requests. Once authenticated, an application will be granted access to any Product Version it is registered for that is configured for the same Auth Strategy. An OIDC strategy may be used in conjunction with a DCR provider to automatically create the IdP application. type: object additionalProperties: true required: - issuer - credential_claim - scopes - auth_methods properties: issuer: type: string format: url maxLength: 256 credential_claim: type: array maxItems: 10 items: type: string maxLength: 128 scopes: type: array maxItems: 50 items: type: string maxLength: 128 auth_methods: type: array maxItems: 10 items: type: string maxLength: 64 labels: $ref: '#/components/schemas/Labels' AppAuthStrategyKeyAuthRequest: title: AppAuthStrategyKeyAuthRequest description: Request for creating a Key Auth Application Auth Strategy type: object additionalProperties: false required: - name - display_name - strategy_type - configs properties: name: $ref: '#/components/schemas/AuthStrategyName' display_name: $ref: '#/components/schemas/AuthStrategyDisplayName' strategy_type: type: string enum: - key_auth configs: type: object description: JSON-B object containing the configuration for the Key Auth strategy additionalProperties: false required: - key-auth properties: key-auth: $ref: '#/components/schemas/AppAuthStrategyConfigKeyAuth' labels: $ref: '#/components/schemas/Labels' AppAuthStrategyKeyAuthResponse: title: AppAuthStrategyKeyAuthResponse description: >- Response payload from creating or updating a Key Auth Application Auth Strategy type: object additionalProperties: false required: - id - name - display_name - strategy_type - configs - active - dcr_provider - labels - created_at - updated_at properties: id: $ref: '#/components/schemas/UUID' name: $ref: '#/components/schemas/AuthStrategyName' display_name: $ref: '#/components/schemas/AuthStrategyDisplayName' strategy_type: type: string enum: - key_auth configs: type: object description: JSON-B object containing the configuration for the Key Auth strategy additionalProperties: false required: - key-auth properties: key-auth: $ref: '#/components/schemas/AppAuthStrategyConfigKeyAuth' active: type: boolean description: At least one published product version is using this auth strategy. dcr_provider: nullable: true type: object additionalProperties: false required: - id - name - provider_type properties: id: $ref: '#/components/schemas/UUID' name: type: string display_name: $ref: '#/components/schemas/DcrProviderDisplayName' provider_type: $ref: '#/components/schemas/DcrProviderType' labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' AppAuthStrategyOpenIDConnectRequest: title: AppAuthStrategyOpenIDConnectRequest description: Payload for creating an OIDC Application Auth Strategy type: object additionalProperties: false required: - name - display_name - strategy_type - configs properties: name: $ref: '#/components/schemas/AuthStrategyName' display_name: $ref: '#/components/schemas/AuthStrategyDisplayName' strategy_type: type: string enum: - openid_connect configs: type: object description: JSON-B object containing the configuration for the OIDC strategy additionalProperties: false required: - openid-connect properties: openid-connect: $ref: '#/components/schemas/AppAuthStrategyConfigOpenIDConnect' dcr_provider_id: nullable: true type: string format: uuid labels: $ref: '#/components/schemas/Labels' AppAuthStrategyOpenIDConnectResponse: title: AppAuthStrategyOpenIDConnectResponse description: Response payload from creating an OIDC Application Auth Strategy type: object additionalProperties: false required: - id - name - display_name - strategy_type - configs - active - dcr_provider - labels - created_at - updated_at properties: id: $ref: '#/components/schemas/UUID' name: $ref: '#/components/schemas/AuthStrategyName' display_name: $ref: '#/components/schemas/AuthStrategyDisplayName' strategy_type: type: string enum: - openid_connect configs: type: object description: JSON-B object containing the configuration for the OIDC strategy additionalProperties: false required: - openid-connect properties: openid-connect: $ref: '#/components/schemas/AppAuthStrategyConfigOpenIDConnect' active: type: boolean description: At least one published product version is using this auth strategy. dcr_provider: nullable: true type: object additionalProperties: false required: - id - name - provider_type properties: id: $ref: '#/components/schemas/UUID' name: type: string display_name: $ref: '#/components/schemas/DcrProviderDisplayName' provider_type: $ref: '#/components/schemas/DcrProviderType' labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' CreateAppAuthStrategyRequest: x-speakeasy-entity: ApplicationAuthStrategy title: CreateAppAuthStrategyRequest description: Request body for creating an Application Auth Strategy type: object discriminator: propertyName: strategy_type required: - strategy_type oneOf: - $ref: '#/components/schemas/AppAuthStrategyKeyAuthRequest' - $ref: '#/components/schemas/AppAuthStrategyOpenIDConnectRequest' AppAuthStrategy: x-speakeasy-entity: ApplicationAuthStrategy title: AppAuthStrategy description: >- A set of plugin configurations that represent how the gateway will perform authentication and authorization for a Product Version. Called “Auth Strategy” for short in the context of portals/applications. The plugins are synced to any Gateway Service that is currently linked or becomes linked to the Product Version. type: object discriminator: propertyName: strategy_type required: - strategy_type oneOf: - $ref: '#/components/schemas/AppAuthStrategyKeyAuthResponse' - $ref: '#/components/schemas/AppAuthStrategyOpenIDConnectResponse' UpdateAppAuthStrategyRequest: x-speakeasy-entity: ApplicationAuthStrategy title: UpdateAppAuthStrategyRequest description: Request body for updating an Application Auth Strategy type: object additionalProperties: false properties: name: $ref: '#/components/schemas/AuthStrategyName' display_name: $ref: '#/components/schemas/AuthStrategyDisplayName' labels: $ref: '#/components/schemas/LabelsUpdate' dcr_provider_id: nullable: true type: string format: uuid configs: type: object description: >- JSON-B object containing the configuration for the OIDC strategy under the key 'openid-connect' or the configuration for the Key Auth strategy under the key 'key-auth' oneOf: - type: object additionalProperties: false required: - openid-connect properties: openid-connect: $ref: >- #/components/schemas/PartialAppAuthStrategyConfigOpenIDConnect - type: object additionalProperties: false required: - key-auth properties: key-auth: $ref: '#/components/schemas/AppAuthStrategyConfigKeyAuth' CreateAppAuthStrategyResponse: $ref: '#/components/schemas/AppAuthStrategy' UpdateAppAuthStrategyResponse: $ref: '#/components/schemas/AppAuthStrategy' GetAppAuthStrategyResponse: $ref: '#/components/schemas/AppAuthStrategy' ListAppAuthStrategiesResponse: title: ListAppAuthStrategiesResponse description: >- A paginated list response for a collection of Application Auth Strategies type: object additionalProperties: false required: - data - meta properties: data: type: array items: $ref: '#/components/schemas/AppAuthStrategy' meta: $ref: '#/components/schemas/PaginatedMeta' DcrBaseUrl: type: string description: > The base URL of the DCR server. This is the URL that will be used to make the HTTP requests from Konnect to the DCR provider. This URL must be accessible from the Konnect service. format: url maxLength: 256 DcrProviderDisplayName: type: string description: > The display name of the DCR provider. This is used to identify the DCR provider in the Portal UI. minLength: 1 maxLength: 256 DcrProviderName: type: string description: > The name of the DCR provider. This is used to identify the DCR provider in the Konnect UI. minLength: 1 maxLength: 256 AuthStrategyName: type: string description: > The name of the auth strategy. This is used to identify the auth strategy in the Konnect UI. minLength: 1 maxLength: 256 AuthStrategyDisplayName: type: string description: > The display name of the Auth strategy. This is used to identify the Auth strategy in the Portal UI. maxLength: 256 UuidFieldFilter: description: Filters on the given string field value by exact match inequality. type: object properties: eq: type: string oeq: type: string neq: type: string additionalProperties: false DataPlaneClientCertificate: x-speakeasy-entity: GatewayDataPlaneClientCertificate type: object properties: id: type: string description: Unique ID of the certificate entity. created_at: type: integer description: Date certificate was created. updated_at: type: integer description: Date certificate was last updated. cert: type: string description: JSON escaped string of the certificate. ConfigStore: type: object properties: id: type: string format: uuid example: b9e81174-b5bb-4638-a3c3-8afe61a0abf8 description: The Config Store ID. readOnly: true name: type: string description: The name of the Config Store example: My Name created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' CreateConfigStore: title: Create Config Store Request description: The request schema to create a Config Store. type: object additionalProperties: false properties: name: type: string minLength: 1 maxLength: 100 example: Config Store UpdateConfigStore: title: Update Config Store Request description: The request schema to update a Config Store. type: object additionalProperties: false properties: name: type: string minLength: 1 maxLength: 100 example: Config Store ConfigStoreSecret: type: object properties: key: type: string value: type: string created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' CreateConfigStoreSecret: type: object required: - key - value properties: key: type: string minLength: 1 maxLength: 512 value: type: string minLength: 1 maxLength: 5120 UpdateConfigStoreSecret: type: object required: - value properties: value: type: string minLength: 1 maxLength: 5120 ACL: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true group: type: string id: type: string nullable: true tags: type: array items: type: string example: consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f group: foo id: b1f34145-0343-41a4-9602-4c69dec2f269 additionalProperties: false required: - group ACLWithoutParents: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true group: type: string id: type: string nullable: true tags: type: array items: type: string example: group: foo id: b1f34145-0343-41a4-9602-4c69dec2f269 additionalProperties: false required: - group BasicAuth: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true password: type: string tags: type: array items: type: string username: type: string example: consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f id: b2f34145-0343-41a4-9602-4c69dec2f269 password: hashedsoopersecretvalue username: darius additionalProperties: false required: - username - password BasicAuthWithoutParents: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true password: type: string tags: type: array items: type: string username: type: string example: id: b2f34145-0343-41a4-9602-4c69dec2f269 password: hashedsoopersecretvalue username: darius additionalProperties: false required: - username - password CACertificate: description: >- A CA certificate object represents a trusted CA. These objects are used by Kong to verify the validity of a client or server certificate. type: object properties: cert: description: PEM-encoded public certificate of the CA. type: string cert_digest: description: >- SHA256 hex digest of the public certificate. This field is read-only and it cannot be set by the caller, the value is automatically computed. type: string nullable: true created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true tags: description: >- An optional set of strings associated with the Certificate for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: cert: |- -----BEGIN CERTIFICATE----- certificate-content -----END CERTIFICATE----- id: b2f34145-0343-41a4-9602-4c69dec2f260 additionalProperties: false required: - cert Certificate: description: >- A certificate object represents a public certificate, and can be optionally paired with the corresponding private key. These objects are used by Kong to handle SSL/TLS termination for encrypted requests, or for use as a trusted CA store when validating peer certificate of client/service. Certificates are optionally associated with SNI objects to tie a cert/key pair to one or more hostnames. If intermediate certificates are required in addition to the main certificate, they should be concatenated together into one string according to the following order: main certificate on the top, followed by any intermediates. type: object properties: cert: description: >- PEM-encoded public certificate chain of the SSL key pair. This field is _referenceable_, which means it can be securely stored as a [secret](/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](/gateway/latest/plan-and-deploy/security/secrets-management/reference-format). type: string cert_alt: description: >- PEM-encoded public certificate chain of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is _referenceable_, which means it can be securely stored as a [secret](/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](/gateway/latest/plan-and-deploy/security/secrets-management/reference-format). type: string nullable: true created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true key: description: >- PEM-encoded private key of the SSL key pair. This field is _referenceable_, which means it can be securely stored as a [secret](/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](/gateway/latest/plan-and-deploy/security/secrets-management/reference-format). type: string key_alt: description: >- PEM-encoded private key of the alternate SSL key pair. This should only be set if you have both RSA and ECDSA types of certificate available and would like Kong to prefer serving using ECDSA certs when client advertises support for it. This field is _referenceable_, which means it can be securely stored as a [secret](/gateway/latest/plan-and-deploy/security/secrets-management/getting-started) in a vault. References must follow a [specific format](/gateway/latest/plan-and-deploy/security/secrets-management/reference-format). type: string nullable: true snis: type: array items: type: string nullable: true tags: description: >- An optional set of strings associated with the Certificate for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: cert: |- -----BEGIN CERTIFICATE----- certificate-content -----END CERTIFICATE----- id: b2f34145-0343-41a4-9602-4c69dec2f269 key: |- -----BEGIN PRIVATE KEY----- private-key-content -----END PRIVATE KEY----- additionalProperties: false required: - cert - key Consumer: description: >- The Consumer object represents a consumer - or a user - of a Service. You can either rely on Kong as the primary datastore, or you can map the consumer list with your database to keep consistency between Kong and your existing primary datastore. type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true custom_id: description: >- Field for storing an existing unique ID for the Consumer - useful for mapping Kong with users in your existing database. You must send either this field or `username` with the request. type: string nullable: true id: type: string nullable: true tags: description: >- An optional set of strings associated with the Consumer for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true username: description: >- The unique username of the Consumer. You must send either this field or `custom_id` with the request. type: string nullable: true example: custom_id: '4200' id: 8a388226-80e8-4027-a486-25e4f7db5d21 tags: - silver-tier username: bob-the-builder additionalProperties: false ConsumerGroup: type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true name: type: string tags: type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true additionalProperties: false required: - name ConsumerGroupInsideWrapper: type: object properties: consumer_group: $ref: '#/components/schemas/ConsumerGroup' CustomPlugin: type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true handler: type: string id: type: string nullable: true name: type: string schema: type: string tags: type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: handler: >- return { VERSION = '1.0,0', PRIORITY = 500, access = function(self, config) kong.service.request.set_header(config.name, config.value) end } id: 868346aa-1105-4b77-8346-aa1105fb77c4 name: set-header schema: >- return { name = 'set-header', fields = { { protocols = require('kong.db.schema.typedefs').protocols_http }, { config = { type = 'record', fields = { { name = { description = 'The name of the header to set.', type = 'string', required = true } }, { value = { description = 'The value for the header.', type = 'string', required = true } } } } } } } additionalProperties: false required: - name - schema - handler Degraphql_route: type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true methods: type: array items: type: string default: - GET nullable: true query: type: string service: type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true uri: type: string example: id: 56c4566c-14cc-4132-9011-4139fcbbe50a query: query{ user { email } } service: id: bd380f99-659d-415e-b0e7-72ea05df3218 uri: /users additionalProperties: false required: - service - uri - query Degraphql_routeWithoutParents: type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true methods: type: array items: type: string default: - GET nullable: true query: type: string service: type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true uri: type: string example: id: 56c4566c-14cc-4132-9011-4139fcbbe50a query: query{ user { email } } uri: /users additionalProperties: false required: - uri - query GatewayUnauthorizedError: type: object properties: message: type: string status: type: integer required: - message - status HMACAuth: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true secret: type: string nullable: true tags: type: array items: type: string username: type: string example: consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f id: 75695322-e8a0-4109-aed4-5416b0308d85 secret: wQazJ304DW5huJklHgUfjfiSyCyTAEDZ username: xerxes additionalProperties: false required: - username HMACAuthWithoutParents: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true secret: type: string nullable: true tags: type: array items: type: string username: type: string example: id: 75695322-e8a0-4109-aed4-5416b0308d85 secret: wQazJ304DW5huJklHgUfjfiSyCyTAEDZ username: xerxes additionalProperties: false required: - username JWT: type: object properties: algorithm: type: string enum: - HS256 - HS384 - HS512 - RS256 - RS384 - RS512 - ES256 - ES384 - ES512 - PS256 - PS384 - PS512 - EdDSA nullable: true consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true key: type: string nullable: true rsa_public_key: type: string nullable: true secret: type: string nullable: true tags: type: array items: type: string example: algorithm: HS256 consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f id: 75695322-e8a0-4109-aed4-5416b0308d85 key: YJdmaDvVTJxtcWRCvkMikc8oELgAVNcz secret: C50k0bcahDhLNhLKSUBSR1OMiFGzNZ7X additionalProperties: false JWTWithoutParents: type: object properties: algorithm: type: string enum: - HS256 - HS384 - HS512 - RS256 - RS384 - RS512 - ES256 - ES384 - ES512 - PS256 - PS384 - PS512 - EdDSA nullable: true consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true key: type: string nullable: true rsa_public_key: type: string nullable: true secret: type: string nullable: true tags: type: array items: type: string example: algorithm: HS256 id: 75695322-e8a0-4109-aed4-5416b0308d85 key: YJdmaDvVTJxtcWRCvkMikc8oELgAVNcz secret: C50k0bcahDhLNhLKSUBSR1OMiFGzNZ7X additionalProperties: false Key: description: >- A Key object holds a representation of asymmetric keys in various formats. When Kong or a Kong plugin requires a specific public or private key to perform certain operations, it can use this entity. type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true jwk: description: A JSON Web Key represented as a string. type: string nullable: true kid: description: A unique identifier for a key. type: string name: description: The name to associate with the given keys. type: string nullable: true pem: description: A keypair in PEM format. type: object nullable: true properties: private_key: type: string public_key: type: string set: description: The id (an UUID) of the key-set with which to associate the key. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null tags: description: >- An optional set of strings associated with the Key for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true x5t: type: string nullable: true example: id: d958f66b-8e99-44d2-b0b4-edd5bbf24658 jwk: '{"alg":"RSA", "kid": "42", ...}' kid: '42' name: a-key pem: private_key: '-----BEGIN' public_key: '-----BEGIN' set: id: b86b331c-dcd0-4b3e-97ce-47c5a9543031 additionalProperties: false required: - kid KeyAuth: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true key: type: string nullable: true tags: type: array items: type: string ttl: description: key-auth ttl in seconds type: integer nullable: true example: consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f id: b2f34145-0343-41a4-9602-4c69dec2f269 key: IL1deIyHyQA40WpeLeA1bIUXuvTwlGjo additionalProperties: false KeyAuthWithoutParents: type: object properties: consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true key: type: string nullable: true tags: type: array items: type: string ttl: description: key-auth ttl in seconds type: integer nullable: true example: id: b2f34145-0343-41a4-9602-4c69dec2f269 key: IL1deIyHyQA40WpeLeA1bIUXuvTwlGjo additionalProperties: false KeySet: type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true name: type: string nullable: true tags: type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: id: b58c7d9d-e54f-444c-b24d-cdfc4159f61e name: example-key-set tags: - idp-keys additionalProperties: false KeyWithoutParents: description: >- A Key object holds a representation of asymmetric keys in various formats. When Kong or a Kong plugin requires a specific public or private key to perform certain operations, it can use this entity. type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true jwk: description: A JSON Web Key represented as a string. type: string nullable: true kid: description: A unique identifier for a key. type: string name: description: The name to associate with the given keys. type: string nullable: true pem: description: A keypair in PEM format. type: object nullable: true properties: private_key: type: string public_key: type: string set: description: The id (an UUID) of the key-set with which to associate the key. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null tags: description: >- An optional set of strings associated with the Key for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true x5t: type: string nullable: true example: id: d958f66b-8e99-44d2-b0b4-edd5bbf24658 jwk: '{"alg":"RSA", "kid": "42", ...}' kid: '42' name: a-key pem: private_key: '-----BEGIN' public_key: '-----BEGIN' set: id: b86b331c-dcd0-4b3e-97ce-47c5a9543031 additionalProperties: false required: - kid MTLSAuth: type: object properties: ca_certificate: type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true subject_name: type: string tags: type: array items: type: string example: ca_certificate: id: b2f34145-0343-41a4-9602-4c69dec2f260 consumer: id: 84a73fb8-50fc-44a7-a4d5-aa17728ee83f id: b2f34145-0343-41a4-9602-4c69dec2f269 subject_name: CA_Subject_Name additionalProperties: false required: - subject_name MTLSAuthWithoutParents: type: object properties: ca_certificate: type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null consumer: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true subject_name: type: string tags: type: array items: type: string example: ca_certificate: id: b2f34145-0343-41a4-9602-4c69dec2f260 id: b2f34145-0343-41a4-9602-4c69dec2f269 subject_name: CA_Subject_Name additionalProperties: false required: - subject_name PaginationNextResponse: description: URI to the next page (may be null) type: string PaginationOffsetResponse: description: >- Offset is used to paginate through the API. Provide this value to the next list operation to fetch the next page type: string Partial: type: object properties: config: type: object additionalProperties: true created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true name: type: string nullable: true tags: type: array items: type: string type: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true additionalProperties: false required: - type - config PartialLink: type: object properties: id: description: The plugin's unique identifier type: string instance_name: description: The instance name of the plugin type: string name: description: The plugin's name type: string required: - id - name Plugin: description: >- A Plugin entity represents a plugin configuration that will be executed during the HTTP request/response lifecycle. It is how you can add functionalities to Services that run behind Kong, like Authentication or Rate Limiting for example. You can find more information about how to install and what values each plugin takes by visiting the [Kong Hub](https://docs.konghq.com/hub/). When adding a Plugin Configuration to a Service, every request made by a client to that Service will run said Plugin. If a Plugin needs to be tuned to different values for some specific Consumers, you can do so by creating a separate plugin instance that specifies both the Service and the Consumer, through the `service` and `consumer` fields. type: object properties: config: description: >- The configuration properties for the Plugin which can be found on the plugins documentation page in the [Kong Hub](https://docs.konghq.com/hub/). type: object additionalProperties: true nullable: true consumer: description: >- If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null consumer_group: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true enabled: description: Whether the plugin is applied. type: boolean nullable: true id: type: string nullable: true instance_name: type: string nullable: true name: description: >- The name of the Plugin that's going to be added. Currently, the Plugin must be installed in every Kong instance separately. type: string ordering: type: object nullable: true properties: after: type: object properties: access: type: array items: type: string before: type: object properties: access: type: array items: type: string partials: type: array items: properties: id: type: string name: type: string path: type: string type: object nullable: true protocols: description: >- A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support `"tcp"` and `"tls"`. type: array items: enum: - grpc - grpcs - http - https - tcp - tls - tls_passthrough - udp - ws - wss type: string default: - grpc - grpcs - http - https nullable: true route: description: >- If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the Route being used. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null service: description: >- If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null tags: description: >- An optional set of strings associated with the Plugin for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: config: anonymous: null hide_credentials: false key_in_body: false key_in_header: true key_in_query: true key_names: - apikey run_on_preflight: true enabled: true id: 3fd1eea1-885a-4011-b986-289943ff8177 name: key-auth partials: - id: cff1230a-00f7-4ae8-b376-c370f0eb4dae name: foo-partial path: config.redis - id: 129ee345-cba8-4e55-9d6d-93c223ff91ae name: bar-partial path: config.redis protocols: - grpc - grpcs - http - https additionalProperties: false required: - name PluginWithoutParents: description: >- A Plugin entity represents a plugin configuration that will be executed during the HTTP request/response lifecycle. It is how you can add functionalities to Services that run behind Kong, like Authentication or Rate Limiting for example. You can find more information about how to install and what values each plugin takes by visiting the [Kong Hub](https://docs.konghq.com/hub/). When adding a Plugin Configuration to a Service, every request made by a client to that Service will run said Plugin. If a Plugin needs to be tuned to different values for some specific Consumers, you can do so by creating a separate plugin instance that specifies both the Service and the Consumer, through the `service` and `consumer` fields. type: object properties: config: description: >- The configuration properties for the Plugin which can be found on the plugins documentation page in the [Kong Hub](https://docs.konghq.com/hub/). type: object additionalProperties: true nullable: true consumer: description: >- If set, the plugin will activate only for requests where the specified has been authenticated. (Note that some plugins can not be restricted to consumers this way.). Leave unset for the plugin to activate regardless of the authenticated Consumer. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null consumer_group: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true enabled: description: Whether the plugin is applied. type: boolean nullable: true id: type: string nullable: true instance_name: type: string nullable: true name: description: >- The name of the Plugin that's going to be added. Currently, the Plugin must be installed in every Kong instance separately. type: string ordering: type: object nullable: true properties: after: type: object properties: access: type: array items: type: string before: type: object properties: access: type: array items: type: string partials: type: array items: properties: id: type: string name: type: string path: type: string type: object nullable: true protocols: description: >- A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type. For example, plugins that only work in stream mode will only support `"tcp"` and `"tls"`. type: array items: enum: - grpc - grpcs - http - https - tcp - tls - tls_passthrough - udp - ws - wss type: string default: - grpc - grpcs - http - https nullable: true route: description: >- If set, the plugin will only activate when receiving requests via the specified route. Leave unset for the plugin to activate regardless of the Route being used. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null service: description: >- If set, the plugin will only activate when receiving requests via one of the routes belonging to the specified Service. Leave unset for the plugin to activate regardless of the Service being matched. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null tags: description: >- An optional set of strings associated with the Plugin for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: config: anonymous: null hide_credentials: false key_in_body: false key_in_header: true key_in_query: true key_names: - apikey run_on_preflight: true enabled: true id: 3fd1eea1-885a-4011-b986-289943ff8177 name: key-auth partials: - id: cff1230a-00f7-4ae8-b376-c370f0eb4dae name: foo-partial path: config.redis - id: 129ee345-cba8-4e55-9d6d-93c223ff91ae name: bar-partial path: config.redis protocols: - grpc - grpcs - http - https additionalProperties: false required: - name Route: oneOf: - $ref: '#/components/schemas/RouteJson' - $ref: '#/components/schemas/RouteExpression' RouteExpression: x-speakeasy-entity: GatewayRouteExpression description: >- Route entities define rules to match client requests. Each Route is associated with a Service, and a Service may have multiple Routes associated to it. Every request matching a given Route will be proxied to its associated Service. The combination of Routes and Services (and the separation of concerns between them) offers a powerful routing mechanism with which it is possible to define fine-grained entry-points in Kong leading to different upstream services of your infrastructure. You need at least one matching rule that applies to the protocol being matched by the Route. type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true expression: description: >- Use Router Expression to perform route match. This option is only available when `router_flavor` is set to `expressions`. type: string nullable: true https_redirect_status_code: description: >- The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the `https` protocol. type: integer enum: - 426 - 301 - 302 - 307 - 308 nullable: true id: type: string nullable: true name: description: >- The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named "test" and "Test". type: string nullable: true path_handling: description: >- Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. type: string enum: - v0 - v1 nullable: true preserve_host: description: >- When matching a Route via one of the `hosts` domain names, use the request `Host` header in the upstream request headers. If set to `false`, the upstream `Host` header will be that of the Service's `host`. type: boolean nullable: true priority: type: integer nullable: true protocols: description: >- An array of the protocols this Route should allow. See the [Route Object](#route-object) section for a list of accepted protocols. When set to only `"https"`, HTTP requests are answered with an upgrade error. When set to only `"http"`, HTTPS requests are answered with an error. type: array items: enum: - grpc - grpcs - http - https - tcp - tls - tls_passthrough - udp - ws - wss type: string default: - http - https nullable: true request_buffering: description: >- Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. type: boolean nullable: true response_buffering: description: >- Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. type: boolean nullable: true service: description: >- The Service this Route is associated to. This is where the Route proxies traffic to. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null strip_path: description: >- When matching a Route via one of the `paths`, strip the matching prefix from the upstream request URL. type: boolean nullable: true tags: description: >- An optional set of strings associated with the Route for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true additionalProperties: false RouteJson: description: >- Route entities define rules to match client requests. Each Route is associated with a Service, and a Service may have multiple Routes associated to it. Every request matching a given Route will be proxied to its associated Service. The combination of Routes and Services (and the separation of concerns between them) offers a powerful routing mechanism with which it is possible to define fine-grained entry-points in Kong leading to different upstream services of your infrastructure. You need at least one matching rule that applies to the protocol being matched by the Route. type: object properties: created_at: description: Unix epoch when the resource was created. type: integer nullable: true destinations: description: >- A list of IP destinations of incoming connections that match this Route when using stream routing. Each entry is an object with fields "ip" (optionally in CIDR range notation) and/or "port". type: array items: properties: ip: type: string port: type: integer type: object nullable: true headers: description: >- One or more lists of values indexed by header name that will cause this Route to match if present in the request. The `Host` header cannot be used with this attribute: hosts should be specified using the `hosts` attribute. When `headers` contains only one value and that value starts with the special prefix `~*`, the value is interpreted as a regular expression. type: object additionalProperties: items: type: string type: array nullable: true hosts: description: >- A list of domain names that match this Route. Note that the hosts value is case sensitive. type: array items: type: string nullable: true https_redirect_status_code: description: >- The status code Kong responds with when all properties of a Route match except the protocol i.e. if the protocol of the request is `HTTP` instead of `HTTPS`. `Location` header is injected by Kong if the field is set to 301, 302, 307 or 308. Note: This config applies only if the Route is configured to only accept the `https` protocol. type: integer enum: - 426 - 301 - 302 - 307 - 308 nullable: true id: type: string nullable: true methods: description: A list of HTTP methods that match this Route. type: array items: type: string nullable: true name: description: >- The name of the Route. Route names must be unique, and they are case sensitive. For example, there can be two different Routes named "test" and "Test". type: string nullable: true path_handling: description: >- Controls how the Service path, Route path and requested path are combined when sending a request to the upstream. See above for a detailed description of each behavior. type: string enum: - v0 - v1 nullable: true paths: description: A list of paths that match this Route. type: array items: type: string nullable: true preserve_host: description: >- When matching a Route via one of the `hosts` domain names, use the request `Host` header in the upstream request headers. If set to `false`, the upstream `Host` header will be that of the Service's `host`. type: boolean nullable: true protocols: description: >- An array of the protocols this Route should allow. See the [Route Object](#route-object) section for a list of accepted protocols. When set to only `"https"`, HTTP requests are answered with an upgrade error. When set to only `"http"`, HTTPS requests are answered with an error. type: array items: enum: - grpc - grpcs - http - https - tcp - tls - tls_passthrough - udp - ws - wss type: string default: - http - https nullable: true regex_priority: description: >- A number used to choose which route resolves a given request when several routes match it using regexes simultaneously. When two routes match the path and have the same `regex_priority`, the older one (lowest `created_at`) is used. Note that the priority for non-regex routes is different (longer non-regex routes are matched before shorter ones). type: integer nullable: true request_buffering: description: >- Whether to enable request body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that receive data with chunked transfer encoding. type: boolean nullable: true response_buffering: description: >- Whether to enable response body buffering or not. With HTTP 1.1, it may make sense to turn this off on services that send data with chunked transfer encoding. type: boolean nullable: true service: description: >- The Service this Route is associated to. This is where the Route proxies traffic to. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null snis: description: A list of SNIs that match this Route when using stream routing. type: array items: type: string nullable: true sources: description: >- A list of IP sources of incoming connections that match this Route when using stream routing. Each entry is an object with fields "ip" (optionally in CIDR range notation) and/or "port". type: array items: properties: ip: type: string port: type: integer type: object nullable: true strip_path: description: >- When matching a Route via one of the `paths`, strip the matching prefix from the upstream request URL. type: boolean nullable: true tags: description: >- An optional set of strings associated with the Route for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: hosts: - foo.example.com - foo.example.us id: 56c4566c-14cc-4132-9011-4139fcbbe50a name: example-route paths: - /v1 - /v2 service: id: bd380f99-659d-415e-b0e7-72ea05df3218 additionalProperties: false RouteWithoutParents: oneOf: - $ref: '#/components/schemas/RouteJson' - $ref: '#/components/schemas/RouteExpression' SNI: description: >- An SNI object represents a many-to-one mapping of hostnames to a certificate. That is, a certificate object can have many hostnames associated with it; when Kong receives an SSL request, it uses the SNI field in the Client Hello to lookup the certificate object based on the SNI associated with the certificate. type: object properties: certificate: description: >- The id (a UUID) of the certificate with which to associate the SNI hostname. The Certificate must have a valid private key associated with it to be used by the SNI object. type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true name: description: The SNI name to associate with the given certificate. type: string tags: description: >- An optional set of strings associated with the SNIs for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: certificate: id: bd380f99-659d-415e-b0e7-72ea05df3218 id: 36c4566c-14cc-4132-9011-4139fcbbe50a name: some.example.org additionalProperties: false required: - name - certificate SNIWithoutParents: description: >- An SNI object represents a many-to-one mapping of hostnames to a certificate. That is, a certificate object can have many hostnames associated with it; when Kong receives an SSL request, it uses the SNI field in the Client Hello to lookup the certificate object based on the SNI associated with the certificate. type: object properties: certificate: description: >- The id (a UUID) of the certificate with which to associate the SNI hostname. The Certificate must have a valid private key associated with it to be used by the SNI object. type: object properties: id: type: string x-foreign: true x-speakeasy-param-computed: false nullable: true default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true id: type: string nullable: true name: description: The SNI name to associate with the given certificate. type: string tags: description: >- An optional set of strings associated with the SNIs for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: id: 36c4566c-14cc-4132-9011-4139fcbbe50a name: some.example.org additionalProperties: false required: - name Service: description: >- Service entities, as the name implies, are abstractions of each of your own upstream services. Examples of Services would be a data transformation microservice, a billing API, etc. The main attribute of a Service is its URL (where Kong should proxy traffic to), which can be set as a single string or by specifying its `protocol`, `host`, `port` and `path` individually. Services are associated to Routes (a Service can have many Routes associated with it). Routes are entry-points in Kong and define rules to match client requests. Once a Route is matched, Kong proxies the request to its associated Service. See the [Proxy Reference][proxy-reference] for a detailed explanation of how Kong proxies traffic. type: object properties: ca_certificates: description: >- Array of `CA Certificate` object UUIDs that are used to build the trust store while verifying upstream server's TLS certificate. If set to `null` when Nginx default is respected. If default CA list in Nginx are not specified and TLS verification is enabled, then handshake with upstream server will always fail (because no CA are trusted). type: array items: type: string nullable: true client_certificate: description: >- Certificate to be used as client certificate while TLS handshaking to the upstream server. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null connect_timeout: description: >- The timeout in milliseconds for establishing a connection to the upstream server. type: integer nullable: true created_at: description: Unix epoch when the resource was created. type: integer nullable: true enabled: description: >- Whether the Service is active. If set to `false`, the proxy behavior will be as if any routes attached to it do not exist (404). Default: `true`. type: boolean nullable: true host: description: >- The host of the upstream server. Note that the host value is case sensitive. type: string id: type: string nullable: true name: description: The Service name. type: string nullable: true path: description: The path to be used in requests to the upstream server. type: string nullable: true port: description: The upstream server port. type: integer nullable: true protocol: description: The protocol used to communicate with the upstream. type: string enum: - grpc - grpcs - http - https - tcp - tls - tls_passthrough - udp - ws - wss nullable: true read_timeout: description: >- The timeout in milliseconds between two successive read operations for transmitting a request to the upstream server. type: integer nullable: true retries: description: The number of retries to execute upon failure to proxy. type: integer nullable: true tags: description: >- An optional set of strings associated with the Service for grouping and filtering. type: array items: type: string tls_verify: description: >- Whether to enable verification of upstream server TLS certificate. If set to `null`, then the Nginx default is respected. type: boolean nullable: true tls_verify_depth: description: >- Maximum depth of chain while verifying Upstream server's TLS certificate. If set to `null`, then the Nginx default is respected. type: integer nullable: true updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true url: description: >- Helper field to set `protocol`, `host`, `port` and `path` using a URL. This field is write-only and is not returned in responses. type: string writeOnly: true write_timeout: description: >- The timeout in milliseconds between two successive write operations for transmitting a request to the upstream server. type: integer nullable: true example: host: example.internal id: 49fd316e-c457-481c-9fc7-8079153e4f3c name: example-service path: / port: 80 protocol: http additionalProperties: false required: - host Target: description: >- A target is an ip address/hostname with a port that identifies an instance of a backend service. Every upstream can have many targets, and the targets can be dynamically added, modified, or deleted. Changes take effect on the fly. To disable a target, post a new one with `weight=0`; alternatively, use the `DELETE` convenience method to accomplish the same. The current target object definition is the one with the latest `created_at`. type: object properties: created_at: description: Unix epoch when the resource was created. type: number nullable: true id: type: string nullable: true tags: description: >- An optional set of strings associated with the Target for grouping and filtering. type: array items: type: string target: description: >- The target address (ip or hostname) and port. If the hostname resolves to an SRV record, the `port` value will be overridden by the value from the DNS record. type: string nullable: true updated_at: description: Unix epoch when the resource was last updated. type: number nullable: true upstream: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null weight: description: >- The weight this target gets within the upstream loadbalancer (`0`-`65535`). If the hostname resolves to an SRV record, the `weight` value will be overridden by the value from the DNS record. type: integer nullable: true example: id: 089292a7-ba3d-4d88-acf0-97b4b2e2621a target: 203.0.113.42 upstream: id: 5f1d7e76-2fed-4806-a6af-869984f025cb weight: 100 additionalProperties: false TargetWithoutParents: description: >- A target is an ip address/hostname with a port that identifies an instance of a backend service. Every upstream can have many targets, and the targets can be dynamically added, modified, or deleted. Changes take effect on the fly. To disable a target, post a new one with `weight=0`; alternatively, use the `DELETE` convenience method to accomplish the same. The current target object definition is the one with the latest `created_at`. type: object properties: created_at: description: Unix epoch when the resource was created. type: number nullable: true id: type: string nullable: true tags: description: >- An optional set of strings associated with the Target for grouping and filtering. type: array items: type: string target: description: >- The target address (ip or hostname) and port. If the hostname resolves to an SRV record, the `port` value will be overridden by the value from the DNS record. type: string nullable: true updated_at: description: Unix epoch when the resource was last updated. type: number nullable: true upstream: type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null weight: description: >- The weight this target gets within the upstream loadbalancer (`0`-`65535`). If the hostname resolves to an SRV record, the `weight` value will be overridden by the value from the DNS record. type: integer nullable: true example: id: 089292a7-ba3d-4d88-acf0-97b4b2e2621a target: 203.0.113.42 weight: 100 additionalProperties: false Upstream: description: >- The upstream object represents a virtual hostname and can be used to loadbalance incoming requests over multiple services (targets). So for example an upstream named `service.v1.xyz` for a Service object whose `host` is `service.v1.xyz`. Requests for this Service would be proxied to the targets defined within the upstream. An upstream also includes a [health checker][healthchecks], which is able to enable and disable targets based on their ability or inability to serve requests. The configuration for the health checker is stored in the upstream object, and applies to all of its targets. type: object properties: algorithm: description: Which load balancing algorithm to use. type: string enum: - consistent-hashing - least-connections - round-robin - latency nullable: true client_certificate: description: >- If set, the certificate to be used as client certificate while TLS handshaking to the upstream server. type: object nullable: true properties: id: type: string x-foreign: true x-speakeasy-param-computed: false default: null created_at: description: Unix epoch when the resource was created. type: integer nullable: true hash_fallback: description: >- What to use as hashing input if the primary `hash_on` does not return a hash (eg. header is missing, or no Consumer identified). Not available if `hash_on` is set to `cookie`. type: string enum: - none - consumer - ip - header - cookie - path - query_arg - uri_capture nullable: true hash_fallback_header: description: >- The header name to take the value from as hash input. Only required when `hash_fallback` is set to `header`. type: string nullable: true hash_fallback_query_arg: description: >- The name of the query string argument to take the value from as hash input. Only required when `hash_fallback` is set to `query_arg`. type: string nullable: true hash_fallback_uri_capture: description: >- The name of the route URI capture to take the value from as hash input. Only required when `hash_fallback` is set to `uri_capture`. type: string nullable: true hash_on: description: >- What to use as hashing input. Using `none` results in a weighted-round-robin scheme with no hashing. type: string enum: - none - consumer - ip - header - cookie - path - query_arg - uri_capture nullable: true hash_on_cookie: description: >- The cookie name to take the value from as hash input. Only required when `hash_on` or `hash_fallback` is set to `cookie`. If the specified cookie is not in the request, Kong will generate a value and set the cookie in the response. type: string nullable: true hash_on_cookie_path: description: >- The cookie path to set in the response headers. Only required when `hash_on` or `hash_fallback` is set to `cookie`. type: string nullable: true hash_on_header: description: >- The header name to take the value from as hash input. Only required when `hash_on` is set to `header`. type: string nullable: true hash_on_query_arg: description: >- The name of the query string argument to take the value from as hash input. Only required when `hash_on` is set to `query_arg`. type: string nullable: true hash_on_uri_capture: description: >- The name of the route URI capture to take the value from as hash input. Only required when `hash_on` is set to `uri_capture`. type: string nullable: true healthchecks: type: object nullable: true properties: active: type: object properties: concurrency: type: integer headers: type: object additionalProperties: type: string healthy: type: object properties: http_statuses: type: array items: type: integer interval: type: number successes: type: integer http_path: type: string https_sni: type: string https_verify_certificate: type: boolean timeout: type: number type: type: string enum: - tcp - http - https - grpc - grpcs unhealthy: type: object properties: http_failures: type: integer http_statuses: type: array items: type: integer interval: type: number tcp_failures: type: integer timeouts: type: integer passive: type: object properties: healthy: type: object properties: http_statuses: type: array items: type: integer successes: type: integer type: type: string enum: - tcp - http - https - grpc - grpcs unhealthy: type: object properties: http_failures: type: integer http_statuses: type: array items: type: integer tcp_failures: type: integer timeouts: type: integer threshold: type: number host_header: description: >- The hostname to be used as `Host` header when proxying requests through Kong. type: string nullable: true id: type: string nullable: true name: description: This is a hostname, which must be equal to the `host` of a Service. type: string slots: description: >- The number of slots in the load balancer algorithm. If `algorithm` is set to `round-robin`, this setting determines the maximum number of slots. If `algorithm` is set to `consistent-hashing`, this setting determines the actual number of slots in the algorithm. Accepts an integer in the range `10`-`65536`. type: integer nullable: true tags: description: >- An optional set of strings associated with the Upstream for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true use_srv_name: description: >- If set, the balancer will use SRV hostname(if DNS Answer has SRV record) as the proxy upstream `Host`. type: boolean nullable: true example: algorithm: round-robin hash_fallback: none hash_on: none hash_on_cookie_path: / healthchecks: active: concurrency: 10 healthy: http_statuses: - 200 - 302 interval: 0 successes: 0 http_path: / https_verify_certificate: true timeout: 1 type: http unhealthy: http_failures: 0 http_statuses: - 429 - 404 - 500 - 501 - 502 - 503 - 504 - 505 interval: 0 tcp_failures: 0 timeouts: 0 passive: healthy: http_statuses: - 200 - 201 - 202 - 203 - 204 - 205 - 206 - 207 - 208 - 226 - 300 - 301 - 302 - 303 - 304 - 305 - 306 - 307 - 308 successes: 0 type: http unhealthy: http_failures: 0 http_statuses: - 429 - 500 - 503 tcp_failures: 0 timeouts: 0 threshold: 0 id: 6eed5e9c-5398-4026-9a4c-d48f18a2431e name: api.example.internal slots: 10000 additionalProperties: false required: - name Vault: description: >- Vault entities are used to configure different Vault connectors. Examples of Vaults are Environment Variables, Hashicorp Vault and AWS Secrets Manager. Configuring a Vault allows referencing the secrets with other entities. For example a certificate entity can store a reference to a certificate and key, stored in a vault, instead of storing the certificate and key within the entity. This allows a proper separation of secrets and configuration and prevents secret sprawl. type: object properties: config: description: >- The configuration properties for the Vault which can be found on the vaults' documentation page. type: object additionalProperties: true created_at: description: Unix epoch when the resource was created. type: integer nullable: true description: description: The description of the Vault entity. type: string nullable: true id: type: string nullable: true name: description: >- The name of the Vault that's going to be added. Currently, the Vault implementation must be installed in every Kong instance. type: string prefix: description: >- The unique prefix (or identifier) for this Vault configuration. The prefix is used to load the right Vault configuration and implementation when referencing secrets with the other entities. type: string tags: description: >- An optional set of strings associated with the Vault for grouping and filtering. type: array items: type: string updated_at: description: Unix epoch when the resource was last updated. type: integer nullable: true example: config: prefix: ENV_PREFIX description: environment variable based vault id: 2747d1e5-8246-4f65-a939-b392f1ee17f8 name: env prefix: env tags: - foo - bar additionalProperties: false required: - name - prefix - config CursorMeta: type: object description: Pagination metadata. required: - page properties: page: $ref: '#/components/schemas/CursorMetaPage' UnsupportedMediaTypeError: allOf: - $ref: '#/components/schemas/BaseError' - type: object properties: status: example: 415 title: example: UnsupportedMediaType type: example: https://httpstatuses.com/415 instance: example: kong:trace:1234567890 detail: example: UnsupportedMediaType securitySchemes: personalAccessToken: type: http scheme: bearer bearerFormat: Token description: >- The personal access token is meant to be used as an alternative to basic-auth when accessing Konnect via APIs. You can generate a Personal Access Token (PAT) from the personal access token page in the Konnect dashboard. systemAccountAccessToken: type: http scheme: bearer bearerFormat: Token description: > The system account access token is meant for automations and integrations that are not directly associated with a human identity. You can generate a system account Access Token by creating a system account and then obtaining a system account access token for that account. The access token must be passed in the header of a request, for example: `curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer spat_i2Ej...'` konnectAccessToken: type: http scheme: bearer bearerFormat: JWT description: >- The Konnect access token is meant to be used by the Konnect dashboard and the decK CLI to authenticate with. serviceAccessToken: type: http scheme: bearer bearerFormat: JWT description: | The Service access token is meant to be used between internal services. requestBodies: GroupMembershipAdd: content: application/json: schema: $ref: '#/components/schemas/GroupMembership' description: >- Request body for adding a list of child control planes to a control plane group membership. GroupMembershipRemove: content: application/json: schema: $ref: '#/components/schemas/GroupMembership' description: >- Request body for removing a list of child control planes from a control plane group membership. GroupMembershipUpsert: content: application/json: schema: $ref: '#/components/schemas/GroupMembership' description: >- Request body for upserting a list of child control planes to a control plane group membership. UpdateImpersonationSettingsRequest: content: application/json: schema: type: object properties: enabled: type: boolean example: true description: >- Indicates if user impersonation is allowed for the organization. description: The request schema for adding a system account to a team. UpdateUser: description: The request schema for the update user request. content: application/json: schema: type: object properties: full_name: type: string pattern: ^[\w \W]+$ example: James C. Woods description: The user's full name. writeOnly: true preferred_name: type: string maxLength: 250 example: Jimmy description: The user's desired name. writeOnly: true CreateTeam: description: >- The request schema for the create team request. If you pass the same `name` and `description` of an existing team in the request, a team with the same `name` and `description` will be created. The two teams will have different `team_id` values to differentiate them. content: application/json: schema: x-speakeasy-entity: Team type: object properties: name: type: string example: IDM - Developers pattern: ^[\w \W]+$ description: A name for the team being created. writeOnly: true description: type: string maxLength: 250 example: The Identity Management (IDM) team. description: The description of the new team. writeOnly: true labels: $ref: '#/components/schemas/Labels' required: - name UpdateTeam: description: The request schema for the update team request. content: application/json: schema: x-speakeasy-entity: Team type: object properties: name: type: string example: IDM - Developers pattern: ^[\w \W]+$ description: The name of the team. writeOnly: true description: type: string maxLength: 250 example: The Identity Management (IDM) API team. description: The description of the team. writeOnly: true labels: $ref: '#/components/schemas/LabelsUpdate' AddUserToTeam: description: The request schema for adding a user to a team. content: application/json: schema: type: object properties: id: type: string example: df120cb4-f60b-47bc-a2f8-6a28e6a3c63b format: uuid description: The user ID for the user being added to a team. writeOnly: true x-speakeasy-name-override: user_id required: - id UpdateTeamMappings: content: application/json: schema: type: object example: mappings: - group: Service Developers team_ids: - af91db4c-6e51-403e-a2bf-33d27ae50c0a properties: mappings: type: array description: The mappings object. items: type: object properties: group: type: string team_ids: type: array items: type: string description: The request schema for updating IdP team mappings. PatchTeamGroupMappings: content: application/json: schema: type: object example: data: - group: Service Developers team_ids: - af91db4c-6e51-403e-a2bf-33d27ae50c0a properties: data: type: array description: The IdP groups to map to the given team. items: type: object properties: team_id: type: string format: uuid groups: type: array items: type: string description: >- The request schema for a partial update of mappings from Konnect Teams to IdP Groups. AssignRole: content: application/json: schema: type: object description: >- An assigned role is a role that has been assigned to a user or team. properties: role_name: type: string example: Viewer description: The desired role. enum: - Admin - Appearance Maintainer - Application Registration - Certificate Admin - Cloud Gateway Cluster Admin - Cloud Gateway Cluster Viewer - Consumer Admin - Connector - Creator - Deployer - Discovery Admin - Discovery Viewer - Gateway Service Admin - Integration Admin - Integration Viewer - Key Admin - Maintainer - Network Admin - Network Creator - Network Viewer - Plugin Admin - Plugins Admin - Product Publisher - Publisher - Route Admin - SNI Admin - Service Admin - Service Creator - Service Viewer - Upstream Admin - Vault Admin - Viewer entity_id: type: string format: uuid example: e67490ce-44dc-4cbd-b65e-b52c746fc26a description: The ID of the entity. entity_type_name: type: string example: Control Planes description: The type of entity. enum: - APIs - API Products - Application Auth Strategies - Audit Logs - Control Planes - DCR Providers - Identity - Mesh Control Planes - Networks - Portals - Service Hub entity_region: type: string enum: - us - eu - au - me - in - '*' example: eu description: Region of the team. description: The request schema for assigning a role. InviteUser: content: application/json: schema: type: object properties: email: type: string format: email example: james.c.woods@example.com writeOnly: true required: - email description: >- The request schema for the invite user request. If you pass an `email` that is not already an active user in the request, a fresh invitation email will be created and sent to the new user. CreateSystemAccount: content: application/json: schema: x-speakeasy-entity: SystemAccount type: object required: - name - description properties: name: type: string description: Name of the system account. description: type: string description: >- Description of the system account. Useful when the system account name is not sufficient to differentiate one system account from another. konnect_managed: type: boolean description: The system account is managed by Konnect (true/false). description: The request schema to create a system account. UpdateSystemAccount: content: application/json: schema: x-speakeasy-entity: SystemAccount type: object properties: name: type: string description: Name of the system account. description: type: string description: Description of the system account. description: The request schema for the update system account request. UpdateSystemAccountAccessToken: content: application/json: schema: x-speakeasy-entity: SystemAccountAccessToken type: object properties: name: type: string description: Name of the system account access token. CreateSystemAccountAccessToken: content: application/json: schema: x-speakeasy-entity: SystemAccountAccessToken type: object properties: name: type: string expires_at: type: string format: date-time description: The request body to create a system account access token. AddSystemAccountToTeam: content: application/json: schema: x-speakeasy-entity: SystemAccountTeam type: object properties: id: x-speakeasy-name-override: account_id type: string description: ID of the system account. format: uuid x-speakeasy-param-computed: false nullable: true default: null description: The request schema for adding a system account to a team. UpdateAuthenticationSettings: description: The request schema to update an organization's authentication settings. content: application/json: schema: type: object properties: basic_auth_enabled: type: boolean example: true description: The organization has basic auth enabled. oidc_auth_enabled: type: boolean example: false description: The organization has OIDC disabled. saml_auth_enabled: type: boolean example: false description: The organization has SAML disabled. idp_mapping_enabled: type: boolean example: true description: Whether IdP groups determine the Konnect teams a user has. konnect_mapping_enabled: type: boolean example: false description: Whether a Konnect Identity Admin assigns teams to a user. UpdateIdPConfiguration: content: application/json: schema: type: object properties: issuer: type: string format: uri example: https://myidp.com/oauth2 login_path: type: string example: myapp client_id: type: string example: YOUR_CLIENT_ID client_secret: type: string example: YOUR_CLIENT_SECRET scopes: type: array items: type: string claim_mappings: type: object minProperties: 3 properties: name: type: string example: name email: type: string example: email groups: type: string example: custom-group-claim description: The request schema for the update IdP configuration request. CreateIdentityProviderRequest: description: > An object representing the configuration for creating a new identity provider. This configuration may pertain to either an OIDC or a SAML identity provider. required: true content: application/json: schema: $ref: '#/components/schemas/CreateIdentityProvider' UpdateIdentityProviderRequest: description: > An object representing the configuration for updating an identity provider. This configuration may pertain to either an OIDC or a SAML identity provider. required: true content: application/json: schema: $ref: '#/components/schemas/UpdateIdentityProvider' NotificationUpdateRequest: description: Request body schema for updating notification status. content: application/json: schema: $ref: '#/components/schemas/NotificationUpdatePayload' EventSubscriptionRequest: description: Request body schema for creating/updating event subscription. content: application/json: schema: $ref: '#/components/schemas/EventSubscription' BulkRequest: description: Request body schema for bulk status update. content: application/json: schema: $ref: '#/components/schemas/BulkPayload' CreateDcrProvider: required: true content: application/json: schema: $ref: '#/components/schemas/CreateDcrProviderRequest' UpdateDcrProvider: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateDcrProviderRequest' CreateAppAuthStrategy: required: true content: application/json: schema: $ref: '#/components/schemas/CreateAppAuthStrategyRequest' UpdateAppAuthStrategy: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateAppAuthStrategyRequest' DataPlaneClientCertificateRequest: content: application/json: schema: type: object properties: cert: type: string description: JSON escaped string of the certificate. required: - cert description: Request body for creating a dp-client-certificate. create-plugin-schemas: content: application/json: schema: x-speakeasy-entity: GatewayCustomPluginSchema type: object properties: lua_schema: type: string description: | The custom plugin schema; `jq -Rs '.' schema.lua`. example: >- return { name = \"myplugin\", fields = { { config = { type = \"record\", fields = { } } } } } required: - lua_schema CreateConfigStoreRequest: required: true content: application/json: schema: $ref: '#/components/schemas/CreateConfigStore' CreateConfigStoreSecretRequest: required: true content: application/json: schema: $ref: '#/components/schemas/CreateConfigStoreSecret' UpdateConfigStoreRequest: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateConfigStore' UpdateConfigStoreSecretRequest: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateConfigStoreSecret' externalDocs: description: Documentation for Kong Gateway and its APIs url: https://developer.konghq.com