openapi: 3.1.0 info: title: Konnect API (BETA) version: 2.0.0 description: | This is a BETA specification. Endpoints in this specification may change with zero notice contact: name: Kong url: 'https://cloud.konghq.com' 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' - url: 'https://me.api.konghq.com' - url: 'https://in.api.konghq.com' paths: /v3/portals: get: x-speakeasy-entity-operation: terraform-resource: null terraform-datasource: - Portal#read operationId: list-portals summary: List Portals description: 'Lists developer portals defined in this region for this organization. Each developer portal is available at a unique address and has isolated configuration, customization, developers, and applications.' parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' - $ref: '#/components/parameters/SortPortals' - name: filter in: query description: Filter portals returned in the response. required: false schema: $ref: '#/components/schemas/PortalFilterParameters' style: deepObject responses: '200': $ref: '#/components/responses/ListPortalsResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Portals post: x-speakeasy-entity-operation: terraform-resource: Portal#create terraform-datasource: null operationId: create-portal summary: Create Portal description: Creates a new developer portal scoped in this region for this organization. requestBody: $ref: '#/components/requestBodies/CreatePortal' responses: '201': $ref: '#/components/responses/PortalResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Portals '/v3/portals/{portalId}': parameters: - name: portalId in: path description: ID of the portal. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-speakeasy-entity-operation: terraform-resource: Portal#read terraform-datasource: null operationId: get-portal summary: Fetch Portal description: 'Returns the configuration for a single developer portal, including the current visibility, access, and domain settings.' responses: '200': $ref: '#/components/responses/PortalResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portals patch: x-speakeasy-entity-operation: terraform-resource: Portal#update terraform-datasource: null operationId: update-portal summary: Update Portal description: 'Updates the configuration for a single portal including the visibility, access, and custom domain settings.' requestBody: $ref: '#/components/requestBodies/UpdatePortal' responses: '200': $ref: '#/components/responses/PortalResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Portals delete: x-speakeasy-entity-operation: terraform-resource: Portal#delete terraform-datasource: null operationId: delete-portal summary: Delete Portal description: 'Deletes a single portal, along with all related entities.' parameters: - name: force in: query description: | If set to "true", the portal and all child entities will be deleted when running `terraform destroy`. If set to "false", the portal will not be deleted until all child entities are manually removed. This will IRREVERSIBLY DELETE ALL REGISTERED DEVELOPERS AND THEIR CREDENTIALS. Only set to "true" if you want this behavior. schema: type: string default: 'false' enum: - 'true' - 'false' x-speakeasy-name-override: force_destroy responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portals '/v3/portals/{portalId}/custom-domain': parameters: - $ref: '#/components/parameters/PortalId' get: x-speakeasy-entity-operation: terraform-resource: PortalCustomDomain#read terraform-datasource: null operationId: get-portal-custom-domain summary: Get Custom Domain description: Get the custom domain associated to the portal. responses: '200': $ref: '#/components/responses/PortalCustomDomain' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Custom Domains post: x-speakeasy-entity-operation: terraform-resource: PortalCustomDomain#create terraform-datasource: null operationId: create-portal-custom-domain summary: Create Custom Domain description: Creates the custom domain associated with the portal. Only one custom domain can be associated with a portal at a time. requestBody: $ref: '#/components/requestBodies/CreatePortalCustomDomain' responses: '201': $ref: '#/components/responses/PortalCustomDomain' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Custom Domains patch: x-speakeasy-entity-operation: terraform-resource: PortalCustomDomain#update terraform-datasource: null operationId: update-portal-custom-domain summary: Enable or Disable Domain description: Updates the portal domain associated with the portal. requestBody: $ref: '#/components/requestBodies/UpdatePortalCustomDomain' responses: '200': $ref: '#/components/responses/PortalCustomDomain' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Portal Custom Domains delete: x-speakeasy-entity-operation: terraform-resource: PortalCustomDomain#delete terraform-datasource: null operationId: delete-portal-custom-domain summary: Remove Domain description: Deletes the custom domain associated with the portal. responses: '204': description: No Content '404': $ref: '#/components/responses/NotFound' tags: - Portal Custom Domains '/v3/portals/{portalId}/assets/logo': parameters: - $ref: '#/components/parameters/PortalId' get: x-speakeasy-entity-operation: terraform-resource: PortalLogo#read terraform-datasource: null operationId: get-portal-asset-logo summary: Get Logo description: Returns the logo of the portal. responses: '200': $ref: '#/components/responses/PortalAssetResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Assets put: x-speakeasy-entity-operation: terraform-resource: 'PortalLogo#create,update' terraform-datasource: null operationId: replace-portal-asset-logo summary: Replace Logo description: Replaces the logo of the portal. requestBody: $ref: '#/components/requestBodies/ReplacePortalImageAsset' responses: '200': $ref: '#/components/responses/PortalAssetResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Assets '/v3/portals/{portalId}/assets/favicon': parameters: - $ref: '#/components/parameters/PortalId' get: x-speakeasy-entity-operation: terraform-resource: PortalFavicon#read terraform-datasource: null operationId: get-portal-asset-favicon summary: Get Favicon description: Returns the favicon of the portal. responses: '200': $ref: '#/components/responses/PortalAssetResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Assets put: x-speakeasy-entity-operation: terraform-resource: 'PortalFavicon#create,update' terraform-datasource: null operationId: replace-portal-asset-favicon summary: Replace Favicon description: Replaces the favicon of the portal. The favicon is used in the browser tab of the portal. requestBody: $ref: '#/components/requestBodies/ReplacePortalImageAsset' responses: '200': $ref: '#/components/responses/PortalAssetResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Assets '/v3/portals/{portalId}/customization': get: x-speakeasy-entity-operation: terraform-resource: PortalCustomization#read terraform-datasource: null operationId: get-portal-customization summary: Get Customization description: Returns the portal customization options. parameters: - $ref: '#/components/parameters/PortalId' responses: '200': $ref: '#/components/responses/PortalCustomizationResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Customization put: x-speakeasy-entity-operation: terraform-resource: 'PortalCustomization#create,update' terraform-datasource: null operationId: replace-portal-customization summary: Replace Customization description: Replace the portal customization options. parameters: - $ref: '#/components/parameters/PortalId' requestBody: $ref: '#/components/requestBodies/ReplacePortalCustomization' responses: '200': $ref: '#/components/responses/PortalCustomizationResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Customization '/v3/portals/{portalId}/pages': post: x-speakeasy-entity-operation: terraform-resource: PortalPage#create terraform-datasource: null operationId: create-portal-page summary: Create Page description: 'Creates a new custom page for this portal. Custom pages can be used to display static content, documentation, or other information to developers. Title and Description properties may be provided in the frontmatter section of `content`. If you set values in both the `POST` request _and_ in the frontmatter, the values in frontmatter will take precedence.' parameters: - $ref: '#/components/parameters/PortalId' requestBody: $ref: '#/components/requestBodies/CreatePortalPage' responses: '201': $ref: '#/components/responses/PortalPage' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Pages '/v3/portals/{portalId}/pages/{pageId}': get: x-speakeasy-entity-operation: terraform-resource: PortalPage#read terraform-datasource: null operationId: get-portal-page summary: Fetch Page description: 'Returns the configuration of a single custom page for this portal. Custom pages can be used to display static content, documentation, or other information to developers.' parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/PageId' responses: '200': $ref: '#/components/responses/PortalPage' '401': $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' tags: - Pages patch: x-speakeasy-entity-operation: terraform-resource: PortalPage#update terraform-datasource: null operationId: update-portal-page summary: Update Page description: Updates the configuration of a single custom page for this portal. parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/PageId' requestBody: $ref: '#/components/requestBodies/UpdatePortalPage' responses: '200': $ref: '#/components/responses/PortalPage' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Pages delete: x-speakeasy-entity-operation: terraform-resource: PortalPage#delete terraform-datasource: null operationId: delete-portal-page summary: Delete Page description: Deletes a single custom page for this portal. parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/PageId' responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Pages '/v3/portals/{portalId}/snippets': post: x-speakeasy-entity-operation: terraform-resource: PortalSnippet#create terraform-datasource: null operationId: create-portal-snippet summary: Create Snippet description: 'Creates a new custom snippet for this portal. Custom snippets can be used to display static content, documentation, or other information to developers. Title and Description properties may be provided in the frontmatter section of `content`. If you set values in both the `POST` request _and_ in the frontmatter, the values in the frontmatter will take precedence.' parameters: - $ref: '#/components/parameters/PortalId' requestBody: $ref: '#/components/requestBodies/CreatePortalSnippet' responses: '201': $ref: '#/components/responses/PortalSnippet' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Snippets '/v3/portals/{portalId}/snippets/{snippetId}': get: x-speakeasy-entity-operation: terraform-resource: PortalSnippet#read terraform-datasource: null operationId: get-portal-snippet summary: Fetch Snippet description: 'Returns the configuration of a single custom snippet for this portal. Custom snippets can be used to display static content, documentation, or other information to developers.' parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/SnippetId' responses: '200': $ref: '#/components/responses/PortalSnippet' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Snippets patch: x-speakeasy-entity-operation: terraform-resource: PortalSnippet#update terraform-datasource: null operationId: update-portal-snippet summary: Update Snippet description: Updates the configuration of a single custom snippet for this portal. parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/SnippetId' requestBody: $ref: '#/components/requestBodies/UpdatePortalSnippet' responses: '200': $ref: '#/components/responses/PortalSnippet' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Snippets delete: x-speakeasy-entity-operation: terraform-resource: PortalSnippet#delete terraform-datasource: null operationId: delete-portal-snippet summary: Delete Snippet description: Deletes a single custom snippet for this portal. parameters: - $ref: '#/components/parameters/PortalId' - $ref: '#/components/parameters/SnippetId' responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Snippets '/v3/portals/{portalId}/authentication-settings': parameters: - $ref: '#/components/parameters/PortalId' get: x-unstable: true x-speakeasy-entity-operation: terraform-resource: PortalAuth#read terraform-datasource: null operationId: get-portal-authentication-settings summary: Get Auth Settings description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Returns the developer authentication configuration for a portal, which determines how developers can log in and how they are assigned to teams. responses: '200': $ref: '#/components/responses/PortalAuthenticationSettings' '401': $ref: '#/components/responses/Unauthorized' tags: - Portal Auth Settings patch: x-unstable: true x-speakeasy-entity-operation: terraform-resource: 'PortalAuth#create,update' terraform-datasource: null operationId: update-portal-authentication-settings summary: Update Auth Settings description: |- **Pre-release Endpoint** This endpoint is currently in beta and is subject to change. Updates the developer authentication configuration for a portal. Developers can be allowed to login using basic auth (email & password) or use Single-Sign-On (SSO) through an OIDC Identity Provider (IdP). Developers can be automatically assigned to teams by mapping claims from thier IdP account. requestBody: $ref: '#/components/requestBodies/UpdatePortalAuthenticationSettings' responses: '200': $ref: '#/components/responses/PortalAuthenticationSettings' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Portal Auth Settings '/v3/portals/{portalId}/teams': parameters: - $ref: '#/components/parameters/PortalId' post: x-speakeasy-entity-operation: terraform-resource: PortalTeam#create terraform-datasource: null operationId: create-portal-team summary: Create Team description: Creates a developer team in a portal. Developers can be added to teams to provide RBAC access to API products. Teams can be assigned roles that grant permissions to perform an action on a resource. requestBody: $ref: '#/components/requestBodies/PortalCreateTeam' responses: '201': $ref: '#/components/responses/PortalTeam' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Teams '/v3/portals/{portalId}/teams/{teamId}': parameters: - $ref: '#/components/parameters/TeamId' - $ref: '#/components/parameters/PortalId' get: x-speakeasy-entity-operation: terraform-resource: PortalTeam#read terraform-datasource: null operationId: get-portal-team summary: Get Team description: Get an individual team. responses: '200': $ref: '#/components/responses/PortalTeam' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Teams patch: x-speakeasy-entity-operation: terraform-resource: PortalTeam#update terraform-datasource: null operationId: update-portal-team summary: Update Team description: Updates an individual developer team for a portal. requestBody: $ref: '#/components/requestBodies/PortalUpdateTeam' responses: '200': $ref: '#/components/responses/PortalTeam' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Teams delete: x-speakeasy-entity-operation: terraform-resource: PortalTeam#delete terraform-datasource: null operationId: delete-portal-team summary: Delete Team description: 'Deletes a developer team from a portal. Deleting a team also deletes its assigned roles. Members of the team are not deleted, but they will lose any access provided through the team.' responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Portal Teams /v3/apis: post: x-speakeasy-entity-operation: terraform-resource: Api#create terraform-datasource: null operationId: create-api summary: Create API description: Creates an API. requestBody: $ref: '#/components/requestBodies/CreateApiRequest' responses: '201': $ref: '#/components/responses/ApiResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API '/v3/apis/{apiId}': parameters: - name: apiId in: path description: The UUID API identifier required: true schema: type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 x-speakeasy-match: id get: x-speakeasy-entity-operation: terraform-resource: Api#read terraform-datasource: null operationId: fetch-api summary: Fetch API description: Fetches an API. responses: '200': $ref: '#/components/responses/ApiResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API patch: x-speakeasy-entity-operation: terraform-resource: Api#update terraform-datasource: null operationId: update-api summary: Update API description: Updates an API. parameters: - name: force in: query description: | If true, allows operations to be removed from the current version when using access control enforcement. If false, operations removal will be rejected with a 409 error. Omitting the value means true. schema: type: string default: 'false' enum: - 'true' - 'false' x-internal: true x-unstable: true requestBody: $ref: '#/components/requestBodies/UpdateApiRequest' responses: '200': $ref: '#/components/responses/ApiResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiVersionPatchConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API delete: x-speakeasy-entity-operation: terraform-resource: Api#delete terraform-datasource: null operationId: delete-api summary: Delete API description: Deletes an API. responses: '204': description: API was deleted successfully. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API '/v3/apis/{apiId}/documents': parameters: - $ref: '#/components/parameters/ApiId' post: x-speakeasy-entity-operation: terraform-resource: ApiDocument#create terraform-datasource: null operationId: create-api-document summary: Create API Document description: | Publish a new document attached to an API. All configuration options may be provided in the frontmatter section of `content`. If you set values in both the `POST` request _and_ in the frontmatter, the values in the `POST` request will take precedence. requestBody: $ref: '#/components/requestBodies/CreateApiDocumentRequest' responses: '201': $ref: '#/components/responses/ApiDocumentResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiSlugConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API Documentation '/v3/apis/{apiId}/documents/{documentId}': parameters: - $ref: '#/components/parameters/ApiId' - $ref: '#/components/parameters/DocumentId' get: x-speakeasy-entity-operation: terraform-resource: ApiDocument#read terraform-datasource: null operationId: fetch-api-document summary: Fetch API Document description: Returns a document for the API. responses: '200': $ref: '#/components/responses/ApiDocumentResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Documentation patch: x-speakeasy-entity-operation: terraform-resource: ApiDocument#update terraform-datasource: null operationId: update-api-document summary: Update API Document description: Updates a document for an API. requestBody: $ref: '#/components/requestBodies/UpdateApiDocumentRequest' responses: '200': $ref: '#/components/responses/ApiDocumentResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiSlugConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API Documentation delete: x-speakeasy-entity-operation: terraform-resource: ApiDocument#delete terraform-datasource: null operationId: delete-api-document summary: Delete API Documentation description: Removes a document from an API. responses: '204': description: Document for the API was deleted successfully. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Documentation '/v3/apis/{apiId}/specifications': parameters: - $ref: '#/components/parameters/ApiId' post: x-speakeasy-entity-operation: terraform-resource: ApiSpecification#create terraform-datasource: null operationId: create-api-spec summary: Create API Specification description: | Creates a specification (OpenAPI or AsyncAPI) for an API. **Note:** You can only have one specification for an API. This endpoint is deprecated and will be removed: use /versions instead. requestBody: $ref: '#/components/requestBodies/CreateApiSpecRequest' responses: '201': $ref: '#/components/responses/ApiSpecResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiSpecConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' deprecated: true tags: - API Specification '/v3/apis/{apiId}/specifications/{specId}': parameters: - $ref: '#/components/parameters/ApiId' - $ref: '#/components/parameters/SpecId' get: x-speakeasy-entity-operation: terraform-resource: ApiSpecification#read terraform-datasource: null operationId: fetch-api-spec summary: Fetch API Specification description: | Fetches the specification (OpenAPI or AsyncAPI) of an API. **Note:** This endpoint is deprecated and will be removed: use /versions instead. responses: '200': $ref: '#/components/responses/ApiSpecResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' deprecated: true tags: - API Specification patch: x-speakeasy-entity-operation: terraform-resource: ApiSpecification#update terraform-datasource: null operationId: update-api-spec summary: Update API Specification description: | Updates the specification (OpenAPI or AsyncAPI) of an API. **Note:** This endpoint is deprecated and will be removed: use /versions instead. requestBody: $ref: '#/components/requestBodies/UpdateApiSpecRequest' responses: '200': $ref: '#/components/responses/ApiSpecResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiSpecHiddenConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' deprecated: true tags: - API Specification delete: x-speakeasy-entity-operation: terraform-resource: ApiSpecification#delete terraform-datasource: null operationId: delete-api-spec summary: Delete API Specification description: | Deletes the specification (OpenAPI or AsyncAPI) of an API. **Note:** This endpoint is deprecated and will be removed: use /versions instead. responses: '204': description: API Specification was deleted successfully. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' deprecated: true tags: - API Specification '/v3/apis/{apiId}/versions': parameters: - $ref: '#/components/parameters/ApiId' post: x-speakeasy-entity-operation: terraform-resource: ApiVersion#create terraform-datasource: null operationId: create-api-version summary: Create API Version description: | Creates a version (OpenAPI or AsyncAPI) for an API. requestBody: $ref: '#/components/requestBodies/CreateApiVersionRequest' responses: '201': $ref: '#/components/responses/ApiVersionResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiSpecConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API Version '/v3/apis/{apiId}/versions/{versionId}': parameters: - $ref: '#/components/parameters/ApiId' - $ref: '#/components/parameters/VersionId' get: x-speakeasy-entity-operation: terraform-resource: ApiVersion#read terraform-datasource: null operationId: fetch-api-version summary: Fetch API Version description: Fetches the version (OpenAPI or AsyncAPI) of an API. responses: '200': $ref: '#/components/responses/ApiVersionResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Version patch: x-speakeasy-entity-operation: terraform-resource: ApiVersion#update terraform-datasource: null operationId: update-api-version summary: Update API Version description: Updates the version (OpenAPI or AsyncAPI) of an API. parameters: - name: force in: query description: | If true, allows operations to be removed from the current version when using access control enforcement. If false, operations removal will be rejected with a 409 error. Omitting the value (i.e., setting `?force`) means true. schema: type: string default: 'false' enum: - 'true' - 'false' x-internal: true x-unstable: true requestBody: $ref: '#/components/requestBodies/UpdateApiVersionRequest' responses: '200': $ref: '#/components/responses/ApiVersionResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiVersionPatchConflict' '415': $ref: '#/components/responses/UnsupportedMediaType' tags: - API Version delete: x-speakeasy-entity-operation: terraform-resource: ApiVersion#delete terraform-datasource: null operationId: delete-api-version summary: Delete API Version description: Deletes the version (OpenAPI or AsyncAPI) of an API. responses: '204': description: API Version was deleted successfully. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Version '/v3/apis/{apiId}/publications/{portalId}': parameters: - $ref: '#/components/parameters/ApiId' - $ref: '#/components/parameters/PortalId' put: x-speakeasy-entity-operation: terraform-resource: 'ApiPublication#create,update' terraform-datasource: null operationId: publish-api-to-portal summary: Publish API description: | Publish an API to a portal. requestBody: $ref: '#/components/requestBodies/PutApiPublicationRequest' responses: '200': $ref: '#/components/responses/ApiPublicationResponse' '400': $ref: '#/components/responses/ApiPublicationBadRequest' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Publication get: x-speakeasy-entity-operation: terraform-resource: ApiPublication#read terraform-datasource: null operationId: fetch-publication summary: Fetch Publication description: | Retrieve an API's publication in a portal. If the API is not published to the portal, a 404 response is returned. responses: '200': $ref: '#/components/responses/ApiPublicationResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Publication delete: x-speakeasy-entity-operation: terraform-resource: ApiPublication#delete terraform-datasource: null operationId: delete-publication summary: Delete Publication description: Unpublish an API from a portal. responses: '204': description: API was successfully unpublished from portal. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Publication '/v3/apis/{apiId}/implementations': parameters: - $ref: '#/components/parameters/ApiId' post: x-speakeasy-entity-operation: terraform-resource: ApiImplementation#create terraform-datasource: null operationId: create-api-implementation summary: Create API Implementation description: | Creates an implementation for an API. An API can be implemented by a single Gateway Service. requestBody: $ref: '#/components/requestBodies/CreateApiImplementationRequest' responses: '201': $ref: '#/components/responses/ApiImplementationResponse' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' '409': $ref: '#/components/responses/ApiImplementationConflict' tags: - API Implementation '/v3/apis/{apiId}/implementations/{implementationId}': parameters: - $ref: '#/components/parameters/ApiId' - $ref: '#/components/parameters/ImplementationId' get: x-speakeasy-entity-operation: terraform-resource: ApiImplementation#read terraform-datasource: null operationId: fetch-api-implementation summary: Fetch API Implementation description: Retrieve a gateway implementation for this API responses: '200': $ref: '#/components/responses/ApiImplementationResponse' '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Implementation delete: x-speakeasy-entity-operation: terraform-resource: ApiImplementation#delete terraform-datasource: null operationId: delete-api-implementation summary: Delete API Implementation description: Unlink a gateway implementation from this API responses: '204': description: API implementation was unlinked successfully. '401': $ref: '#/components/responses/ApiUnauthorized' '403': $ref: '#/components/responses/ApiForbidden' '404': $ref: '#/components/responses/ApiNotFound' tags: - API Implementation '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshaccesslogs/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshAccessLog#get terraform-datasource: null operationId: getMeshAccessLog summary: Returns MeshAccessLog entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshAccessLog required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshAccessLogItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshAccessLog put: x-speakeasy-entity-operation: terraform-resource: 'MeshAccessLog#create,update' terraform-datasource: null operationId: putMeshAccessLog summary: Creates or Updates MeshAccessLog entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshAccessLog required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshAccessLogItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshAccessLogCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshAccessLogCreateOrUpdateSuccessResponse' tags: - MeshAccessLog delete: x-speakeasy-entity-operation: terraform-resource: MeshAccessLog#delete terraform-datasource: null operationId: deleteMeshAccessLog summary: Deletes MeshAccessLog entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshAccessLog required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshAccessLogDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshAccessLog parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshaccesslogs': get: x-speakeasy-entity-operation: terraform-resource: MeshAccessLogList#get terraform-datasource: null operationId: getMeshAccessLogList summary: Returns a list of MeshAccessLog in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshAccessLogList' tags: - MeshAccessLog parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshcircuitbreakers/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshCircuitBreaker#get terraform-datasource: null operationId: getMeshCircuitBreaker summary: Returns MeshCircuitBreaker entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshCircuitBreaker required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshCircuitBreakerItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshCircuitBreaker put: x-speakeasy-entity-operation: terraform-resource: 'MeshCircuitBreaker#create,update' terraform-datasource: null operationId: putMeshCircuitBreaker summary: Creates or Updates MeshCircuitBreaker entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshCircuitBreaker required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshCircuitBreakerItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshCircuitBreakerCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshCircuitBreakerCreateOrUpdateSuccessResponse' tags: - MeshCircuitBreaker delete: x-speakeasy-entity-operation: terraform-resource: MeshCircuitBreaker#delete terraform-datasource: null operationId: deleteMeshCircuitBreaker summary: Deletes MeshCircuitBreaker entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshCircuitBreaker required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshCircuitBreakerDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshCircuitBreaker parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshcircuitbreakers': get: x-speakeasy-entity-operation: terraform-resource: MeshCircuitBreakerList#get terraform-datasource: null operationId: getMeshCircuitBreakerList summary: Returns a list of MeshCircuitBreaker in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshCircuitBreakerList' tags: - MeshCircuitBreaker parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshfaultinjections/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshFaultInjection#get terraform-datasource: null operationId: getMeshFaultInjection summary: Returns MeshFaultInjection entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshFaultInjection required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshFaultInjectionItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshFaultInjection put: x-speakeasy-entity-operation: terraform-resource: 'MeshFaultInjection#create,update' terraform-datasource: null operationId: putMeshFaultInjection summary: Creates or Updates MeshFaultInjection entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshFaultInjection required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshFaultInjectionItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshFaultInjectionCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshFaultInjectionCreateOrUpdateSuccessResponse' tags: - MeshFaultInjection delete: x-speakeasy-entity-operation: terraform-resource: MeshFaultInjection#delete terraform-datasource: null operationId: deleteMeshFaultInjection summary: Deletes MeshFaultInjection entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshFaultInjection required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshFaultInjectionDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshFaultInjection parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshfaultinjections': get: x-speakeasy-entity-operation: terraform-resource: MeshFaultInjectionList#get terraform-datasource: null operationId: getMeshFaultInjectionList summary: Returns a list of MeshFaultInjection in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshFaultInjectionList' tags: - MeshFaultInjection parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshhealthchecks/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshHealthCheck#get terraform-datasource: null operationId: getMeshHealthCheck summary: Returns MeshHealthCheck entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHealthCheck required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshHealthCheckItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshHealthCheck put: x-speakeasy-entity-operation: terraform-resource: 'MeshHealthCheck#create,update' terraform-datasource: null operationId: putMeshHealthCheck summary: Creates or Updates MeshHealthCheck entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHealthCheck required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshHealthCheckItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshHealthCheckCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshHealthCheckCreateOrUpdateSuccessResponse' tags: - MeshHealthCheck delete: x-speakeasy-entity-operation: terraform-resource: MeshHealthCheck#delete terraform-datasource: null operationId: deleteMeshHealthCheck summary: Deletes MeshHealthCheck entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHealthCheck required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshHealthCheckDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshHealthCheck parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshhealthchecks': get: x-speakeasy-entity-operation: terraform-resource: MeshHealthCheckList#get terraform-datasource: null operationId: getMeshHealthCheckList summary: Returns a list of MeshHealthCheck in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshHealthCheckList' tags: - MeshHealthCheck parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshhttproutes/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshHTTPRoute#get terraform-datasource: null operationId: getMeshHTTPRoute summary: Returns MeshHTTPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHTTPRoute required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshHTTPRouteItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshHTTPRoute put: x-speakeasy-entity-operation: terraform-resource: 'MeshHTTPRoute#create,update' terraform-datasource: null operationId: putMeshHTTPRoute summary: Creates or Updates MeshHTTPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHTTPRoute required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshHTTPRouteItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshHTTPRouteCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshHTTPRouteCreateOrUpdateSuccessResponse' tags: - MeshHTTPRoute delete: x-speakeasy-entity-operation: terraform-resource: MeshHTTPRoute#delete terraform-datasource: null operationId: deleteMeshHTTPRoute summary: Deletes MeshHTTPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshHTTPRoute required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshHTTPRouteDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshHTTPRoute parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshhttproutes': get: x-speakeasy-entity-operation: terraform-resource: MeshHTTPRouteList#get terraform-datasource: null operationId: getMeshHTTPRouteList summary: Returns a list of MeshHTTPRoute in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshHTTPRouteList' tags: - MeshHTTPRoute parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshloadbalancingstrategies/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshLoadBalancingStrategy#get terraform-datasource: null operationId: getMeshLoadBalancingStrategy summary: Returns MeshLoadBalancingStrategy entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshLoadBalancingStrategy required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshLoadBalancingStrategyItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshLoadBalancingStrategy put: x-speakeasy-entity-operation: terraform-resource: 'MeshLoadBalancingStrategy#create,update' terraform-datasource: null operationId: putMeshLoadBalancingStrategy summary: Creates or Updates MeshLoadBalancingStrategy entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshLoadBalancingStrategy required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshLoadBalancingStrategyItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshLoadBalancingStrategyCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshLoadBalancingStrategyCreateOrUpdateSuccessResponse' tags: - MeshLoadBalancingStrategy delete: x-speakeasy-entity-operation: terraform-resource: MeshLoadBalancingStrategy#delete terraform-datasource: null operationId: deleteMeshLoadBalancingStrategy summary: Deletes MeshLoadBalancingStrategy entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshLoadBalancingStrategy required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshLoadBalancingStrategyDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshLoadBalancingStrategy parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshloadbalancingstrategies': get: x-speakeasy-entity-operation: terraform-resource: MeshLoadBalancingStrategyList#get terraform-datasource: null operationId: getMeshLoadBalancingStrategyList summary: Returns a list of MeshLoadBalancingStrategy in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshLoadBalancingStrategyList' tags: - MeshLoadBalancingStrategy parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshmetrics/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshMetric#get terraform-datasource: null operationId: getMeshMetric summary: Returns MeshMetric entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMetric required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshMetricItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshMetric put: x-speakeasy-entity-operation: terraform-resource: 'MeshMetric#create,update' terraform-datasource: null operationId: putMeshMetric summary: Creates or Updates MeshMetric entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMetric required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshMetricItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshMetricCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshMetricCreateOrUpdateSuccessResponse' tags: - MeshMetric delete: x-speakeasy-entity-operation: terraform-resource: MeshMetric#delete terraform-datasource: null operationId: deleteMeshMetric summary: Deletes MeshMetric entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMetric required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshMetricDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshMetric parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshmetrics': get: x-speakeasy-entity-operation: terraform-resource: MeshMetricList#get terraform-datasource: null operationId: getMeshMetricList summary: Returns a list of MeshMetric in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshMetricList' tags: - MeshMetric parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshpassthroughs/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshPassthrough#get terraform-datasource: null operationId: getMeshPassthrough summary: Returns MeshPassthrough entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshPassthrough required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshPassthroughItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshPassthrough put: x-speakeasy-entity-operation: terraform-resource: 'MeshPassthrough#create,update' terraform-datasource: null operationId: putMeshPassthrough summary: Creates or Updates MeshPassthrough entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshPassthrough required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshPassthroughItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshPassthroughCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshPassthroughCreateOrUpdateSuccessResponse' tags: - MeshPassthrough delete: x-speakeasy-entity-operation: terraform-resource: MeshPassthrough#delete terraform-datasource: null operationId: deleteMeshPassthrough summary: Deletes MeshPassthrough entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshPassthrough required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshPassthroughDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshPassthrough parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshpassthroughs': get: x-speakeasy-entity-operation: terraform-resource: MeshPassthroughList#get terraform-datasource: null operationId: getMeshPassthroughList summary: Returns a list of MeshPassthrough in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshPassthroughList' tags: - MeshPassthrough parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshproxypatches/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshProxyPatch#get terraform-datasource: null operationId: getMeshProxyPatch summary: Returns MeshProxyPatch entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshProxyPatch required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshProxyPatchItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshProxyPatch put: x-speakeasy-entity-operation: terraform-resource: 'MeshProxyPatch#create,update' terraform-datasource: null operationId: putMeshProxyPatch summary: Creates or Updates MeshProxyPatch entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshProxyPatch required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshProxyPatchItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshProxyPatchCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshProxyPatchCreateOrUpdateSuccessResponse' tags: - MeshProxyPatch delete: x-speakeasy-entity-operation: terraform-resource: MeshProxyPatch#delete terraform-datasource: null operationId: deleteMeshProxyPatch summary: Deletes MeshProxyPatch entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshProxyPatch required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshProxyPatchDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshProxyPatch parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshproxypatches': get: x-speakeasy-entity-operation: terraform-resource: MeshProxyPatchList#get terraform-datasource: null operationId: getMeshProxyPatchList summary: Returns a list of MeshProxyPatch in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshProxyPatchList' tags: - MeshProxyPatch parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshratelimits/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshRateLimit#get terraform-datasource: null operationId: getMeshRateLimit summary: Returns MeshRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRateLimit required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshRateLimitItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshRateLimit put: x-speakeasy-entity-operation: terraform-resource: 'MeshRateLimit#create,update' terraform-datasource: null operationId: putMeshRateLimit summary: Creates or Updates MeshRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRateLimit required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshRateLimitItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshRateLimitCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshRateLimitCreateOrUpdateSuccessResponse' tags: - MeshRateLimit delete: x-speakeasy-entity-operation: terraform-resource: MeshRateLimit#delete terraform-datasource: null operationId: deleteMeshRateLimit summary: Deletes MeshRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRateLimit required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshRateLimitDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshRateLimit parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshratelimits': get: x-speakeasy-entity-operation: terraform-resource: MeshRateLimitList#get terraform-datasource: null operationId: getMeshRateLimitList summary: Returns a list of MeshRateLimit in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshRateLimitList' tags: - MeshRateLimit parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshretries/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshRetry#get terraform-datasource: null operationId: getMeshRetry summary: Returns MeshRetry entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRetry required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshRetryItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshRetry put: x-speakeasy-entity-operation: terraform-resource: 'MeshRetry#create,update' terraform-datasource: null operationId: putMeshRetry summary: Creates or Updates MeshRetry entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRetry required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshRetryItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshRetryCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshRetryCreateOrUpdateSuccessResponse' tags: - MeshRetry delete: x-speakeasy-entity-operation: terraform-resource: MeshRetry#delete terraform-datasource: null operationId: deleteMeshRetry summary: Deletes MeshRetry entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshRetry required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshRetryDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshRetry parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshretries': get: x-speakeasy-entity-operation: terraform-resource: MeshRetryList#get terraform-datasource: null operationId: getMeshRetryList summary: Returns a list of MeshRetry in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshRetryList' tags: - MeshRetry parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtcproutes/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTCPRoute#get terraform-datasource: null operationId: getMeshTCPRoute summary: Returns MeshTCPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTCPRoute required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTCPRouteItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTCPRoute put: x-speakeasy-entity-operation: terraform-resource: 'MeshTCPRoute#create,update' terraform-datasource: null operationId: putMeshTCPRoute summary: Creates or Updates MeshTCPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTCPRoute required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTCPRouteItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTCPRouteCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTCPRouteCreateOrUpdateSuccessResponse' tags: - MeshTCPRoute delete: x-speakeasy-entity-operation: terraform-resource: MeshTCPRoute#delete terraform-datasource: null operationId: deleteMeshTCPRoute summary: Deletes MeshTCPRoute entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTCPRoute required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTCPRouteDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTCPRoute parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtcproutes': get: x-speakeasy-entity-operation: terraform-resource: MeshTCPRouteList#get terraform-datasource: null operationId: getMeshTCPRouteList summary: Returns a list of MeshTCPRoute in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTCPRouteList' tags: - MeshTCPRoute parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtimeouts/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTimeout#get terraform-datasource: null operationId: getMeshTimeout summary: Returns MeshTimeout entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTimeout required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTimeoutItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTimeout put: x-speakeasy-entity-operation: terraform-resource: 'MeshTimeout#create,update' terraform-datasource: null operationId: putMeshTimeout summary: Creates or Updates MeshTimeout entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTimeout required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTimeoutItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTimeoutCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTimeoutCreateOrUpdateSuccessResponse' tags: - MeshTimeout delete: x-speakeasy-entity-operation: terraform-resource: MeshTimeout#delete terraform-datasource: null operationId: deleteMeshTimeout summary: Deletes MeshTimeout entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTimeout required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTimeoutDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTimeout parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtimeouts': get: x-speakeasy-entity-operation: terraform-resource: MeshTimeoutList#get terraform-datasource: null operationId: getMeshTimeoutList summary: Returns a list of MeshTimeout in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTimeoutList' tags: - MeshTimeout parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtlses/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTLS#get terraform-datasource: null operationId: getMeshTLS summary: Returns MeshTLS entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTLS required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTLSItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTLS put: x-speakeasy-entity-operation: terraform-resource: 'MeshTLS#create,update' terraform-datasource: null operationId: putMeshTLS summary: Creates or Updates MeshTLS entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTLS required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTLSItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTLSCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTLSCreateOrUpdateSuccessResponse' tags: - MeshTLS delete: x-speakeasy-entity-operation: terraform-resource: MeshTLS#delete terraform-datasource: null operationId: deleteMeshTLS summary: Deletes MeshTLS entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTLS required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTLSDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTLS parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtlses': get: x-speakeasy-entity-operation: terraform-resource: MeshTLSList#get terraform-datasource: null operationId: getMeshTLSList summary: Returns a list of MeshTLS in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTLSList' tags: - MeshTLS parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtraces/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTrace#get terraform-datasource: null operationId: getMeshTrace summary: Returns MeshTrace entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrace required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTraceItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrace put: x-speakeasy-entity-operation: terraform-resource: 'MeshTrace#create,update' terraform-datasource: null operationId: putMeshTrace summary: Creates or Updates MeshTrace entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrace required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTraceItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTraceCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTraceCreateOrUpdateSuccessResponse' tags: - MeshTrace delete: x-speakeasy-entity-operation: terraform-resource: MeshTrace#delete terraform-datasource: null operationId: deleteMeshTrace summary: Deletes MeshTrace entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrace required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTraceDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrace parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtraces': get: x-speakeasy-entity-operation: terraform-resource: MeshTraceList#get terraform-datasource: null operationId: getMeshTraceList summary: Returns a list of MeshTrace in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTraceList' tags: - MeshTrace parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtrafficpermissions/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTrafficPermission#get terraform-datasource: null operationId: getMeshTrafficPermission summary: Returns MeshTrafficPermission entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrafficPermission required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTrafficPermissionItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrafficPermission put: x-speakeasy-entity-operation: terraform-resource: 'MeshTrafficPermission#create,update' terraform-datasource: null operationId: putMeshTrafficPermission summary: Creates or Updates MeshTrafficPermission entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrafficPermission required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTrafficPermissionItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTrafficPermissionCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTrafficPermissionCreateOrUpdateSuccessResponse' tags: - MeshTrafficPermission delete: x-speakeasy-entity-operation: terraform-resource: MeshTrafficPermission#delete terraform-datasource: null operationId: deleteMeshTrafficPermission summary: Deletes MeshTrafficPermission entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrafficPermission required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTrafficPermissionDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrafficPermission parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtrafficpermissions': get: x-speakeasy-entity-operation: terraform-resource: MeshTrafficPermissionList#get terraform-datasource: null operationId: getMeshTrafficPermissionList summary: Returns a list of MeshTrafficPermission in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTrafficPermissionList' tags: - MeshTrafficPermission parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{name}': get: x-speakeasy-entity-operation: terraform-resource: Mesh#get terraform-datasource: null operationId: getMesh summary: Returns Mesh entity parameters: - name: name in: path description: name of the Mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshItem' '404': $ref: '#/components/responses/NotFound' tags: - Mesh put: x-speakeasy-entity-operation: terraform-resource: 'Mesh#create,update' terraform-datasource: null operationId: putMesh summary: Creates or Updates Mesh entity parameters: - name: name in: path description: name of the Mesh required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshCreateOrUpdateSuccessResponse' tags: - Mesh delete: x-speakeasy-entity-operation: terraform-resource: Mesh#delete terraform-datasource: null operationId: deleteMesh summary: Deletes Mesh entity parameters: - name: name in: path description: name of the Mesh required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - Mesh parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes': get: x-speakeasy-entity-operation: terraform-resource: MeshList#get terraform-datasource: null operationId: getMeshList summary: Returns a list of Mesh in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns responses: '200': $ref: '#/components/responses/MeshList' tags: - Mesh parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshgateways/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshGateway#get terraform-datasource: null operationId: getMeshGateway summary: Returns MeshGateway entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGateway required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshGatewayItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshGateway put: x-speakeasy-entity-operation: terraform-resource: 'MeshGateway#create,update' terraform-datasource: null operationId: putMeshGateway summary: Creates or Updates MeshGateway entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGateway required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshGatewayItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshGatewayCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshGatewayCreateOrUpdateSuccessResponse' tags: - MeshGateway delete: x-speakeasy-entity-operation: terraform-resource: MeshGateway#delete terraform-datasource: null operationId: deleteMeshGateway summary: Deletes MeshGateway entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGateway required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshGatewayDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshGateway parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshgateways': get: x-speakeasy-entity-operation: terraform-resource: MeshGatewayList#get terraform-datasource: null operationId: getMeshGatewayList summary: Returns a list of MeshGateway in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshGatewayList' tags: - MeshGateway parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/hostnamegenerators/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshHostnameGenerator#get terraform-datasource: null operationId: getHostnameGenerator summary: Returns HostnameGenerator entity parameters: - name: name in: path description: name of the HostnameGenerator required: true schema: type: string responses: '200': $ref: '#/components/responses/HostnameGeneratorItem' '404': $ref: '#/components/responses/NotFound' tags: - HostnameGenerator put: x-speakeasy-entity-operation: terraform-resource: 'MeshHostnameGenerator#create,update' terraform-datasource: null operationId: putHostnameGenerator summary: Creates or Updates HostnameGenerator entity parameters: - name: name in: path description: name of the HostnameGenerator required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/HostnameGeneratorItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/HostnameGeneratorCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/HostnameGeneratorCreateOrUpdateSuccessResponse' tags: - HostnameGenerator delete: x-speakeasy-entity-operation: terraform-resource: MeshHostnameGenerator#delete terraform-datasource: null operationId: deleteHostnameGenerator summary: Deletes HostnameGenerator entity parameters: - name: name in: path description: name of the HostnameGenerator required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/HostnameGeneratorDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - HostnameGenerator parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/hostnamegenerators': get: x-speakeasy-entity-operation: terraform-resource: HostnameGeneratorList#get terraform-datasource: null operationId: getHostnameGeneratorList summary: Returns a list of HostnameGenerator in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns responses: '200': $ref: '#/components/responses/HostnameGeneratorList' tags: - HostnameGenerator parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshexternalservices/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshExternalService#get terraform-datasource: null operationId: getMeshExternalService summary: Returns MeshExternalService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshExternalService required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshExternalServiceItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshExternalService put: x-speakeasy-entity-operation: terraform-resource: 'MeshExternalService#create,update' terraform-datasource: null operationId: putMeshExternalService summary: Creates or Updates MeshExternalService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshExternalService required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshExternalServiceItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshExternalServiceCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshExternalServiceCreateOrUpdateSuccessResponse' tags: - MeshExternalService delete: x-speakeasy-entity-operation: terraform-resource: MeshExternalService#delete terraform-datasource: null operationId: deleteMeshExternalService summary: Deletes MeshExternalService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshExternalService required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshExternalServiceDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshExternalService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshexternalservices': get: x-speakeasy-entity-operation: terraform-resource: MeshExternalServiceList#get terraform-datasource: null operationId: getMeshExternalServiceList summary: Returns a list of MeshExternalService in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshExternalServiceList' tags: - MeshExternalService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshidentities/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshIdentity#get terraform-datasource: null operationId: getMeshIdentity summary: Returns MeshIdentity entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshIdentity required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshIdentityItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshIdentity put: x-speakeasy-entity-operation: terraform-resource: 'MeshIdentity#create,update' terraform-datasource: null operationId: putMeshIdentity summary: Creates or Updates MeshIdentity entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshIdentity required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshIdentityItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshIdentityCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshIdentityCreateOrUpdateSuccessResponse' tags: - MeshIdentity delete: x-speakeasy-entity-operation: terraform-resource: MeshIdentity#delete terraform-datasource: null operationId: deleteMeshIdentity summary: Deletes MeshIdentity entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshIdentity required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshIdentityDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshIdentity parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshidentities': get: x-speakeasy-entity-operation: terraform-resource: MeshIdentityList#get terraform-datasource: null operationId: getMeshIdentityList summary: Returns a list of MeshIdentity in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshIdentityList' tags: - MeshIdentity parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshmultizoneservices/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshMultiZoneService#get terraform-datasource: null operationId: getMeshMultiZoneService summary: Returns MeshMultiZoneService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMultiZoneService required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshMultiZoneServiceItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshMultiZoneService put: x-speakeasy-entity-operation: terraform-resource: 'MeshMultiZoneService#create,update' terraform-datasource: null operationId: putMeshMultiZoneService summary: Creates or Updates MeshMultiZoneService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMultiZoneService required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshMultiZoneServiceItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshMultiZoneServiceCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshMultiZoneServiceCreateOrUpdateSuccessResponse' tags: - MeshMultiZoneService delete: x-speakeasy-entity-operation: terraform-resource: MeshMultiZoneService#delete terraform-datasource: null operationId: deleteMeshMultiZoneService summary: Deletes MeshMultiZoneService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshMultiZoneService required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshMultiZoneServiceDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshMultiZoneService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshmultizoneservices': get: x-speakeasy-entity-operation: terraform-resource: MeshMultiZoneServiceList#get terraform-datasource: null operationId: getMeshMultiZoneServiceList summary: Returns a list of MeshMultiZoneService in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshMultiZoneServiceList' tags: - MeshMultiZoneService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshservices/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshService#get terraform-datasource: null operationId: getMeshService summary: Returns MeshService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshService required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshServiceItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshService put: x-speakeasy-entity-operation: terraform-resource: 'MeshService#create,update' terraform-datasource: null operationId: putMeshService summary: Creates or Updates MeshService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshService required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshServiceItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshServiceCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshServiceCreateOrUpdateSuccessResponse' tags: - MeshService delete: x-speakeasy-entity-operation: terraform-resource: MeshService#delete terraform-datasource: null operationId: deleteMeshService summary: Deletes MeshService entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshService required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshServiceDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshservices': get: x-speakeasy-entity-operation: terraform-resource: MeshServiceList#get terraform-datasource: null operationId: getMeshServiceList summary: Returns a list of MeshService in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshServiceList' tags: - MeshService parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtrusts/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshTrust#get terraform-datasource: null operationId: getMeshTrust summary: Returns MeshTrust entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrust required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTrustItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrust put: x-speakeasy-entity-operation: terraform-resource: 'MeshTrust#create,update' terraform-datasource: null operationId: putMeshTrust summary: Creates or Updates MeshTrust entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrust required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshTrustItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshTrustCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshTrustCreateOrUpdateSuccessResponse' tags: - MeshTrust delete: x-speakeasy-entity-operation: terraform-resource: MeshTrust#delete terraform-datasource: null operationId: deleteMeshTrust summary: Deletes MeshTrust entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshTrust required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTrustDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshTrust parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshtrusts': get: x-speakeasy-entity-operation: terraform-resource: MeshTrustList#get terraform-datasource: null operationId: getMeshTrustList summary: Returns a list of MeshTrust in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshTrustList' tags: - MeshTrust parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshglobalratelimits/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshGlobalRateLimit#get terraform-datasource: null operationId: getMeshGlobalRateLimit summary: Returns MeshGlobalRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGlobalRateLimit required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshGlobalRateLimitItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshGlobalRateLimit put: x-speakeasy-entity-operation: terraform-resource: 'MeshGlobalRateLimit#create,update' terraform-datasource: null operationId: putMeshGlobalRateLimit summary: Creates or Updates MeshGlobalRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGlobalRateLimit required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshGlobalRateLimitItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshGlobalRateLimitCreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshGlobalRateLimitCreateOrUpdateSuccessResponse' tags: - MeshGlobalRateLimit delete: x-speakeasy-entity-operation: terraform-resource: MeshGlobalRateLimit#delete terraform-datasource: null operationId: deleteMeshGlobalRateLimit summary: Deletes MeshGlobalRateLimit entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshGlobalRateLimit required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshGlobalRateLimitDeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshGlobalRateLimit parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshglobalratelimits': get: x-speakeasy-entity-operation: terraform-resource: MeshGlobalRateLimitList#get terraform-datasource: null operationId: getMeshGlobalRateLimitList summary: Returns a list of MeshGlobalRateLimit in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshGlobalRateLimitList' tags: - MeshGlobalRateLimit parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshopas/{name}': get: x-speakeasy-entity-operation: terraform-resource: MeshOPA#get terraform-datasource: null operationId: getMeshOPA summary: Returns MeshOPA entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshOPA required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshOPAItem' '404': $ref: '#/components/responses/NotFound' tags: - MeshOPA put: x-speakeasy-entity-operation: terraform-resource: 'MeshOPA#create,update' terraform-datasource: null operationId: putMeshOPA summary: Creates or Updates MeshOPA entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshOPA required: true schema: type: string requestBody: description: Put request required: true content: application/json: schema: $ref: '#/components/schemas/MeshOPAItem' responses: '200': description: Updated content: application/json: schema: $ref: '#/components/schemas/MeshOPACreateOrUpdateSuccessResponse' '201': description: Created content: application/json: schema: $ref: '#/components/schemas/MeshOPACreateOrUpdateSuccessResponse' tags: - MeshOPA delete: x-speakeasy-entity-operation: terraform-resource: MeshOPA#delete terraform-datasource: null operationId: deleteMeshOPA summary: Deletes MeshOPA entity parameters: - name: mesh in: path description: name of the mesh required: true schema: type: string - name: name in: path description: name of the MeshOPA required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshOPADeleteSuccessResponse' '404': $ref: '#/components/responses/NotFound' tags: - MeshOPA parameters: - $ref: '#/components/parameters/cpId' '/v1/mesh/control-planes/{cpId}/api/meshes/{mesh}/meshopas': get: x-speakeasy-entity-operation: terraform-resource: MeshOPAList#get terraform-datasource: null operationId: getMeshOPAList summary: Returns a list of MeshOPA in the mesh. parameters: - name: offset in: query description: offset in the list of entities required: false schema: type: integer example: 0 - name: size in: query description: the number of items per page required: false schema: type: integer default: 100 maximum: 1000 minimum: 1 - name: filter in: query description: 'filter by labels when multiple filters are present, they are ANDed' required: false schema: type: object properties: key: type: string value: type: string example: label.k8s.kuma.io/namespace: my-ns - name: mesh in: path description: name of the mesh required: true schema: type: string responses: '200': $ref: '#/components/responses/MeshOPAList' tags: - MeshOPA parameters: - $ref: '#/components/parameters/cpId' /v1/mesh/control-planes: get: x-speakeasy-entity-operation: MeshControlPlanes#get operationId: list-mesh-control-planes summary: List Control Planes description: Returns an array of control planes objects. parameters: - $ref: '#/components/parameters/PageSize' - $ref: '#/components/parameters/PageNumber' responses: '200': $ref: '#/components/responses/ListMeshControlPlanesResponse' '401': $ref: '#/components/responses/MeshControlPlaneUnauthorizedError' '403': $ref: '#/components/responses/MeshControlPlaneForbiddenError' tags: - Mesh post: x-speakeasy-entity-operation: terraform-resource: MeshControlPlane#create terraform-datasource: null operationId: create-cp summary: Create a new control plane description: Create a new control plane requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateMeshControlPlaneRequest' responses: '201': $ref: '#/components/responses/CreateMeshControlPlaneResponse' '400': $ref: '#/components/responses/CreateMeshControlPlaneValidationError' '401': $ref: '#/components/responses/MeshControlPlaneUnauthorizedError' '403': $ref: '#/components/responses/MeshControlPlaneForbiddenError' tags: - Mesh '/v1/mesh/control-planes/{cpId}': parameters: - name: cpId in: path description: Id of the Konnect resource required: true schema: type: string format: uuid example: bf138ba2-c9b1-4229-b268-04d9d8a6410b x-speakeasy-match: id x-speakeasy-param-suppress-computed-diff: true get: x-speakeasy-entity-operation: terraform-resource: MeshControlPlane#read terraform-datasource: null operationId: get-mesh-control-plane summary: Get the control plane description: Get the control plane responses: '200': $ref: '#/components/responses/RetrieveMeshControlPlaneResponse' '401': $ref: '#/components/responses/MeshControlPlaneUnauthorizedError' '403': $ref: '#/components/responses/MeshControlPlaneForbiddenError' '404': $ref: '#/components/responses/MeshControlPlaneNotFoundError' tags: - Mesh delete: x-speakeasy-entity-operation: terraform-resource: MeshControlPlane#delete terraform-datasource: null operationId: delete-mesh-control-plane summary: Delete the control plane description: Delete the control plane responses: '204': description: No Content '400': $ref: '#/components/responses/DeleteMeshControlPlaneValidationError' '401': $ref: '#/components/responses/MeshControlPlaneUnauthorizedError' '403': $ref: '#/components/responses/MeshControlPlaneForbiddenError' '404': $ref: '#/components/responses/MeshControlPlaneNotFoundError' tags: - Mesh x-speakeasy-retries: strategy: backoff backoff: initialInterval: 1000 maxInterval: 60000 maxElapsedTime: 360000 exponent: 2 statusCodes: - 400 retryConnectionErrors: true put: x-speakeasy-entity-operation: terraform-resource: MeshControlPlane#update terraform-datasource: null operationId: update-cp summary: Update a whole control plane description: Update a whole control plane requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PutMeshControlPlaneRequest' responses: '200': $ref: '#/components/responses/PutMeshControlPlaneResponse' '400': $ref: '#/components/responses/PutMeshControlPlaneValidationError' '401': $ref: '#/components/responses/MeshControlPlaneUnauthorizedError' '403': $ref: '#/components/responses/MeshControlPlaneForbiddenError' '404': $ref: '#/components/responses/MeshControlPlaneNotFoundError' tags: - Mesh /v1/auth-servers: post: x-speakeasy-entity-operation: terraform-resource: AuthServer#create terraform-datasource: null operationId: createAuthServer summary: Create a new auth server description: 'Create a new auth server. Each auth server has a unique, randomly generated, public issuer URL.' requestBody: $ref: '#/components/requestBodies/CreateAuthServer' responses: '201': $ref: '#/components/responses/AuthServer' '400': $ref: '#/components/responses/BadRequest' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server '/v1/auth-servers/{authServerId}': parameters: - $ref: '#/components/parameters/authServerId' get: x-speakeasy-entity-operation: terraform-resource: AuthServer#read terraform-datasource: null operationId: getAuthServer summary: Get an auth server description: Get an auth server. responses: '200': $ref: '#/components/responses/AuthServer' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server patch: x-speakeasy-entity-operation: terraform-resource: AuthServer#update terraform-datasource: null operationId: updateAuthServer summary: Update an auth server description: Update an auth server. requestBody: $ref: '#/components/requestBodies/UpdateAuthServer' responses: '200': $ref: '#/components/responses/AuthServer' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server delete: x-speakeasy-entity-operation: terraform-resource: AuthServer#delete terraform-datasource: null operationId: deleteAuthServer summary: Delete an auth server description: Delete an auth server. All resources associated with the auth server will also be deleted. This action is irreversible. responses: '204': description: Success '404': $ref: '#/components/responses/NotFound' tags: - Auth Server '/v1/auth-servers/{authServerId}/claims': parameters: - $ref: '#/components/parameters/authServerIdForChildren' post: x-speakeasy-entity-operation: terraform-resource: AuthServerClaims#create terraform-datasource: null operationId: createAuthServerClaim summary: Create a new auth server claim description: 'Create a new claim for a given auth server. The `name` attribute will appear in the JWT access token as a claim with the given case-sensitive name. The `value` attribute will be used to populate the claim value in the JWT access token. The value can be templated, which allows you to use variables like `${ uuidv4 }` to generate dynamic values. Claim values are hydrated based on their types, which may include JSON.' requestBody: $ref: '#/components/requestBodies/CreateClaim' responses: '201': $ref: '#/components/responses/Claim' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Claims '/v1/auth-servers/{authServerId}/claims/{claimId}': parameters: - $ref: '#/components/parameters/authServerIdForChildren' - $ref: '#/components/parameters/claimId' get: x-speakeasy-entity-operation: terraform-resource: AuthServerClaims#read terraform-datasource: null operationId: getAuthServerClaim summary: Get an auth server claim description: Get a claim for given auth server. responses: '200': $ref: '#/components/responses/Claim' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Claims patch: x-speakeasy-entity-operation: terraform-resource: AuthServerClaims#update terraform-datasource: null operationId: updateAuthServerClaim summary: Update an auth server claim description: Update a claim for a given auth server. requestBody: $ref: '#/components/requestBodies/UpdateClaim' responses: '200': $ref: '#/components/responses/Claim' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Claims delete: x-speakeasy-entity-operation: terraform-resource: AuthServerClaims#delete terraform-datasource: null operationId: deleteAuthServerClaim summary: Delete an auth server claim description: 'Delete a claim for a given auth server. If the claim is included in any scopes, it will be removed from those scopes.' responses: '204': description: Success '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Claims '/v1/auth-servers/{authServerId}/scopes': parameters: - $ref: '#/components/parameters/authServerIdForChildren' post: x-speakeasy-entity-operation: terraform-resource: AuthServerScopes#create terraform-datasource: null operationId: createAuthServerScope summary: Create a new auth server scope description: Create a new scope for a given auth server. The `name` attribute must be unique within the auth server. requestBody: $ref: '#/components/requestBodies/CreateScope' responses: '201': $ref: '#/components/responses/Scope' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server Scopes '/v1/auth-servers/{authServerId}/scopes/{scopeId}': parameters: - $ref: '#/components/parameters/authServerIdForChildren' - $ref: '#/components/parameters/scopeId' get: x-speakeasy-entity-operation: terraform-resource: AuthServerScopes#read terraform-datasource: null operationId: getAuthServerScope summary: Get an auth server scope description: Get a scope for given auth server. responses: '200': $ref: '#/components/responses/Scope' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Scopes patch: x-speakeasy-entity-operation: terraform-resource: AuthServerScopes#update terraform-datasource: null operationId: updateAuthServerScope summary: Update an auth server scope description: Update a scope for a given auth server. requestBody: $ref: '#/components/requestBodies/UpdateScope' responses: '200': $ref: '#/components/responses/Scope' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server Scopes delete: x-speakeasy-entity-operation: terraform-resource: AuthServerScopes#delete terraform-datasource: null operationId: deleteAuthServerScope summary: Delete an auth server scope description: 'Delete a scope for a given auth server. If the scope is included in any clients, it will be removed from those clients.' responses: '204': description: Success '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Scopes '/v1/auth-servers/{authServerId}/clients': parameters: - $ref: '#/components/parameters/authServerIdForChildren' post: x-speakeasy-entity-operation: terraform-resource: AuthServerClients#create terraform-datasource: null operationId: createAuthServerClient summary: Create a new auth server client description: Create a new client for a given auth server. The client ID and secret will be generated automatically. The `name` attribute must be unique within the auth server. The `grant_types` and `response_types` attributes define the OAuth 2.0 and OpenID Connect capabilities of the client. requestBody: $ref: '#/components/requestBodies/CreateClient' responses: '201': $ref: '#/components/responses/CreatedClient' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server Clients '/v1/auth-servers/{authServerId}/clients/{clientId}': parameters: - $ref: '#/components/parameters/authServerIdForChildren' - $ref: '#/components/parameters/clientId' get: x-speakeasy-entity-operation: terraform-resource: AuthServerClients#read terraform-datasource: null operationId: getAuthServerClient summary: Get an auth server client description: Get a client for given auth server. responses: '200': $ref: '#/components/responses/Client' '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Clients put: x-speakeasy-entity-operation: terraform-resource: AuthServerClients#update terraform-datasource: null operationId: replaceAuthServerClient summary: Replace an auth server client description: 'Replace a client for a given auth server. The client ID and secret can be provided to update an existing client, or to create a client with the matching ID and secret.' requestBody: $ref: '#/components/requestBodies/ReplaceClient' responses: '200': $ref: '#/components/responses/Client' '201': $ref: '#/components/responses/Client' '400': $ref: '#/components/responses/BadRequest' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' tags: - Auth Server Clients delete: x-speakeasy-entity-operation: terraform-resource: AuthServerClients#delete terraform-datasource: null operationId: deleteAuthServerClient summary: Delete an auth server client description: Delete a client for a given auth server. All tokens associated with the client will also be deleted. This action is irreversible. responses: '204': description: Success '404': $ref: '#/components/responses/NotFound' tags: - Auth Server Clients /v2/dashboards: post: x-speakeasy-entity-operation: terraform-resource: Dashboard#create terraform-datasource: null operationId: dashboards-create summary: Create a new dashboard description: Creates a new dashboard from the provided definition. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DashboardUpdateRequest' responses: '201': description: 'The created dashboard, including generated fields.' content: application/json: schema: $ref: '#/components/schemas/DashboardResponse' '400': description: Bad request; returned when the request payload was not valid. content: application/problem+json: {} '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Dashboards '/v2/dashboards/{dashboardId}': parameters: - name: dashboardId in: path description: The dashboard's ID. required: true schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a x-speakeasy-match: id get: x-speakeasy-entity-operation: terraform-resource: Dashboard#read terraform-datasource: null operationId: dashboards-get summary: Get a single dashboard description: Get a dashboard that your account has access to. responses: '200': description: The dashboard with the given ID. content: application/json: schema: $ref: '#/components/schemas/DashboardResponse' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Dashboards put: x-speakeasy-entity-operation: terraform-resource: Dashboard#update terraform-datasource: null operationId: dashboards-update summary: Update an existing dashboard description: 'Update an existing dashboard, replacing its definition with the provided one.' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DashboardUpdateRequest' responses: '200': description: 'The created dashboard, including generated fields.' content: application/json: schema: $ref: '#/components/schemas/DashboardResponse' '400': description: Bad request; returned when the request payload was not valid. content: application/problem+json: {} '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Dashboards delete: x-speakeasy-entity-operation: terraform-resource: Dashboard#delete terraform-datasource: null operationId: dashboards-delete summary: Delete an existing dashboard description: Delete an existing dashboard. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Dashboards /v1/event-gateways: parameters: [] post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGateway#create terraform-datasource: null operationId: create-event-gateway summary: Create Event Gateway description: Create a Event gateway in the Konnect Organization. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateGatewayRequest' responses: '201': $ref: '#/components/responses/CreateGatewayResponse' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' '500': $ref: '#/components/responses/Internal' '503': $ref: '#/components/responses/NotAvailable' tags: - Houdini Event Gateways '/v1/event-gateways/{gatewayId}': parameters: - name: gatewayId in: path description: The UUID of your Gateway. required: true schema: type: string format: uuid example: 9524ec7d-36d9-465d-a8c5-83a3c9390458 x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGateway#read terraform-datasource: null operationId: get-event-gateway summary: Fetch Event Gateway description: Returns information about an individual Event gateway. responses: '200': description: A response to retrieving a single eventgateway. content: application/json: schema: $ref: '#/components/schemas/EventGatewayInfo' '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/NotAvailable' tags: - Houdini Event Gateways put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGateway#update terraform-datasource: null operationId: update-houdini-event-gateway summary: Update Houdini Event Gateway description: Update an individual gateway. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/UpdateGatewayRequest' responses: '200': $ref: '#/components/responses/UpdateGatewayResponse' '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/NotAvailable' tags: - Houdini Event Gateways delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGateway#delete terraform-datasource: null operationId: delete-event-gateway summary: Delete Event Gateway description: Delete an individual gateway. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Houdini Event Gateways '/v1/event-gateways/{gatewayId}/listeners': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayListener#create terraform-datasource: null operationId: create-event-gateway-listener summary: Create Event Gateway Listener description: Creates a new listener associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/CreateEventGatewayListenerRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/EventGatewayListener' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Listeners '/v1/event-gateways/{gatewayId}/listeners/{eventGatewayListenerId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: eventGatewayListenerId in: path description: The ID of the Event Gateway Listener. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayListener#read terraform-datasource: null operationId: get-event-gateway-listener summary: Fetch Event Gateway Listener description: Returns information about a specific listener associated with the Event Gateway. responses: '200': description: A single event gateway listener object. content: application/json: schema: $ref: '#/components/schemas/EventGatewayListener' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Listeners put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayListener#update terraform-datasource: null operationId: update-event-gateway-listener summary: Update Event Gateway Listener description: Updates an existing listener associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/UpdateEventGatewayListenerRequest' responses: '200': description: Updated event gateway listener object. content: application/json: schema: $ref: '#/components/schemas/EventGatewayListener' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Listeners delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayListener#delete terraform-datasource: null operationId: delete-event-gateway-listener summary: Delete Event Gateway Listener description: Deletes a specific listener associated with the Event Gateway. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Listeners '/v1/event-gateways/{gatewayId}/virtual-clusters': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVirtualCluster#create terraform-datasource: null operationId: create-event-gateway-virtual-cluster summary: Create Virtual Cluster description: Creates a new virtual cluster associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/CreateVirtualClusterRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/VirtualCluster' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Virtual Clusters '/v1/event-gateways/{gatewayId}/virtual-clusters/{virtualClusterId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: virtualClusterId in: path description: The ID of the Virtual Cluster. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVirtualCluster#read terraform-datasource: null operationId: get-event-gateway-virtual-cluster summary: Fetch Virtual Cluster description: Returns information about a specific virtual cluster associated with the Event Gateway. responses: '200': description: A single virtual cluster object. content: application/json: schema: $ref: '#/components/schemas/VirtualCluster' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Virtual Clusters put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVirtualCluster#update terraform-datasource: null operationId: update-event-gateway-virtual-cluster summary: Update Virtual Cluster description: Updates an existing virtual cluster associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/UpdateVirtualClusterRequest' responses: '200': description: Updated virtual cluster object. content: application/json: schema: $ref: '#/components/schemas/VirtualCluster' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Virtual Clusters delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVirtualCluster#delete terraform-datasource: null operationId: delete-event-gateway-virtual-cluster summary: Delete Virtual Cluster description: Deletes a specific virtual cluster associated with the Event Gateway. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Virtual Clusters '/v1/event-gateways/{gatewayId}/backend-clusters': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayBackendCluster#create terraform-datasource: null operationId: create-event-gateway-backend-cluster summary: Create Backend Cluster description: Creates a new backend cluster. requestBody: $ref: '#/components/requestBodies/CreateBackendClusterRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/BackendCluster' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Backend Clusters '/v1/event-gateways/{gatewayId}/backend-clusters/{backendClusterId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: backendClusterId in: path description: The ID of the Backend Cluster. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayBackendCluster#read terraform-datasource: null operationId: get-event-gateway-backend-cluster summary: Fetch Backend Cluster description: Returns information about a specific backend cluster. responses: '200': description: A single backend cluster object. content: application/json: schema: $ref: '#/components/schemas/BackendCluster' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Backend Clusters put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayBackendCluster#update terraform-datasource: null operationId: update-event-gateway-backend-cluster summary: Update Backend Cluster description: Updates an existing backend cluster. requestBody: $ref: '#/components/requestBodies/UpdateBackendClusterRequest' responses: '200': description: Updated backend cluster object. content: application/json: schema: $ref: '#/components/schemas/BackendCluster' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Backend Clusters delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayBackendCluster#delete terraform-datasource: null operationId: delete-event-gateway-backend-cluster summary: Delete Backend Cluster description: Deletes a specific backend cluster. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Backend Clusters '/v1/event-gateways/{gatewayId}/vaults': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVault#create terraform-datasource: null operationId: create-event-gateway-vault summary: Create Vault description: Creates a new vault associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/CreateEventGatewayVaultRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/EventGatewayVault' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Vaults '/v1/event-gateways/{gatewayId}/vaults/{vaultId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: vaultId in: path description: The ID of the Vault. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVault#read terraform-datasource: null operationId: get-event-gateway-vault summary: Fetch Vault description: Returns information about a specific vault associated with the Event Gateway. responses: '200': description: A single vault object. content: application/json: schema: $ref: '#/components/schemas/EventGatewayVault' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Vaults put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVault#update terraform-datasource: null operationId: update-event-gateway-vault summary: Update Vault description: Updates an existing vault associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/UpdateEventGatewayVaultRequest' responses: '200': description: Updated vault object. content: application/json: schema: $ref: '#/components/schemas/EventGatewayVault' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Vaults delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayVault#delete terraform-datasource: null operationId: delete-event-gateway-vault summary: Delete Vault description: Deletes a specific vault associated with the Event Gateway. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Vaults '/v1/event-gateways/{gatewayId}/schema-registries': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewaySchemaRegistry#create terraform-datasource: null operationId: create-event-gateway-schema-registry summary: Create Schema Registry description: Creates a new schema registry associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/CreateSchemaRegistryRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/SchemaRegistry' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Schema Registries '/v1/event-gateways/{gatewayId}/schema-registries/{schemaRegistryId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: schemaRegistryId in: path description: The ID of the Schema Registry. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewaySchemaRegistry#read terraform-datasource: null operationId: get-event-gateway-schema-registry summary: Fetch Schema Registry description: Returns information about a specific schema registry associated with the Event Gateway. responses: '200': description: A single schema registry object. content: application/json: schema: $ref: '#/components/schemas/SchemaRegistry' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway Schema Registries put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewaySchemaRegistry#update terraform-datasource: null operationId: update-event-gateway-schema-registry summary: Update Schema Registry description: Updates an existing schema registry associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/UpdateSchemaRegistryRequest' responses: '200': description: Updated schema registry object. content: application/json: schema: $ref: '#/components/schemas/SchemaRegistry' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway Schema Registries delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewaySchemaRegistry#delete terraform-datasource: null operationId: delete-event-gateway-schema-registry summary: Delete Schema Registry description: Deletes a specific schema registry associated with the Event Gateway. 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' tags: - Event Gateway Schema Registries '/v1/event-gateways/{gatewayId}/data-plane-certificates': parameters: - $ref: '#/components/parameters/gatewayId' post: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayDataPlaneCertificate#create terraform-datasource: null operationId: create-event-gateway-data-plane-certificate summary: Create a New DataPlane Certificate description: Create new dataplane certificate to this event gateway. A dataplane certificate allows dataplanes configured with the certificate and corresponding private key to establish connection with this event gateway. requestBody: $ref: '#/components/requestBodies/CreateEventGatewayDataPlaneCertificateRequest' responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/EventGatewayDataPlaneCertificate' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway DataPlane Certificates '/v1/event-gateways/{gatewayId}/data-plane-certificates/{certificateId}': parameters: - $ref: '#/components/parameters/gatewayId' - name: certificateId in: path description: The ID of the dataplane certificate. required: true schema: type: string format: uuid x-speakeasy-match: id get: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayDataPlaneCertificate#read terraform-datasource: null operationId: get-event-gateway-data-plane-certificate summary: Fetch a DataPlane Certificate description: Returns information about an individual dataplane certificate. responses: '200': description: A single dataplane certificate. content: application/json: schema: $ref: '#/components/schemas/EventGatewayDataPlaneCertificate' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway DataPlane Certificates put: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayDataPlaneCertificate#update terraform-datasource: null operationId: update-event-gateway-data-plane-certificate summary: Update Event Gateway DataPlane Certificate description: Updates an existing dataplane certificate associated with the specified Event Gateway. requestBody: $ref: '#/components/requestBodies/UpdateEventGatewayDataPlaneCertificateRequest' responses: '200': description: Updated event gateway dataplane certificate object. content: application/json: schema: $ref: '#/components/schemas/EventGatewayDataPlaneCertificate' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' tags: - Event Gateway DataPlane Certificates delete: x-unstable: true x-internal: true x-speakeasy-entity-operation: terraform-resource: EventGatewayDataPlaneCertificate#delete terraform-datasource: null operationId: delete-event-gateway-data-plane-certificate summary: Delete Event Gateway DataPlane Certificate description: Deletes a specific dataplane certificate associated with the Event Gateway. responses: '204': description: No Content '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' tags: - Event Gateway DataPlane Certificates components: parameters: ApiId: schema: type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 name: apiId in: path required: true description: The UUID API identifier DocumentId: schema: type: string format: uuid example: de5c9818-be5c-42e6-b514-e3d4bc30ddeb name: documentId description: The document identifier related to the API in: path required: true x-speakeasy-match: id ImplementationId: schema: type: string format: uuid example: 032d905a-ed33-46a3-a093-d8f536af9a8a name: implementationId in: path required: true description: The Portal identifier x-speakeasy-match: id PageId: schema: type: string format: uuid example: ebbac5b0-ac89-45c3-9d2e-c4542c657e79 name: pageId in: path required: true description: ID of the page. x-speakeasy-match: id PageNumber: name: 'page[number]' description: Determines which page of the entities to retrieve. required: false in: query allowEmptyValue: true schema: type: integer example: 1 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 PortalId: schema: type: string format: uuid example: f32d905a-ed33-46a3-a093-d8f536af9a8a name: portalId in: path required: true description: The Portal identifier SnippetId: schema: type: string format: uuid example: ebbac5b0-ac89-45c3-9d2e-c4542c657e79 name: snippetId in: path required: true description: ID of the snippet. x-speakeasy-match: id SortPortals: name: sort description: | Sorts a collection of portals. Supported sort attributes are: - name - description - authentication_enabled - rbac_enabled - auto_approve_applications - auto_approve_developers - default_domain - canonical_domain - created_at - updated_at in: query required: false schema: type: string SpecId: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: specId description: The API specification identifier in: path required: true x-speakeasy-match: id TeamId: x-speakeasy-match: id schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: teamId in: path required: true description: ID of the team. VersionId: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: versionId description: The API version identifier in: path required: true x-speakeasy-match: id authServerId: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: authServerId in: path required: true description: The auth server ID x-speakeasy-match: id authServerIdForChildren: schema: type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a name: authServerId in: path required: true description: The auth server ID x-speakeasy-name-override: auth_server_id claimId: schema: type: string format: uuid example: 07d05309-45cc-4b37-92fb-1524846deec3 name: claimId in: path required: true description: The claim ID x-speakeasy-match: id clientId: schema: $ref: '#/components/schemas/ClientId' name: clientId in: path required: true description: The OAuth 2.0 client ID x-speakeasy-match: id cpId: name: cpId in: path required: true description: Id of the Konnect resource example: bf138ba2-c9b1-4229-b268-04d9d8a6410b x-speakeasy-param-force-new: true schema: type: string format: uuid gatewayId: name: gatewayId in: path required: true schema: type: string format: uuid example: 9524ec7d-36d9-465d-a8c5-83a3c9390458 description: The UUID of your Gateway. scopeId: schema: type: string format: uuid example: c5e12516-182c-4928-ae04-05374b3b1cca name: scopeId in: path required: true description: The scope ID x-speakeasy-match: id schemas: PortalImageDataUri: description: 'must be a data URL with base64 image data, e.g., data:image/jpeg;base64,' type: string format: uri example: 'data:image/png;base64,YW5faW1hZ2VfZmlsZQ==' pattern: '^data:image/(png|jpeg|svg\+xml|x-icon|ico|icon|vnd.microsoft.icon|gif)(;base64)?,(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$' title: PortalImageDataUri x-validation-message: 'must be a data URL with base64 image data, e.g., data:image/jpeg;base64,' ReplacePortalImageAsset: description: 'The image data to upload. Images must be a data URL with binary image data in base 64 format. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URLs.' type: object properties: data: $ref: '#/components/schemas/PortalImageDataUri' example: data: 'data:image/jpeg;base64,bmljZV9sb29raW5nX3BpY3R1cmU=' default: null additionalProperties: false nullable: true required: - data title: ReplacePortalImageAsset x-speakeasy-param-computed: false PageSlug: description: | The slug of a page in a portal, used to compute its full URL path within the portal hierarchy. When a page has a `parent_page_id`, its full path is built by joining the parent’s slug with its own. For example, if a parent page has the slug `slug1` and this page’s slug is `slug2`, the resulting path will be `/slug1/slug2`. This enables nested page structures like `/slug1/slug2/slug3`. type: string example: /my-page maxLength: 512 title: PageSlug ParentPageId: description: | Pages may be rendered as a tree of files. Specify the `id` of another page as the `parent_page_id` to add some hierarchy to your pages. type: string format: uuid example: null default: null nullable: true x-speakeasy-param-computed: false PageTitle: description: The title of a page in a portal. type: string example: My Page maxLength: 512 title: PageTitle PageContent: description: The renderable markdown content of a page in a portal. type: string example: '# Welcome to My Page' maxLength: 1000000 title: PageContent SnippetName: description: The unique name of a snippet in a portal. type: string example: my-snippet maxLength: 512 title: SnippetName SnippetTitle: description: The display title of a snippet in a portal. type: string example: My Snippet maxLength: 512 title: SnippetTitle SnippetContent: description: The renderable markdown content of a page in a portal. type: string example: '# Welcome to My Snippet' maxLength: 1000000 title: SnippetContent VisibilityStatus: description: Whether the resource is publicly accessible to non-authenticated users. type: string example: public enum: - public - private title: VisibilityStatus PublishedStatus: description: Whether the resource is visible on a given portal. Defaults to unpublished. type: string example: published enum: - published - unpublished title: PublishedStatus Description: type: string example: A custom page about developer portals maxLength: 160 title: ResourceDescription PageVisibilityStatus: description: | Whether a page is publicly accessible to non-authenticated users. If not provided, the default_page_visibility value of the portal will be used. type: string example: public enum: - public - private title: PageVisibilityStatus SnippetVisibilityStatus: description: | Whether a snippet is publicly accessible to non-authenticated users. If not provided, the default_page_visibility value of the portal will be used. type: string example: public enum: - public - private title: PageVisibilityStatus UpdatePortalPageRequest: description: Update a page in a portal. type: object properties: slug: $ref: '#/components/schemas/PageSlug' title: $ref: '#/components/schemas/PageTitle' content: $ref: '#/components/schemas/PageContent' visibility: $ref: '#/components/schemas/VisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' parent_page_id: $ref: '#/components/schemas/ParentPageId' additionalProperties: false title: UpdatePortalPageRequest CreatePortalPageRequest: description: Create a page in a portal. type: object properties: slug: $ref: '#/components/schemas/PageSlug' title: $ref: '#/components/schemas/PageTitle' content: $ref: '#/components/schemas/PageContent' visibility: $ref: '#/components/schemas/PageVisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' parent_page_id: $ref: '#/components/schemas/ParentPageId' additionalProperties: false required: - slug - content title: CreatePortalPageRequest PortalPageResponse: description: Details about a page in a portal. type: object properties: id: $ref: '#/components/schemas/UUID' slug: $ref: '#/components/schemas/PageSlug' title: $ref: '#/components/schemas/PageTitle' content: $ref: '#/components/schemas/PageContent' visibility: $ref: '#/components/schemas/VisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' parent_page_id: $ref: '#/components/schemas/ParentPageId' additionalProperties: false required: - id - slug - title - content - visibility - status - created_at - updated_at - parent_page_id title: PortalPageResponse PortalSnippetResponse: description: Details about a page in a portal. type: object properties: id: $ref: '#/components/schemas/UUID' name: $ref: '#/components/schemas/SnippetName' title: $ref: '#/components/schemas/SnippetTitle' content: $ref: '#/components/schemas/SnippetContent' visibility: $ref: '#/components/schemas/VisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - name - content - visibility - status - created_at - updated_at title: PortalSnippetResponse UpdatePortalSnippetRequest: description: Update a snippet in a portal. type: object properties: name: $ref: '#/components/schemas/SnippetName' title: $ref: '#/components/schemas/SnippetTitle' content: $ref: '#/components/schemas/SnippetContent' visibility: $ref: '#/components/schemas/VisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' additionalProperties: false title: UpdatePortalSnippetRequest CreatePortalSnippetRequest: description: Create a snippet in a portal. type: object properties: name: $ref: '#/components/schemas/SnippetName' title: $ref: '#/components/schemas/SnippetTitle' content: $ref: '#/components/schemas/SnippetContent' visibility: $ref: '#/components/schemas/SnippetVisibilityStatus' status: $ref: '#/components/schemas/PublishedStatus' description: $ref: '#/components/schemas/Description' additionalProperties: false required: - name - content title: CreatePortalSnippetRequest PortalFilterParameters: type: object properties: id: $ref: '#/components/schemas/UuidFieldFilter' name: $ref: '#/components/schemas/StringFieldFilter' description: $ref: '#/components/schemas/StringFieldFilter' authentication_enabled: $ref: '#/components/schemas/BooleanFieldFilter' rbac_enabled: $ref: '#/components/schemas/BooleanFieldFilter' default_api_visibility: $ref: '#/components/schemas/StringFieldFilter' default_page_visibility: $ref: '#/components/schemas/StringFieldFilter' default_application_auth_strategy_id: $ref: '#/components/schemas/UuidFieldFilter' auto_approve_developers: $ref: '#/components/schemas/BooleanFieldFilter' auto_approve_applications: $ref: '#/components/schemas/BooleanFieldFilter' default_domain: $ref: '#/components/schemas/StringFieldFilter' canonical_domain: $ref: '#/components/schemas/StringFieldFilter' title: PortalFilterParameters PortalCustomDomain: type: object properties: hostname: type: string enabled: type: boolean ssl: $ref: '#/components/schemas/PortalCustomDomainSSL' cname_status: $ref: '#/components/schemas/PortalCustomDomainCnameStatus' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - hostname - enabled - ssl - cname_status - created_at - updated_at title: PortalCustomDomain PortalCustomDomainSSL: type: object properties: domain_verification_method: $ref: '#/components/schemas/PortalCustomDomainVerificationMethod' verification_status: $ref: '#/components/schemas/PortalCustomDomainVerificationStatus' validation_errors: $ref: '#/components/schemas/PortalCustomDomainValidationErrors' uploaded_at: description: An ISO-8601 timestamp representation of the ssl certificate upload date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true expires_at: description: An ISO-8601 timestamp representation of the ssl certificate expiration date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true skip_ca_check: description: | True when the provided certificate chain is served as-is without validation against a public trust store. type: boolean readOnly: true additionalProperties: false required: - domain_verification_method - verification_status title: PortalCustomDomainSSL x-property-annotations: uploaded_at: - x-unstable - x-internal expires_at: - x-unstable - x-internal skip_ca_check: - x-internal UpdatePortalCustomDomainSSL: type: object properties: custom_certificate: description: Custom certificate to be used for the SSL termination. type: string default: null nullable: true x-speakeasy-param-computed: false custom_private_key: description: Custom certificate private key to be used for the SSL termination. type: string default: null nullable: true x-speakeasy-param-computed: false skip_ca_check: description: | Advanced option. If true, the custom certificate is served exactly as provided, without attempting to bundle against a public trust store. Required for certificates issued by an internal/private CA. type: boolean default: false additionalProperties: false title: UpdatePortalCustomDomainSSL x-property-annotations: skip_ca_check: - x-internal PortalCustomDomainVerificationMethod: type: string enum: - http - custom_certificate title: PortalCustomDomainVerificationMethod PortalCustomDomainVerificationStatus: type: string enum: - verified - pending - error readOnly: true title: PortalCustomDomainVerificationStatus PortalCustomDomainCnameStatus: type: string enum: - verified - pending readOnly: true title: PortalCustomDomainCnameStatus PortalCustomDomainValidationErrors: type: array items: type: string readOnly: true title: PortalCustomDomainValidationErrors CreatePortalCustomDomainRequest: type: object properties: hostname: type: string enabled: type: boolean ssl: $ref: '#/components/schemas/CreatePortalCustomDomainSSL' additionalProperties: false required: - hostname - enabled - ssl title: CreatePortalCustomDomainRequest UpdatePortalCustomDomainRequest: type: object properties: enabled: type: boolean default: null nullable: true x-speakeasy-param-computed: false ssl: $ref: '#/components/schemas/UpdatePortalCustomDomainSSL' additionalProperties: false title: UpdatePortalCustomDomainRequest x-property-annotations: ssl: - x-unstable - x-internal PortalClaimMappings: description: Mappings from a portal developer atribute to an Identity Provider claim. type: object properties: name: type: string example: name default: name email: type: string example: email default: email groups: type: string example: custom-group-claim default: groups example: name: name email: email groups: custom-group-claim maxProperties: 3 minProperties: 0 title: PortalClaimMappings PortalOIDCConfig: description: Configuration properties for an OpenID Connect Identity Provider. type: object properties: issuer: type: string example: 'https://identity.example.com/v2' client_id: type: string example: x7id0o42lklas0blidl2 scopes: type: array items: type: string default: openid example: - email - openid - profile default: - email - openid - profile claim_mappings: $ref: '#/components/schemas/PortalClaimMappings' example: issuer: 'https://identity.example.com/v2' client_id: x7id0o42lklas0blidl2 scopes: - email - openid - profile claim_mappings: name: name email: email groups: custom-group-claim required: - issuer - client_id title: PortalOIDCConfig PortalAuthenticationSettingsResponse: x-speakeasy-entity: PortalAuth description: The developer authentication settings for a portal. type: object properties: basic_auth_enabled: description: The portal has basic auth enabled or disabled. type: boolean example: true oidc_auth_enabled: description: The portal has OIDC enabled or disabled. type: boolean example: false saml_auth_enabled: description: The portal has SAML enabled or disabled. type: boolean example: false default: null nullable: true x-speakeasy-param-computed: false oidc_team_mapping_enabled: description: IdP groups determine the Portal Teams a developer has. type: boolean example: true idp_mapping_enabled: description: IdP groups determine the Portal Teams a developer has. This will soon replace oidc_team_mapping_enabled. type: boolean example: true default: null nullable: true x-speakeasy-param-computed: false konnect_mapping_enabled: description: A Konnect Identity Admin assigns teams to a developer. type: boolean example: false oidc_config: $ref: '#/components/schemas/PortalOIDCConfig' example: basic_auth_enabled: true oidc_auth_enabled: true oidc_team_mapping_enabled: true konnect_mapping_enabled: false oidc_config: issuer: 'https://identity.example.com/v2' client_id: x7id0o42lklas0blidl2 scopes: - email - openid - profile claim_mappings: name: name email: email groups: custom-group-claim required: - basic_auth_enabled - konnect_mapping_enabled - oidc_auth_enabled - oidc_team_mapping_enabled title: PortalAuthenticationSettingsResponse PortalAuthenticationSettingsUpdateRequest: x-speakeasy-entity: PortalAuth description: Properties to update a portal's developer auth settings. type: object properties: basic_auth_enabled: description: The organization has basic auth enabled. type: boolean example: true x-speakeasy-param-computed: true oidc_auth_enabled: description: The organization has OIDC disabled. type: boolean example: false x-speakeasy-param-computed: true saml_auth_enabled: description: The portal has SAML enabled or disabled. type: boolean example: false x-speakeasy-param-computed: true oidc_team_mapping_enabled: description: Whether IdP groups determine the Konnect Portal teams a developer has. type: boolean example: true x-speakeasy-param-computed: true konnect_mapping_enabled: description: Whether a Konnect Identity Admin assigns teams to a developer. type: boolean example: false x-speakeasy-param-computed: true idp_mapping_enabled: description: Whether IdP groups determine the Konnect Portal teams a developer has. This will soon replace oidc_team_mapping_enabled. type: boolean example: true x-speakeasy-param-computed: true oidc_issuer: type: string default: null nullable: true x-speakeasy-param-computed: false oidc_client_id: type: string default: null nullable: true x-speakeasy-param-computed: false oidc_client_secret: type: string default: null nullable: true x-speakeasy-param-computed: false oidc_scopes: type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false oidc_claim_mappings: $ref: '#/components/schemas/PortalClaimMappings' example: basic_auth_enabled: true oidc_auth_enabled: true oidc_team_mapping_enabled: true konnect_mapping_enabled: false oidc_issuer: 'https://identity.example.com/v2' oidc_client_id: x7id0o42lklas0blidl2 oidc_scopes: - email - openid - profile oidc_claim_mappings: name: name email: email groups: custom-group-claim title: PortalAuthenticationSettingsUpdateRequest PortalUpdateTeamRequest: description: Properties to update on a team. type: object properties: name: type: string example: IDM - Developers default: null nullable: true pattern: '^[\w \W]+$' writeOnly: true x-speakeasy-param-computed: false description: type: string example: The Identity Management (IDM) API team. default: null maxLength: 250 nullable: true writeOnly: true x-speakeasy-param-computed: false example: name: IDM - Developers description: The Identity Management (IDM) API team. title: PortalUpdateTeamRequest PortalCreateTeamRequest: x-speakeasy-entity: PortalTeam description: Details about a team to create. type: object properties: name: type: string example: IDM - Developers pattern: '^[\w \W]+$' writeOnly: true description: type: string example: The Identity Management (IDM) team. default: null maxLength: 250 nullable: true writeOnly: true x-speakeasy-param-computed: false example: name: IDM - Developers description: The Identity Management (IDM) team. required: - name title: PortalCreateTeamRequest PortalTeamResponse: description: Details about a developer team. type: object properties: id: type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 readOnly: true name: type: string example: IDM - Developers default: null maxLength: 250 nullable: true pattern: '^[\w \W]+$' x-speakeasy-param-computed: false description: type: string example: The developers for the IDM API. default: null maxLength: 250 nullable: true x-speakeasy-param-computed: false created_at: type: string format: date-time example: '1992-02-07T17:46:57.52Z' readOnly: true updated_at: type: string format: date-time example: '2022-02-07T17:00:00.52Z' readOnly: true example: id: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 name: IDM - Developers description: The developers for the IDM API. created_at: '1992-02-07T17:46:57.52Z' updated_at: '2022-08-31T17:00:00.52Z' title: PortalTeamResponse 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 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 BooleanFieldFilter: description: Filter by a boolean value (true/false). type: boolean title: BooleanFieldFilter UUID: description: Contains a unique identifier used for this resource. type: string format: uuid example: 5f9fd312-a987-4628-b4c5-bb4f4fddd5f7 readOnly: true CreatedAt: description: An ISO-8601 timestamp representation of entity creation date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true UpdatedAt: description: An ISO-8601 timestamp representation of entity update date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true Labels: 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 "_". type: object example: env: test additionalProperties: type: string pattern: '^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$' minLength: 1 maxLength: 63 nullable: true maxProperties: 50 title: Labels PageMeta: description: Contains pagination query parameters and the total number of objects returned. type: object properties: number: type: number example: 1 size: type: number example: 10 total: type: number example: 100 required: - number - size - total PaginatedMeta: description: returns the pagination information type: object properties: page: $ref: '#/components/schemas/PageMeta' required: - page title: PaginatedMeta BaseError: description: standard error type: object properties: status: 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. type: integer readOnly: true title: 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. type: string readOnly: true type: description: The error type. type: string readOnly: true instance: 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. type: string readOnly: true detail: 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. type: string readOnly: true required: - status - title - instance - detail title: Error InvalidRules: description: invalid parameters rules type: string 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 nullable: true readOnly: true InvalidParameterStandard: type: object properties: field: type: string example: name readOnly: true rule: $ref: '#/components/schemas/InvalidRules' source: type: string example: body default: null nullable: true x-speakeasy-param-computed: false reason: type: string example: is a required field readOnly: true additionalProperties: false required: - field - reason InvalidParameterMinimumLength: type: object properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string enum: - min_length - min_digits - min_lowercase - min_uppercase - min_symbols - min_items - min nullable: false readOnly: true minimum: type: integer example: 8 source: type: string example: body default: null nullable: true x-speakeasy-param-computed: false reason: type: string example: must have at least 8 characters readOnly: true additionalProperties: false required: - field - reason - rule - minimum InvalidParameterMaximumLength: type: object properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string enum: - max_length - max_items - max nullable: false readOnly: true maximum: type: integer example: 8 source: type: string example: body default: null nullable: true x-speakeasy-param-computed: false reason: type: string example: must not have more than 8 characters readOnly: true additionalProperties: false required: - field - reason - rule - maximum InvalidParameterChoiceItem: type: object properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string enum: - enum nullable: false readOnly: true reason: type: string example: is a required field readOnly: true choices: type: array items: {} minItems: 1 nullable: false readOnly: true uniqueItems: true source: type: string example: body default: null nullable: true x-speakeasy-param-computed: false additionalProperties: false required: - field - reason - rule - choices InvalidParameterDependentItem: type: object properties: field: type: string example: name readOnly: true rule: description: invalid parameters rules type: string enum: - dependent_fields nullable: true readOnly: true reason: type: string example: is a required field readOnly: true dependents: type: array items: {} default: null nullable: true readOnly: true uniqueItems: true x-speakeasy-param-computed: false source: type: string example: body default: null nullable: true x-speakeasy-param-computed: false additionalProperties: false required: - field - rule - reason - dependents InvalidParameters: description: invalid parameters type: array items: oneOf: - $ref: '#/components/schemas/InvalidParameterStandard' - $ref: '#/components/schemas/InvalidParameterMinimumLength' - $ref: '#/components/schemas/InvalidParameterMaximumLength' - $ref: '#/components/schemas/InvalidParameterChoiceItem' - $ref: '#/components/schemas/InvalidParameterDependentItem' minItems: 1 nullable: false uniqueItems: true 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 LabelsUpdate: 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 "_". type: object example: env: test additionalProperties: type: string pattern: '^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$' minLength: 1 maxLength: 63 nullable: true maxProperties: 50 nullable: true writeOnly: true x-speakeasy-param-computed: true 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 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 PortalMenuItem: type: object properties: path: description: The absolute path of a page in a portal with a leading slash. type: string example: /about/company maxLength: 512 title: description: The link display text type: string example: My Page visibility: description: Whether a menu item is public or private. Private menu items are only accessible to authenticated users. type: string example: public enum: - public - private external: description: 'When clicked, open the link in a new window' type: boolean additionalProperties: false required: - path - title - visibility - external PortalFooterMenuSection: type: object properties: title: description: The footer menu section title type: string maxLength: 512 items: type: array items: $ref: '#/components/schemas/PortalMenuItem' additionalProperties: false required: - title - items PortalCustomization: description: The custom settings of this portal type: object properties: theme: type: object additionalProperties: false nullable: false properties: name: type: string nullable: false mode: type: string enum: - light - dark - system colors: type: object additionalProperties: false nullable: false properties: primary: type: string example: '#000000' nullable: false pattern: '^#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$' x-validation-message: must be a valid hex color value x-speakeasy-param-computed: false x-speakeasy-param-computed: false layout: type: string nullable: false x-speakeasy-param-computed: false css: type: string default: null nullable: true x-speakeasy-param-computed: false js: type: object additionalProperties: false nullable: false properties: custom: type: string default: null nullable: true x-speakeasy-param-computed: false scripts: type: array items: type: string pattern: '^https://[^:.]+\..+$' default: null maxItems: 20 nullable: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false menu: type: object additionalProperties: false nullable: false properties: main: type: array items: $ref: '#/components/schemas/PortalMenuItem' default: null nullable: true x-speakeasy-param-computed: false footer_sections: type: array items: $ref: '#/components/schemas/PortalFooterMenuSection' default: null nullable: true x-speakeasy-param-computed: false footer_bottom: type: array items: $ref: '#/components/schemas/PortalMenuItem' default: null nullable: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false spec_renderer: type: object additionalProperties: false nullable: false properties: try_it_ui: description: Enable in-browser testing for your APIs. All linked gateways must have the CORS plugin configured. type: boolean default: true try_it_insomnia: description: Enables users to open the API spec in Insomnia to explore and send requests with the native client. type: boolean default: true infinite_scroll: description: 'Display the full spec on a single, scrollable page. If disabled, documentation, endpoints, and schemas appear on separate pages.' type: boolean default: true show_schemas: description: 'Control whether schemas are visible in your API specs. When enabled, schemas appear in the side navigation below the endpoints.' type: boolean default: true hide_internal: description: Manage visibility of internal endpoints and models. type: boolean default: false hide_deprecated: description: Manage visibility of deprecated endpoints and models. type: boolean default: false allow_custom_server_urls: description: Let users define a custom server URL for endpoints. This will be used to generate code snippets and to test the API. The URL is client-side only and is not saved. type: boolean default: true x-speakeasy-param-computed: false robots: type: string default: null nullable: true x-speakeasy-param-computed: false additionalProperties: false title: PortalCustomization x-property-annotations: js: - x-unstable - x-internal ApiResponseSchema: type: object properties: id: description: The API identifier. type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 readOnly: true name: description: | The name of your API. The `name + version` combination must be unique for each API you publish. type: string example: MyAPI maxLength: 255 minLength: 1 description: description: A description of your API. Will be visible on your live Portal. type: string default: null nullable: true x-speakeasy-param-computed: false version: description: An optional version for your API. Leave this empty if your API is unversioned. type: string maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: true current_version_summary: $ref: '#/components/schemas/ApiVersionSummary' slug: description: | The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(name + version)` type: string example: my-api-v1 nullable: true pattern: '^[\w-]+$' x-speakeasy-param-computed: true api_spec_ids: description: The list of API specification ids for the API. type: array items: type: string format: uuid description: The id of the API specification. example: 123e4567-e89b-12d3-a456-426614174000 deprecated: true readOnly: true portals: description: The list of portals which this API is published to. type: array items: type: object additionalProperties: false required: - id - name - display_name properties: id: description: The portal identifier. type: string format: uuid example: 25a2624c-49fc-4764-99e1-224ed819f200 name: description: 'The name of the portal, used to distinguish it from other portals.' type: string example: My Portal display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string example: My Portal nullable: false readOnly: true uniqueItems: true labels: $ref: '#/components/schemas/Labels' attributes: $ref: '#/components/schemas/ApiAttributes' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - name - version - labels - created_at - updated_at - slug - portals - api_spec_ids - current_version_summary title: API x-property-annotations: implementation_mode: - x-unstable - x-internal AuthStrategyApiSyncError: type: object properties: control_plane_error: type: string enum: - control_plane_error_no_response - control_plane_error_invalid_response - control_plane_error_unavailable - control_plane_error_internal_error - control_plane_error_bad_request - control_plane_error_plugin_conflict - control_plane_error_data_constraint_error - control_plane_error_implementation_not_found message: type: string info: type: object additionalProperties: true properties: details: type: array items: type: object additionalProperties: true properties: type: type: string message: type: array items: type: string example: control_plane_error: control_plane_error_unavailable message: Unable to connect to the control plane to update plugin additionalProperties: false nullable: true required: - message ApiDocumentId: description: The API document identifier. type: string format: uuid example: de5c9818-be5c-42e6-b514-e3d4bc30ddeb readOnly: true title: API Document ID ApiDocumentContent: description: Raw markdown content to display in your Portal type: string title: API Document Content ApiDocumentTitle: description: The title of the document. Used to populate the `` tag for the page type: string example: API Document title: API Document Title ApiDocumentStatus: description: If `status=published` the document will be visible in your live portal type: string default: unpublished enum: - published - unpublished ApiDocumentParentDocumentId: description: | API Documents may be rendered as a tree of files. Specify the `id` of another API Document as the `parent_document_id` to add some heirarchy do your documents. type: string format: uuid example: null default: null nullable: true title: API Document Parent Document ID x-speakeasy-param-computed: false ApiDocumentSlug: description: | The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(title)` type: string example: api-document pattern: '^[\w-]+$' title: API Document Slug ApiDocument: type: object properties: id: $ref: '#/components/schemas/ApiDocumentId' content: $ref: '#/components/schemas/ApiDocumentContent' title: $ref: '#/components/schemas/ApiDocumentTitle' slug: $ref: '#/components/schemas/ApiDocumentSlug' status: $ref: '#/components/schemas/ApiDocumentStatus' parent_document_id: $ref: '#/components/schemas/ApiDocumentParentDocumentId' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false title: API Document ApiVersion: type: object properties: id: description: The API version identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true version: description: The version of the api. type: string example: 1.0.0 default: null nullable: true x-speakeasy-param-computed: false spec: type: object default: null additionalProperties: false nullable: true properties: content: default: null description: | The raw content of your API spec, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' nullable: true type: string x-speakeasy-param-computed: false type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi readOnly: true title: API Spec Type validation_messages: description: The errors that occurred while parsing the API version spec. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true x-speakeasy-param-computed: false created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false title: API Version ApiVersionSummary: type: object properties: id: description: The API version identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true version: description: The version of this api spec. type: string default: null nullable: true x-speakeasy-param-computed: false spec: type: object default: null additionalProperties: false nullable: true properties: type: $ref: '#/components/schemas/ApiSpecType' x-speakeasy-param-computed: false created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false nullable: true readOnly: true title: API Version Summary x-speakeasy-terraform-ignore: true ApiSpec: type: object properties: id: description: The API specification identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true content: default: null description: | The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' nullable: true type: string x-speakeasy-param-computed: false validation_messages: description: The errors that occurred while parsing the API specification. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi title: API Spec Type created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false title: API Specification ApiPublicationVisibility: description: | The visibility of the API in the portal. Public API publications do not require authentication to view and retrieve information about them. Private API publications require authentication to retrieve information about them. type: string default: private enum: - public - private title: API Publication Visibility ApiPublicationAuthStrategyIds: description: | The auth strategy the API enforces for applications in the portal. Omitting this property means the portal's default application auth strategy will be used. Setting to null means the API will not require application authentication. DCR support for application registration is currently in development. type: array items: type: string format: uuid default: null maxItems: 1 minItems: 1 nullable: true title: API Publication Auth Strategy IDs x-speakeasy-param-computed: false AutoApproveRegistrations: description: 'Whether the application registration auto approval on this portal for the api is enabled. If set to false, fallbacks on portal''s auto_approve_applications value.' type: boolean title: Auto Approve Registrations ApiPublication: description: An API publication in a portal type: object properties: auto_approve_registrations: $ref: '#/components/schemas/AutoApproveRegistrations' auth_strategy_ids: $ref: '#/components/schemas/ApiPublicationAuthStrategyIds' visibility: $ref: '#/components/schemas/ApiPublicationVisibility' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false title: API Publication ApiImplementationService: description: A Gateway service that implements an API type: object properties: control_plane_id: type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 id: type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 auth_strategy_sync_error: allOf: - $ref: '#/components/schemas/AuthStrategyApiSyncError' readOnly: true x-speakeasy-ignore: true additionalProperties: false required: - control_plane_id - id title: API Implementation Service ApiImplementation: description: An entity that implements an API type: object oneOf: - $ref: '#/components/schemas/ApiImplementationGatewayServiceEntity' title: API Implementation ApiImplementationGatewayServiceEntity: description: A gateway service that implements an API type: object properties: id: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' service: $ref: '#/components/schemas/ApiImplementationService' additionalProperties: false title: ApiImplementationGatewayServiceEntity x-speakeasy-name-override: Service Reference ApiAttributes: description: A set of attributes that describe the API type: object example: env: - production domains: - web - mobile default: {} additionalProperties: nullable: true description: 'Set of attributes with unique keys. Each key can include lowercase letters, numbers, hyphens, and underscores.' type: array minItems: 1 maxItems: 20 items: type: string minLength: 1 maxLength: 512 pattern: '^[^,<>]*$' nullable: false title: API Attributes x-speakeasy-type-override: any ApiSpecType: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi title: API Spec Type 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 MeshAccessLogItem: type: object properties: type: description: the type of the resource type: string enum: - MeshAccessLog x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshAccessLog resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: backends: type: array items: properties: file: description: FileBackend defines configuration for file based access logs type: object properties: format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false path: description: Path to a file that logs will be written to type: string example: /tmp/access.log minLength: 1 x-speakeasy-param-computed: false required: - path x-speakeasy-param-computed: false openTelemetry: description: Defines an OpenTelemetry logging backend. type: object properties: attributes: description: |- Attributes can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: mesh value: '%KUMA_MESH%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier body: description: |- Body is a raw string or an OTLP any value as described at https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#field-body It can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators example: kvlistValue: values: - key: mesh value: stringValue: '%KUMA_MESH%' x-kubernetes-preserve-unknown-fields: true x-speakeasy-plan-modifiers: ArbitraryJSONModifier endpoint: description: Endpoint of OpenTelemetry collector. An empty port defaults to 4317. type: string example: 'otel-collector:4317' minLength: 1 x-speakeasy-param-computed: false required: - endpoint x-speakeasy-param-computed: false tcp: description: TCPBackend defines a TCP logging backend. type: object properties: address: description: Address of the TCP logging backend type: string example: '127.0.0.1:5000' minLength: 1 x-speakeasy-param-computed: false format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false required: - address x-speakeasy-param-computed: false type: type: string enum: - Tcp - File - OpenTelemetry x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - default - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules defines inbound access log configurations. Currently limited to selecting all inbound traffic, as L7 matching is not yet implemented. type: array items: properties: default: description: Default contains configuration of the inbound access logging type: object properties: backends: type: array items: properties: file: description: FileBackend defines configuration for file based access logs type: object properties: format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false path: description: Path to a file that logs will be written to type: string example: /tmp/access.log minLength: 1 x-speakeasy-param-computed: false required: - path x-speakeasy-param-computed: false openTelemetry: description: Defines an OpenTelemetry logging backend. type: object properties: attributes: description: |- Attributes can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: mesh value: '%KUMA_MESH%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier body: description: |- Body is a raw string or an OTLP any value as described at https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#field-body It can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators example: kvlistValue: values: - key: mesh value: stringValue: '%KUMA_MESH%' x-kubernetes-preserve-unknown-fields: true endpoint: description: Endpoint of OpenTelemetry collector. An empty port defaults to 4317. type: string example: 'otel-collector:4317' minLength: 1 x-speakeasy-param-computed: false required: - endpoint x-speakeasy-param-computed: false tcp: description: TCPBackend defines a TCP logging backend. type: object properties: address: description: Address of the TCP logging backend type: string example: '127.0.0.1:5000' minLength: 1 x-speakeasy-param-computed: false format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false required: - address x-speakeasy-param-computed: false type: type: string enum: - Tcp - File - OpenTelemetry x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false required: - default type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in-place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: backends: type: array items: properties: file: description: FileBackend defines configuration for file based access logs type: object properties: format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false path: description: Path to a file that logs will be written to type: string example: /tmp/access.log minLength: 1 x-speakeasy-param-computed: false required: - path x-speakeasy-param-computed: false openTelemetry: description: Defines an OpenTelemetry logging backend. type: object properties: attributes: description: |- Attributes can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: mesh value: '%KUMA_MESH%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier body: description: |- Body is a raw string or an OTLP any value as described at https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#field-body It can contain placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators example: kvlistValue: values: - key: mesh value: stringValue: '%KUMA_MESH%' x-kubernetes-preserve-unknown-fields: true x-speakeasy-plan-modifiers: ArbitraryJSONModifier endpoint: description: Endpoint of OpenTelemetry collector. An empty port defaults to 4317. type: string example: 'otel-collector:4317' minLength: 1 x-speakeasy-param-computed: false required: - endpoint x-speakeasy-param-computed: false tcp: description: TCPBackend defines a TCP logging backend. type: object properties: address: description: Address of the TCP logging backend type: string example: '127.0.0.1:5000' minLength: 1 x-speakeasy-param-computed: false format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log/usage#command-operators type: object properties: json: type: array items: properties: key: type: string x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - key - value type: object example: - key: start_time value: '%START_TIME%' - key: bytes_received value: '%BYTES_RECEIVED%' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier omitEmptyValues: type: boolean default: false x-speakeasy-param-computed: false plain: type: string example: '[%START_TIME%] %KUMA_MESH% %UPSTREAM_HOST%' x-speakeasy-param-computed: false type: type: string enum: - Plain - Json x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false required: - address x-speakeasy-param-computed: false type: type: string enum: - Tcp - File - OpenTelemetry x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - default - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshAccessLogCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshAccessLogDeleteSuccessResponse: type: object properties: {} MeshCircuitBreakerItem: type: object properties: type: description: the type of the resource type: string enum: - MeshCircuitBreaker x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshCircuitBreaker resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: connectionLimits: description: |- ConnectionLimits contains configuration of each circuit breaking limit, which when exceeded makes the circuit breaker to become open (no traffic is allowed like no current is allowed in the circuits when physical circuit breaker ir open) type: object properties: maxConnectionPools: description: |- The maximum number of connection pools per cluster that are concurrently supported at once. Set this for clusters which create a large number of connection pools. type: integer format: int32 x-speakeasy-param-computed: false maxConnections: description: |- The maximum number of connections allowed to be made to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false maxPendingRequests: description: |- The maximum number of pending requests that are allowed to the upstream cluster. This limit is applied as a connection limit for non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRequests: description: |- The maximum number of parallel requests that are allowed to be made to the upstream cluster. This limit does not apply to non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRetries: description: |- The maximum number of parallel retries that will be allowed to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false outlierDetection: description: |- OutlierDetection contains the configuration of the process of dynamically determining whether some number of hosts in an upstream cluster are performing unlike the others and removing them from the healthy load balancing set. Performance might be along different axes such as consecutive failures, temporal success rate, temporal latency, etc. Outlier detection is a form of passive health checking. type: object properties: baseEjectionTime: description: |- The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected. type: string x-speakeasy-param-computed: false detectors: description: Contains configuration for supported outlier detectors type: object properties: failurePercentage: description: |- Failure Percentage based outlier detection functions similarly to success rate detection, in that it relies on success rate data from each host in a cluster. However, rather than compare those values to the mean success rate of the cluster as a whole, they are compared to a flat user-configured threshold. This threshold is configured via the outlierDetection.failurePercentageThreshold field. The other configuration fields for failure percentage based detection are similar to the fields for success rate detection. As with success rate detection, detection will not be performed for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.failurePercentage.requestVolume value. Detection also will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.failurePercentage.minimumHosts value. type: object properties: minimumHosts: description: |- The minimum number of hosts in a cluster in order to perform failure percentage-based ejection. If the total number of hosts in the cluster is less than this value, failure percentage-based ejection will not be performed. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to perform failure percentage-based ejection for this host. If the volume is lower than this setting, failure percentage-based ejection will not be performed for this host. type: integer format: int32 x-speakeasy-param-computed: false threshold: description: |- The failure percentage to use when determining failure percentage-based outlier detection. If the failure percentage of a given host is greater than or equal to this value, it will be ejected. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false gatewayFailures: description: |- In the default mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and local origin failures, such as timeout, TCP reset etc. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and is supported only by the http router. type: object properties: consecutive: description: |- The number of consecutive gateway failures (502, 503, 504 status codes) before a consecutive gateway failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false localOriginFailures: description: |- This detection type is enabled only when outlierDetection.splitExternalLocalOriginErrors is true and takes into account only locally originated errors (timeout, reset, etc). If Envoy repeatedly cannot connect to an upstream host or communication with the upstream host is repeatedly interrupted, it will be ejected. Various locally originated problems are detected: timeout, TCP reset, ICMP errors, etc. This detection type is supported by http router and tcp proxy. type: object properties: consecutive: description: |- The number of consecutive locally originated failures before ejection occurs. Parameter takes effect only when splitExternalAndLocalErrors is set to true. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false successRate: description: |- Success Rate based outlier detection aggregates success rate data from every host in a cluster. Then at given intervals ejects hosts based on statistical outlier detection. Success Rate outlier detection will not be calculated for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.successRate.requestVolume value. Moreover, detection will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.successRate.minimumHosts value. In the default configuration mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account all types of errors: locally and externally originated. In split mode (outlierDetection.splitExternalLocalOriginErrors is true), locally originated errors and externally originated (transaction) errors are counted and treated separately. type: object properties: minimumHosts: description: |- The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration configured in outlierDetection section) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. type: integer format: int32 x-speakeasy-param-computed: false standardDeviationFactor: description: |- This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (standard_deviation * success_rate_standard_deviation_factor). Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false totalFailures: description: |- In the default mode (outlierDetection.splitExternalAndLocalErrors is false) this detection type takes into account all generated errors: locally originated and externally originated (transaction) errors. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account only externally originated (transaction) errors, ignoring locally originated errors. If an upstream host is an HTTP-server, only 5xx types of error are taken into account (see Consecutive Gateway Failure for exceptions). Properly formatted responses, even when they carry an operational error (like index not found, access denied) are not taken into account. type: object properties: consecutive: description: |- The number of consecutive server-side error responses (for HTTP traffic, 5xx responses; for TCP traffic, connection failures; for Redis, failure to respond PONG; etc.) before a consecutive total failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false disabled: description: 'When set to true, outlierDetection configuration won''t take any effect' type: boolean x-speakeasy-param-computed: false healthyPanicThreshold: description: |- Allows to configure panic threshold for Envoy cluster. If not specified, the default is 50%. To disable panic mode, set to 0%. Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false interval: description: |- The time interval between ejection analysis sweeps. This can result in both new ejections and hosts being returned to service. type: string x-speakeasy-param-computed: false maxEjectionPercent: description: |- The maximum % of an upstream cluster that can be ejected due to outlier detection. Defaults to 10% but will eject at least one host regardless of the value. type: integer format: int32 x-speakeasy-param-computed: false splitExternalAndLocalErrors: description: |- Determines whether to distinguish local origin failures from external errors. If set to true the following configuration parameters are taken into account: detectors.localOriginFailures.consecutive type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules defines inbound circuit breaker configurations. Currently limited to selecting all inbound traffic, as L7 matching is not yet implemented. type: array items: properties: default: description: Default contains configuration of the inbound circuit breaker type: object properties: connectionLimits: description: |- ConnectionLimits contains configuration of each circuit breaking limit, which when exceeded makes the circuit breaker to become open (no traffic is allowed like no current is allowed in the circuits when physical circuit breaker ir open) type: object properties: maxConnectionPools: description: |- The maximum number of connection pools per cluster that are concurrently supported at once. Set this for clusters which create a large number of connection pools. type: integer format: int32 x-speakeasy-param-computed: false maxConnections: description: |- The maximum number of connections allowed to be made to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false maxPendingRequests: description: |- The maximum number of pending requests that are allowed to the upstream cluster. This limit is applied as a connection limit for non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRequests: description: |- The maximum number of parallel requests that are allowed to be made to the upstream cluster. This limit does not apply to non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRetries: description: |- The maximum number of parallel retries that will be allowed to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false outlierDetection: description: |- OutlierDetection contains the configuration of the process of dynamically determining whether some number of hosts in an upstream cluster are performing unlike the others and removing them from the healthy load balancing set. Performance might be along different axes such as consecutive failures, temporal success rate, temporal latency, etc. Outlier detection is a form of passive health checking. type: object properties: baseEjectionTime: description: |- The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected. type: string x-speakeasy-param-computed: false detectors: description: Contains configuration for supported outlier detectors type: object properties: failurePercentage: description: |- Failure Percentage based outlier detection functions similarly to success rate detection, in that it relies on success rate data from each host in a cluster. However, rather than compare those values to the mean success rate of the cluster as a whole, they are compared to a flat user-configured threshold. This threshold is configured via the outlierDetection.failurePercentageThreshold field. The other configuration fields for failure percentage based detection are similar to the fields for success rate detection. As with success rate detection, detection will not be performed for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.failurePercentage.requestVolume value. Detection also will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.failurePercentage.minimumHosts value. type: object properties: minimumHosts: description: |- The minimum number of hosts in a cluster in order to perform failure percentage-based ejection. If the total number of hosts in the cluster is less than this value, failure percentage-based ejection will not be performed. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to perform failure percentage-based ejection for this host. If the volume is lower than this setting, failure percentage-based ejection will not be performed for this host. type: integer format: int32 x-speakeasy-param-computed: false threshold: description: |- The failure percentage to use when determining failure percentage-based outlier detection. If the failure percentage of a given host is greater than or equal to this value, it will be ejected. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false gatewayFailures: description: |- In the default mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and local origin failures, such as timeout, TCP reset etc. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and is supported only by the http router. type: object properties: consecutive: description: |- The number of consecutive gateway failures (502, 503, 504 status codes) before a consecutive gateway failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false localOriginFailures: description: |- This detection type is enabled only when outlierDetection.splitExternalLocalOriginErrors is true and takes into account only locally originated errors (timeout, reset, etc). If Envoy repeatedly cannot connect to an upstream host or communication with the upstream host is repeatedly interrupted, it will be ejected. Various locally originated problems are detected: timeout, TCP reset, ICMP errors, etc. This detection type is supported by http router and tcp proxy. type: object properties: consecutive: description: |- The number of consecutive locally originated failures before ejection occurs. Parameter takes effect only when splitExternalAndLocalErrors is set to true. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false successRate: description: |- Success Rate based outlier detection aggregates success rate data from every host in a cluster. Then at given intervals ejects hosts based on statistical outlier detection. Success Rate outlier detection will not be calculated for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.successRate.requestVolume value. Moreover, detection will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.successRate.minimumHosts value. In the default configuration mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account all types of errors: locally and externally originated. In split mode (outlierDetection.splitExternalLocalOriginErrors is true), locally originated errors and externally originated (transaction) errors are counted and treated separately. type: object properties: minimumHosts: description: |- The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration configured in outlierDetection section) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. type: integer format: int32 x-speakeasy-param-computed: false standardDeviationFactor: description: |- This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (standard_deviation * success_rate_standard_deviation_factor). Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false totalFailures: description: |- In the default mode (outlierDetection.splitExternalAndLocalErrors is false) this detection type takes into account all generated errors: locally originated and externally originated (transaction) errors. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account only externally originated (transaction) errors, ignoring locally originated errors. If an upstream host is an HTTP-server, only 5xx types of error are taken into account (see Consecutive Gateway Failure for exceptions). Properly formatted responses, even when they carry an operational error (like index not found, access denied) are not taken into account. type: object properties: consecutive: description: |- The number of consecutive server-side error responses (for HTTP traffic, 5xx responses; for TCP traffic, connection failures; for Redis, failure to respond PONG; etc.) before a consecutive total failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false disabled: description: 'When set to true, outlierDetection configuration won''t take any effect' type: boolean x-speakeasy-param-computed: false healthyPanicThreshold: description: |- Allows to configure panic threshold for Envoy cluster. If not specified, the default is 50%. To disable panic mode, set to 0%. Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false interval: description: |- The time interval between ejection analysis sweeps. This can result in both new ejections and hosts being returned to service. type: string x-speakeasy-param-computed: false maxEjectionPercent: description: |- The maximum % of an upstream cluster that can be ejected due to outlier detection. Defaults to 10% but will eject at least one host regardless of the value. type: integer format: int32 x-speakeasy-param-computed: false splitExternalAndLocalErrors: description: |- Determines whether to distinguish local origin failures from external errors. If set to true the following configuration parameters are taken into account: detectors.localOriginFailures.consecutive type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: |- To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: connectionLimits: description: |- ConnectionLimits contains configuration of each circuit breaking limit, which when exceeded makes the circuit breaker to become open (no traffic is allowed like no current is allowed in the circuits when physical circuit breaker ir open) type: object properties: maxConnectionPools: description: |- The maximum number of connection pools per cluster that are concurrently supported at once. Set this for clusters which create a large number of connection pools. type: integer format: int32 x-speakeasy-param-computed: false maxConnections: description: |- The maximum number of connections allowed to be made to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false maxPendingRequests: description: |- The maximum number of pending requests that are allowed to the upstream cluster. This limit is applied as a connection limit for non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRequests: description: |- The maximum number of parallel requests that are allowed to be made to the upstream cluster. This limit does not apply to non-HTTP traffic. type: integer format: int32 x-speakeasy-param-computed: false maxRetries: description: |- The maximum number of parallel retries that will be allowed to the upstream cluster. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false outlierDetection: description: |- OutlierDetection contains the configuration of the process of dynamically determining whether some number of hosts in an upstream cluster are performing unlike the others and removing them from the healthy load balancing set. Performance might be along different axes such as consecutive failures, temporal success rate, temporal latency, etc. Outlier detection is a form of passive health checking. type: object properties: baseEjectionTime: description: |- The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected. type: string x-speakeasy-param-computed: false detectors: description: Contains configuration for supported outlier detectors type: object properties: failurePercentage: description: |- Failure Percentage based outlier detection functions similarly to success rate detection, in that it relies on success rate data from each host in a cluster. However, rather than compare those values to the mean success rate of the cluster as a whole, they are compared to a flat user-configured threshold. This threshold is configured via the outlierDetection.failurePercentageThreshold field. The other configuration fields for failure percentage based detection are similar to the fields for success rate detection. As with success rate detection, detection will not be performed for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.failurePercentage.requestVolume value. Detection also will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.failurePercentage.minimumHosts value. type: object properties: minimumHosts: description: |- The minimum number of hosts in a cluster in order to perform failure percentage-based ejection. If the total number of hosts in the cluster is less than this value, failure percentage-based ejection will not be performed. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to perform failure percentage-based ejection for this host. If the volume is lower than this setting, failure percentage-based ejection will not be performed for this host. type: integer format: int32 x-speakeasy-param-computed: false threshold: description: |- The failure percentage to use when determining failure percentage-based outlier detection. If the failure percentage of a given host is greater than or equal to this value, it will be ejected. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false gatewayFailures: description: |- In the default mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and local origin failures, such as timeout, TCP reset etc. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account a subset of 5xx errors, called "gateway errors" (502, 503 or 504 status code) and is supported only by the http router. type: object properties: consecutive: description: |- The number of consecutive gateway failures (502, 503, 504 status codes) before a consecutive gateway failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false localOriginFailures: description: |- This detection type is enabled only when outlierDetection.splitExternalLocalOriginErrors is true and takes into account only locally originated errors (timeout, reset, etc). If Envoy repeatedly cannot connect to an upstream host or communication with the upstream host is repeatedly interrupted, it will be ejected. Various locally originated problems are detected: timeout, TCP reset, ICMP errors, etc. This detection type is supported by http router and tcp proxy. type: object properties: consecutive: description: |- The number of consecutive locally originated failures before ejection occurs. Parameter takes effect only when splitExternalAndLocalErrors is set to true. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false successRate: description: |- Success Rate based outlier detection aggregates success rate data from every host in a cluster. Then at given intervals ejects hosts based on statistical outlier detection. Success Rate outlier detection will not be calculated for a host if its request volume over the aggregation interval is less than the outlierDetection.detectors.successRate.requestVolume value. Moreover, detection will not be performed for a cluster if the number of hosts with the minimum required request volume in an interval is less than the outlierDetection.detectors.successRate.minimumHosts value. In the default configuration mode (outlierDetection.splitExternalLocalOriginErrors is false) this detection type takes into account all types of errors: locally and externally originated. In split mode (outlierDetection.splitExternalLocalOriginErrors is true), locally originated errors and externally originated (transaction) errors are counted and treated separately. type: object properties: minimumHosts: description: |- The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. type: integer format: int32 x-speakeasy-param-computed: false requestVolume: description: |- The minimum number of total requests that must be collected in one interval (as defined by the interval duration configured in outlierDetection section) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. type: integer format: int32 x-speakeasy-param-computed: false standardDeviationFactor: description: |- This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (standard_deviation * success_rate_standard_deviation_factor). Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false totalFailures: description: |- In the default mode (outlierDetection.splitExternalAndLocalErrors is false) this detection type takes into account all generated errors: locally originated and externally originated (transaction) errors. In split mode (outlierDetection.splitExternalLocalOriginErrors is true) this detection type takes into account only externally originated (transaction) errors, ignoring locally originated errors. If an upstream host is an HTTP-server, only 5xx types of error are taken into account (see Consecutive Gateway Failure for exceptions). Properly formatted responses, even when they carry an operational error (like index not found, access denied) are not taken into account. type: object properties: consecutive: description: |- The number of consecutive server-side error responses (for HTTP traffic, 5xx responses; for TCP traffic, connection failures; for Redis, failure to respond PONG; etc.) before a consecutive total failure ejection occurs. type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false disabled: description: 'When set to true, outlierDetection configuration won''t take any effect' type: boolean x-speakeasy-param-computed: false healthyPanicThreshold: description: |- Allows to configure panic threshold for Envoy cluster. If not specified, the default is 50%. To disable panic mode, set to 0%. Either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false interval: description: |- The time interval between ejection analysis sweeps. This can result in both new ejections and hosts being returned to service. type: string x-speakeasy-param-computed: false maxEjectionPercent: description: |- The maximum % of an upstream cluster that can be ejected due to outlier detection. Defaults to 10% but will eject at least one host regardless of the value. type: integer format: int32 x-speakeasy-param-computed: false splitExternalAndLocalErrors: description: |- Determines whether to distinguish local origin failures from external errors. If set to true the following configuration parameters are taken into account: detectors.localOriginFailures.consecutive type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshCircuitBreakerCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshCircuitBreakerDeleteSuccessResponse: type: object properties: {} MeshFaultInjectionItem: type: object properties: type: description: the type of the resource type: string enum: - MeshFaultInjection x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshFaultInjection resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: http: description: Http allows to define list of Http faults between dataplanes. type: array items: description: FaultInjection defines the configuration of faults between dataplanes. properties: abort: description: |- Abort defines a configuration of not delivering requests to destination service and replacing the responses from destination dataplane by predefined status code type: object properties: httpStatus: description: HTTP status code which will be returned to source side type: integer format: int32 x-speakeasy-param-computed: false percentage: description: |- Percentage of requests on which abort will be injected, has to be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - httpStatus - percentage x-speakeasy-param-computed: false delay: description: Delay defines configuration of delaying a response from a destination type: object properties: percentage: description: |- Percentage of requests on which delay will be injected, has to be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false value: description: The duration during which the response will be delayed type: string x-speakeasy-param-computed: false required: - percentage - value x-speakeasy-param-computed: false responseBandwidth: description: |- ResponseBandwidth defines a configuration to limit the speed of responding to the requests type: object properties: limit: description: |- Limit is represented by value measure in Gbps, Mbps, kbps, e.g. 10kbps type: string x-speakeasy-param-computed: false percentage: description: |- Percentage of requests on which response bandwidth limit will be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - limit - percentage x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: http: description: Http allows to define list of Http faults between dataplanes. type: array items: description: FaultInjection defines the configuration of faults between dataplanes. properties: abort: description: |- Abort defines a configuration of not delivering requests to destination service and replacing the responses from destination dataplane by predefined status code type: object properties: httpStatus: description: HTTP status code which will be returned to source side type: integer format: int32 x-speakeasy-param-computed: false percentage: description: |- Percentage of requests on which abort will be injected, has to be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - httpStatus - percentage x-speakeasy-param-computed: false delay: description: Delay defines configuration of delaying a response from a destination type: object properties: percentage: description: |- Percentage of requests on which delay will be injected, has to be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false value: description: The duration during which the response will be delayed type: string x-speakeasy-param-computed: false required: - percentage - value x-speakeasy-param-computed: false responseBandwidth: description: |- ResponseBandwidth defines a configuration to limit the speed of responding to the requests type: object properties: limit: description: |- Limit is represented by value measure in Gbps, Mbps, kbps, e.g. 10kbps type: string x-speakeasy-param-computed: false percentage: description: |- Percentage of requests on which response bandwidth limit will be either int or decimal represented as string. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - limit - percentage x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshFaultInjectionCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshFaultInjectionDeleteSuccessResponse: type: object properties: {} MeshHealthCheckItem: type: object properties: type: description: the type of the resource type: string enum: - MeshHealthCheck x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshHealthCheck resource. type: object properties: targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: alwaysLogHealthCheckFailures: description: |- If set to true, health check failure events will always be logged. If set to false, only the initial health check failure event will be logged. The default value is false. type: boolean x-speakeasy-param-computed: false eventLogPath: description: |- Specifies the path to the file where Envoy can log health check events. If empty, no event log will be written. type: string x-speakeasy-param-computed: false failTrafficOnPanic: description: |- If set to true, Envoy will not consider any hosts when the cluster is in 'panic mode'. Instead, the cluster will fail all requests as if all hosts are unhealthy. This can help avoid potentially overwhelming a failing service. type: boolean x-speakeasy-param-computed: false grpc: description: |- GrpcHealthCheck defines gRPC configuration which will instruct the service the health check will be made for is a gRPC service. type: object properties: authority: description: |- The value of the :authority header in the gRPC health check request, by default name of the cluster this health check is associated with type: string x-speakeasy-param-computed: false disabled: description: If true the GrpcHealthCheck is disabled type: boolean x-speakeasy-param-computed: false serviceName: description: Service name parameter which will be sent to gRPC service type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false healthyPanicThreshold: description: |- Allows to configure panic threshold for Envoy cluster. If not specified, the default is 50%. To disable panic mode, set to 0%. Either int or decimal represented as string. Deprecated: the setting has been moved to MeshCircuitBreaker policy, please use MeshCircuitBreaker policy instead. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false healthyThreshold: description: |- Number of consecutive healthy checks before considering a host healthy. If not specified then the default value is 1 type: integer format: int32 x-speakeasy-param-computed: false http: description: |- HttpHealthCheck defines HTTP configuration which will instruct the service the health check will be made for is an HTTP service. type: object properties: disabled: description: If true the HttpHealthCheck is disabled type: boolean x-speakeasy-param-computed: false expectedStatuses: description: List of HTTP response statuses which are considered healthy type: array items: type: integer x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier path: description: |- The HTTP path which will be requested during the health check (ie. /health) If not specified then the default value is "/" type: string x-speakeasy-param-computed: false requestHeadersToAdd: description: |- The list of HTTP headers which should be added to each health check request type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false x-speakeasy-param-computed: false initialJitter: description: |- If specified, Envoy will start health checking after a random time in ms between 0 and initialJitter. This only applies to the first health check. type: string x-speakeasy-param-computed: false interval: description: |- Interval between consecutive health checks. If not specified then the default value is 1m type: string x-speakeasy-param-computed: false intervalJitter: description: |- If specified, during every interval Envoy will add IntervalJitter to the wait time. type: string x-speakeasy-param-computed: false intervalJitterPercent: description: |- If specified, during every interval Envoy will add IntervalJitter * IntervalJitterPercent / 100 to the wait time. If IntervalJitter and IntervalJitterPercent are both set, both of them will be used to increase the wait time. type: integer format: int32 x-speakeasy-param-computed: false noTrafficInterval: description: |- The "no traffic interval" is a special health check interval that is used when a cluster has never had traffic routed to it. This lower interval allows cluster information to be kept up to date, without sending a potentially large amount of active health checking traffic for no reason. Once a cluster has been used for traffic routing, Envoy will shift back to using the standard health check interval that is defined. Note that this interval takes precedence over any other. The default value for "no traffic interval" is 60 seconds. type: string x-speakeasy-param-computed: false reuseConnection: description: Reuse health check connection between health checks. Default is true. type: boolean x-speakeasy-param-computed: false tcp: description: |- TcpHealthCheck defines configuration for specifying bytes to send and expected response during the health check type: object properties: disabled: description: If true the TcpHealthCheck is disabled type: boolean x-speakeasy-param-computed: false receive: description: |- List of Base64 encoded blocks of strings expected as a response. When checking the response, "fuzzy" matching is performed such that each block must be found, and in the order specified, but not necessarily contiguous. If not provided or empty, checks will be performed as "connect only" and be marked as successful when TCP connection is successfully established. type: array items: type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier send: description: Base64 encoded content of the message which will be sent during the health check to the target type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false timeout: description: |- Maximum time to wait for a health check response. If not specified then the default value is 15s type: string x-speakeasy-param-computed: false unhealthyThreshold: description: |- Number of consecutive unhealthy checks before considering a host unhealthy. If not specified then the default value is 5 type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshHealthCheckCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshHealthCheckDeleteSuccessResponse: type: object properties: {} MeshHTTPRouteItem: type: object properties: type: description: the type of the resource type: string enum: - MeshHTTPRoute x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshHTTPRoute resource. type: object properties: targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To matches destination services of requests and holds configuration. type: array items: properties: hostnames: description: |- Hostnames is only valid when targeting MeshGateway and limits the effects of the rules to requests to this hostname. Given hostnames must intersect with the hostname of the listeners the route attaches to. type: array items: type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules contains the routing rules applies to a combination of top-level targetRef and the targetRef in this entry. type: array items: properties: default: description: |- Default holds routing rules that can be merged with rules from other policies. type: object properties: backendRefs: type: array items: description: BackendRef defines where to forward traffic. properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false port: description: Port is only supported when this ref refers to a real MeshService object type: integer format: int32 x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false weight: type: integer default: 1 minimum: 0 x-speakeasy-param-computed: false required: - kind type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier filters: type: array items: properties: requestHeaderModifier: description: |- Only one action is supported per header name. Configuration to set or add multiple values for a header must use RFC 7230 header value formatting, separating each value with a comma. type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier remove: type: array items: type: string maxItems: 16 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false requestMirror: type: object properties: backendRef: description: BackendRef defines where to forward traffic. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false port: description: Port is only supported when this ref refers to a real MeshService object type: integer format: int32 x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false weight: type: integer default: 1 minimum: 0 x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false percentage: description: |- Percentage of requests to mirror. If not specified, all requests to the target cluster will be mirrored. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - backendRef x-speakeasy-param-computed: false requestRedirect: type: object properties: hostname: description: |- PreciseHostname is the fully qualified domain name of a network host. This matches the RFC 1123 definition of a hostname with 1 notable exception that numeric IP addresses are not allowed. Note that as per RFC1035 and RFC1123, a *label* must consist of lower case alphanumeric characters or '-', and must start and end with an alphanumeric character. No other punctuation is allowed. type: string maxLength: 253 minLength: 1 pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$' x-speakeasy-param-computed: false path: description: |- Path defines parameters used to modify the path of the incoming request. The modified path is then used to construct the location header. When empty, the request path is used as-is. type: object properties: replaceFullPath: type: string x-speakeasy-param-computed: false replacePrefixMatch: type: string x-speakeasy-param-computed: false type: type: string enum: - ReplaceFullPath - ReplacePrefixMatch x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false port: description: |- Port is the port to be used in the value of the `Location` header in the response. When empty, port (if specified) of the request is used. type: integer format: int32 maximum: 65535 minimum: 1 x-speakeasy-param-computed: false scheme: type: string enum: - http - https x-speakeasy-param-computed: false statusCode: description: StatusCode is the HTTP status code to be used in response. type: integer default: 302 enum: - 301 - 302 - 303 - 307 - 308 x-speakeasy-param-computed: false x-speakeasy-param-computed: false responseHeaderModifier: description: |- Only one action is supported per header name. Configuration to set or add multiple values for a header must use RFC 7230 header value formatting, separating each value with a comma. type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier remove: type: array items: type: string maxItems: 16 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false type: type: string enum: - RequestHeaderModifier - ResponseHeaderModifier - RequestRedirect - URLRewrite - RequestMirror x-speakeasy-param-computed: false urlRewrite: type: object properties: hostToBackendHostname: description: |- HostToBackendHostname rewrites the hostname to the hostname of the upstream host. This option is only available when targeting MeshGateways. type: boolean x-speakeasy-param-computed: false hostname: description: Hostname is the value to be used to replace the host header value during forwarding. type: string maxLength: 253 minLength: 1 pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$' x-speakeasy-param-computed: false path: description: Path defines a path rewrite. type: object properties: replaceFullPath: type: string x-speakeasy-param-computed: false replacePrefixMatch: type: string x-speakeasy-param-computed: false type: type: string enum: - ReplaceFullPath - ReplacePrefixMatch x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false matches: description: |- Matches describes how to match HTTP requests this rule should be applied to. type: array items: properties: headers: type: array items: description: |- HeaderMatch describes how to select an HTTP route by matching HTTP request headers. properties: name: description: |- Name is the name of the HTTP Header to be matched. Name MUST be lower case as they will be handled with case insensitivity (See https://tools.ietf.org/html/rfc7230#section-3.2). type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false type: description: Type specifies how to match against the value of the header. type: string default: Exact enum: - Exact - Present - RegularExpression - Absent - Prefix x-speakeasy-param-computed: false value: description: Value is the value of HTTP Header to be matched. type: string x-speakeasy-param-computed: false required: - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier method: type: string enum: - CONNECT - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT - TRACE x-speakeasy-param-computed: false path: type: object properties: type: type: string enum: - Exact - PathPrefix - RegularExpression x-speakeasy-param-computed: false value: description: |- Exact or prefix matches must be an absolute path. A prefix matches only if separated by a slash or the entire path. type: string minLength: 1 x-speakeasy-param-computed: false required: - type - value x-speakeasy-param-computed: false queryParams: description: |- QueryParams matches based on HTTP URL query parameters. Multiple matches are ANDed together such that all listed matches must succeed. type: array items: properties: name: type: string minLength: 1 x-speakeasy-param-computed: false type: type: string enum: - Exact - RegularExpression x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - type - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier type: object minItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier required: - default - matches type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource that represents a group of request destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - rules - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshHTTPRouteCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshHTTPRouteDeleteSuccessResponse: type: object properties: {} MeshLoadBalancingStrategyItem: type: object properties: type: description: the type of the resource type: string enum: - MeshLoadBalancingStrategy x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshLoadBalancingStrategy resource. type: object properties: targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: hashPolicies: description: |- HashPolicies specify a list of request/connection properties that are used to calculate a hash. These hash policies are executed in the specified order. If a hash policy has the “terminal” attribute set to true, and there is already a hash generated, the hash is returned immediately, ignoring the rest of the hash policy list. type: array items: properties: connection: type: object properties: sourceIP: description: Hash on source IP address. type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false cookie: type: object properties: name: description: The name of the cookie that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false path: description: The name of the path for the cookie. type: string x-speakeasy-param-computed: false ttl: description: 'If specified, a cookie with the TTL will be generated if the cookie is not present.' type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false filterState: type: object properties: key: description: |- The name of the Object in the per-request filterState, which is an Envoy::Hashable object. If there is no data associated with the key, or the stored object is not Envoy::Hashable, no hash will be produced. type: string minLength: 1 x-speakeasy-param-computed: false required: - key x-speakeasy-param-computed: false header: type: object properties: name: description: The name of the request header that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false queryParameter: type: object properties: name: description: |- The name of the URL query parameter that will be used to obtain the hash key. If the parameter is not present, no hash will be produced. Query parameter names are case-sensitive. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false terminal: description: |- Terminal is a flag that short-circuits the hash computing. This field provides a ‘fallback’ style of configuration: “if a terminal policy doesn’t work, fallback to rest of the policy list”, it saves time when the terminal policy works. If true, and there is already a hash computed, ignore rest of the list of hash polices. type: boolean x-speakeasy-param-computed: false type: type: string enum: - Header - Cookie - Connection - SourceIP - QueryParameter - FilterState x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier loadBalancer: description: LoadBalancer allows to specify load balancing algorithm. type: object properties: leastRequest: description: |- LeastRequest selects N random available hosts as specified in 'choiceCount' (2 by default) and picks the host which has the fewest active requests type: object properties: activeRequestBias: description: |- ActiveRequestBias refers to dynamic weights applied when hosts have varying load balancing weights. A higher value here aggressively reduces the weight of endpoints that are currently handling active requests. In essence, the higher the ActiveRequestBias value, the more forcefully it reduces the load balancing weight of endpoints that are actively serving requests. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false choiceCount: description: |- ChoiceCount is the number of random healthy hosts from which the host with the fewest active requests will be chosen. Defaults to 2 so that Envoy performs two-choice selection if the field is not set. type: integer format: int32 minimum: 2 x-speakeasy-param-computed: false x-speakeasy-param-computed: false maglev: description: |- Maglev implements consistent hashing to upstream hosts. Maglev can be used as a drop in replacement for the ring hash load balancer any place in which consistent hashing is desired. type: object properties: hashPolicies: description: |- HashPolicies specify a list of request/connection properties that are used to calculate a hash. These hash policies are executed in the specified order. If a hash policy has the “terminal” attribute set to true, and there is already a hash generated, the hash is returned immediately, ignoring the rest of the hash policy list. type: array items: properties: connection: type: object properties: sourceIP: description: Hash on source IP address. type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false cookie: type: object properties: name: description: The name of the cookie that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false path: description: The name of the path for the cookie. type: string x-speakeasy-param-computed: false ttl: description: 'If specified, a cookie with the TTL will be generated if the cookie is not present.' type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false filterState: type: object properties: key: description: |- The name of the Object in the per-request filterState, which is an Envoy::Hashable object. If there is no data associated with the key, or the stored object is not Envoy::Hashable, no hash will be produced. type: string minLength: 1 x-speakeasy-param-computed: false required: - key x-speakeasy-param-computed: false header: type: object properties: name: description: The name of the request header that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false queryParameter: type: object properties: name: description: |- The name of the URL query parameter that will be used to obtain the hash key. If the parameter is not present, no hash will be produced. Query parameter names are case-sensitive. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false terminal: description: |- Terminal is a flag that short-circuits the hash computing. This field provides a ‘fallback’ style of configuration: “if a terminal policy doesn’t work, fallback to rest of the policy list”, it saves time when the terminal policy works. If true, and there is already a hash computed, ignore rest of the list of hash polices. type: boolean x-speakeasy-param-computed: false type: type: string enum: - Header - Cookie - Connection - SourceIP - QueryParameter - FilterState x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier tableSize: description: |- The table size for Maglev hashing. Maglev aims for “minimal disruption” rather than an absolute guarantee. Minimal disruption means that when the set of upstream hosts change, a connection will likely be sent to the same upstream as it was before. Increasing the table size reduces the amount of disruption. The table size must be prime number limited to 5000011. If it is not specified, the default is 65537. type: integer format: int32 maximum: 5000011 minimum: 1 x-speakeasy-param-computed: false x-speakeasy-param-computed: false random: description: |- Random selects a random available host. The random load balancer generally performs better than round-robin if no health checking policy is configured. Random selection avoids bias towards the host in the set that comes after a failed host. type: object x-speakeasy-param-computed: false ringHash: description: |- RingHash implements consistent hashing to upstream hosts. Each host is mapped onto a circle (the “ring”) by hashing its address; each request is then routed to a host by hashing some property of the request, and finding the nearest corresponding host clockwise around the ring. type: object properties: hashFunction: description: |- HashFunction is a function used to hash hosts onto the ketama ring. The value defaults to XX_HASH. Available values – XX_HASH, MURMUR_HASH_2. type: string enum: - XXHash - MurmurHash2 x-speakeasy-param-computed: false hashPolicies: description: |- HashPolicies specify a list of request/connection properties that are used to calculate a hash. These hash policies are executed in the specified order. If a hash policy has the “terminal” attribute set to true, and there is already a hash generated, the hash is returned immediately, ignoring the rest of the hash policy list. type: array items: properties: connection: type: object properties: sourceIP: description: Hash on source IP address. type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false cookie: type: object properties: name: description: The name of the cookie that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false path: description: The name of the path for the cookie. type: string x-speakeasy-param-computed: false ttl: description: 'If specified, a cookie with the TTL will be generated if the cookie is not present.' type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false filterState: type: object properties: key: description: |- The name of the Object in the per-request filterState, which is an Envoy::Hashable object. If there is no data associated with the key, or the stored object is not Envoy::Hashable, no hash will be produced. type: string minLength: 1 x-speakeasy-param-computed: false required: - key x-speakeasy-param-computed: false header: type: object properties: name: description: The name of the request header that will be used to obtain the hash key. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false queryParameter: type: object properties: name: description: |- The name of the URL query parameter that will be used to obtain the hash key. If the parameter is not present, no hash will be produced. Query parameter names are case-sensitive. type: string minLength: 1 x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false terminal: description: |- Terminal is a flag that short-circuits the hash computing. This field provides a ‘fallback’ style of configuration: “if a terminal policy doesn’t work, fallback to rest of the policy list”, it saves time when the terminal policy works. If true, and there is already a hash computed, ignore rest of the list of hash polices. type: boolean x-speakeasy-param-computed: false type: type: string enum: - Header - Cookie - Connection - SourceIP - QueryParameter - FilterState x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier maxRingSize: description: |- Maximum hash ring size. Defaults to 8M entries, and limited to 8M entries, but can be lowered to further constrain resource use. type: integer format: int32 maximum: 8000000 minimum: 1 x-speakeasy-param-computed: false minRingSize: description: |- Minimum hash ring size. The larger the ring is (that is, the more hashes there are for each provided host) the better the request distribution will reflect the desired weights. Defaults to 1024 entries, and limited to 8M entries. type: integer format: int32 maximum: 8000000 minimum: 1 x-speakeasy-param-computed: false x-speakeasy-param-computed: false roundRobin: description: |- RoundRobin is a load balancing algorithm that distributes requests across available upstream hosts in round-robin order. type: object x-speakeasy-param-computed: false type: type: string enum: - RoundRobin - LeastRequest - RingHash - Random - Maglev x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false localityAwareness: description: LocalityAwareness contains configuration for locality aware load balancing. type: object properties: crossZone: description: |- CrossZone defines locality aware load balancing priorities when dataplane proxies inside local zone are unavailable type: object properties: failover: description: Failover defines list of load balancing rules in order of priority type: array items: properties: from: description: From defines the list of zones to which the rule applies type: object properties: zones: type: array items: type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier required: - zones x-speakeasy-param-computed: false to: description: To defines to which zones the traffic should be load balanced type: object properties: type: description: Type defines how target zones will be picked from available zones type: string enum: - None - Only - Any - AnyExcept x-speakeasy-param-computed: false zones: type: array items: type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier required: - type x-speakeasy-param-computed: false required: - to type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier failoverThreshold: description: |- FailoverThreshold defines the percentage of live destination dataplane proxies below which load balancing to the next priority starts. Example: If you configure failoverThreshold to 70, and you have deployed 10 destination dataplane proxies. Load balancing to next priority will start when number of live destination dataplane proxies drops below 7. Default 50 type: object properties: percentage: anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - percentage x-speakeasy-param-computed: false x-speakeasy-param-computed: false disabled: description: |- Disabled allows to disable locality-aware load balancing. When disabled requests are distributed across all endpoints regardless of locality. type: boolean x-speakeasy-param-computed: false localZone: description: LocalZone defines locality aware load balancing priorities between dataplane proxies inside a zone type: object properties: affinityTags: description: AffinityTags list of tags for local zone load balancing. type: array items: properties: key: description: Key defines tag for which affinity is configured type: string x-speakeasy-param-computed: false weight: description: |- Weight of the tag used for load balancing. The bigger the weight the bigger the priority. Percentage of local traffic load balanced to tag is computed by dividing weight by sum of weights from all tags. For example with two affinity tags first with weight 80 and second with weight 20, then 80% of traffic will be redirected to the first tag, and 20% of traffic will be redirected to second one. Setting weights is not mandatory. When weights are not set control plane will compute default weight based on list order. Default: If you do not specify weight we will adjust them so that 90% traffic goes to first tag, 9% to next, and 1% to third and so on. type: integer format: int32 x-speakeasy-param-computed: false required: - key type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshLoadBalancingStrategyCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshLoadBalancingStrategyDeleteSuccessResponse: type: object properties: {} MeshMetricItem: type: object properties: type: description: the type of the resource type: string enum: - MeshMetric x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshMetric resource. type: object properties: default: description: MeshMetric configuration. type: object properties: applications: description: Applications is a list of application that Dataplane Proxy will scrape type: array items: properties: address: description: Address on which an application listens. type: string x-speakeasy-param-computed: false name: description: Name of the application to scrape type: string x-speakeasy-param-computed: false path: description: Path on which an application expose HTTP endpoint with metrics. type: string default: /metrics x-speakeasy-param-computed: false port: description: Port on which an application expose HTTP endpoint with metrics. type: integer format: int32 x-speakeasy-param-computed: false required: - port type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier backends: description: Backends list that will be used to collect metrics. type: array items: properties: openTelemetry: description: OpenTelemetry backend configuration type: object properties: endpoint: description: Endpoint for OpenTelemetry collector type: string x-speakeasy-param-computed: false refreshInterval: description: RefreshInterval defines how frequent metrics should be pushed to collector type: string x-speakeasy-param-computed: false required: - endpoint x-speakeasy-param-computed: false prometheus: description: Prometheus backend configuration. type: object properties: clientId: description: ClientId of the Prometheus backend. Needed when using MADS for DP discovery. type: string x-speakeasy-param-computed: false path: description: Path on which a dataplane should expose HTTP endpoint with Prometheus metrics. type: string default: /metrics x-speakeasy-param-computed: false port: description: Port on which a dataplane should expose HTTP endpoint with Prometheus metrics. type: integer format: int32 default: 5670 x-speakeasy-param-computed: false tls: description: Configuration of TLS for prometheus listener. type: object properties: mode: description: Configuration of TLS for Prometheus listener. type: string default: Disabled enum: - Disabled - ProvidedTLS - ActiveMTLSBackend x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: description: Type of the backend that will be used to collect metrics. At the moment only Prometheus backend is available. type: string enum: - Prometheus - OpenTelemetry x-speakeasy-param-computed: false required: - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sidecar: description: Sidecar metrics collection configuration type: object properties: includeUnused: description: |- IncludeUnused if false will scrape only metrics that has been by sidecar (counters incremented at least once, gauges changed at least once, and histograms added to at least once). If true will scrape all metrics (even the ones with zeros). If not specified then the default value is false. type: boolean x-speakeasy-param-computed: false profiles: description: Profiles allows to customize which metrics are published. type: object properties: appendProfiles: description: AppendProfiles allows to combine the metrics from multiple predefined profiles. type: array items: properties: name: description: 'Name of the predefined profile, one of: all, basic, none' type: string enum: - All - Basic - None x-speakeasy-param-computed: false required: - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier exclude: description: |- Exclude makes it possible to exclude groups of metrics from a resulting profile. Exclude is subordinate to Include. type: array items: properties: match: description: Match is the value used to match using particular Type type: string x-speakeasy-param-computed: false type: description: 'Type defined the type of selector, one of: prefix, regex, exact' type: string enum: - Prefix - Regex - Exact - Contains x-speakeasy-param-computed: false required: - match - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier include: description: |- Include makes it possible to include additional metrics in a selected profiles. Include takes precedence over Exclude. type: array items: properties: match: description: Match is the value used to match using particular Type type: string x-speakeasy-param-computed: false type: description: 'Type defined the type of selector, one of: prefix, regex, exact' type: string enum: - Prefix - Regex - Exact - Contains x-speakeasy-param-computed: false required: - match - type type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in-place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshMetricCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshMetricDeleteSuccessResponse: type: object properties: {} MeshPassthroughItem: type: object properties: type: description: the type of the resource type: string enum: - MeshPassthrough x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshPassthrough resource. type: object properties: default: description: MeshPassthrough configuration. type: object properties: appendMatch: description: AppendMatch is a list of destinations that should be allowed through the sidecar. type: array items: properties: port: description: Port defines the port to which a user makes a request. type: integer format: int32 x-speakeasy-param-computed: false protocol: description: 'Protocol defines the communication protocol. Possible values: `tcp`, `tls`, `grpc`, `http`, `http2`, `mysql`.' type: string default: tcp enum: - tcp - tls - grpc - http - http2 - mysql x-speakeasy-param-computed: false type: description: 'Type of the match, one of `Domain`, `IP` or `CIDR` is available.' type: string enum: - Domain - IP - CIDR x-speakeasy-param-computed: false value: description: Value for the specified Type. type: string x-speakeasy-param-computed: false required: - type - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier passthroughMode: description: |- Defines the passthrough behavior. Possible values: `All`, `None`, `Matched` When `All` or `None` `appendMatch` has no effect. If not specified then the default value is "Matched". type: string enum: - All - Matched - None x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in-place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshPassthroughCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshPassthroughDeleteSuccessResponse: type: object properties: {} MeshProxyPatchItem: type: object properties: type: description: the type of the resource type: string enum: - MeshProxyPatch x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshProxyPatch resource. type: object properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef'. type: object properties: appendModifications: description: AppendModifications is a list of modifications applied on the selected proxy. type: array items: properties: cluster: description: Cluster is a modification of Envoy's Cluster resource. type: object properties: jsonPatches: description: |- JsonPatches specifies list of jsonpatches to apply to on Envoy's Cluster resource type: array items: description: JsonPatchBlock is one json patch operation block. properties: from: description: 'From is a jsonpatch from string, used by move and copy operations.' type: string x-speakeasy-param-computed: false op: description: Op is a jsonpatch operation string. type: string enum: - add - remove - replace - move - copy x-speakeasy-param-computed: false path: description: Path is a jsonpatch path string. type: string x-speakeasy-param-computed: false value: description: Value must be a valid json value used by replace and add operations. x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false required: - op - path type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier match: description: Match is a set of conditions that have to be matched for modification operation to happen. type: object properties: name: description: Name of the cluster to match. type: string x-speakeasy-param-computed: false origin: description: |- Origin is the name of the component or plugin that generated the resource. Here is the list of well-known origins: inbound - resources generated for handling incoming traffic. outbound - resources generated for handling outgoing traffic. transparent - resources generated for transparent proxy functionality. prometheus - resources generated when Prometheus metrics are enabled. direct-access - resources generated for Direct Access functionality. ingress - resources generated for Zone Ingress. egress - resources generated for Zone Egress. gateway - resources generated for MeshGateway. The list is not complete, because policy plugins can introduce new resources. For example MeshTrace plugin can create Cluster with "mesh-trace" origin. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false operation: description: Operation to execute on matched cluster. type: string enum: - Add - Remove - Patch x-speakeasy-param-computed: false value: description: Value of xDS resource in YAML format to add or patch. type: string x-speakeasy-param-computed: false required: - operation x-speakeasy-param-computed: false httpFilter: description: |- HTTPFilter is a modification of Envoy HTTP Filter available in HTTP Connection Manager in a Listener resource. type: object properties: jsonPatches: description: |- JsonPatches specifies list of jsonpatches to apply to on Envoy's HTTP Filter available in HTTP Connection Manager in a Listener resource. type: array items: description: JsonPatchBlock is one json patch operation block. properties: from: description: 'From is a jsonpatch from string, used by move and copy operations.' type: string x-speakeasy-param-computed: false op: description: Op is a jsonpatch operation string. type: string enum: - add - remove - replace - move - copy x-speakeasy-param-computed: false path: description: Path is a jsonpatch path string. type: string x-speakeasy-param-computed: false value: description: Value must be a valid json value used by replace and add operations. x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false required: - op - path type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier match: description: Match is a set of conditions that have to be matched for modification operation to happen. type: object properties: listenerName: description: Name of the listener to match. type: string x-speakeasy-param-computed: false listenerTags: description: 'Listener tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]' type: object additionalProperties: type: string x-speakeasy-param-computed: false name: description: Name of the HTTP filter. For example "envoy.filters.http.local_ratelimit" type: string x-speakeasy-param-computed: false origin: description: |- Origin is the name of the component or plugin that generated the resource. Here is the list of well-known origins: inbound - resources generated for handling incoming traffic. outbound - resources generated for handling outgoing traffic. transparent - resources generated for transparent proxy functionality. prometheus - resources generated when Prometheus metrics are enabled. direct-access - resources generated for Direct Access functionality. ingress - resources generated for Zone Ingress. egress - resources generated for Zone Egress. gateway - resources generated for MeshGateway. The list is not complete, because policy plugins can introduce new resources. For example MeshTrace plugin can create Cluster with "mesh-trace" origin. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false operation: description: Operation to execute on matched listener. type: string enum: - Remove - Patch - AddFirst - AddBefore - AddAfter - AddLast x-speakeasy-param-computed: false value: description: Value of xDS resource in YAML format to add or patch. type: string x-speakeasy-param-computed: false required: - operation x-speakeasy-param-computed: false listener: description: Listener is a modification of Envoy's Listener resource. type: object properties: jsonPatches: description: |- JsonPatches specifies list of jsonpatches to apply to on Envoy's Listener resource type: array items: description: JsonPatchBlock is one json patch operation block. properties: from: description: 'From is a jsonpatch from string, used by move and copy operations.' type: string x-speakeasy-param-computed: false op: description: Op is a jsonpatch operation string. type: string enum: - add - remove - replace - move - copy x-speakeasy-param-computed: false path: description: Path is a jsonpatch path string. type: string x-speakeasy-param-computed: false value: description: Value must be a valid json value used by replace and add operations. x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false required: - op - path type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier match: description: Match is a set of conditions that have to be matched for modification operation to happen. type: object properties: name: description: Name of the listener to match. type: string x-speakeasy-param-computed: false origin: description: |- Origin is the name of the component or plugin that generated the resource. Here is the list of well-known origins: inbound - resources generated for handling incoming traffic. outbound - resources generated for handling outgoing traffic. transparent - resources generated for transparent proxy functionality. prometheus - resources generated when Prometheus metrics are enabled. direct-access - resources generated for Direct Access functionality. ingress - resources generated for Zone Ingress. egress - resources generated for Zone Egress. gateway - resources generated for MeshGateway. The list is not complete, because policy plugins can introduce new resources. For example MeshTrace plugin can create Cluster with "mesh-trace" origin. type: string x-speakeasy-param-computed: false tags: description: 'Tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]' type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false operation: description: Operation to execute on matched listener. type: string enum: - Add - Remove - Patch x-speakeasy-param-computed: false value: description: Value of xDS resource in YAML format to add or patch. type: string x-speakeasy-param-computed: false required: - operation x-speakeasy-param-computed: false networkFilter: description: NetworkFilter is a modification of Envoy Listener's filter. type: object properties: jsonPatches: description: |- JsonPatches specifies list of jsonpatches to apply to on Envoy Listener's filter. type: array items: description: JsonPatchBlock is one json patch operation block. properties: from: description: 'From is a jsonpatch from string, used by move and copy operations.' type: string x-speakeasy-param-computed: false op: description: Op is a jsonpatch operation string. type: string enum: - add - remove - replace - move - copy x-speakeasy-param-computed: false path: description: Path is a jsonpatch path string. type: string x-speakeasy-param-computed: false value: description: Value must be a valid json value used by replace and add operations. x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false required: - op - path type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier match: description: Match is a set of conditions that have to be matched for modification operation to happen. type: object properties: listenerName: description: Name of the listener to match. type: string x-speakeasy-param-computed: false listenerTags: description: 'Listener tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]' type: object additionalProperties: type: string x-speakeasy-param-computed: false name: description: Name of the network filter. For example "envoy.filters.network.ratelimit" type: string x-speakeasy-param-computed: false origin: description: |- Origin is the name of the component or plugin that generated the resource. Here is the list of well-known origins: inbound - resources generated for handling incoming traffic. outbound - resources generated for handling outgoing traffic. transparent - resources generated for transparent proxy functionality. prometheus - resources generated when Prometheus metrics are enabled. direct-access - resources generated for Direct Access functionality. ingress - resources generated for Zone Ingress. egress - resources generated for Zone Egress. gateway - resources generated for MeshGateway. The list is not complete, because policy plugins can introduce new resources. For example MeshTrace plugin can create Cluster with "mesh-trace" origin. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false operation: description: Operation to execute on matched listener. type: string enum: - Remove - Patch - AddFirst - AddBefore - AddAfter - AddLast x-speakeasy-param-computed: false value: description: Value of xDS resource in YAML format to add or patch. type: string x-speakeasy-param-computed: false required: - operation x-speakeasy-param-computed: false virtualHost: description: |- VirtualHost is a modification of Envoy's VirtualHost referenced in HTTP Connection Manager in a Listener resource. type: object properties: jsonPatches: description: |- JsonPatches specifies list of jsonpatches to apply to on Envoy's VirtualHost resource type: array items: description: JsonPatchBlock is one json patch operation block. properties: from: description: 'From is a jsonpatch from string, used by move and copy operations.' type: string x-speakeasy-param-computed: false op: description: Op is a jsonpatch operation string. type: string enum: - add - remove - replace - move - copy x-speakeasy-param-computed: false path: description: Path is a jsonpatch path string. type: string x-speakeasy-param-computed: false value: description: Value must be a valid json value used by replace and add operations. x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false required: - op - path type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier match: description: Match is a set of conditions that have to be matched for modification operation to happen. type: object properties: name: description: Name of the VirtualHost to match. type: string x-speakeasy-param-computed: false origin: description: |- Origin is the name of the component or plugin that generated the resource. Here is the list of well-known origins: inbound - resources generated for handling incoming traffic. outbound - resources generated for handling outgoing traffic. transparent - resources generated for transparent proxy functionality. prometheus - resources generated when Prometheus metrics are enabled. direct-access - resources generated for Direct Access functionality. ingress - resources generated for Zone Ingress. egress - resources generated for Zone Egress. gateway - resources generated for MeshGateway. The list is not complete, because policy plugins can introduce new resources. For example MeshTrace plugin can create Cluster with "mesh-trace" origin. type: string x-speakeasy-param-computed: false routeConfigurationName: description: Name of the RouteConfiguration resource to match. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false operation: description: Operation to execute on matched listener. type: string enum: - Add - Remove - Patch x-speakeasy-param-computed: false value: description: Value of xDS resource in YAML format to add or patch. type: string x-speakeasy-param-computed: false required: - match - operation x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - default x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshProxyPatchCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshProxyPatchDeleteSuccessResponse: type: object properties: {} MeshRateLimitItem: type: object properties: type: description: the type of the resource type: string enum: - MeshRateLimit x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshRateLimit resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: local: description: LocalConf defines local http or/and tcp rate limit configuration type: object properties: http: description: |- LocalHTTP defines configuration of local HTTP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/local_rate_limit_filter type: object properties: disabled: description: Define if rate limiting should be disabled. type: boolean x-speakeasy-param-computed: false onRateLimit: description: Describes the actions to take on a rate limit event type: object properties: headers: description: The Headers to be added to the HTTP response on a rate limit event type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false status: description: The HTTP status code to be set on a rate limit event type: integer format: int32 x-speakeasy-param-computed: false requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false x-speakeasy-param-computed: false tcp: description: |- LocalTCP defines confguration of local TCP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/listeners/network_filters/local_rate_limit_filter type: object properties: connectionRate: description: Defines how many connections are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false disabled: description: |- Define if rate limiting should be disabled. Default: false type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules defines inbound rate limiting configurations. Currently limited to selecting all inbound traffic, as L7 matching is not yet implemented. type: array items: properties: default: description: Default contains configuration of the inbound rate limits type: object properties: local: description: LocalConf defines local http or/and tcp rate limit configuration type: object properties: http: description: |- LocalHTTP defines configuration of local HTTP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/local_rate_limit_filter type: object properties: disabled: description: Define if rate limiting should be disabled. type: boolean x-speakeasy-param-computed: false onRateLimit: description: Describes the actions to take on a rate limit event type: object properties: headers: description: The Headers to be added to the HTTP response on a rate limit event type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false status: description: The HTTP status code to be set on a rate limit event type: integer format: int32 x-speakeasy-param-computed: false requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false x-speakeasy-param-computed: false tcp: description: |- LocalTCP defines confguration of local TCP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/listeners/network_filters/local_rate_limit_filter type: object properties: connectionRate: description: Defines how many connections are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false disabled: description: |- Define if rate limiting should be disabled. Default: false type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: local: description: LocalConf defines local http or/and tcp rate limit configuration type: object properties: http: description: |- LocalHTTP defines configuration of local HTTP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/http/http_filters/local_rate_limit_filter type: object properties: disabled: description: Define if rate limiting should be disabled. type: boolean x-speakeasy-param-computed: false onRateLimit: description: Describes the actions to take on a rate limit event type: object properties: headers: description: The Headers to be added to the HTTP response on a rate limit event type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false status: description: The HTTP status code to be set on a rate limit event type: integer format: int32 x-speakeasy-param-computed: false requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false x-speakeasy-param-computed: false tcp: description: |- LocalTCP defines confguration of local TCP rate limiting https://www.envoyproxy.io/docs/envoy/latest/configuration/listeners/network_filters/local_rate_limit_filter type: object properties: connectionRate: description: Defines how many connections are allowed per interval. type: object properties: interval: description: The interval the number of units is accounted for. type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false disabled: description: |- Define if rate limiting should be disabled. Default: false type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshRateLimitCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshRateLimitDeleteSuccessResponse: type: object properties: {} MeshRetryItem: type: object properties: type: description: the type of the resource type: string enum: - MeshRetry x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshRetry resource. type: object properties: targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: grpc: description: GRPC defines a configuration of retries for GRPC traffic type: object properties: backOff: description: |- BackOff is a configuration of durations which will be used in an exponential backoff strategy between retries. type: object properties: baseInterval: description: |- BaseInterval is an amount of time which should be taken between retries. Must be greater than zero. Values less than 1 ms are rounded up to 1 ms. If not specified then the default value is "25ms". type: string x-speakeasy-param-computed: false maxInterval: description: |- MaxInterval is a maximal amount of time which will be taken between retries. Default is 10 times the "BaseInterval". type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false numRetries: description: |- NumRetries is the number of attempts that will be made on failed (and retriable) requests. If not set, the default value is 1. type: integer format: int32 x-speakeasy-param-computed: false perTryTimeout: description: |- PerTryTimeout is the maximum amount of time each retry attempt can take before it times out. If not set, the global request timeout for the route will be used. Setting this value to 0 will disable the per-try timeout. type: string x-speakeasy-param-computed: false rateLimitedBackOff: description: |- RateLimitedBackOff is a configuration of backoff which will be used when the upstream returns one of the headers configured. type: object properties: maxInterval: description: |- MaxInterval is a maximal amount of time which will be taken between retries. If not specified then the default value is "300s". type: string x-speakeasy-param-computed: false resetHeaders: description: |- ResetHeaders specifies the list of headers (like Retry-After or X-RateLimit-Reset) to match against the response. Headers are tried in order, and matched case-insensitive. The first header to be parsed successfully is used. If no headers match the default exponential BackOff is used instead. type: array items: properties: format: description: The format of the reset header. type: string enum: - Seconds - UnixTimestamp x-speakeasy-param-computed: false name: description: The Name of the reset header. type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false required: - format - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false retryOn: description: RetryOn is a list of conditions which will cause a retry. type: array items: enum: - Canceled - DeadlineExceeded - Internal - ResourceExhausted - Unavailable type: string example: - Canceled - DeadlineExceeded - Internal - ResourceExhausted - Unavailable x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false http: description: HTTP defines a configuration of retries for HTTP traffic type: object properties: backOff: description: |- BackOff is a configuration of durations which will be used in exponential backoff strategy between retries. type: object properties: baseInterval: description: |- BaseInterval is an amount of time which should be taken between retries. Must be greater than zero. Values less than 1 ms are rounded up to 1 ms. If not specified then the default value is "25ms". type: string x-speakeasy-param-computed: false maxInterval: description: |- MaxInterval is a maximal amount of time which will be taken between retries. Default is 10 times the "BaseInterval". type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false hostSelection: description: |- HostSelection is a list of predicates that dictate how hosts should be selected when requests are retried. type: array items: properties: predicate: description: Type is requested predicate mode. type: string enum: - OmitPreviousHosts - OmitHostsWithTags - OmitPreviousPriorities x-speakeasy-param-computed: false tags: description: |- Tags is a map of metadata to match against for selecting the omitted hosts. Required if Type is OmitHostsWithTags type: object additionalProperties: type: string x-speakeasy-param-computed: false updateFrequency: description: |- UpdateFrequency is how often the priority load should be updated based on previously attempted priorities. Used for OmitPreviousPriorities. type: integer format: int32 default: 2 x-speakeasy-param-computed: false required: - predicate type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostSelectionMaxAttempts: description: |- HostSelectionMaxAttempts is the maximum number of times host selection will be reattempted before giving up, at which point the host that was last selected will be routed to. If unspecified, this will default to retrying once. type: integer format: int64 x-speakeasy-param-computed: false numRetries: description: |- NumRetries is the number of attempts that will be made on failed (and retriable) requests. If not set, the default value is 1. type: integer format: int32 x-speakeasy-param-computed: false perTryTimeout: description: |- PerTryTimeout is the amount of time after which retry attempt should time out. If left unspecified, the global route timeout for the request will be used. Consequently, when using a 5xx based retry policy, a request that times out will not be retried as the total timeout budget would have been exhausted. Setting this timeout to 0 will disable it. type: string x-speakeasy-param-computed: false rateLimitedBackOff: description: |- RateLimitedBackOff is a configuration of backoff which will be used when the upstream returns one of the headers configured. type: object properties: maxInterval: description: |- MaxInterval is a maximal amount of time which will be taken between retries. If not specified then the default value is "300s". type: string x-speakeasy-param-computed: false resetHeaders: description: |- ResetHeaders specifies the list of headers (like Retry-After or X-RateLimit-Reset) to match against the response. Headers are tried in order, and matched case-insensitive. The first header to be parsed successfully is used. If no headers match the default exponential BackOff is used instead. type: array items: properties: format: description: The format of the reset header. type: string enum: - Seconds - UnixTimestamp x-speakeasy-param-computed: false name: description: The Name of the reset header. type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false required: - format - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false retriableRequestHeaders: description: |- RetriableRequestHeaders is an HTTP headers which must be present in the request for retries to be attempted. type: array items: description: |- HeaderMatch describes how to select an HTTP route by matching HTTP request headers. properties: name: description: |- Name is the name of the HTTP Header to be matched. Name MUST be lower case as they will be handled with case insensitivity (See https://tools.ietf.org/html/rfc7230#section-3.2). type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false type: description: Type specifies how to match against the value of the header. type: string default: Exact enum: - Exact - Present - RegularExpression - Absent - Prefix x-speakeasy-param-computed: false value: description: Value is the value of HTTP Header to be matched. type: string x-speakeasy-param-computed: false required: - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier retriableResponseHeaders: description: |- RetriableResponseHeaders is an HTTP response headers that trigger a retry if present in the response. A retry will be triggered if any of the header matches the upstream response headers. type: array items: description: |- HeaderMatch describes how to select an HTTP route by matching HTTP request headers. properties: name: description: |- Name is the name of the HTTP Header to be matched. Name MUST be lower case as they will be handled with case insensitivity (See https://tools.ietf.org/html/rfc7230#section-3.2). type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false type: description: Type specifies how to match against the value of the header. type: string default: Exact enum: - Exact - Present - RegularExpression - Absent - Prefix x-speakeasy-param-computed: false value: description: Value is the value of HTTP Header to be matched. type: string x-speakeasy-param-computed: false required: - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier retryOn: description: |- RetryOn is a list of conditions which will cause a retry. Available values are: [5XX, GatewayError, Reset, Retriable4xx, ConnectFailure, EnvoyRatelimited, RefusedStream, Http3PostConnectFailure, HttpMethodConnect, HttpMethodDelete, HttpMethodGet, HttpMethodHead, HttpMethodOptions, HttpMethodPatch, HttpMethodPost, HttpMethodPut, HttpMethodTrace]. Also, any HTTP status code (500, 503, etc.). type: array items: type: string example: - 5XX - GatewayError - Reset - Retriable4xx - ConnectFailure - EnvoyRatelimited - RefusedStream - Http3PostConnectFailure - HttpMethodConnect - HttpMethodDelete - HttpMethodGet - HttpMethodHead - HttpMethodOptions - HttpMethodPatch - HttpMethodPost - HttpMethodPut - HttpMethodTrace - '500' - '503' x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false tcp: description: TCP defines a configuration of retries for TCP traffic type: object properties: maxConnectAttempt: description: |- MaxConnectAttempt is a maximal amount of TCP connection attempts which will be made before giving up type: integer format: int32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshRetryCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshRetryDeleteSuccessResponse: type: object properties: {} MeshTCPRouteItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTCPRoute x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTCPRoute resource. type: object properties: targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in-place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: |- To list makes a match between the consumed services and corresponding configurations type: array items: properties: rules: description: |- Rules contains the routing rules applies to a combination of top-level targetRef and the targetRef in this entry. type: array items: properties: default: description: |- Default holds routing rules that can be merged with rules from other policies. type: object properties: backendRefs: type: array items: description: BackendRef defines where to forward traffic. properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false port: description: Port is only supported when this ref refers to a real MeshService object type: integer format: int32 x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false weight: type: integer default: 1 minimum: 0 x-speakeasy-param-computed: false required: - kind type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false required: - default type: object maxItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - rules - targetRef type: object minItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTCPRouteCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTCPRouteDeleteSuccessResponse: type: object properties: {} MeshTimeoutItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTimeout x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTimeout resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: connectionTimeout: description: |- ConnectionTimeout specifies the amount of time proxy will wait for an TCP connection to be established. Default value is 5 seconds. Cannot be set to 0. type: string x-speakeasy-param-computed: false http: description: Http provides configuration for HTTP specific timeouts type: object properties: maxConnectionDuration: description: |- MaxConnectionDuration is the time after which a connection will be drained and/or closed, starting from when it was first established. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false maxStreamDuration: description: |- MaxStreamDuration is the maximum time that a stream’s lifetime will span. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false requestHeadersTimeout: description: |- RequestHeadersTimeout The amount of time that proxy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled. Disabled by default. type: string x-speakeasy-param-computed: false requestTimeout: description: |- RequestTimeout The amount of time that proxy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent, OR when the response is initiated. Setting this timeout to 0 will disable it. Default is 15s. type: string x-speakeasy-param-computed: false streamIdleTimeout: description: |- StreamIdleTimeout is the amount of time that proxy will allow a stream to exist with no activity. Setting this timeout to 0 will disable it. Default is 30m type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false idleTimeout: description: |- IdleTimeout is defined as the period in which there are no bytes sent or received on connection Setting this timeout to 0 will disable it. Be cautious when disabling it because it can lead to connection leaking. Default value is 1h. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules defines inbound timeout configurations. Currently limited to exactly one rule containing default timeouts that apply to all inbound traffic, as L7 matching is not yet implemented. type: array items: properties: default: description: Default contains configuration of the inbound timeouts type: object properties: connectionTimeout: description: |- ConnectionTimeout specifies the amount of time proxy will wait for an TCP connection to be established. Default value is 5 seconds. Cannot be set to 0. type: string x-speakeasy-param-computed: false http: description: Http provides configuration for HTTP specific timeouts type: object properties: maxConnectionDuration: description: |- MaxConnectionDuration is the time after which a connection will be drained and/or closed, starting from when it was first established. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false maxStreamDuration: description: |- MaxStreamDuration is the maximum time that a stream’s lifetime will span. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false requestHeadersTimeout: description: |- RequestHeadersTimeout The amount of time that proxy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled. Disabled by default. type: string x-speakeasy-param-computed: false requestTimeout: description: |- RequestTimeout The amount of time that proxy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent, OR when the response is initiated. Setting this timeout to 0 will disable it. Default is 15s. type: string x-speakeasy-param-computed: false streamIdleTimeout: description: |- StreamIdleTimeout is the amount of time that proxy will allow a stream to exist with no activity. Setting this timeout to 0 will disable it. Default is 30m type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false idleTimeout: description: |- IdleTimeout is defined as the period in which there are no bytes sent or received on connection Setting this timeout to 0 will disable it. Be cautious when disabling it because it can lead to connection leaking. Default value is 1h. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between the consumed services and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of destinations referenced in 'targetRef' type: object properties: connectionTimeout: description: |- ConnectionTimeout specifies the amount of time proxy will wait for an TCP connection to be established. Default value is 5 seconds. Cannot be set to 0. type: string x-speakeasy-param-computed: false http: description: Http provides configuration for HTTP specific timeouts type: object properties: maxConnectionDuration: description: |- MaxConnectionDuration is the time after which a connection will be drained and/or closed, starting from when it was first established. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false maxStreamDuration: description: |- MaxStreamDuration is the maximum time that a stream’s lifetime will span. Setting this timeout to 0 will disable it. Disabled by default. type: string x-speakeasy-param-computed: false requestHeadersTimeout: description: |- RequestHeadersTimeout The amount of time that proxy will wait for the request headers to be received. The timer is activated when the first byte of the headers is received, and is disarmed when the last byte of the headers has been received. If not specified or set to 0, this timeout is disabled. Disabled by default. type: string x-speakeasy-param-computed: false requestTimeout: description: |- RequestTimeout The amount of time that proxy will wait for the entire request to be received. The timer is activated when the request is initiated, and is disarmed when the last byte of the request is sent, OR when the response is initiated. Setting this timeout to 0 will disable it. Default is 15s. type: string x-speakeasy-param-computed: false streamIdleTimeout: description: |- StreamIdleTimeout is the amount of time that proxy will allow a stream to exist with no activity. Setting this timeout to 0 will disable it. Default is 30m type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false idleTimeout: description: |- IdleTimeout is defined as the period in which there are no bytes sent or received on connection Setting this timeout to 0 will disable it. Be cautious when disabling it because it can lead to connection leaking. Default value is 1h. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of destinations. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTimeoutCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTimeoutDeleteSuccessResponse: type: object properties: {} MeshTLSItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTLS x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTLS resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: mode: description: Mode defines the behavior of inbound listeners with regard to traffic encryption. type: string enum: - Permissive - Strict x-speakeasy-param-computed: false tlsCiphers: description: TlsCiphers section for providing ciphers specification. type: array items: enum: - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES256-GCM-SHA384 - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-RSA-AES256-GCM-SHA384 - ECDHE-RSA-CHACHA20-POLY1305 type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier tlsVersion: description: Version section for providing version specification. type: object properties: max: description: 'Max defines maximum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false min: description: 'Min defines minimum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: |- Rules defines inbound tls configurations. Currently limited to selecting all inbound traffic, as L7 matching is not yet implemented. type: array items: properties: default: description: Default contains configuration of the inbound tls type: object properties: mode: description: Mode defines the behavior of inbound listeners with regard to traffic encryption. type: string enum: - Permissive - Strict x-speakeasy-param-computed: false tlsCiphers: description: TlsCiphers section for providing ciphers specification. type: array items: enum: - ECDHE-ECDSA-AES128-GCM-SHA256 - ECDHE-ECDSA-AES256-GCM-SHA384 - ECDHE-ECDSA-CHACHA20-POLY1305 - ECDHE-RSA-AES128-GCM-SHA256 - ECDHE-RSA-AES256-GCM-SHA384 - ECDHE-RSA-CHACHA20-POLY1305 type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier tlsVersion: description: Version section for providing version specification. type: object properties: max: description: 'Max defines maximum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false min: description: 'Min defines minimum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined in-place. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTLSCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTLSDeleteSuccessResponse: type: object properties: {} MeshTraceItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTrace x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTrace resource. type: object properties: default: description: MeshTrace configuration. type: object properties: backends: description: |- A one element array of backend definition. Envoy allows configuring only 1 backend, so the natural way of representing that would be just one object. Unfortunately due to the reasons explained in MADR 009-tracing-policy this has to be a one element array for now. type: array items: description: 'Only one of zipkin, datadog or openTelemetry can be used.' properties: datadog: description: Datadog backend configuration. type: object properties: splitService: description: |- Determines if datadog service name should be split based on traffic direction and destination. For example, with `splitService: true` and a `backend` service that communicates with a couple of databases, you would get service names like `backend_INBOUND`, `backend_OUTBOUND_db1`, and `backend_OUTBOUND_db2` in Datadog. type: boolean default: false x-speakeasy-param-computed: false url: description: |- Address of Datadog collector, only host and port are allowed (no paths, fragments etc.) type: string x-speakeasy-param-computed: false required: - url x-speakeasy-param-computed: false openTelemetry: description: OpenTelemetry backend configuration. type: object properties: endpoint: description: Address of OpenTelemetry collector. type: string example: 'otel-collector:4317' minLength: 1 x-speakeasy-param-computed: false required: - endpoint x-speakeasy-param-computed: false type: type: string enum: - Zipkin - Datadog - OpenTelemetry x-speakeasy-param-computed: false zipkin: description: Zipkin backend configuration. type: object properties: apiVersion: description: |- Version of the API. https://github.com/envoyproxy/envoy/blob/v1.22.0/api/envoy/config/trace/v3/zipkin.proto#L66 type: string default: httpJson enum: - httpJson - httpProto x-speakeasy-param-computed: false sharedSpanContext: description: |- Determines whether client and server spans will share the same span context. https://github.com/envoyproxy/envoy/blob/v1.22.0/api/envoy/config/trace/v3/zipkin.proto#L63 type: boolean default: true x-speakeasy-param-computed: false traceId128bit: description: Generate 128bit traces. type: boolean default: false x-speakeasy-param-computed: false url: description: Address of Zipkin collector. type: string x-speakeasy-param-computed: false required: - url x-speakeasy-param-computed: false required: - type type: object maxItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sampling: description: |- Sampling configuration. Sampling is the process by which a decision is made on whether to process/export a span or not. type: object properties: client: description: |- Target percentage of requests that will be force traced if the 'x-client-trace-id' header is set. Mirror of client_sampling in Envoy https://github.com/envoyproxy/envoy/blob/v1.22.0/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto#L127-L133 Either int or decimal represented as string. If not specified then the default value is 100. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false overall: description: |- Target percentage of requests will be traced after all other sampling checks have been applied (client, force tracing, random sampling). This field functions as an upper limit on the total configured sampling rate. For instance, setting client to 100 but overall to 1 will result in only 1% of client requests with the appropriate headers to be force traced. Mirror of overall_sampling in Envoy https://github.com/envoyproxy/envoy/blob/v1.22.0/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto#L142-L150 Either int or decimal represented as string. If not specified then the default value is 100. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false random: description: |- Target percentage of requests that will be randomly selected for trace generation, if not requested by the client or not forced. Mirror of random_sampling in Envoy https://github.com/envoyproxy/envoy/blob/v1.22.0/api/envoy/config/filter/network/http_connection_manager/v2/http_connection_manager.proto#L135-L140 Either int or decimal represented as string. If not specified then the default value is 100. anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false x-speakeasy-param-computed: false tags: description: |- Custom tags configuration. You can add custom tags to traces based on headers or literal values. type: array items: description: |- Custom tags configuration. Only one of literal or header can be used. properties: header: description: Tag taken from a header. type: object properties: default: description: |- Default value to use if header is missing. If the default is missing and there is no value the tag will not be included. type: string x-speakeasy-param-computed: false name: description: Name of the header. type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false literal: description: Tag taken from literal value. type: string x-speakeasy-param-computed: false name: description: Name of the tag. type: string x-speakeasy-param-computed: false required: - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTraceCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTraceDeleteSuccessResponse: type: object properties: {} MeshTrafficPermissionItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTrafficPermission x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTrafficPermission resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: action: description: 'Action defines a behavior for the specified group of clients:' type: string enum: - Allow - Deny - AllowWithShadowDeny x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier rules: description: Rules defines inbound permissions configuration type: array items: properties: default: type: object properties: allow: description: Allow definees a list of matches for which access will be allowed type: array items: properties: spiffeID: description: SpiffeID defines a matcher configuration for SpiffeID matching type: object properties: type: description: Type defines how to match incoming traffic by SpiffeID. `Exact` or `Prefix` are allowed. type: string enum: - Exact - Prefix x-speakeasy-param-computed: false value: description: Value is SpiffeId of a client that needs to match for the configuration to be applied type: string x-speakeasy-param-computed: false required: - type - value x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier allowWithShadowDeny: description: |- AllowWithShadowDeny defines a list of matches for which access will be allowed but emits logs as if requests are denied type: array items: properties: spiffeID: description: SpiffeID defines a matcher configuration for SpiffeID matching type: object properties: type: description: Type defines how to match incoming traffic by SpiffeID. `Exact` or `Prefix` are allowed. type: string enum: - Exact - Prefix x-speakeasy-param-computed: false value: description: Value is SpiffeId of a client that needs to match for the configuration to be applied type: string x-speakeasy-param-computed: false required: - type - value x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier deny: description: Deny defines a list of matches for which access will be denied type: array items: properties: spiffeID: description: SpiffeID defines a matcher configuration for SpiffeID matching type: object properties: type: description: Type defines how to match incoming traffic by SpiffeID. `Exact` or `Prefix` are allowed. type: string enum: - Exact - Prefix x-speakeasy-param-computed: false value: description: Value is SpiffeId of a client that needs to match for the configuration to be applied type: string x-speakeasy-param-computed: false required: - type - value x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false required: - default type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTrafficPermissionCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTrafficPermissionDeleteSuccessResponse: type: object properties: {} BuiltinCertificateAuthorityConfig: type: object properties: caCert: type: object properties: expiration: type: string x-speakeasy-param-computed: false rsaBits: type: integer format: uint32 x-speakeasy-param-computed: false x-speakeasy-param-computed: false DatadogTracingBackendConfig: type: object properties: address: description: Address of datadog collector. type: string x-speakeasy-param-computed: false port: description: Port of datadog collector type: integer x-speakeasy-param-computed: false splitService: description: |- Determines if datadog service name should be split based on traffic direction and destination. For example, with `splitService: true` and a `backend` service that communicates with a couple of databases, you would get service names like `backend_INBOUND`, `backend_OUTBOUND_db1`, and `backend_OUTBOUND_db2` in Datadog. Default: false type: boolean x-speakeasy-param-computed: false PrometheusMetricsBackendConfig: type: object properties: aggregate: description: |- Map with the configuration of applications which metrics are going to be scrapped by kuma-dp. type: array items: description: PrometheusAggregateMetricsConfig defines endpoints that should be scrapped by kuma-dp for prometheus metrics. properties: address: description: Address on which a service expose HTTP endpoint with Prometheus metrics. type: string x-speakeasy-param-computed: false enabled: description: |- If false then the application won't be scrapped. If nil, then it is treated as true and kuma-dp scrapes metrics from the service. type: boolean x-speakeasy-param-computed: false name: description: Name which identify given configuration. type: string x-speakeasy-param-computed: false path: description: Path on which a service expose HTTP endpoint with Prometheus metrics. type: string x-speakeasy-param-computed: false port: description: Port on which a service expose HTTP endpoint with Prometheus metrics. type: integer x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false envoy: description: Configuration of Envoy's metrics. type: object properties: filterRegex: description: |- FilterRegex value that is going to be passed to Envoy for filtering Envoy metrics. type: string x-speakeasy-param-computed: false usedOnly: description: |- If true then return metrics that Envoy has updated (counters incremented at least once, gauges changed at least once, and histograms added to at least once). If nil, then it is treated as false. type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false path: description: |- Path on which a dataplane should expose HTTP endpoint with Prometheus metrics. type: string x-speakeasy-param-computed: false port: description: |- Port on which a dataplane should expose HTTP endpoint with Prometheus metrics. type: integer x-speakeasy-param-computed: false skipMTLS: description: |- If true then endpoints for scraping metrics won't require mTLS even if mTLS is enabled in Mesh. If nil, then it is treated as false. type: boolean x-speakeasy-param-computed: false tags: description: |- Tags associated with an application this dataplane is deployed next to, e.g. service=web, version=1.0. `service` tag is mandatory. type: object additionalProperties: type: string x-speakeasy-param-computed: false tls: description: Configuration of TLS for prometheus listener. type: object default: {} properties: mode: description: |- mode defines how configured is the TLS for Prometheus. Supported values, delegated, disabled, activeMTLSBackend. Default to `activeMTLSBackend`. oneOf: - type: string - type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier FileLoggingBackendConfig: type: object properties: path: description: Path to a file that logs will be written to type: string x-speakeasy-param-computed: false MeshItem: type: object properties: constraints: description: Constraints that applies to the mesh and its entities type: object properties: dataplaneProxy: description: |- DataplaneProxyMembership defines a set of requirements for data plane proxies to be a member of the mesh. type: object properties: requirements: description: |- Requirements defines a set of requirements that data plane proxies must fulfill in order to join the mesh. A data plane proxy must fulfill at least one requirement in order to join the mesh. Empty list of allowed requirements means that any proxy that is not explicitly denied can join. type: array items: description: Rules defines a set of rules for data plane proxies to be member of the mesh. properties: tags: description: |- Tags defines set of required tags. You can specify '*' in value to require non empty value of tag type: object additionalProperties: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false restrictions: description: |- Restrictions defines a set of restrictions that data plane proxies cannot fulfill in order to join the mesh. A data plane proxy cannot fulfill any requirement in order to join the mesh. Restrictions takes precedence over requirements. type: array items: description: Rules defines a set of rules for data plane proxies to be member of the mesh. properties: tags: description: |- Tags defines set of required tags. You can specify '*' in value to require non empty value of tag type: object additionalProperties: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false labels: type: object additionalProperties: type: string x-speakeasy-param-computed: false logging: description: |- Logging settings. +optional type: object properties: backends: description: List of available logging backends type: array items: description: LoggingBackend defines logging backend available to mesh. properties: conf: type: object oneOf: - $ref: '#/components/schemas/FileLoggingBackendConfig' - $ref: '#/components/schemas/TcpLoggingBackendConfig' x-speakeasy-param-computed: false format: description: |- Format of access logs. Placeholders available on https://www.envoyproxy.io/docs/envoy/latest/configuration/observability/access_log type: string x-speakeasy-param-computed: false name: description: |- Name of the backend, can be then used in Mesh.logging.defaultBackend or in TrafficLogging type: string x-speakeasy-param-computed: false type: description: Type of the backend (Kuma ships with 'tcp' and 'file') type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false defaultBackend: description: Name of the default backend type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false meshServices: type: object properties: mode: oneOf: - type: string - type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false metrics: description: |- Configuration for metrics collected and exposed by dataplanes. Settings defined here become defaults for every dataplane in a given Mesh. Additionally, it is also possible to further customize this configuration for each dataplane individually using Dataplane resource. +optional type: object properties: backends: description: List of available Metrics backends type: array items: description: MetricsBackend defines metric backends properties: conf: type: object oneOf: - $ref: '#/components/schemas/PrometheusMetricsBackendConfig' x-speakeasy-param-computed: false name: description: 'Name of the backend, can be then used in Mesh.metrics.enabledBackend' type: string x-speakeasy-param-computed: false type: description: Type of the backend (Kuma ships with 'prometheus') type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false enabledBackend: description: Name of the enabled backend type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false mtls: description: |- mTLS settings. +optional type: object properties: backends: description: List of available Certificate Authority backends type: array items: description: CertificateAuthorityBackend defines Certificate Authority backend properties: conf: type: object oneOf: - $ref: '#/components/schemas/ProvidedCertificateAuthorityConfig' - $ref: '#/components/schemas/BuiltinCertificateAuthorityConfig' - $ref: '#/components/schemas/VaultCertificateAuthorityConfig' - $ref: '#/components/schemas/ACMCertificateAuthorityConfig' - $ref: '#/components/schemas/CertManagerCertificateAuthorityConfig' x-speakeasy-param-computed: false dpCert: description: Dataplane certificate settings type: object properties: requestTimeout: description: Timeout on request to CA for DP certificate generation and retrieval type: object properties: nanos: type: integer x-speakeasy-param-computed: false seconds: type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false rotation: description: Rotation settings type: object properties: expiration: description: Time after which generated certificate for Dataplane will expire type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false mode: description: |- Mode defines the behaviour of inbound listeners with regard to traffic encryption oneOf: - type: string - type: integer x-speakeasy-param-computed: false name: description: Name of the backend type: string x-speakeasy-param-computed: false rootChain: type: object properties: requestTimeout: description: |- Timeout on request for to CA for root certificate chain. If not specified, defaults to 10s. type: object properties: nanos: type: integer x-speakeasy-param-computed: false seconds: type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: description: |- Type of the backend. Has to be one of the loaded plugins (Kuma ships with builtin and provided) type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false enabledBackend: description: Name of the enabled backend type: string x-speakeasy-param-computed: false skipValidation: description: 'If enabled, skips CA validation.' type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true networking: description: Networking settings of the mesh type: object properties: outbound: description: Outbound settings type: object properties: passthrough: description: Control the passthrough cluster type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false routing: description: Routing settings of the mesh type: object properties: defaultForbidMeshExternalServiceAccess: description: |- If true, blocks traffic to MeshExternalServices. Default: false type: boolean x-speakeasy-param-computed: false localityAwareLoadBalancing: description: Enable the Locality Aware Load Balancing type: boolean x-speakeasy-param-computed: false zoneEgress: description: |- Enable routing traffic to services in other zone or external services through ZoneEgress. Default: false type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false skipCreatingInitialPolicies: description: |- List of policies to skip creating by default when the mesh is created. e.g. TrafficPermission, MeshRetry, etc. An '*' can be used to skip all policies. type: array items: type: string x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false tracing: description: |- Tracing settings. +optional type: object properties: backends: description: List of available tracing backends type: array items: description: TracingBackend defines tracing backend available to mesh. properties: conf: type: object oneOf: - $ref: '#/components/schemas/DatadogTracingBackendConfig' - $ref: '#/components/schemas/ZipkinTracingBackendConfig' x-speakeasy-param-computed: false name: description: |- Name of the backend, can be then used in Mesh.tracing.defaultBackend or in TrafficTrace type: string x-speakeasy-param-computed: false sampling: description: |- Percentage of traces that will be sent to the backend (range 0.0 - 100.0). Empty value defaults to 100.0% type: number x-speakeasy-param-computed: false type: description: Type of the backend (Kuma ships with 'zipkin') type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false defaultBackend: description: Name of the default backend type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: type: string x-speakeasy-param-computed: false required: - type - name MeshCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshDeleteSuccessResponse: type: object properties: {} TcpLoggingBackendConfig: type: object properties: address: description: Address to TCP service that will receive logs type: string x-speakeasy-param-computed: false ProvidedCertificateAuthorityConfig: type: object properties: cert: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false key: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false ZipkinTracingBackendConfig: type: object properties: apiVersion: description: |- Version of the API. values: httpJson, httpJsonV1, httpProto. Default: httpJson see https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/trace/v3/trace.proto#envoy-v3-api-enum-config-trace-v3-zipkinconfig-collectorendpointversion type: string x-speakeasy-param-computed: false sharedSpanContext: description: |- Determines whether client and server spans will share the same span context. Default: true. https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/trace/v3/zipkin.proto#config-trace-v3-zipkinconfig type: boolean x-speakeasy-param-computed: false traceId128bit: description: 'Generate 128bit traces. Default: false' type: boolean x-speakeasy-param-computed: false url: description: Address of Zipkin collector. type: string x-speakeasy-param-computed: false MeshGatewayItem: type: object properties: conf: description: The desired configuration of the MeshGateway. type: object properties: listeners: description: |- Listeners define logical endpoints that are bound on this MeshGateway's address(es). type: array items: properties: crossMesh: description: |- CrossMesh enables traffic to flow to this listener only from other meshes. type: boolean x-speakeasy-param-computed: false hostname: description: |- Hostname specifies the virtual hostname to match for protocol types that define this concept. When unspecified, "", or `*`, all hostnames are matched. This field can be omitted for protocols that don't require hostname based matching. type: string x-speakeasy-param-computed: false port: description: |- Port is the network port. Multiple listeners may use the same port, subject to the Listener compatibility rules. type: integer x-speakeasy-param-computed: false protocol: description: Protocol specifies the network protocol this listener expects to receive. oneOf: - type: string - type: integer x-speakeasy-param-computed: false resources: description: Resources is used to specify listener-specific resource settings. type: object properties: connectionLimit: type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false tags: description: |- Tags specifies a unique combination of tags that routes can use to match themselves to this listener. When matching routes to listeners, the control plane constructs a set of matching tags for each listener by forming the union of the gateway tags and the listener tags. A route will be attached to the listener if all of the route's tags are preset in the matching tags type: object additionalProperties: type: string x-speakeasy-param-computed: false tls: description: |- TLS is the TLS configuration for the Listener. This field is required if the Protocol field is "HTTPS" or "TLS" and ignored otherwise. type: object properties: certificates: description: |- Certificates is an array of datasources that contain TLS certificates and private keys. Each datasource must contain a sequence of PEM-encoded objects. The server certificate and private key are required, but additional certificates are allowed and will be added to the certificate chain. The server certificate must be the first certificate in the datasource. When multiple certificate datasources are configured, they must have different key types. In practice, this means that one datasource should contain an RSA key and certificate, and the other an ECDSA key and certificate. type: array items: description: DataSource defines the source of bytes to use. properties: Type: description: "Types that are valid to be assigned to Type:\n\n\t*DataSource_Secret\n\t*DataSource_File\n\t*DataSource_Inline\n\t*DataSource_InlineString" x-speakeasy-param-computed: false required: - Type type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false mode: description: |- Mode defines the TLS behavior for the TLS session initiated by the client. oneOf: - type: string - type: integer x-speakeasy-param-computed: false options: description: |- Options should eventually configure how TLS is configured. This is where cipher suite and version configuration can be specified, client certificates enforced, and so on. type: object properties: {} x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false x-speakeasy-param-computed: false labels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue mesh: type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true selectors: description: |- Selectors is a list of selectors that are used to match builtin gateway dataplanes that will receive this MeshGateway configuration. type: array items: description: Selector defines structure for selecting tags for given dataplane properties: match: description: 'Tags to match, can be used for both source and destinations' type: object additionalProperties: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false tags: description: |- Tags is the set of tags common to all of the gateway's listeners. This field must not include a `kuma.io/service` tag (the service is always defined on the dataplanes). type: object additionalProperties: type: string x-speakeasy-param-computed: false type: type: string x-speakeasy-param-computed: false required: - type - name - mesh MeshGatewayCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshGatewayDeleteSuccessResponse: type: object properties: {} HostnameGeneratorItem: type: object properties: type: description: the type of the resource type: string enum: - HostnameGenerator x-speakeasy-param-computed: false name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false spec: description: Spec is the specification of the Kuma HostnameGenerator resource. type: object properties: extension: description: Extension struct for a plugin configuration type: object properties: config: description: Config freeform configuration for the extension. default: null nullable: true x-kubernetes-preserve-unknown-fields: true x-speakeasy-param-computed: false type: description: Type of the extension. type: string x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false selector: type: object properties: meshExternalService: type: object properties: matchLabels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false meshMultiZoneService: type: object properties: matchLabels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false meshService: type: object properties: matchLabels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false template: type: string x-speakeasy-param-computed: false required: - template x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec HostnameGeneratorCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier HostnameGeneratorDeleteSuccessResponse: type: object properties: {} MeshExternalServiceItem: type: object properties: type: description: the type of the resource type: string enum: - MeshExternalService x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshExternalService resource. type: object properties: endpoints: description: Endpoints defines a list of destinations to send traffic to. type: array items: properties: address: description: 'Address defines an address to which a user want to send a request. Is possible to provide `domain`, `ip`.' type: string example: example.com minLength: 1 x-speakeasy-param-computed: false port: description: Port of the endpoint type: integer format: int32 maximum: 65535 minimum: 1 x-speakeasy-param-computed: false required: - address - port type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier extension: description: 'Extension struct for a plugin configuration, in the presence of an extension `endpoints` and `tls` are not required anymore - it''s up to the extension to validate them independently.' type: object properties: config: description: Config freeform configuration for the extension. x-kubernetes-preserve-unknown-fields: true x-speakeasy-plan-modifiers: ArbitraryJSONModifier type: description: Type of the extension. type: string x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false match: description: Match defines traffic that should be routed through the sidecar. type: object properties: port: description: Port defines a port to which a user does request. type: integer format: int32 maximum: 65535 minimum: 1 x-speakeasy-param-computed: false protocol: description: 'Protocol defines a protocol of the communication. Possible values: `tcp`, `grpc`, `http`, `http2`.' type: string default: tcp enum: - tcp - grpc - http - http2 x-speakeasy-param-computed: false type: description: 'Type of the match, only `HostnameGenerator` is available at the moment.' type: string default: HostnameGenerator enum: - HostnameGenerator x-speakeasy-param-computed: false required: - port x-speakeasy-param-computed: false tls: description: Tls provides a TLS configuration when proxy is resposible for a TLS origination type: object properties: allowRenegotiation: description: |- AllowRenegotiation defines if TLS sessions will allow renegotiation. Setting this to true is not recommended for security reasons. type: boolean default: false x-speakeasy-param-computed: false enabled: description: Enabled defines if proxy should originate TLS. type: boolean default: false x-speakeasy-param-computed: false verification: description: Verification section for providing TLS verification details. type: object properties: caCert: description: CaCert defines a certificate of CA. type: object properties: inline: description: Data source is inline bytes. type: string format: byte x-speakeasy-param-computed: false inlineString: description: Data source is inline string` type: string x-speakeasy-param-computed: false secret: description: Data source is a secret with given Secret key. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false clientCert: description: ClientCert defines a certificate of a client. type: object properties: inline: description: Data source is inline bytes. type: string format: byte x-speakeasy-param-computed: false inlineString: description: Data source is inline string` type: string x-speakeasy-param-computed: false secret: description: Data source is a secret with given Secret key. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false clientKey: description: ClientKey defines a client private key. type: object properties: inline: description: Data source is inline bytes. type: string format: byte x-speakeasy-param-computed: false inlineString: description: Data source is inline string` type: string x-speakeasy-param-computed: false secret: description: Data source is a secret with given Secret key. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false mode: description: 'Mode defines if proxy should skip verification, one of `SkipSAN`, `SkipCA`, `Secured`, `SkipAll`. Default `Secured`.' type: string default: Secured enum: - SkipSAN - SkipCA - Secured - SkipAll x-speakeasy-param-computed: false serverName: description: ServerName overrides the default Server Name Indicator set by Kuma. type: string x-speakeasy-param-computed: false subjectAltNames: description: SubjectAltNames list of names to verify in the certificate. type: array items: properties: type: description: 'Type specifies matching type, one of `Exact`, `Prefix`. Default: `Exact`' type: string default: Exact enum: - Exact - Prefix x-speakeasy-param-computed: false value: description: Value to match. type: string x-speakeasy-param-computed: false required: - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false version: description: Version section for providing version specification. type: object properties: max: description: 'Max defines maximum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false min: description: 'Min defines minimum supported version. One of `TLSAuto`, `TLS10`, `TLS11`, `TLS12`, `TLS13`.' type: string default: TLSAuto enum: - TLSAuto - TLS10 - TLS11 - TLS12 - TLS13 x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - match x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true status: description: Status is the current status of the Kuma MeshExternalService resource. type: object properties: addresses: description: Addresses section for generated domains type: array items: properties: hostname: type: string x-speakeasy-param-computed: false hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false origin: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostnameGenerators: type: array items: properties: conditions: description: Conditions is an array of hostname generator conditions. type: array items: properties: message: description: |- message is a human readable message indicating details about the transition. This may be an empty string. type: string maxLength: 32768 x-speakeasy-param-computed: false reason: description: |- reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. type: string maxLength: 1024 minLength: 1 pattern: '^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$' x-speakeasy-param-computed: false status: description: 'status of the condition, one of True, False, Unknown.' type: string enum: - 'True' - 'False' - Unknown type: description: type of condition in CamelCase or in foo.example.com/CamelCase. type: string maxLength: 316 pattern: '^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$' x-speakeasy-param-computed: false required: - message - reason - status - type type: object x-kubernetes-list-map-keys: - type x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false required: - hostnameGeneratorRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier vip: description: Vip section for allocated IP type: object properties: ip: description: Value allocated IP for a provided domain with `HostnameGenerator` type in a match section. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshExternalServiceCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshExternalServiceDeleteSuccessResponse: type: object properties: {} MeshIdentityItem: type: object properties: type: description: the type of the resource type: string enum: - MeshIdentity x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshIdentity resource. type: object properties: provider: type: object properties: bundled: description: |- Bundled provides information about certificates that are generated by the control plane, either autogenerated or provided by the user. type: object properties: autogenerate: description: Autogenerate configures the control plane to use self-signed certificates. type: object properties: enabled: type: boolean x-speakeasy-param-computed: false x-speakeasy-param-computed: false ca: description: CA has configuration related to the CA type: object properties: certificate: description: Certificate allows the user to specify a custom certificate. type: object properties: envVar: type: object properties: name: type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false file: type: object properties: path: type: string x-speakeasy-param-computed: false required: - path x-speakeasy-param-computed: false insecureInline: type: object properties: value: type: string x-speakeasy-param-computed: false required: - value x-speakeasy-param-computed: false secretRef: type: object properties: kind: type: string enum: - Secret x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false required: - kind - name x-speakeasy-param-computed: false type: type: string enum: - File - Secret - EnvVar - InsecureInline x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false privateKey: description: PrivateKey allows the user to specify a custom private key. type: object properties: envVar: type: object properties: name: type: string x-speakeasy-param-computed: false required: - name x-speakeasy-param-computed: false file: type: object properties: path: type: string x-speakeasy-param-computed: false required: - path x-speakeasy-param-computed: false insecureInline: type: object properties: value: type: string x-speakeasy-param-computed: false required: - value x-speakeasy-param-computed: false secretRef: type: object properties: kind: type: string enum: - Secret x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false required: - kind - name x-speakeasy-param-computed: false type: type: string enum: - File - Secret - EnvVar - InsecureInline x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false x-speakeasy-param-computed: false certificateParameters: description: CertificateParameters allows users to define certificate generation parameters. type: object properties: expiry: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false insecureAllowSelfSigned: description: InsecureAllowSelfSigned allows users to enable the use of self-signed certificates. type: boolean x-speakeasy-param-computed: false meshTrustCreation: description: |- MeshTrustCreation defines whether a MeshTrust resource should be automatically created from an existing MeshIdentity. If not defined, the control plane automatically generates a MeshTrust. type: string enum: - Enabled - Disabled x-speakeasy-param-computed: false x-speakeasy-param-computed: false spire: description: Spire indicates that SPIRE is used for certificate delivery. type: object properties: agent: description: Spire agent configuration type: object properties: timeout: description: |- Connection timeout to the socket exposed by Spire agent Default 1 second. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false type: description: Type specifies the type of certificate provider. type: string enum: - Bundled - Spire x-speakeasy-param-computed: false required: - type x-speakeasy-param-computed: false selector: type: object properties: dataplane: type: object properties: matchLabels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false spiffeID: type: object properties: path: type: string x-speakeasy-param-computed: false trustDomain: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - provider x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true status: description: Status is the current status of the Kuma MeshIdentity resource. type: object properties: conditions: description: Conditions is an array of hostname generator conditions. type: array items: properties: message: description: |- message is a human readable message indicating details about the transition. This may be an empty string. type: string maxLength: 32768 x-speakeasy-param-computed: false reason: description: |- reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. type: string maxLength: 1024 minLength: 1 pattern: '^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$' x-speakeasy-param-computed: false status: description: 'status of the condition, one of True, False, Unknown.' type: string enum: - 'True' - 'False' - Unknown type: description: type of condition in CamelCase or in foo.example.com/CamelCase. type: string maxLength: 316 pattern: '^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$' x-speakeasy-param-computed: false required: - message - reason - status - type type: object x-kubernetes-list-map-keys: - type x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshIdentityCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshIdentityDeleteSuccessResponse: type: object properties: {} MeshMultiZoneServiceItem: type: object properties: type: description: the type of the resource type: string enum: - MeshMultiZoneService x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshMultiZoneService resource. type: object properties: ports: description: Ports is a list of ports from selected MeshServices type: array items: properties: appProtocol: description: Protocol identifies a protocol supported by a service. type: string default: tcp x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false port: type: integer format: int32 x-speakeasy-param-computed: false required: - port type: object minItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier selector: description: Selector is a way to select multiple MeshServices type: object properties: meshService: description: MeshService selects MeshServices type: object properties: matchLabels: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - meshService x-speakeasy-param-computed: false required: - ports - selector x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true status: description: Status is the current status of the Kuma MeshMultiZoneService resource. type: object properties: addresses: description: Addresses is a list of addresses generated by HostnameGenerator type: array items: properties: hostname: type: string x-speakeasy-param-computed: false hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false origin: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostnameGenerators: description: Status of hostnames generator applied on this resource type: array items: properties: conditions: description: Conditions is an array of hostname generator conditions. type: array items: properties: message: description: |- message is a human readable message indicating details about the transition. This may be an empty string. type: string maxLength: 32768 x-speakeasy-param-computed: false reason: description: |- reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. type: string maxLength: 1024 minLength: 1 pattern: '^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$' x-speakeasy-param-computed: false status: description: 'status of the condition, one of True, False, Unknown.' type: string enum: - 'True' - 'False' - Unknown type: description: type of condition in CamelCase or in foo.example.com/CamelCase. type: string maxLength: 316 pattern: '^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$' x-speakeasy-param-computed: false required: - message - reason - status - type type: object x-kubernetes-list-map-keys: - type x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false required: - hostnameGeneratorRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier meshServices: description: MeshServices is a list of matched MeshServices type: array items: properties: mesh: type: string x-speakeasy-param-computed: false name: description: Name is a core name of MeshService type: string x-speakeasy-param-computed: false namespace: type: string x-speakeasy-param-computed: false zone: type: string x-speakeasy-param-computed: false required: - mesh - name - namespace - zone type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier vips: description: VIPs is a list of assigned Kuma VIPs. type: array items: properties: ip: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshMultiZoneServiceCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshMultiZoneServiceDeleteSuccessResponse: type: object properties: {} MeshServiceItem: type: object properties: type: description: the type of the resource type: string enum: - MeshService x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshService resource. type: object properties: identities: type: array items: properties: type: type: string enum: - ServiceTag - SpiffeID x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - type - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier ports: type: array items: properties: appProtocol: description: Protocol identifies a protocol supported by a service. type: string default: tcp x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false port: type: integer format: int32 x-speakeasy-param-computed: false targetPort: anyOf: - type: integer - type: string x-kubernetes-int-or-string: true x-speakeasy-param-computed: false required: - port type: object x-kubernetes-list-map-keys: - port - appProtocol x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier selector: type: object properties: dataplaneRef: type: object properties: name: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false dataplaneTags: type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false state: description: |- State of MeshService. Available if there is at least one healthy endpoint. Otherwise, Unavailable. It's used for cross zone communication to check if we should send traffic to it, when MeshService is aggregated into MeshMultiZoneService. type: string default: Unavailable enum: - Available - Unavailable x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true status: description: Status is the current status of the Kuma MeshService resource. type: object properties: addresses: type: array items: properties: hostname: type: string x-speakeasy-param-computed: false hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false origin: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier dataplaneProxies: description: Data plane proxies statistics selected by this MeshService. type: object properties: connected: description: Number of data plane proxies connected to the zone control plane type: integer x-speakeasy-param-computed: false healthy: description: Number of data plane proxies with all healthy inbounds selected by this MeshService. type: integer x-speakeasy-param-computed: false total: description: Total number of data plane proxies. type: integer x-speakeasy-param-computed: false x-speakeasy-param-computed: false hostnameGenerators: type: array items: properties: conditions: description: Conditions is an array of hostname generator conditions. type: array items: properties: message: description: |- message is a human readable message indicating details about the transition. This may be an empty string. type: string maxLength: 32768 x-speakeasy-param-computed: false reason: description: |- reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty. type: string maxLength: 1024 minLength: 1 pattern: '^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$' x-speakeasy-param-computed: false status: description: 'status of the condition, one of True, False, Unknown.' type: string enum: - 'True' - 'False' - Unknown type: description: type of condition in CamelCase or in foo.example.com/CamelCase. type: string maxLength: 316 pattern: '^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$' x-speakeasy-param-computed: false required: - message - reason - status - type type: object x-kubernetes-list-map-keys: - type x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier hostnameGeneratorRef: type: object properties: coreName: type: string x-speakeasy-param-computed: false required: - coreName x-speakeasy-param-computed: false required: - hostnameGeneratorRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier tls: type: object properties: status: type: string enum: - Ready - NotReady x-speakeasy-param-computed: false vips: type: array items: properties: ip: type: string x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshServiceCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshServiceDeleteSuccessResponse: type: object properties: {} MeshTrustItem: type: object properties: type: description: the type of the resource type: string enum: - MeshTrust x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshTrust resource. type: object properties: caBundles: description: |- CABundles contains a list of CA bundles supported by this TrustDomain. At least one CA bundle must be specified. type: array items: properties: pem: description: Pem contains the PEM-encoded CA bundle if the Type is set to a PEM-based format. type: object properties: value: description: Value holds the PEM-encoded CA bundle as a string. type: string x-speakeasy-param-computed: false required: - value x-speakeasy-param-computed: false type: description: Type specifies the format or source type of the CA bundle. type: string enum: - Pem x-speakeasy-param-computed: false required: - type type: object minItems: 1 x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier origin: description: Origin specifies whether the resource was created from a MeshIdentity. type: object properties: kri: description: Resource identifier type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false trustDomain: description: TrustDomain is the trust domain associated with this resource. type: string maxLength: 253 x-speakeasy-param-computed: false required: - caBundles - trustDomain x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshTrustCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshTrustDeleteSuccessResponse: type: object properties: {} VaultCertificateAuthorityConfig: type: object properties: Mode: {} ACMCertificateAuthorityConfig: type: object properties: arn: type: string x-speakeasy-param-computed: false auth: type: object properties: awsCredentials: type: object properties: accessKey: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false accessKeySecret: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false caCert: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false commonName: type: string x-speakeasy-param-computed: false CertManagerCertificateAuthorityConfig: type: object properties: caCert: type: object properties: Type: {} required: - Type x-speakeasy-param-computed: false commonName: type: string x-speakeasy-param-computed: false dnsNames: type: array items: type: string x-speakeasy-param-computed: false default: [] x-speakeasy-param-computed: false issuerRef: type: object properties: group: type: string x-speakeasy-param-computed: false kind: type: string x-speakeasy-param-computed: false name: type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false MeshControlPlaneFeatures: type: array items: $ref: '#/components/schemas/MeshControlPlaneFeature' MeshControlPlaneFeatureHostnameGenerationCreation: properties: enabled: type: boolean required: - enabled MeshControlPlaneFeatureMeshCreation: properties: enabled: type: boolean required: - enabled MeshControlPlaneFeature: description: | Features to be enabled in the control plane. Currently only defaults are supported. type: object properties: type: type: string enum: - MeshCreation - HostnameGeneratorCreation hostnameGeneratorCreation: $ref: '#/components/schemas/MeshControlPlaneFeatureHostnameGenerationCreation' meshCreation: $ref: '#/components/schemas/MeshControlPlaneFeatureMeshCreation' required: - type MeshGlobalRateLimitItem: type: object properties: type: description: the type of the resource type: string enum: - MeshGlobalRateLimit x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshGlobalRateLimit resource. type: object properties: from: description: From list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: backend: description: Backend defines location of rate limit backend service. type: object properties: rateLimitService: type: object properties: limitOnServiceFail: description: LimitOnServiceFail will pass limit requests if ratelimit service is not reachable. type: boolean x-speakeasy-param-computed: false timeout: description: Timeout for rate limit request made form Data Plane Proxy to rate limit service. type: string x-speakeasy-param-computed: false url: description: Url defines address of rate limit service. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - rateLimitService x-speakeasy-param-computed: false http: type: object properties: disabled: description: Define if rate limiting should be disabled. type: boolean x-speakeasy-param-computed: false onRateLimit: description: Describes the actions to take on a rate limit event type: object properties: headers: description: The Headers to be added to the HTTP response on a rate limit event type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false status: description: The HTTP status code to be set on a rate limit event type: integer format: int32 x-speakeasy-param-computed: false ratelimitOnRequest: description: Defines rate limit based on request content type: array items: properties: kind: description: 'Kind defines type of rate limit config. Possible options: OnHeader.' type: string enum: - OnHeader x-speakeasy-param-computed: false limits: description: Limits defines limit configuration. type: array items: properties: requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: 'The interval the number of units is accounted for. Only 1s, 1m, 1h or 24h can be configured.' type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false value: description: Value of the request element on which rate limit should apply. E.g. header value. type: string x-speakeasy-param-computed: false required: - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier name: description: Name of the request element on which rate limit should apply. E.g. header name. type: string x-speakeasy-param-computed: false required: - kind - limits - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: 'The interval the number of units is accounted for. Only 1s, 1m, 1h or 24h can be configured.' type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false x-speakeasy-param-computed: false mode: description: |- Mode defines rate limit behavior when limits are reached. Possible options: Limit and Shadow. Setting Shadow will not block over the limit requests but will update metrics. This is useful for testing rate limit configuration. type: string enum: - Limit - Shadow x-speakeasy-param-computed: false required: - backend - http x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false to: description: To list makes a match between clients and corresponding configurations type: array items: properties: default: description: |- Default is a configuration specific to the group of clients referenced in 'targetRef' type: object properties: backend: description: Backend defines location of rate limit backend service. type: object properties: rateLimitService: type: object properties: limitOnServiceFail: description: LimitOnServiceFail will pass limit requests if ratelimit service is not reachable. type: boolean x-speakeasy-param-computed: false timeout: description: Timeout for rate limit request made form Data Plane Proxy to rate limit service. type: string x-speakeasy-param-computed: false url: description: Url defines address of rate limit service. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - rateLimitService x-speakeasy-param-computed: false http: type: object properties: disabled: description: Define if rate limiting should be disabled. type: boolean x-speakeasy-param-computed: false onRateLimit: description: Describes the actions to take on a rate limit event type: object properties: headers: description: The Headers to be added to the HTTP response on a rate limit event type: object properties: add: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier set: type: array items: properties: name: type: string maxLength: 256 minLength: 1 pattern: '^[a-z0-9!#$%&''*+\-.^_\x60|~]+$' x-speakeasy-param-computed: false value: type: string x-speakeasy-param-computed: false required: - name - value type: object maxItems: 16 x-kubernetes-list-map-keys: - name x-kubernetes-list-type: map x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false status: description: The HTTP status code to be set on a rate limit event type: integer format: int32 x-speakeasy-param-computed: false ratelimitOnRequest: description: Defines rate limit based on request content type: array items: properties: kind: description: 'Kind defines type of rate limit config. Possible options: OnHeader.' type: string enum: - OnHeader x-speakeasy-param-computed: false limits: description: Limits defines limit configuration. type: array items: properties: requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: 'The interval the number of units is accounted for. Only 1s, 1m, 1h or 24h can be configured.' type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false value: description: Value of the request element on which rate limit should apply. E.g. header value. type: string x-speakeasy-param-computed: false required: - value type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier name: description: Name of the request element on which rate limit should apply. E.g. header name. type: string x-speakeasy-param-computed: false required: - kind - limits - name type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier requestRate: description: Defines how many requests are allowed per interval. type: object properties: interval: description: 'The interval the number of units is accounted for. Only 1s, 1m, 1h or 24h can be configured.' type: string x-speakeasy-param-computed: false num: description: |- Number of units per interval (depending on usage it can be a number of requests, or a number of connections). type: integer format: int32 x-speakeasy-param-computed: false required: - interval - num x-speakeasy-param-computed: false x-speakeasy-param-computed: false mode: description: |- Mode defines rate limit behavior when limits are reached. Possible options: Limit and Shadow. Setting Shadow will not block over the limit requests but will update metrics. This is useful for testing rate limit configuration. type: string enum: - Limit - Shadow x-speakeasy-param-computed: false required: - backend - http x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource that represents a group of clients. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false required: - targetRef type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshGlobalRateLimitCreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshGlobalRateLimitDeleteSuccessResponse: type: object properties: {} MeshOPAItem: type: object properties: type: description: the type of the resource type: string enum: - MeshOPA x-speakeasy-param-computed: false mesh: description: Mesh is the name of the Kuma mesh this resource belongs to. It may be omitted for cluster-scoped resources. type: string default: default x-speakeasy-param-computed: false x-speakeasy-param-force-new: true name: description: Name of the Kuma resource type: string x-speakeasy-param-computed: false x-speakeasy-param-force-new: true labels: description: The labels to help identity resources type: object additionalProperties: type: string x-speakeasy-param-computed: false x-speakeasy-terraform-custom-type: imports: - github.com/Kong/shared-speakeasy/customtypes/kumalabels schemaType: 'kumalabels.KumaLabelsMapType{MapType: types.MapType{ElemType: types.StringType}}' valueType: kumalabels.KumaLabelsMapValue spec: description: Spec is the specification of the Kuma MeshOPA resource. type: object properties: default: type: object properties: agentConfig: description: AgentConfig defines bootstrap OPA agent configuration. type: object properties: inline: description: Data source is inline bytes. type: string format: byte x-speakeasy-param-computed: false inlineString: description: Data source is inline string` type: string x-speakeasy-param-computed: false secret: description: Data source is a secret with given Secret key. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false appendPolicies: description: Policies define OPA policies that will be applied on OPA Agent. type: array items: properties: ignoreDecision: description: 'If true, then policy won''t be taken into account when making a decision.' type: boolean x-speakeasy-param-computed: false rego: description: 'OPA Policy written in Rego. Available values: secret, inline, inlineString.' type: object properties: inline: description: Data source is inline bytes. type: string format: byte x-speakeasy-param-computed: false inlineString: description: Data source is inline string` type: string x-speakeasy-param-computed: false secret: description: Data source is a secret with given Secret key. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false required: - rego type: object x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier authConfig: description: AuthConfig are configurations specific to the filter. type: object properties: onAgentFailure: description: |- OnAgentFailure either 'allow' or 'deny' (default to deny) whether to allow requests when the authorization agent failed. type: string enum: - Allow - Deny x-speakeasy-param-computed: false requestBody: description: |- RequestBody configuration to apply on the request body sent to the authorization agent (if absent, the body is not sent). properties: maxSize: description: |- MaxSize defines the maximum payload size sent to authorization agent. If the payload is larger it will be truncated and there will be a header `x-envoy-auth-partial-body: true`. If it is set to 0 no body will be sent to the agent. type: integer format: int32 x-speakeasy-param-computed: false sendRawBody: description: SendRawBody enable sending raw body instead of the body encoded into UTF-8 type: boolean x-speakeasy-param-computed: false type: object x-speakeasy-param-computed: false statusOnError: description: |- StatusOnError is the http status to return when there's a connection failure between the dataplane and the authorization agent type: integer format: int32 x-speakeasy-param-computed: false timeout: description: Timeout for the single gRPC request from Envoy to OPA Agent. type: string x-speakeasy-param-computed: false x-speakeasy-param-computed: false x-speakeasy-param-computed: false targetRef: description: |- TargetRef is a reference to the resource the policy takes an effect on. The resource could be either a real store object or virtual resource defined inplace. type: object properties: kind: description: Kind of the referenced resource type: string enum: - Mesh - MeshSubset - MeshGateway - MeshService - MeshExternalService - MeshMultiZoneService - MeshServiceSubset - MeshHTTPRoute - Dataplane x-speakeasy-param-computed: false labels: description: |- Labels are used to select group of MeshServices that match labels. Either Labels or Name and Namespace can be used. type: object additionalProperties: type: string x-speakeasy-param-computed: false mesh: description: Mesh is reserved for future use to identify cross mesh resources. type: string x-speakeasy-param-computed: false name: description: |- Name of the referenced resource. Can only be used with kinds: `MeshService`, `MeshServiceSubset` and `MeshGatewayRoute` type: string x-speakeasy-param-computed: false namespace: description: |- Namespace specifies the namespace of target resource. If empty only resources in policy namespace will be targeted. type: string x-speakeasy-param-computed: false proxyTypes: description: |- ProxyTypes specifies the data plane types that are subject to the policy. When not specified, all data plane types are targeted by the policy. type: array items: enum: - Sidecar - Gateway type: string x-speakeasy-param-computed: false x-speakeasy-plan-modifiers: SupressZeroNullModifier sectionName: description: |- SectionName is used to target specific section of resource. For example, you can target port from MeshService.ports[] by its name. Only traffic to this port will be affected. type: string x-speakeasy-param-computed: false tags: description: |- Tags used to select a subset of proxies by tags. Can only be used with kinds `MeshSubset` and `MeshServiceSubset` type: object additionalProperties: type: string x-speakeasy-param-computed: false required: - kind x-speakeasy-param-computed: false x-speakeasy-param-computed: false creationTime: description: Time at which the resource was created type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true modificationTime: description: Time at which the resource was updated type: string format: date-time example: '0001-01-01T00:00:00Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - type - name - spec MeshOPACreateOrUpdateSuccessResponse: type: object properties: warnings: description: | warnings is a list of warning messages to return to the requesting Kuma API clients. Warning messages describe a problem the client making the API request should correct or be aware of. type: array items: type: string readOnly: true x-speakeasy-param-computed: false x-speakeasy-param-suppress-computed-diff: true x-speakeasy-plan-modifiers: SupressZeroNullModifier MeshOPADeleteSuccessResponse: type: object properties: {} MeshControlPlaneLabels: description: Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters. type: object example: test: 'true' additionalProperties: type: string pattern: '^[a-z0-9A-Z]{1}([a-z0-9A-Z\-\.\_]*[a-z0-9A-Z]+)?$' minLength: 1 maxLength: 63 nullable: true maxProperties: 10 nullable: true title: Labels MeshControlPlaneNonNullableLabels: description: Labels to facilitate tagged search on control planes. Keys must be of length 1-63 characters. type: object example: test: 'true' additionalProperties: type: string pattern: '^[a-z0-9A-Z]{1}([a-z0-9A-Z\-\.\_]*[a-z0-9A-Z]+)?$' minLength: 1 maxLength: 63 maxProperties: 10 nullable: true title: Labels MeshControlPlane: description: a control plane type: object properties: id: description: ID of the control plane. type: string format: uuid example: d32d905a-ed33-46a3-a093-d8f536af9a8a readOnly: true x-speakeasy-param-suppress-computed-diff: true name: $ref: '#/components/schemas/MeshControlPlaneName' description: $ref: '#/components/schemas/MeshControlPlaneDescription' labels: $ref: '#/components/schemas/MeshControlPlaneLabels' features: $ref: '#/components/schemas/MeshControlPlaneFeatures' created_at: type: string format: date-time example: '2023-01-11T02:30:42.227Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true updated_at: type: string format: date-time example: '2023-01-11T02:30:42.227Z' readOnly: true x-speakeasy-param-suppress-computed-diff: true required: - id - name - updated_at - created_at title: ControlPlane CreateMeshControlPlaneRequest: description: a payload to create a control plane type: object properties: name: $ref: '#/components/schemas/MeshControlPlaneName' description: $ref: '#/components/schemas/MeshControlPlaneDescription' features: $ref: '#/components/schemas/MeshControlPlaneFeatures' labels: $ref: '#/components/schemas/MeshControlPlaneLabels' additionalProperties: false required: - name title: CreateMeshControlPlaneRequest PutMeshControlPlaneRequest: description: a payload to update the whole control plane type: object properties: name: $ref: '#/components/schemas/MeshControlPlaneName' description: $ref: '#/components/schemas/MeshControlPlaneDescription' labels: $ref: '#/components/schemas/MeshControlPlaneNonNullableLabels' required: - name title: PutMeshControlPlaneRequest MeshControlPlaneName: description: The name of the control plane. type: string example: Test control plane maxLength: 100 minLength: 1 pattern: '^[a-z0-9A-Z]{1}.*$' MeshControlPlaneDescription: type: string example: A control plane to handle traffic on development environment. maxLength: 250 ResponseType: description: OAuth 2.0 response type type: string enum: - none - token - code - id_token ResponseTypes: description: List of OAuth 2.0 response types type: array items: $ref: '#/components/schemas/ResponseType' nullable: false GrantType: description: OAuth 2.0 grant type type: string enum: - authorization_code - implicit - client_credentials GrantTypes: description: List of OAuth 2.0 grant types type: array items: $ref: '#/components/schemas/GrantType' nullable: false uniqueItems: true RedirectURIs: description: 'The URIs that the client is allowed to redirect to after authentication in interactive flows. All redirect URIs must be absolute URIs, be secure (HTTPS), and must not include a fragment component.' type: array items: type: string format: uri nullable: false LoginURI: description: The URI of the login page where the user is redirected to authenticate in interactive flows. The login page must be secure (HTTPS). type: string format: uri default: null nullable: true x-speakeasy-param-computed: false TokenDuration: description: 'The duration of the minted token is valid for, in seconds' type: integer default: 300 maximum: 2592000 minimum: 60 ClientAllowAllScopes: description: Specifies whether the client is allowed to request all scopes type: boolean default: false ClientAllowScopes: description: Specifies the scopes IDs that the client is allowed to request type: array items: type: string format: uuid nullable: false ClientId: description: The OAuth 2.0 client ID type: string example: kYa9iQFU5xPDSIUH9z1z maxLength: 36 minLength: 1 pattern: '[-_\w]+' readOnly: true AuthServerName: description: The name of the auth server type: string minLength: 1 AuthServerDescription: description: The description of the auth server type: string Audience: description: The recipients that the tokens are intended for. This becomes the 'aud' claim in an access token type: string minLength: 1 UpdateAlgorithm: description: Algorithm used in the key signing process type: string enum: - RS256 - RS384 - RS512 - PS256 - PS384 - PS512 Algorithm: description: Algorithm used in the key signing process type: string default: RS256 enum: - RS256 - RS384 - RS512 - PS256 - PS384 - PS512 Issuer: description: The complete URL for the custom authorization server. This becomes the 'iss' claim in an access token. type: string TokenEndpointAuthMethod: description: Requested authentication method for OAuth 2.0 endpoints. type: string default: client_secret_post enum: - client_secret_post - none AuthServer: type: object properties: id: description: The ID of the auth server type: string format: uuid name: $ref: '#/components/schemas/AuthServerName' description: $ref: '#/components/schemas/AuthServerDescription' audience: $ref: '#/components/schemas/Audience' signing_algorithm: $ref: '#/components/schemas/Algorithm' issuer: $ref: '#/components/schemas/Issuer' metadata_uri: description: The URI of the metadata document for the auth server type: string format: uri labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - id - name - description - audience - signing_algorithm - issuer - metadata_uri - labels - created_at - updated_at ClaimName: description: The name of the claim type: string minLength: 1 ClaimValue: description: Specifies the value of the claim. It may contain a static value or a dynamic (templated) value. Static values which are valid JSON will result in a JSON object in the token claims. type: string minLength: 1 UpdateClaimIncludeInToken: description: 'Specifies whether to include claim in the token. If the value is set to ''false'' for a claim, the client instead uses the access token to get claims from the ''/userinfo'' endpoint.' type: boolean ClaimIncludeInToken: description: 'Specifies whether to include claim in the token. If the value is set to ''false'' for a claim, the client instead uses the access token to get claims from the ''/userinfo'' endpoint.' type: boolean default: false UpdateClaimIncludeInAllScopes: description: 'Specifies whether to include the claim in all scopes. If the value is set to ''false'' for a claim, the claim is only included in the scopes that explicitly list it.' type: boolean ClaimIncludeInAllScopes: description: 'Specifies whether to include the claim in all scopes. If the value is set to ''false'' for a claim, the claim is only included in the scopes that explicitly list it.' type: boolean default: false ClaimIncludeInScopes: description: Specifies the scopes IDs in which the claim is included type: array items: type: string format: uuid nullable: false UpdateClaimEnabled: description: 'Specifies whether the claim is enabled. If the claim is not enabled, it will not be included in the token or the ''/userinfo'' endpoint.' type: boolean ClaimEnabled: description: 'Specifies whether the claim is enabled. If the claim is not enabled, it will not be included in the token or the ''/userinfo'' endpoint.' type: boolean default: true Claim: type: object properties: id: description: The ID of the claim type: string format: uuid name: $ref: '#/components/schemas/ClaimName' value: $ref: '#/components/schemas/ClaimValue' include_in_token: $ref: '#/components/schemas/ClaimIncludeInToken' include_in_all_scopes: $ref: '#/components/schemas/ClaimIncludeInAllScopes' include_in_scopes: $ref: '#/components/schemas/ClaimIncludeInScopes' enabled: $ref: '#/components/schemas/ClaimEnabled' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - id - name - value - include_in_token - include_in_all_scopes - include_in_scopes - enabled - created_at - updated_at ScopeName: description: The name of the scope type: string minLength: 1 ScopeDescription: description: Description of the scope type: string UpdateScopeDefault: description: 'Specifies whether the scope is included by default in access tokens without being explicitly requested by the client. If the scope is not allowed by the client, it will not be included in the access token.' type: boolean ScopeDefault: description: 'Specifies whether the scope is included by default in access tokens without being explicitly requested by the client. If the scope is not allowed by the client, it will not be included in the access token.' type: boolean default: false UpdateScopeIncludeInMetadata: description: Specifies whether to include the scope in the metadata document type: boolean ScopeIncludeInMetadata: description: Specifies whether to include the scope in the metadata document type: boolean default: false UpdateScopeEnabled: description: 'Specifies whether the scope is enabled. If the scope is not enabled, it cannot be requested by clients and will not be included in the access token.' type: boolean ScopeEnabled: description: 'Specifies whether the scope is enabled. If the scope is not enabled, it cannot be requested by clients and will not be included in the access token.' type: boolean default: true Scope: type: object properties: id: description: The ID of the scope type: string format: uuid name: $ref: '#/components/schemas/ScopeName' description: $ref: '#/components/schemas/ScopeDescription' default: $ref: '#/components/schemas/ScopeDefault' include_in_metadata: $ref: '#/components/schemas/ScopeIncludeInMetadata' enabled: $ref: '#/components/schemas/ScopeEnabled' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - id - name - description - default - include_in_metadata - enabled - created_at - updated_at ClientName: description: The name of the client type: string minLength: 1 Client: type: object properties: id: $ref: '#/components/schemas/ClientId' name: $ref: '#/components/schemas/ClientName' grant_types: $ref: '#/components/schemas/GrantTypes' redirect_uris: $ref: '#/components/schemas/RedirectURIs' login_uri: $ref: '#/components/schemas/LoginURI' access_token_duration: $ref: '#/components/schemas/TokenDuration' id_token_duration: $ref: '#/components/schemas/TokenDuration' allow_all_scopes: $ref: '#/components/schemas/ClientAllowAllScopes' allow_scopes: $ref: '#/components/schemas/ClientAllowScopes' labels: $ref: '#/components/schemas/Labels' response_types: $ref: '#/components/schemas/ResponseTypes' token_endpoint_auth_method: $ref: '#/components/schemas/TokenEndpointAuthMethod' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - id - name - grant_types - redirect_uris - allow_all_scopes - allow_scopes - login_uri - access_token_duration - id_token_duration - labels - response_types - created_at - updated_at CreatedClient: allOf: - $ref: '#/components/schemas/Client' - type: object required: - client_secret properties: client_secret: description: The OAuth 2.0 client secret type: string example: YAzsyUlNZ5gNGeKS9H3VAdxVPzhPo4ae AdvancedQuery: description: A query targeting the API usage analytics datasource. type: object properties: datasource: type: string enum: - api_usage metrics: $ref: '#/components/schemas/AdvancedMetrics' dimensions: description: List of attributes or entity types to group by. type: array items: type: string enum: - api - api_product - api_product_version - application - consumer - control_plane - control_plane_group - data_plane_node - data_plane_node_version - gateway_service - portal - response_source - route - status_code - status_code_grouped - time - upstream_status_code - upstream_status_code_grouped example: - status_code_grouped default: null maxItems: 2 nullable: true x-speakeasy-param-computed: false filters: $ref: '#/components/schemas/AdvancedFilters' granularity: $ref: '#/components/schemas/Granularity' time_range: $ref: '#/components/schemas/TimeRange' example: datasource: api_usage time_range: type: relative time_range: 24h tz: EST dimensions: - time - gateway_service filters: - operator: in field: control_plane value: - d5ac5d88-efed-4e10-9dfe-0b0a6646c219 granularity: hourly metrics: - request_count - response_latency_p99 additionalProperties: false required: - datasource LLMQuery: description: A query targeting the LLM usage analytics datasource. type: object properties: datasource: type: string enum: - llm_usage metrics: $ref: '#/components/schemas/LLMMetrics' dimensions: description: List of attributes or entity types to group by. type: array items: type: string enum: - control_plane - control_plane_group - gateway_service - consumer - application - route - ai_provider - ai_response_model - ai_request_model - llm_cache_status - llm_embeddings_provider - llm_embeddings_model - time - realm - status_code - status_code_grouped - ai_plugin default: null maxItems: 2 nullable: true x-speakeasy-param-computed: false filters: $ref: '#/components/schemas/LLMFilters' granularity: $ref: '#/components/schemas/Granularity' time_range: $ref: '#/components/schemas/TimeRange' example: datasource: llm_usage time_range: type: relative time_range: 24h tz: EST dimensions: - time - ai_plugin filters: - operator: in field: control_plane value: - d5ac5d88-efed-4e10-9dfe-0b0a6646c219 granularity: hourly metrics: - total_tokens additionalProperties: false required: - datasource Tile: discriminator: propertyName: type mapping: chart: '#/components/schemas/ChartTile' oneOf: - $ref: '#/components/schemas/ChartTile' ChartTile: description: A tile that queries data and renders a chart. type: object properties: layout: description: | Information about how the tile is placed on the dashboard. Examples: - a tile occupying the first half of the top row: `{ "position": { "col": 0, "row": 0 }, size: { "cols": 3, "rows": 1 } }` - a tile occupying the second half of the top row: `{ "position": { "col": 3, "row": 0 }, size: { "cols": 3, "rows": 1 } }` type: object example: position: col: 3 row: 0 size: cols: 3 rows: 1 additionalProperties: false properties: position: description: | Position of the tile in the dashboard's grid. Numbering starts at 0, so a tile in the upper left of the dashboard will be at column 0, row 0. type: object additionalProperties: false properties: col: type: integer maximum: 5 minimum: 0 row: type: integer minimum: 0 required: - col - row size: description: | Number of columns and rows the tile occupies. A dashboard always has 6 columns, but has as many rows as needed to accommodate the given tiles. type: object additionalProperties: false properties: cols: type: integer maximum: 6 minimum: 1 rows: type: integer minimum: 1 required: - cols - rows required: - position - size type: description: The type of tile. Chart tiles must have type 'chart'. type: string enum: - chart definition: description: | The tile's definition, which consists of a query to fetch data and a chart to render the data. Note that some charts expect certain types of queries to render properly. The documentation for the individual chart types has more information. type: object additionalProperties: false properties: query: discriminator: propertyName: datasource mapping: api_usage: '#/components/schemas/AdvancedQuery' llm_usage: '#/components/schemas/LLMQuery' oneOf: - $ref: '#/components/schemas/AdvancedQuery' - $ref: '#/components/schemas/LLMQuery' chart: $ref: '#/components/schemas/Chart' required: - query - chart additionalProperties: false required: - layout - type - definition Dashboard: description: | A JSON object describing a dashboard. A dashboard is an array of tiles. All tiles are of type 'chart', which query data and render a chart displaying that data. Dashboards have 6 columns and as many rows as necessary to display their tiles. type: object properties: tiles: description: 'The array of tiles. We currently support up to 102 tiles, which is 17 rows of 6x1 tiles.' type: array items: $ref: '#/components/schemas/Tile' maxLength: 102 minLength: 0 preset_filters: description: | An optional array of filters that are applied globally to all relevant tiles in the dashboard. Whether or not a preset filter applies to a tile depends on the filter's dimension. Some dimensions, like `control_plane`, are common to all datasources; other dimensions may only apply to one datasource. type: array items: $ref: '#/components/schemas/AllFilterItems' example: - operator: in field: control_plane value: - 00000000-0000-0000-0000-000000000000 - operator: in field: ai_request_model value: - request_model1 nullable: false additionalProperties: false required: - tiles DashboardUpdateRequest: type: object properties: name: description: | The dashboard name, which is displayed at the top of the dashboard and in lists. It does not need to be unique. type: string maxLength: 255 minLength: 1 definition: $ref: '#/components/schemas/Dashboard' labels: $ref: '#/components/schemas/Labels' required: - name - definition title: Dashboard Request DashboardResponse: type: object properties: name: description: | The dashboard name, which is displayed at the top of the dashboard and in lists. It does not need to be unique. type: string maxLength: 255 minLength: 1 definition: $ref: '#/components/schemas/Dashboard' labels: $ref: '#/components/schemas/Labels' id: $ref: '#/components/schemas/UUID' created_by: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' required: - name - definition title: Dashboard Request AdvancedMetrics: description: 'List of aggregated metrics to collect across the requested time span. If no metrics are specified, request_count will be computed by default.' type: array items: type: string enum: - kong_latency_average - kong_latency_p50 - kong_latency_p95 - kong_latency_p99 - request_count - request_per_minute - request_size_average - request_size_p50 - request_size_p95 - request_size_p99 - request_size_sum - response_latency_average - response_latency_p50 - response_latency_p95 - response_latency_p99 - response_size_average - response_size_p50 - response_size_p95 - response_size_p99 - response_size_sum - upstream_latency_average - upstream_latency_p50 - upstream_latency_p95 - upstream_latency_p99 default: - request_count RequestsFilterType: description: 'The type of filter to apply. `in` filters will limit results to only the specified values, while `not_in` filters will exclude the specified values.' type: string enum: - in - not_in UnscopedUuid: type: string pattern: '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$' RequestsFilterTypeEmpty: description: The type of filter to apply. type: string enum: - empty - not_empty MetricsApiFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - api required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - api required: - operator - field title: Filter by api MetricsApiProductFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - api_product required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - api_product required: - operator - field title: Filter by api_product MetricsApiProductVersionFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - api_product_version required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - api_product_version required: - operator - field title: Filter by api_product_version MetricsApplicationFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - application required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - application required: - operator - field title: Filter by application ScopedUuid: type: string pattern: '^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}:[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$' MetricsConsumerFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. Because gateway IDs are only unique within a given control plane, the filter values must be of the form `control_plane_id:field_id` or `control_plane_group_id:field_id` for data plane nodes within a control plane group. type: array items: $ref: '#/components/schemas/ScopedUuid' field: description: The field to filter. type: string enum: - consumer required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - consumer required: - operator - field title: Filter by consumer MetricsControlPlaneFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - control_plane required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - control_plane required: - operator - field title: Filter by control_plane MetricsControlPlaneGroupFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - control_plane_group required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - control_plane_group required: - operator - field title: Filter by control_plane_group MetricsDataPlaneNodeFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. Because gateway IDs are only unique within a given control plane, the filter values must be of the form `control_plane_id:field_id` or `control_plane_group_id:field_id` for data plane nodes within a control plane group. type: array items: $ref: '#/components/schemas/ScopedUuid' field: description: The field to filter. type: string enum: - data_plane_node required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - data_plane_node required: - operator - field title: Filter by data_plane_node MetricsDataPlaneNodeVersionFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - data_plane_node_version required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - data_plane_node_version required: - operator - field title: Filter by data_plane_node_version MetricsGatewayServiceFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. Because gateway IDs are only unique within a given control plane, the filter values must be of the form `control_plane_id:field_id` or `control_plane_group_id:field_id` for data plane nodes within a control plane group. type: array items: $ref: '#/components/schemas/ScopedUuid' field: description: The field to filter. type: string enum: - gateway_service required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - gateway_service required: - operator - field title: Filter by gateway_service MetricsPortalFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - portal required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - portal required: - operator - field title: Filter by portal MetricsRealmFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. type: array items: $ref: '#/components/schemas/UnscopedUuid' field: description: The field to filter. type: string enum: - realm required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - realm required: - operator - field title: Filter by realm MetricsResponseSourceFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - response_source required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - response_source required: - operator - field title: Filter by response_source MetricsRouteFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The IDs to include in the results. Because gateway IDs are only unique within a given control plane, the filter values must be of the form `control_plane_id:field_id` or `control_plane_group_id:field_id` for data plane nodes within a control plane group. type: array items: $ref: '#/components/schemas/ScopedUuid' field: description: The field to filter. type: string enum: - route required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - route required: - operator - field title: Filter by route MetricsStatusCodeFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The codes to include in the results. type: array items: type: integer minimum: 0 maximum: 999 field: description: The field to filter. type: string enum: - status_code required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - status_code required: - operator - field title: Filter by status_code MetricsStatusCodeGroupedFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The code groups to include in the results. type: array items: type: string pattern: '^\d[xX][xX]$' field: description: The field to filter. type: string enum: - status_code_grouped required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - status_code_grouped required: - operator - field title: Filter by status_code_grouped MetricsUpstreamStatusCodeFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The codes to include in the results. type: array items: type: integer minimum: 0 maximum: 999 field: description: The field to filter. type: string enum: - upstream_status_code required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - upstream_status_code required: - operator - field title: Filter by upstream_status_code MetricsUpstreamStatusCodeGroupedFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The code groups to include in the results. type: array items: type: string pattern: '^\d[xX][xX]$' field: description: The field to filter. type: string enum: - upstream_status_code_grouped required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - upstream_status_code_grouped required: - operator - field title: Filter by upstream_status_code_grouped AdvancedFilters: description: A list of filters to apply to the query. type: array items: type: object properties: field: type: string enum: - api - api_product - api_product_version - application - consumer - control_plane - control_plane_group - data_plane_node - data_plane_node_version - gateway_service - portal - realm - response_source - route - status_code - status_code_grouped - upstream_status_code - upstream_status_code_grouped operator: type: string enum: - in - not_in - empty - not_empty value: x-speakeasy-type-override: any required: - field - operator Granularity: description: | Force time grouping into buckets of the specified duration. Only has an effect if "time" is in the "dimensions" list. The granularity of the result may be coarser than requested. The finest allowed granularity depends on the query's time range: data farther in the past may have coarser granularity. The exact result granularity will be reported in the response `meta.granularity_ms` field. If granularity is not specified and "time" is in the dimensions list, a default will be chosen based on the time range requested. Different relative times support different granularities: - 15m => tenSecondly, thirtySecondly, minutely - 1h => tenSecondly, thirtySecondly, minutely, fiveMinutely, tenMinutely - 6h => thirtySecondly, minutely, fiveMinutely, tenMinutely, thirtyMinutely, hourly - 12h => minutely, fiveMinutely, tenMinutely, thirtyMinutely, hourly - 24h => fiveMinutely, tenMinutely, thirtyMinutely, hourly - 7d => thirtyMinutely, hourly, twoHourly, twelveHourly, daily - 30d => hourly, twoHourly, twelveHourly, daily, weekly For special time ranges: - current_week, previous_week => thirtyMinutely, hourly, twoHourly, twelveHourly, daily - current_month, previous_month => hourly, twoHourly, twelveHourly, daily, weekly For absolute time ranges, daily will be used. type: string enum: - tenSecondly - thirtySecondly - minutely - fiveMinutely - tenMinutely - thirtyMinutely - hourly - twoHourly - twelveHourly - daily - weekly MetricsRelativeTimeRangeDtoV2: description: 'A duration representing a relative-to-now span of time. Generally the start time is floored to the requested granularity. Eg 7d from now, with 1day granularity initiated at 2024-01-08T17:11:00+05:00 will query for the time range from 2024-01-01T00:00:00+05:00 to 2024-01-08T17:11:00+05:00. The exact start and end timestamps are returned in the result query in the meta.start and meta.end fields. If the granularity for the previous query was 1hour, it would query a time range from 2024-01-01T17:00:00+05:00 to 2024-01-08T17:11:00+05:00.' type: object properties: tz: type: string default: Etc/UTC type: type: string enum: - relative time_range: type: string default: 1h enum: - 15m - 1h - 6h - 12h - 24h - 7d - 30d - current_week - current_month - previous_week - previous_month required: - type - time_range title: Relative time range MetricsAbsoluteTimeRangeDtoV2: description: A duration representing an exact start and end time. type: object properties: tz: type: string default: Etc/UTC type: type: string enum: - absolute start: type: string format: date-time default: null nullable: true x-speakeasy-param-computed: false end: type: string format: date-time default: null nullable: true x-speakeasy-param-computed: false required: - type title: Absolute time range TimeRange: description: The time range to query. default: type: relative time_range: 1h discriminator: propertyName: type mapping: relative: '#/components/schemas/MetricsRelativeTimeRangeDtoV2' absolute: '#/components/schemas/MetricsAbsoluteTimeRangeDtoV2' oneOf: - $ref: '#/components/schemas/MetricsRelativeTimeRangeDtoV2' - $ref: '#/components/schemas/MetricsAbsoluteTimeRangeDtoV2' LLMMetrics: description: List of aggregated metrics to collect across the requested time span. type: array items: type: string enum: - total_tokens - prompt_tokens - completion_tokens - ai_request_count - cost - llm_cache_embeddings_latency_average - llm_cache_fetch_latency_average - llm_latency_average - llm_embeddings_tokens - llm_embeddings_cost default: - ai_request_count MetricsAiPluginFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - ai_plugin required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - ai_plugin required: - operator - field title: Filter by ai_plugin MetricsAiProviderFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - ai_provider required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - ai_provider required: - operator - field title: Filter by ai_provider MetricsAiRequestModelFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - ai_request_model required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - ai_request_model required: - operator - field title: Filter by ai_request_model MetricsAiResponseModelFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - ai_response_model required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - ai_response_model required: - operator - field title: Filter by ai_response_model MetricsLlmCacheStatusFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - llm_cache_status required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - llm_cache_status required: - operator - field title: Filter by llm_cache_status MetricsLlmEmbeddingsModelFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - llm_embeddings_model required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - llm_embeddings_model required: - operator - field title: Filter by llm_embeddings_model MetricsLlmEmbeddingsProviderFilterByField: oneOf: - title: Multiselect filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterType' value: description: | The values to include in the results. type: array items: type: string field: description: The field to filter. type: string enum: - llm_embeddings_provider required: - operator - value - field - title: Empty filters type: object properties: operator: $ref: '#/components/schemas/RequestsFilterTypeEmpty' field: description: The field to filter. type: string enum: - llm_embeddings_provider required: - operator - field title: Filter by llm_embeddings_provider LLMFilters: description: A list of filters to apply to the query. type: array items: type: object properties: field: type: string enum: - ai_plugin - ai_provider - ai_request_model - ai_response_model - application - consumer - control_plane - control_plane_group - gateway_service - llm_cache_status - llm_embeddings_model - llm_embeddings_provider - realm - route - status_code - status_code_grouped operator: type: string enum: - in - not_in - empty - not_empty value: x-speakeasy-type-override: any required: - field - operator DonutChart: description: | A chart that can display one-dimensional data in a hollow, segmented circle. To use this chart, ensure that the query includes only one dimension (not `time`). type: object properties: chart_title: description: 'The title of the chart, which is displayed in the tile''s header.' type: string nullable: false type: type: string enum: - donut additionalProperties: false required: - type title: Donut chart TimeseriesChart: description: | A chart that can render timeseries data -- data from a query that has `time` as a dimension -- as lines or bars. This type of chart can support: - One or more metrics: `{ metrics: ["response_latency_p99", "response_latency_p95"], dimensions: ["time"] }` - One metric plus one non-time dimension: `{ metrics: ["request_count"], dimensions: ["time", "gateway_service"] }` Either way, ensure that `time` is in the list of query dimensions. type: object properties: chart_title: description: 'The title of the chart, which is displayed in the tile''s header.' type: string nullable: false type: type: string enum: - timeseries_line - timeseries_bar stacked: description: | Whether to stack the bars or lines (implicitly adding them together to form a total), or leave them independent from each other. type: boolean nullable: false additionalProperties: false required: - type title: Timeseries chart BarChart: description: | A chart that can display non-timeseries data as bars. This type of chart supports up to 2 dimensions (not `time`). To render a bar chart of timeseries data, use a `timeseries_bar` chart instead. type: object properties: chart_title: description: 'The title of the chart, which is displayed in the tile''s header.' type: string nullable: false type: type: string enum: - horizontal_bar - vertical_bar stacked: description: | Whether to stack the bars (implicitly adding them together to form a total), or leave them independent from each other. type: boolean nullable: false additionalProperties: false required: - type title: Bar chart SingleValueChart: description: A chart that can render a single number. This chart works with a single metric and no dimensions. type: object properties: chart_title: description: 'The title of the chart, which is displayed in the tile''s header.' type: string nullable: false type: type: string enum: - single_value decimal_points: description: 'The number of figures to render after the decimal. Most metrics only support up to 2 decimals, but some may support more.' type: number default: null nullable: true x-speakeasy-param-computed: false additionalProperties: false required: - type title: Single value chart Chart: description: The type of chart to render. discriminator: propertyName: type mapping: donut: '#/components/schemas/DonutChart' timeseries_line: '#/components/schemas/TimeseriesChart' timeseries_bar: '#/components/schemas/TimeseriesChart' horizontal_bar: '#/components/schemas/BarChart' vertical_bar: '#/components/schemas/BarChart' single_value: '#/components/schemas/SingleValueChart' oneOf: - $ref: '#/components/schemas/DonutChart' - $ref: '#/components/schemas/TimeseriesChart' - $ref: '#/components/schemas/BarChart' - $ref: '#/components/schemas/SingleValueChart' AllFilterItems: type: object properties: field: type: string enum: - ai_plugin - ai_provider - ai_request_model - ai_response_model - api - api_product - api_product_version - application - consumer - control_plane - control_plane_group - data_plane_node - data_plane_node_version - gateway_service - llm_cache_status - llm_embeddings_model - llm_embeddings_provider - portal - realm - response_source - route - status_code - status_code_grouped - upstream_status_code - upstream_status_code_grouped operator: type: string enum: - in - not_in - empty - not_empty value: x-speakeasy-type-override: any required: - field - operator EventGatewayInfo: allOf: - $ref: '#/components/schemas/Gateway' - type: object required: - nodes_total - virtual_clusters_total - version properties: nodes_total: description: The total number of nodes associated with the Event Gateway. type: integer virtual_clusters_total: description: The total number of virtual clusters associated with the Event Gateway. type: integer version: description: | The version number of the event gateway. Every change to an entity under this gateway will modify the version. type: string example: v1_123 EventGatewayListener: description: Listeners are used to expose virtual clusters to clients. type: object properties: id: description: The unique identifier of the listener. type: string format: uuid name: description: The unique name of the listener. type: string maxLength: 255 minLength: 1 x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' description: description: A human-readable description of the listener. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false addresses: $ref: '#/components/schemas/EventGatewayListenerAddresses' ports: $ref: '#/components/schemas/EventGatewayListenerPorts' labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - name - addresses - ports - created_at - updated_at EventGatewayListenerAddresses: description: | Which address or addresses to listen on. `0.0.0.0` means all addresses on the host. `::` means all addresses on the host in IPv6. If `0.0.0.0` or `::` is used, there can't be other extra addresses defined. WARNING: there are use cases where listening on all addresses is insecure. So use this with caution. `localhost` means only the localhost ipv4 address. type: array items: type: string minItems: 1 EventGatewayListenerPorts: description: | Which port or ports to listen on. There can be multiple ways to define ports: - as a single port, e.g. 9092 - as a range of ports, e.g. 9092-9094 It's possible to combine both, e.g. [9092, "9093-9095", 9096]. type: array items: $ref: '#/components/schemas/EventGatewayListenerPort' minItems: 1 EventGatewayListenerPort: description: A port or a range of ports in the format 9092 or 9092-9094. type: string pattern: '^(\d{1,5}|\d{1,5}-\d{1,5})$' VirtualCluster: description: A representation of a Kafka cluster that maps to a backend cluster. type: object properties: id: description: The unique identifier of the virtual cluster. type: string format: uuid description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false destination: $ref: '#/components/schemas/BackendClusterReference' authentication: $ref: '#/components/schemas/VirtualClusterAuthenticationSchemes' namespace: $ref: '#/components/schemas/VirtualClusterNamespace' name: $ref: '#/components/schemas/VirtualClusterName' dns_label: $ref: '#/components/schemas/VirtualClusterDNSLabel' labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - name - dns_label - destination - authentication - created_at - updated_at VirtualClusterName: description: The name of the virtual cluster. type: string maxLength: 255 minLength: 1 x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' VirtualClusterAuthenticationSchemes: description: | How to handle authentication from clients. It tries to authenticate with every rule sequentially one by one. It succeeds on the first match, and fails if no rule matches. type: array items: $ref: '#/components/schemas/VirtualClusterAuthenticationScheme' minItems: 1 VirtualClusterAuthenticationScheme: discriminator: propertyName: type mapping: anonymous: '#/components/schemas/VirtualClusterAuthenticationAnonymous' sasl_plain: '#/components/schemas/VirtualClusterAuthenticationSaslPlain' sasl_scram: '#/components/schemas/VirtualClusterAuthenticationSaslScram' oauth_bearer: '#/components/schemas/VirtualClusterAuthenticationOauthBearer' oneOf: - $ref: '#/components/schemas/VirtualClusterAuthenticationAnonymous' - $ref: '#/components/schemas/VirtualClusterAuthenticationSaslPlain' - $ref: '#/components/schemas/VirtualClusterAuthenticationSaslScram' - $ref: '#/components/schemas/VirtualClusterAuthenticationOauthBearer' VirtualClusterAuthenticationAnonymous: type: object properties: type: type: string const: anonymous required: - type VirtualClusterAuthenticationSaslPlain: description: SASL/PLAIN authentication scheme for the virtual cluster. type: object properties: type: type: string const: sasl_plain mediation: description: The mediation type for SASL/PLAIN authentication. type: string enum: - passthrough - terminate principals: description: 'List of principals to be able to authenticate with, used with `terminate` mediation.' type: array items: $ref: '#/components/schemas/VirtualClusterAuthenticationPrincipal' default: null nullable: true x-speakeasy-param-computed: false additionalProperties: false required: - type - mediation VirtualClusterAuthenticationPrincipal: description: A principal for authentication. type: object properties: username: $ref: '#/components/schemas/GatewaySecretReferenceOrLiteral' password: $ref: '#/components/schemas/GatewaySecretReference' VirtualClusterAuthenticationJWKS: description: JSON Web Key Set configuration for verifying token signatures. type: object properties: endpoint: description: URL for JWKS endpoint. type: string format: uri minLength: 1 timeout: description: Total time from establishing connection to receive a response from JWKS endpoint. type: string default: 10s cache_expiration: description: Duration after which the gateway will fetch and cache JWKS. type: string default: 1h required: - endpoint VirtualClusterAuthenticationClaimsMapping: description: Maps JWT claims in the case when sub and scope are presented as different claims in your JWT token. type: object properties: sub: description: Maps the subject claim. type: string default: null minLength: 1 nullable: true x-speakeasy-param-computed: false scope: description: Maps the scope claim. type: string default: null minLength: 1 nullable: true x-speakeasy-param-computed: false VirtualClusterAuthenticationSaslScram: description: SASL/SCRAM authentication scheme for the virtual cluster. type: object properties: type: type: string const: sasl_scram algorithm: description: The algorithm used for SASL/SCRAM authentication. type: string enum: - sha256 - sha512 additionalProperties: false required: - type - algorithm VirtualClusterAuthenticationOauthBearer: description: Oauth Bearer authentication scheme for the virtual cluster. type: object properties: type: type: string const: oauth_bearer mediation: description: | Methods to mediate authentication: * passthrough - pass authentication from the client through proxy to the backend cluster without any kind of validation * validate_forward - pass authentication from the client through proxy to the backend cluster. Proxy does the validation before forwarding it to the client. * terminate - terminate authentication at the proxy level and originate authentication to the backend cluster using the configuration defined at BackendCluster's authentication. SASL auth is not originated if authentication on the backend_cluster is not configured. type: string enum: - passthrough - validate_forward - terminate claims_mapping: $ref: '#/components/schemas/VirtualClusterAuthenticationClaimsMapping' jwks: $ref: '#/components/schemas/VirtualClusterAuthenticationJWKS' validate: $ref: '#/components/schemas/VirtualClusterAuthenticationValidate' additionalProperties: false required: - type - mediation VirtualClusterAuthenticationValidate: description: Validation rules. type: object properties: audiences: description: List of expected audience values. One of them has to match the audience claim in the token. type: array items: $ref: '#/components/schemas/VirtualClusterAuthenticationAudience' default: null minItems: 1 nullable: true x-speakeasy-param-computed: false issuer: description: Expected token issuer in the token. type: string default: null minLength: 1 nullable: true x-speakeasy-param-computed: false VirtualClusterAuthenticationAudience: type: object properties: name: type: string minLength: 1 required: - name VirtualClusterDNSLabel: description: |- The DNS label used in the bootstrap server URL to identify the virtual cluster when using SNI routing. The format follows the RFC1035: 1-63 chars, lowercase alphanumeric or '-', must start with a letter and end with an alphanumeric character. type: string example: vcluster-1 maxLength: 63 minLength: 1 pattern: '^[a-z]([-a-z0-9]*[a-z0-9])?$' BackendCluster: description: The Kafka cluster. type: object properties: id: description: The unique identifier of the backend cluster. type: string format: uuid readOnly: true name: $ref: '#/components/schemas/BackendClusterName' description: description: A human-readable description of the backend cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication: $ref: '#/components/schemas/BackendClusterAuthenticationScheme' insecure_allow_anonymous_virtual_cluster_auth: description: | If true, virtual clusters can have allow anonymous authentication and use this backend cluster. This setting is not recommended for production use as it may create privilege escalation vulnerabilities. type: boolean default: false bootstrap_servers: $ref: '#/components/schemas/BootstrapServers' tls: $ref: '#/components/schemas/BackendClusterTLS' metadata_update_interval_seconds: $ref: '#/components/schemas/BackendMetadataUpdateIntervalSeconds' labels: $ref: '#/components/schemas/Labels' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - name - authentication - bootstrap_servers - created_at - updated_at BackendClusterName: description: The unique name of the backend cluster. type: string maxLength: 255 minLength: 1 x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' BackendClusterReference: description: The backend cluster associated with the virtual cluster. type: object properties: id: description: The unique identifier of the backend cluster. type: string format: uuid name: $ref: '#/components/schemas/BackendClusterName' additionalProperties: false required: - id - name BackendClusterReferenceModify: description: | The backend cluster associated with the virtual cluster. Either `id` or `name` must be provided. Following changes to the backend cluster name won't affect the reference, as the system will create the entities relationship by `id`. properties: id: description: The unique identifier of the backend cluster. type: string format: uuid name: $ref: '#/components/schemas/BackendClusterName' BootstrapServers: description: 'A list of cluster bootstrap servers in the format address:port.' type: array items: type: string description: 'Endpoint in address:port format.' pattern: '^(([a-zA-Z0-9\.\-]+)|\[([a-fA-F0-9:]+)\]):\d+$' minLength: 1 minItems: 1 BackendClusterTLS: type: object properties: insecure_skip_verify: description: 'If true, skip certificate verification. It''s not secure to use for production.' type: boolean default: false ca_bundle: $ref: '#/components/schemas/GatewaySecretReferenceOrLiteral' tls_versions: description: List of supported TLS versions. type: array items: type: string enum: - tls12 - tls13 default: - tls12 - tls13 BackendMetadataUpdateIntervalSeconds: description: The interval at which metadata is updated in seconds. type: integer default: 60 maximum: 43200 minimum: 1 BackendClusterAuthenticationScheme: discriminator: propertyName: type mapping: anonymous: '#/components/schemas/BackendClusterAuthenticationAnonymous' sasl_plain: '#/components/schemas/BackendClusterAuthenticationSaslPlain' sasl_scram: '#/components/schemas/BackendClusterAuthenticationSaslScram' oneOf: - $ref: '#/components/schemas/BackendClusterAuthenticationAnonymous' - $ref: '#/components/schemas/BackendClusterAuthenticationSaslPlain' - $ref: '#/components/schemas/BackendClusterAuthenticationSaslScram' BackendClusterAuthenticationAnonymous: description: Anonymous authentication scheme for the backend cluster. type: object properties: type: description: The type of authentication scheme. type: string const: anonymous additionalProperties: false required: - type BackendClusterAuthenticationSaslPlain: description: SASL/PLAIN authentication scheme for the backend cluster. type: object properties: type: type: string const: sasl_plain username: $ref: '#/components/schemas/GatewaySecretReferenceOrLiteral' password: $ref: '#/components/schemas/GatewaySecretReference' additionalProperties: false required: - type - username - password BackendClusterAuthenticationSaslScram: description: SASL/SCRAM-SHA-256 authentication scheme for the backend cluster. type: object properties: type: type: string const: sasl_scram algorithm: description: The algorithm used for SASL/SCRAM authentication. type: string enum: - sha256 - sha512 username: $ref: '#/components/schemas/GatewaySecretReferenceOrLiteral' password: $ref: '#/components/schemas/GatewaySecretReference' additionalProperties: false required: - type - username - password - algorithm EventGatewayVaultType: description: The type of the vault. type: string enum: - env - konnect EventGatewayVault: allOf: - type: object required: - id properties: id: description: The unique identifier of the vault. type: string format: uuid - oneOf: - $ref: '#/components/schemas/EventGatewayEnvVault' - $ref: '#/components/schemas/EventGatewayKonnectVault' EventGatewayBaseVault: description: Base properties of a vault. type: object properties: name: description: The name of the vault. type: string maxLength: 255 minLength: 1 pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.'']*[\p{L}\p{N}]$' x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' type: $ref: '#/components/schemas/EventGatewayVaultType' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' description: description: A human-readable description of the vault. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false labels: $ref: '#/components/schemas/Labels' required: - name - type - created_at - updated_at EventGatewayEnvVault: allOf: - $ref: '#/components/schemas/EventGatewayBaseVault' - type: object description: An environment vault. required: - config - type properties: type: type: string const: env config: description: The configuration of the environment vault. type: object properties: prefix: description: The optional prefix for environment variables. type: string example: KONG_ required: - prefix EventGatewayKonnectVault: allOf: - $ref: '#/components/schemas/EventGatewayBaseVault' - type: object description: A konnect vault. required: - type properties: type: type: string enum: - konnect EventGatewayModifyVault: description: The typed schema of the vault to modify it. discriminator: propertyName: type mapping: env: '#/components/schemas/EventGatewayEnvVault' konnect: '#/components/schemas/EventGatewayKonnectVault' oneOf: - $ref: '#/components/schemas/EventGatewayEnvVault' - $ref: '#/components/schemas/EventGatewayKonnectVault' BaseSchemaRegistry: description: Base properties of a schema registry. type: object properties: name: description: The unique name of the schema registry. type: string maxLength: 255 minLength: 1 x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false type: description: The type of the schema registry. type: string config: description: The configuration of the schema registry. type: object default: null nullable: true x-speakeasy-param-computed: false labels: $ref: '#/components/schemas/Labels' required: - name - type SchemaRegistry: allOf: - $ref: '#/components/schemas/BaseSchemaRegistry' - type: object description: A schema registry that contains schemas. required: - id - created_at - updated_at properties: id: description: The unique identifier of the schema registry. type: string format: uuid created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' SchemaRegistryConfluent: allOf: - $ref: '#/components/schemas/BaseSchemaRegistry' - type: object description: A Confluent schema registry. required: - config - type properties: type: type: string const: confluent config: description: | The configuration of [Confluent Schema Registry](https://github.com/confluentinc/schema-registry) type: object properties: schema_type: description: The format of the message. type: string enum: - avro - json endpoint: description: The endpoint of the Confluent schema registry. type: string format: uri minLength: 1 timeout_seconds: description: | Total time in seconds from establishing connection to receive a response from schema registry. type: integer default: 10 minimum: 1 authentication: $ref: '#/components/schemas/SchemaRegistryAuthenticationScheme' required: - schema_type - endpoint SchemaRegistryAuthenticationScheme: description: The authentication configuration for the schema registry. discriminator: propertyName: type mapping: basic: '#/components/schemas/SchemaRegistryAuthenticationBasic' oneOf: - $ref: '#/components/schemas/SchemaRegistryAuthenticationBasic' SchemaRegistryAuthenticationBasic: type: object properties: type: type: string const: basic username: $ref: '#/components/schemas/GatewaySecretReferenceOrLiteral' password: $ref: '#/components/schemas/GatewaySecretReference' required: - type - username - password ModifySchemaRegistry: description: The typed schema of the schema registry to modify it. discriminator: propertyName: type mapping: confluent: '#/components/schemas/SchemaRegistryConfluent' oneOf: - $ref: '#/components/schemas/SchemaRegistryConfluent' EventGatewayDataPlaneCertificate: description: A dataplane certificate. type: object properties: id: description: The unique identifier of the certificate. type: string format: uuid certificate: description: JSON escaped string of the certificate. type: string name: description: The name to identify of the certificate. type: string default: null maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: false x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' description: description: A description of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' metadata: $ref: '#/components/schemas/CertificateMetadata' required: - id - certificate - created_at - updated_at CertificateMetadata: description: Metadata extracted from a certificate. type: object properties: issuer: description: The issuer of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false subject: description: The subject of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false key_usages: description: The key usages of the certificate. type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false expiry: description: The expiry date of the certificate as a unix timestamp. type: integer format: int64 default: null nullable: true x-speakeasy-param-computed: false san_names: description: The Subject Alternative Names (SAN) of the certificate. type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false dns_names: description: The DNS names in the certificate SAN. type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false email_addresses: description: The email addresses in the certificate SAN. type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false ip_addresses: description: The IP addresses in the certificate SAN. type: array items: type: string default: null nullable: true x-speakeasy-param-computed: false uris: description: The URIs in the certificate SAN. type: array items: type: string format: uri default: null nullable: true x-speakeasy-param-computed: false sha256_fingerprint: description: The SHA-256 fingerprint of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false VirtualClusterNamespace: description: | Namespace allows to implement multitenancy using a single backend cluster. It allows to either hide or enforce a static prefix on resources (topics, consumer group IDs, transaction IDs). type: object properties: mode: description: | * hide_prefix - the configured prefix is hidden from clients for topics and IDs when reading. Created resources are written with the prefix on the backend cluster. * enforce_prefix - the configured prefix remains visible to clients. Created resources must include the prefix or the request will fail. type: string enum: - hide_prefix - enforce_prefix prefix: description: | The namespace is differentiated by this chosen prefix. For example, if the prefix is set to "analytics_" the topic named "analytics_user_clicks" is available to the clients of the virtual cluster. Topics without the prefix will be ignored unless added via `additional.topics`. type: string minLength: 1 additional: $ref: '#/components/schemas/VirtualClusterNamespaceAdditionalProperties' required: - mode - prefix VirtualClusterNamespaceAdditionalProperties: type: object properties: topics: description: | Additional backend topics to expose even if they don't match the namespace prefix. The topics are not affected by the hide/enforce prefix mode. If the client tries to create a topic that matches this list, the request is rejected. type: array items: $ref: '#/components/schemas/VirtualClusterNamespaceTopicSelector' default: null nullable: true x-speakeasy-param-computed: false consumer_groups: description: | Consumer group IDs to expose even if they don't start with the namespace prefix. type: array items: $ref: '#/components/schemas/VirtualClusterNamespaceIdSelector' default: null nullable: true x-speakeasy-param-computed: false VirtualClusterNamespaceTopicSelector: type: object discriminator: propertyName: type mapping: glob: '#/components/schemas/VirtualClusterNamespaceTopicSelectorGlob' exact_list: '#/components/schemas/VirtualClusterNamespaceTopicSelectorExactList' oneOf: - $ref: '#/components/schemas/VirtualClusterNamespaceTopicSelectorGlob' - $ref: '#/components/schemas/VirtualClusterNamespaceTopicSelectorExactList' required: - type VirtualClusterNamespaceTopicSelectorGlob: type: object properties: type: type: string enum: - glob glob: description: 'Expose any backend topic that matches this glob pattern (e.g., `operations_data_*`).' type: string format: glob minLength: 1 conflict: description: | How to inform the user about conflicts where multiple backend topics would map to the same virtual topic name. * warn - log in the Event Gateway logs. Additionally, it sets knep_namespace_topic_conflict to 1. * ignore - do not do anything. It does not cause knep_namespace_topic_conflict metric to be set to 1. type: string default: warn enum: - warn - ignore required: - type - glob VirtualClusterNamespaceTopicSelectorExactList: type: object properties: type: type: string enum: - exact_list exact_list: description: Explicit allow-list of backend topic names. type: array items: $ref: '#/components/schemas/NamespaceExactAllowListItem' default: null minItems: 1 nullable: true x-speakeasy-param-computed: false conflict: description: | How to inform the user about conflicts where multiple backend topics would map to the same virtual topic name. * warn - log in the Event Gateway logs. Additionally, it sets knep_namespace_topic_conflict to 1. * ignore - do not do anything. It does not cause knep_namespace_topic_conflict metric to be set to 1. type: string default: warn enum: - warn - ignore required: - type NamespaceExactAllowListItem: type: object properties: backend: type: string minLength: 1 required: - backend VirtualClusterNamespaceIdSelector: type: object discriminator: propertyName: type mapping: glob: '#/components/schemas/VirtualClusterNamespaceIdSelectorGlob' exact_list: '#/components/schemas/VirtualClusterNamespaceIdSelectorExactList' oneOf: - $ref: '#/components/schemas/VirtualClusterNamespaceIdSelectorGlob' - $ref: '#/components/schemas/VirtualClusterNamespaceIdSelectorExactList' required: - type VirtualClusterNamespaceIdSelectorGlob: type: object properties: type: type: string enum: - glob glob: description: 'Expose any id that matches this glob pattern (e.g., `my_id_*`).' type: string format: glob minLength: 1 required: - type - glob VirtualClusterNamespaceIdSelectorExactList: type: object properties: type: type: string enum: - exact_list exact_list: type: array items: type: object required: - value properties: value: type: string minLength: 1 default: null minItems: 1 nullable: true x-speakeasy-param-computed: false required: - type GatewayName: description: The name of the Gateway. type: string maxLength: 255 minLength: 1 x-unicode-pattern: '^[\p{L}\p{N}][\p{L}\p{N} _\-\.:/+'']*[\p{L}\p{N}]$' GatewayDescription: description: A human-readable description of the Gateway. type: string maxLength: 512 x-speakeasy-terraform-ignore: true Gateway: x-speakeasy-entity: EventGateway description: The gateway object contains information about a Konnect gateway. type: object properties: id: description: The gateway ID. type: string format: uuid example: 7f9fd312-a987-4628-b4c5-bb4f4fddd5f7 readOnly: true x-speakeasy-param-suppress-computed-diff: true name: $ref: '#/components/schemas/GatewayName' description: $ref: '#/components/schemas/GatewayDescription' labels: $ref: '#/components/schemas/Labels' created_at: description: An ISO-8604 timestamp representation of gateway creation date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true x-speakeasy-terraform-ignore: true updated_at: description: An ISO-8604 timestamp representation of gateway update date. type: string format: date-time example: '2022-11-04T20:10:06.927Z' readOnly: true x-speakeasy-terraform-ignore: true additionalProperties: false required: - id - name - created_at - updated_at CreateGatewayRequest: x-speakeasy-entity: EventGateway description: The request schema for the create gateway request. type: object properties: name: $ref: '#/components/schemas/GatewayName' description: $ref: '#/components/schemas/GatewayDescription' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name title: CreateGatewayRequest UpdateGatewayRequest: description: The request schema for the update gateway request. type: object properties: name: $ref: '#/components/schemas/GatewayName' description: $ref: '#/components/schemas/GatewayDescription' labels: $ref: '#/components/schemas/Labels' additionalProperties: false title: UpdateGatewayRequest GatewaySecretReferenceOrLiteral: description: A template string expression containing a reference to a secret or a literal value type: string x-expression: type: secret-template-or-literal fields: - env - vaults GatewaySecretReference: description: A template string expression containing a reference to a secret type: string example: '${env[''MY_SECRET'']}' x-expression: type: secret-template fields: - env - vaults CreatePortalCustomDomainSSL: type: object properties: domain_verification_method: type: string enum: - custom_certificate - http custom_certificate: description: Custom certificate to be used for the SSL termination. Only used when domain_verification_method == "custom_certificate" type: string nullable: false custom_private_key: description: Custom certificate private key to be used for the SSL termination. Only used when domain_verification_method == "custom_certificate" type: string nullable: false additionalProperties: false requestBodies: CreatePortalCustomDomain: description: Create a portal custom domain. required: true content: application/json: schema: $ref: '#/components/schemas/CreatePortalCustomDomainRequest' UpdatePortalCustomDomain: description: Create a portal custom domain. required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePortalCustomDomainRequest' CreatePortal: description: Create a portal. required: true content: application/json: schema: x-speakeasy-entity: Portal type: object properties: id: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' name: description: 'The name of the portal, used to distinguish it from other portals. Name must be unique.' type: string maxLength: 255 minLength: 1 display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string maxLength: 255 minLength: 1 nullable: false description: description: A description of the portal. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication_enabled: description: 'Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications.' type: boolean default: true rbac_enabled: description: 'Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC.' type: boolean default: false default_api_visibility: description: 'The default visibility of APIs in the portal. If set to `public`, newly published APIs are visible to unauthenticated developers. If set to `private`, newly published APIs are hidden from unauthenticated developers.' type: string enum: - public - private default_page_visibility: description: 'The default visibility of pages in the portal. If set to `public`, newly created pages are visible to unauthenticated developers. If set to `private`, newly created pages are hidden from unauthenticated developers.' type: string enum: - public - private default_application_auth_strategy_id: description: 'The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to `null`, API publications will not use an authentication strategy unless set during publication.' type: string format: uuid default: null nullable: true x-speakeasy-param-computed: false auto_approve_developers: description: 'Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false auto_approve_applications: description: 'Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false default_domain: description: The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a `custom_domain``. type: string format: hostname readOnly: true canonical_domain: description: The canonical domain of the developer portal type: string format: hostname nullable: false readOnly: true labels: $ref: '#/components/schemas/LabelsUpdate' additionalProperties: false required: - name title: Portal UpdatePortal: description: Update a portal's settings. required: true content: application/json: schema: x-speakeasy-entity: Portal type: object properties: id: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' name: description: 'The name of the portal, used to distinguish it from other portals. Name must be unique.' type: string default: null maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: false display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string maxLength: 255 minLength: 1 nullable: false description: description: A description of the portal. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication_enabled: description: 'Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications.' type: boolean default: true rbac_enabled: description: 'Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC.' type: boolean default: false default_api_visibility: description: 'The default visibility of APIs in the portal. If set to `public`, newly published APIs are visible to unauthenticated developers. If set to `private`, newly published APIs are hidden from unauthenticated developers.' type: string enum: - public - private default_page_visibility: description: 'The default visibility of pages in the portal. If set to `public`, newly created pages are visible to unauthenticated developers. If set to `private`, newly created pages are hidden from unauthenticated developers.' type: string enum: - public - private default_application_auth_strategy_id: description: 'The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to `null`, API publications will not use an authentication strategy unless set during publication.' type: string format: uuid default: null nullable: true x-speakeasy-param-computed: false auto_approve_developers: description: 'Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false auto_approve_applications: description: 'Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false default_domain: description: The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a `custom_domain``. type: string format: hostname readOnly: true canonical_domain: description: The canonical domain of the developer portal type: string format: hostname nullable: false readOnly: true labels: $ref: '#/components/schemas/LabelsUpdate' additionalProperties: false title: Portal ReplacePortalImageAsset: description: Update an image asset for the portal. required: true content: application/json: schema: $ref: '#/components/schemas/ReplacePortalImageAsset' ReplacePortalCustomization: content: application/json: schema: $ref: '#/components/schemas/PortalCustomization' CreatePortalPage: description: Create a page in a portal. required: true content: application/json: schema: $ref: '#/components/schemas/CreatePortalPageRequest' UpdatePortalPage: description: Update a page in a portal. required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePortalPageRequest' CreatePortalSnippet: description: Create a snippet in a portal. required: true content: application/json: schema: $ref: '#/components/schemas/CreatePortalSnippetRequest' UpdatePortalSnippet: description: Update a snippet in a portal. required: true content: application/json: schema: $ref: '#/components/schemas/UpdatePortalSnippetRequest' PortalUpdateTeam: description: Update a team in a portal. content: application/json: schema: $ref: '#/components/schemas/PortalUpdateTeamRequest' PortalCreateTeam: description: Create a team in a portal. content: application/json: schema: $ref: '#/components/schemas/PortalCreateTeamRequest' UpdatePortalAuthenticationSettings: description: Update a portal's developer authentication settings. content: application/json: schema: $ref: '#/components/schemas/PortalAuthenticationSettingsUpdateRequest' CreateApiRequest: required: true content: application/json: schema: type: object properties: id: description: The API identifier. type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 readOnly: true name: description: | The name of your API. The `name + version` combination must be unique for each API you publish. type: string example: MyAPI maxLength: 255 minLength: 1 description: description: A description of your API. Will be visible on your live Portal. type: string default: null nullable: true x-speakeasy-param-computed: false version: description: An optional version for your API. Leave this empty if your API is unversioned. type: string maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: true current_version_summary: $ref: '#/components/schemas/ApiVersionSummary' slug: description: | The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(name + version)` type: string example: my-api-v1 nullable: true pattern: '^[\w-]+$' x-speakeasy-param-computed: true api_spec_ids: description: The list of API specification ids for the API. type: array items: type: string format: uuid description: The id of the API specification. example: 123e4567-e89b-12d3-a456-426614174000 deprecated: true readOnly: true portals: description: The list of portals which this API is published to. type: array items: type: object additionalProperties: false required: - id - name - display_name properties: id: description: The portal identifier. type: string format: uuid example: 25a2624c-49fc-4764-99e1-224ed819f200 name: description: 'The name of the portal, used to distinguish it from other portals.' type: string example: My Portal display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string example: My Portal nullable: false readOnly: true uniqueItems: true labels: $ref: '#/components/schemas/Labels' attributes: $ref: '#/components/schemas/ApiAttributes' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' spec_content: description: 'The content of the API specification. This is the raw content of the API specification, in json or yaml. By including this field, you can add a API specification without having to make a separate call to update the API specification.' type: string nullable: false writeOnly: true additionalProperties: false required: - name title: API x-property-annotations: implementation_mode: - x-unstable - x-internal CreateApiSpecRequest: required: true content: application/json: schema: type: object properties: id: description: The API specification identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true content: description: | The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' type: string validation_messages: description: The errors that occurred while parsing the API specification. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi title: API Spec Type created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - content title: API Specification CreateApiVersionRequest: required: true content: application/json: schema: type: object properties: id: description: The API version identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true version: description: The version of the api. type: string example: 1.0.0 default: null nullable: true x-speakeasy-param-computed: false spec: type: object additionalProperties: false properties: content: default: null description: | The raw content of your API spec, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' nullable: true type: string x-speakeasy-param-computed: false type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi readOnly: true title: API Spec Type validation_messages: description: The errors that occurred while parsing the API version spec. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - spec title: API Version CreateApiDocumentRequest: required: true content: application/json: schema: type: object properties: id: $ref: '#/components/schemas/ApiDocumentId' content: $ref: '#/components/schemas/ApiDocumentContent' title: $ref: '#/components/schemas/ApiDocumentTitle' slug: $ref: '#/components/schemas/ApiDocumentSlug' status: $ref: '#/components/schemas/ApiDocumentStatus' parent_document_id: $ref: '#/components/schemas/ApiDocumentParentDocumentId' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - content title: API Document UpdateApiRequest: required: true content: application/json: schema: type: object properties: id: description: The API identifier. type: string format: uuid example: 9f5061ce-78f6-4452-9108-ad7c02821fd5 readOnly: true name: description: | The name of your API. The `name + version` combination must be unique for each API you publish. type: string example: MyAPI default: null maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: false description: description: A description of your API. Will be visible on your live Portal. type: string default: null nullable: true x-speakeasy-param-computed: false version: description: An optional version for your API. Leave this empty if your API is unversioned. type: string maxLength: 255 minLength: 1 nullable: true x-speakeasy-param-computed: true current_version_summary: $ref: '#/components/schemas/ApiVersionSummary' slug: description: | The `slug` is used in generated URLs to provide human readable paths. Defaults to `slugify(name + version)` type: string example: my-api-v1 nullable: true pattern: '^[\w-]+$' x-speakeasy-param-computed: true api_spec_ids: description: The list of API specification ids for the API. type: array items: type: string format: uuid description: The id of the API specification. example: 123e4567-e89b-12d3-a456-426614174000 deprecated: true readOnly: true portals: description: The list of portals which this API is published to. type: array items: type: object additionalProperties: false required: - id - name - display_name properties: id: description: The portal identifier. type: string format: uuid example: 25a2624c-49fc-4764-99e1-224ed819f200 name: description: 'The name of the portal, used to distinguish it from other portals.' type: string example: My Portal display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string example: My Portal nullable: false readOnly: true uniqueItems: true labels: $ref: '#/components/schemas/LabelsUpdate' attributes: $ref: '#/components/schemas/ApiAttributes' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false title: API x-property-annotations: implementation_mode: - x-unstable - x-internal UpdateApiDocumentRequest: required: true content: application/json: schema: $ref: '#/components/schemas/ApiDocument' UpdateApiSpecRequest: required: true content: application/json: schema: $ref: '#/components/schemas/ApiSpec' UpdateApiVersionRequest: required: true content: application/json: schema: $ref: '#/components/schemas/ApiVersion' PutApiPublicationRequest: required: true content: application/json: schema: $ref: '#/components/schemas/ApiPublication' CreateApiImplementationRequest: required: true content: application/json: schema: $ref: '#/components/schemas/ApiImplementation' CreateAuthServer: description: Auth server to be created required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/AuthServerName' description: $ref: '#/components/schemas/AuthServerDescription' audience: $ref: '#/components/schemas/Audience' signing_algorithm: $ref: '#/components/schemas/Algorithm' labels: $ref: '#/components/schemas/Labels' required: - name - audience UpdateAuthServer: description: Auth server to be updated required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/AuthServerName' description: $ref: '#/components/schemas/AuthServerDescription' audience: $ref: '#/components/schemas/Audience' signing_algorithm: $ref: '#/components/schemas/UpdateAlgorithm' labels: $ref: '#/components/schemas/LabelsUpdate' CreateClaim: description: Claim to be created required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ClaimName' value: $ref: '#/components/schemas/ClaimValue' include_in_token: $ref: '#/components/schemas/ClaimIncludeInToken' include_in_all_scopes: $ref: '#/components/schemas/ClaimIncludeInAllScopes' include_in_scopes: $ref: '#/components/schemas/ClaimIncludeInScopes' enabled: $ref: '#/components/schemas/ClaimEnabled' required: - name - value UpdateClaim: description: Claim to be updated required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ClaimName' value: $ref: '#/components/schemas/ClaimValue' include_in_token: $ref: '#/components/schemas/UpdateClaimIncludeInToken' include_in_all_scopes: $ref: '#/components/schemas/UpdateClaimIncludeInAllScopes' include_in_scopes: $ref: '#/components/schemas/ClaimIncludeInScopes' enabled: $ref: '#/components/schemas/UpdateClaimEnabled' CreateScope: description: Scope to be created required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ScopeName' description: $ref: '#/components/schemas/ScopeDescription' default: $ref: '#/components/schemas/ScopeDefault' include_in_metadata: $ref: '#/components/schemas/ScopeIncludeInMetadata' enabled: $ref: '#/components/schemas/ScopeEnabled' required: - name UpdateScope: description: Scope to be update required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ScopeName' description: $ref: '#/components/schemas/ScopeDescription' default: $ref: '#/components/schemas/UpdateScopeDefault' include_in_metadata: $ref: '#/components/schemas/UpdateScopeIncludeInMetadata' enabled: $ref: '#/components/schemas/UpdateScopeEnabled' CreateClient: description: Client to be created required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ClientName' grant_types: $ref: '#/components/schemas/GrantTypes' response_types: $ref: '#/components/schemas/ResponseTypes' redirect_uris: $ref: '#/components/schemas/RedirectURIs' login_uri: $ref: '#/components/schemas/LoginURI' access_token_duration: $ref: '#/components/schemas/TokenDuration' id_token_duration: $ref: '#/components/schemas/TokenDuration' allow_all_scopes: $ref: '#/components/schemas/ClientAllowAllScopes' allow_scopes: $ref: '#/components/schemas/ClientAllowScopes' labels: $ref: '#/components/schemas/Labels' token_endpoint_auth_method: $ref: '#/components/schemas/TokenEndpointAuthMethod' required: - name - grant_types - response_types ReplaceClient: description: Client to be replaced required: true content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/ClientName' client_secret: description: Secret of the client type: string minLength: 1 grant_types: $ref: '#/components/schemas/GrantTypes' response_types: $ref: '#/components/schemas/ResponseTypes' redirect_uris: $ref: '#/components/schemas/RedirectURIs' login_uri: $ref: '#/components/schemas/LoginURI' access_token_duration: $ref: '#/components/schemas/TokenDuration' id_token_duration: $ref: '#/components/schemas/TokenDuration' allow_all_scopes: $ref: '#/components/schemas/ClientAllowAllScopes' allow_scopes: $ref: '#/components/schemas/ClientAllowScopes' token_endpoint_auth_method: $ref: '#/components/schemas/TokenEndpointAuthMethod' labels: $ref: '#/components/schemas/Labels' required: - name - client_secret - grant_types - response_types CreateEventGatewayListenerRequest: description: The request schema for creating a listener. content: application/json: schema: type: object properties: name: description: The unique name of the listener. type: string maxLength: 255 minLength: 1 description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false addresses: $ref: '#/components/schemas/EventGatewayListenerAddresses' ports: $ref: '#/components/schemas/EventGatewayListenerPorts' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - addresses - ports UpdateEventGatewayListenerRequest: description: The request schema for updating a listener. content: application/json: schema: type: object properties: name: description: The unique name of the listener. type: string maxLength: 255 minLength: 1 description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false addresses: $ref: '#/components/schemas/EventGatewayListenerAddresses' ports: $ref: '#/components/schemas/EventGatewayListenerPorts' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - addresses - ports CreateVirtualClusterRequest: description: The request schema for creating a virtual cluster. content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/VirtualClusterName' description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false destination: $ref: '#/components/schemas/BackendClusterReferenceModify' authentication: $ref: '#/components/schemas/VirtualClusterAuthenticationSchemes' namespace: $ref: '#/components/schemas/VirtualClusterNamespace' dns_label: $ref: '#/components/schemas/VirtualClusterDNSLabel' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - destination - authentication - dns_label UpdateVirtualClusterRequest: description: The request schema for updating a virtual cluster. content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/VirtualClusterName' description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false destination: $ref: '#/components/schemas/BackendClusterReferenceModify' authentication: $ref: '#/components/schemas/VirtualClusterAuthenticationSchemes' namespace: $ref: '#/components/schemas/VirtualClusterNamespace' dns_label: $ref: '#/components/schemas/VirtualClusterDNSLabel' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - destination - authentication - dns_label CreateBackendClusterRequest: description: The request schema for creating a backend cluster. content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/BackendClusterName' description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication: $ref: '#/components/schemas/BackendClusterAuthenticationScheme' insecure_allow_anonymous_virtual_cluster_auth: description: | If true, virtual clusters can have allow anonymous authentication and use this backend cluster. This setting is not recommended for production use as it may create privilege escalation vulnerabilities. type: boolean default: false bootstrap_servers: $ref: '#/components/schemas/BootstrapServers' tls: $ref: '#/components/schemas/BackendClusterTLS' metadata_update_interval_seconds: $ref: '#/components/schemas/BackendMetadataUpdateIntervalSeconds' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - authentication - bootstrap_servers UpdateBackendClusterRequest: description: The request schema for updating a backend cluster. content: application/json: schema: type: object properties: name: $ref: '#/components/schemas/BackendClusterName' description: description: A human-readable description of the virtual cluster. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication: $ref: '#/components/schemas/BackendClusterAuthenticationScheme' insecure_allow_anonymous_virtual_cluster_auth: description: | If true, virtual clusters can have allow anonymous authentication and use this backend cluster. This setting is not recommended for production use as it may create privilege escalation vulnerabilities. type: boolean default: false bootstrap_servers: $ref: '#/components/schemas/BootstrapServers' tls: $ref: '#/components/schemas/BackendClusterTLS' metadata_update_interval_seconds: $ref: '#/components/schemas/BackendMetadataUpdateIntervalSeconds' labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - name - authentication - bootstrap_servers CreateEventGatewayVaultRequest: description: The request schema for creating a vault. content: application/json: schema: $ref: '#/components/schemas/EventGatewayModifyVault' UpdateEventGatewayVaultRequest: description: The request schema for updating a vault. content: application/json: schema: $ref: '#/components/schemas/EventGatewayModifyVault' CreateSchemaRegistryRequest: description: The request schema for creating a schema registry. content: application/json: schema: $ref: '#/components/schemas/ModifySchemaRegistry' UpdateSchemaRegistryRequest: description: The request schema for updating a schema registry. content: application/json: schema: $ref: '#/components/schemas/ModifySchemaRegistry' CreateEventGatewayDataPlaneCertificateRequest: content: application/json: schema: type: object properties: certificate: description: JSON escaped string of the certificate. type: string name: description: The name to identify of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false description: description: A description of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false required: - certificate description: Request body for creating a certificate. UpdateEventGatewayDataPlaneCertificateRequest: description: The request schema for updating a dataplane certificate. content: application/json: schema: type: object properties: certificate: description: JSON escaped string of the certificate. type: string name: description: The name to identify of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false description: description: A description of the certificate. type: string default: null nullable: true x-speakeasy-param-computed: false required: - certificate responses: PortalAuthenticationSettings: description: Details about a portal's authentication settings. content: application/json: schema: $ref: '#/components/schemas/PortalAuthenticationSettingsResponse' PortalTeam: description: Details about a team of developers in a portal. content: application/json: schema: $ref: '#/components/schemas/PortalTeamResponse' PortalCustomDomain: description: Portal custom domain content: application/json: schema: $ref: '#/components/schemas/PortalCustomDomain' ListPortalsResponse: description: A paginated list of portals in the current region of an organization. content: application/json: schema: type: object properties: data: type: array items: x-speakeasy-entity: Portal title: Portal type: object additionalProperties: false properties: id: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' name: description: 'The name of the portal, used to distinguish it from other portals. Name must be unique.' type: string maxLength: 255 minLength: 1 display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string maxLength: 255 minLength: 1 nullable: false description: description: A description of the portal. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication_enabled: description: 'Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications.' type: boolean default: true rbac_enabled: description: 'Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC.' type: boolean default: false default_api_visibility: description: 'The default visibility of APIs in the portal. If set to `public`, newly published APIs are visible to unauthenticated developers. If set to `private`, newly published APIs are hidden from unauthenticated developers.' type: string enum: - public - private default_page_visibility: description: 'The default visibility of pages in the portal. If set to `public`, newly created pages are visible to unauthenticated developers. If set to `private`, newly created pages are hidden from unauthenticated developers.' type: string enum: - public - private default_application_auth_strategy_id: description: 'The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to `null`, API publications will not use an authentication strategy unless set during publication.' type: string format: uuid default: null nullable: true x-speakeasy-param-computed: false auto_approve_developers: description: 'Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false auto_approve_applications: description: 'Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false default_domain: description: The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a `custom_domain``. type: string format: hostname readOnly: true canonical_domain: description: The canonical domain of the developer portal type: string format: hostname nullable: false readOnly: true labels: $ref: '#/components/schemas/Labels' required: - id - name - display_name - description - authentication_enabled - rbac_enabled - default_api_visibility - default_page_visibility - default_application_auth_strategy_id - auto_approve_applications - auto_approve_developers - default_domain - canonical_domain - created_at - updated_at meta: $ref: '#/components/schemas/PaginatedMeta' additionalProperties: false required: - data - meta PortalResponse: description: Details about a portal. content: application/json: schema: x-speakeasy-entity: Portal type: object properties: id: $ref: '#/components/schemas/UUID' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' name: description: 'The name of the portal, used to distinguish it from other portals. Name must be unique.' type: string maxLength: 255 minLength: 1 display_name: description: The display name of the portal. This value will be the portal's `name` in Portal API. type: string maxLength: 255 minLength: 1 nullable: false description: description: A description of the portal. type: string default: null maxLength: 512 nullable: true x-speakeasy-param-computed: false authentication_enabled: description: 'Whether the portal supports developer authentication. If disabled, developers cannot register for accounts or create applications.' type: boolean default: true rbac_enabled: description: 'Whether the portal resources are protected by Role Based Access Control (RBAC). If enabled, developers view or register for APIs until unless assigned to teams with access to view and consume specific APIs. Authentication must be enabled to use RBAC.' type: boolean default: false default_api_visibility: description: 'The default visibility of APIs in the portal. If set to `public`, newly published APIs are visible to unauthenticated developers. If set to `private`, newly published APIs are hidden from unauthenticated developers.' type: string enum: - public - private default_page_visibility: description: 'The default visibility of pages in the portal. If set to `public`, newly created pages are visible to unauthenticated developers. If set to `private`, newly created pages are hidden from unauthenticated developers.' type: string enum: - public - private default_application_auth_strategy_id: description: 'The default authentication strategy for APIs published to the portal. Newly published APIs will use this authentication strategy unless overridden during publication. If set to `null`, API publications will not use an authentication strategy unless set during publication.' type: string format: uuid default: null nullable: true x-speakeasy-param-computed: false auto_approve_developers: description: 'Whether developer account registrations will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false auto_approve_applications: description: 'Whether requests from applications to register for APIs will be automatically approved, or if they will be set to pending until approved by an admin.' type: boolean default: false default_domain: description: The domain assigned to the portal by Konnect. This is the default place to access the portal and its API if not using a `custom_domain``. type: string format: hostname readOnly: true canonical_domain: description: The canonical domain of the developer portal type: string format: hostname nullable: false readOnly: true labels: $ref: '#/components/schemas/Labels' additionalProperties: false required: - id - name - display_name - description - authentication_enabled - rbac_enabled - default_api_visibility - default_page_visibility - default_application_auth_strategy_id - auto_approve_applications - auto_approve_developers - default_domain - canonical_domain - updated_at - created_at title: Portal PortalAssetResponse: description: 'Image asset for the portal. Can be either png, jpeg or svg' content: application/json: schema: type: object properties: data: $ref: '#/components/schemas/PortalImageDataUri' additionalProperties: false required: - data PortalCustomizationResponse: description: The current customization options for a portal. content: application/json: schema: $ref: '#/components/schemas/PortalCustomization' PortalPage: description: Details about a page in a portal. content: application/json: schema: $ref: '#/components/schemas/PortalPageResponse' PortalSnippet: description: Details about a snippet in a portal. content: application/json: schema: $ref: '#/components/schemas/PortalSnippetResponse' Unauthorized: description: Unauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' 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' Conflict: description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' BadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' ApiSlugConflict: description: Conflict - `slug` property must be unique content: application/problem+json: schema: type: object properties: status: type: number title: type: string type: type: string default: null nullable: true x-speakeasy-param-computed: false instance: type: string required: - status - title - instance ApiSpecConflict: description: Conflict - An API may only have one specification content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' ApiSpecHiddenConflict: description: Conflict - name attribute must be unique across specifications content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' ApiVersionPatchConflict: description: Conflict - May occur when constraints are violated content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' ApiImplementationConflict: description: Conflict - A gateway service can only be linked to a single API content: application/problem+json: schema: $ref: '#/components/schemas/ConflictError' ApiUnauthorized: description: ApiUnauthorized content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' ApiNotFound: description: Not Found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' ApiForbidden: description: ApiForbidden content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' ApiPublicationBadRequest: description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' ApiResponse: description: API content: application/json: schema: $ref: '#/components/schemas/ApiResponseSchema' ApiDocumentResponse: description: API document content: application/json: schema: type: object properties: id: $ref: '#/components/schemas/ApiDocumentId' content: $ref: '#/components/schemas/ApiDocumentContent' title: $ref: '#/components/schemas/ApiDocumentTitle' slug: $ref: '#/components/schemas/ApiDocumentSlug' status: $ref: '#/components/schemas/ApiDocumentStatus' parent_document_id: $ref: '#/components/schemas/ApiDocumentParentDocumentId' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - parent_document_id - title - slug - status - content - updated_at - created_at title: API Document ApiSpecResponse: description: API specification (OpenAPI or AsyncAPI) content: application/json: schema: type: object properties: id: description: The API specification identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true content: description: | The raw content of your API specification, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' type: string validation_messages: description: The errors that occurred while parsing the API specification. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi title: API Spec Type created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - content - type - created_at - updated_at - validation_messages title: API Specification ApiVersionResponse: description: API version (OpenAPI or AsyncAPI) content: application/json: schema: type: object properties: id: description: The API version identifier. type: string format: uuid example: 7710d5c4-d902-410b-992f-18b814155b53 readOnly: true version: description: The version of the api. type: string example: 1.0.0 spec: type: object default: null additionalProperties: false nullable: true properties: content: default: null description: | The raw content of your API spec, in json or yaml format (OpenAPI or AsyncAPI). example: '{"openapi":"3.0.3","info":{"title":"Example API","version":"1.0.0"},"paths":{"/example":{"get":{"summary":"Example endpoint","responses":{"200":{"description":"Successful response"}}}}}}' nullable: true type: string x-speakeasy-param-computed: false type: description: | The type of specification being stored. This allows us to render the specification correctly. type: string example: oas3 enum: - oas2 - oas3 - asyncapi readOnly: true title: API Spec Type validation_messages: description: The errors that occurred while parsing the API version spec. type: array items: type: object additionalProperties: false required: - message properties: message: type: string readOnly: true x-speakeasy-param-computed: false created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - id - version - created_at - updated_at title: API Version ApiPublicationResponse: description: An API publication in a portal content: application/json: schema: description: An API publication in a portal type: object properties: auto_approve_registrations: $ref: '#/components/schemas/AutoApproveRegistrations' auth_strategy_ids: $ref: '#/components/schemas/ApiPublicationAuthStrategyIds' visibility: $ref: '#/components/schemas/ApiPublicationVisibility' created_at: $ref: '#/components/schemas/CreatedAt' updated_at: $ref: '#/components/schemas/UpdatedAt' additionalProperties: false required: - visibility - created_at - updated_at - auth_strategy_ids title: API Publication ApiImplementationResponse: description: An API implementation content: application/json: schema: description: An entity that implements an API type: object oneOf: - $ref: '#/components/schemas/ApiImplementationGatewayServiceEntity' required: - id - created_at - updated_at title: API Implementation UnsupportedMediaType: description: Unsupported Media Type content: application/problem+json: schema: $ref: '#/components/schemas/UnsupportedMediaTypeError' MeshAccessLogItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshAccessLogItem' MeshAccessLogList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshAccessLogItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshCircuitBreakerItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshCircuitBreakerItem' MeshCircuitBreakerList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshCircuitBreakerItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshFaultInjectionItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshFaultInjectionItem' MeshFaultInjectionList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshFaultInjectionItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshHealthCheckItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshHealthCheckItem' MeshHealthCheckList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshHealthCheckItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshHTTPRouteItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshHTTPRouteItem' MeshHTTPRouteList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshHTTPRouteItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshLoadBalancingStrategyItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshLoadBalancingStrategyItem' MeshLoadBalancingStrategyList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshLoadBalancingStrategyItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshMetricItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshMetricItem' MeshMetricList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshMetricItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshPassthroughItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshPassthroughItem' MeshPassthroughList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshPassthroughItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshProxyPatchItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshProxyPatchItem' MeshProxyPatchList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshProxyPatchItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshRateLimitItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshRateLimitItem' MeshRateLimitList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshRateLimitItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshRetryItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshRetryItem' MeshRetryList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshRetryItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTCPRouteItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTCPRouteItem' MeshTCPRouteList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTCPRouteItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTimeoutItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTimeoutItem' MeshTimeoutList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTimeoutItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTLSItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTLSItem' MeshTLSList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTLSItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTraceItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTraceItem' MeshTraceList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTraceItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTrafficPermissionItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTrafficPermissionItem' MeshTrafficPermissionList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTrafficPermissionItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshItem' MeshList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshGatewayItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshGatewayItem' MeshGatewayList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshGatewayItem' total: description: The total number of entities type: number next: description: URL to the next page type: string HostnameGeneratorItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/HostnameGeneratorItem' HostnameGeneratorList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/HostnameGeneratorItem' default: null nullable: true x-speakeasy-param-computed: false total: description: The total number of entities type: number default: null nullable: true x-speakeasy-param-computed: false next: description: URL to the next page type: string default: null nullable: true x-speakeasy-param-computed: false MeshExternalServiceItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshExternalServiceItem' MeshExternalServiceList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshExternalServiceItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshIdentityItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshIdentityItem' MeshIdentityList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshIdentityItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshMultiZoneServiceItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshMultiZoneServiceItem' MeshMultiZoneServiceList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshMultiZoneServiceItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshServiceItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshServiceItem' MeshServiceList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshServiceItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshTrustItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshTrustItem' MeshTrustList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshTrustItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshGlobalRateLimitItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshGlobalRateLimitItem' MeshGlobalRateLimitList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshGlobalRateLimitItem' total: description: The total number of entities type: number next: description: URL to the next page type: string MeshOPAItem: description: Successful response content: application/json: schema: $ref: '#/components/schemas/MeshOPAItem' MeshOPAList: description: List content: application/json: schema: type: object properties: items: type: array items: $ref: '#/components/schemas/MeshOPAItem' total: description: The total number of entities type: number next: description: URL to the next page type: string RetrieveMeshControlPlaneResponse: description: A response to creating a control plane. content: application/json: schema: $ref: '#/components/schemas/MeshControlPlane' CreateMeshControlPlaneResponse: description: A response to creating a control plane. content: application/json: schema: $ref: '#/components/schemas/MeshControlPlane' CreateMeshControlPlaneValidationError: description: Validation Error content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' PutMeshControlPlaneValidationError: description: Validation Error content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' DeleteMeshControlPlaneValidationError: description: Validation Error content: application/problem+json: schema: $ref: '#/components/schemas/BadRequestError' MeshControlPlaneForbiddenError: description: Permission denied content: application/problem+json: schema: $ref: '#/components/schemas/ForbiddenError' MeshControlPlaneUnauthorizedError: description: Unauthorized Error content: application/problem+json: schema: $ref: '#/components/schemas/UnauthorizedError' MeshControlPlaneNotFoundError: description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/NotFoundError' PutMeshControlPlaneResponse: description: A response to updating a control plane. content: application/json: schema: $ref: '#/components/schemas/MeshControlPlane' ListMeshControlPlanesResponse: description: A paginated list response for a collection of control planes. content: application/json: schema: type: object properties: meta: $ref: '#/components/schemas/PaginatedMeta' data: type: array items: $ref: '#/components/schemas/MeshControlPlane' title: ListMeshControlPlanesResponse Internal: description: Internal content: application/problem+json: schema: $ref: '#/components/schemas/BaseError' AuthServer: description: An auth server content: application/json: schema: $ref: '#/components/schemas/AuthServer' Claim: description: A claim content: application/json: schema: $ref: '#/components/schemas/Claim' Scope: description: A scope content: application/json: schema: $ref: '#/components/schemas/Scope' Client: description: A client content: application/json: schema: $ref: '#/components/schemas/Client' CreatedClient: description: A client with a secret content: application/json: schema: $ref: '#/components/schemas/CreatedClient' CreateGatewayResponse: description: A response to creating a gateway. content: application/json: schema: $ref: '#/components/schemas/EventGatewayInfo' UpdateGatewayResponse: description: A response to updating a gateway. content: application/json: schema: $ref: '#/components/schemas/EventGatewayInfo' NotAvailable: description: Service not available content: application/problem+json: schema: $ref: '#/components/schemas/BaseError' 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](https://cloud.konghq.com/global/account/tokens/) in the Konnect dashboard. The PAT 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 kpat_xgfT...'` 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 authenticate with. tags: - name: Portals description: APIs related to configuration of Konnect Developer Portals. - name: Portal Custom Domains description: APIs related to configuration of Konnect Developer Portals custom domains. - name: Portal Customization description: APIs related to customization of Konnect Developer Portals. - name: Portal Auth Settings description: APIs related to configuration of Konnect Developer Portal auth settings. - name: Portal Teams description: APIs related to configuration of Konnect Developer Portal developer teams. - name: Assets description: APIs for managing static assets for Konnect Developer Portals. - name: Pages description: APIs related to Konnect Developer Portal Custom Pages. - name: Snippets description: APIs related to Konnect Developer Portal Custom Snippets. - name: API - name: API Documentation - name: API Specification - name: API Publication - name: API Implementation - name: Mesh - name: Auth Server description: 'Auth Servers expose an OAuth 2.0 and OpenID Connect server interface for generating access tokens. The management API will give you the ability to create, configure and manage multiple Auth Servers per Konnect organization. Auth Servers are a regional Konnect entity.' - name: Auth Server Clients description: 'Clients represent the identity of machines, such as microservices, mobile apps, or scripts entity. The management API will give you the ability to create, configure and manage multiple Clients per Auth Server.' - name: Auth Server Claims description: 'Claims are statements about the Client, included in tokens issued by the Auth Server. The management API will give you the ability to create, configure and manage multiple Claims per Auth Server, and include them in tokens based on the requested Scopes.' - name: Auth Server Scopes description: 'Scopes define the extent of access that an access token grants to a Client. The management API will give you the ability to create, configure and manage multiple Scopes per Auth Server, and restrict their usage by Client.' - name: Dashboards - name: Houdini Event Gateways security: - personalAccessToken: [] - systemAccountAccessToken: [] - konnectAccessToken: [] x-speakeasy-retries: strategy: backoff backoff: initialInterval: 100 maxInterval: 500 maxElapsedTime: 500 statusCodes: - 404 - 408 - 429 - 500 - 502 - 503 - 504 retryConnectionErrors: true