openapi: 3.0.3 info: title: Gravitee.io APIM - Management API - APIs description: This is the OpenAPI specification for our new version of APIM Management API. contact: name: GraviteeSource Team url: https://gravitee.io email: team-apim@graviteesource.com license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html version: 2.0.0 security: - bearerAuth: [] servers: - url: '{protocol}://{managementAPIHost}/management/v2' description: APIM Management API v2 - Default base URL variables: protocol: description: The protocol you want to use to communicate with the mAPI default: https enum: - https - http managementAPIHost: description: The domain of the server hosting your Management API default: localhost:8083 - url: '{protocol}://{managementAPIHost}/management/v2/organizations/{orgId}' description: APIM Management API v2 - Base URL to target specific organizations variables: protocol: description: The protocol you want to use to communicate with the mAPI default: https enum: - https - http managementAPIHost: description: The domain of the server hosting your Management API default: localhost:8083 orgId: description: The unique ID of your organization default: DEFAULT tags: - name: APIs description: Everything about APIs - name: API Documentation description: Everything about API documentation pages - name: API Members description: Everything about API members - name: API Plans description: Everything about API plans - name: API Analytics description: Everything about API analytics - name: API Health description: Everything about API health - name: API Subscriptions description: Everything about API subscriptions - name: API Events description: Everything about API events - name: API Audits description: Everything about API audits - name: Groups description: Everything about groups - name: Integrations description: Everything about integration - name: Integration Members description: Everything about Integration members - name: Categories description: Everything about categories paths: /environments/{envId}/apis: parameters: - $ref: '#/components/parameters/envIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/apisSearchExpandsParam' tags: - APIs summary: List APIs description: 'List APIs Get the list of APIs for a specific environment.
The results are paginated.' operationId: listApis responses: '200': $ref: '#/components/responses/ApisResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_apis title: List Apis description: 'List APIs Get the list of APIs for a specific environment.
The results are paginated.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - APIs summary: Create an API description: 'Create an API ⚠️ Support only v4 API for the moment. ⚠️
Create a new API. For V4 PROXY APIs, provide listeners with HTTP paths and an http-proxy entrypoint, plus endpointGroups with an http-proxy endpoint. Example request body: {"name":"My API","apiVersion":"1.0","definitionVersion":"V4","type":"PROXY","listeners":[{"type":"HTTP","paths":[{"path":"/my-api"}],"entrypoints":[{"type":"http-proxy"}]}],"endpointGroups":[{"name":"default","type":"http-proxy","endpoints":[{"name":"backend","type":"http-proxy","configuration":{"target":"https://backend.example.com"}}]}]}' operationId: createApi requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateApiV4' required: true responses: '201': description: API successfully created content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api title: Create Api description: 'Create an API ⚠️ Support only v4 API for the moment. ⚠️
Create a new API. For V4 PROXY APIs, provide listeners with HTTP paths and an http-proxy entrypoint, plus endpointGroups with an http-proxy endpoint. Example request body: {"name":"My API","apiVersion":"1.0","definitionVersion":"V4","type":"PROXY","listeners":[{"type":"HTTP","paths":[{"path":"/my-api"}],"entrypoints":[{"type":"http-proxy"}]}],"endpointGroups":[{"name":"default","type":"http-proxy","endpoints":[{"name":"backend","type":"http-proxy","configuration":{"target":"https://backend.example.com"}}]}]}' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_import/swagger: parameters: - $ref: '#/components/parameters/envIdParam' post: tags: - APIs summary: Import API definition description: 'Import API definition ⚠️ Support only v4 API for the moment. ⚠️
Create an API by importing from an Open API descriptor.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' operationId: createApiFromSwagger requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportSwaggerDescriptor' required: true responses: '201': description: API successfully created content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_from_swagger title: Create Api From Swagger description: 'Import API definition ⚠️ Support only v4 API for the moment. ⚠️
Create an API by importing from an Open API descriptor.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_import/wsdl: parameters: - $ref: '#/components/parameters/envIdParam' post: tags: - APIs summary: Create API from WSDL description: 'Create API from WSDL Create a v4 HTTP Proxy API from a WSDL descriptor. The WSDL is converted to OpenAPI and processed through the v4 OAI import pipeline. Payload can be inline WSDL (type: INLINE) or a remote URL (type: URL).' operationId: createApiFromWsdl requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportWsdlDescriptor' required: true responses: '201': description: API successfully created content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_from_wsdl title: Create Api From Wsdl description: 'Create API from WSDL Create a v4 HTTP Proxy API from a WSDL descriptor. The WSDL is converted to OpenAPI and processed through the v4 OAI import pipeline. Payload can be inline WSDL (type: INLINE) or a remote URL (type: URL).' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_import/definition: parameters: - $ref: '#/components/parameters/envIdParam' post: tags: - APIs summary: Import API definition description: 'Import API definition ⚠️ Support only v4 API for the moment. ⚠️
Create an API by importing an API definition.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' operationId: createApiWithImportDefinition requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportApiV4' required: true responses: '201': description: API successfully created content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_with_import_definition title: Create Api With Import Definition description: 'Import API definition ⚠️ Support only v4 API for the moment. ⚠️
Create an API by importing an API definition.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_import/definition-url: parameters: - $ref: '#/components/parameters/envIdParam' post: tags: - APIs summary: Import API definition from a remote URL description: 'Import API definition from a remote URL ⚠️ Support only v4 API for the moment. ⚠️
Create an API by fetching an API definition from a remote URL.
The URL must be permitted by the configured import whitelist.' operationId: createApiWithImportDefinitionFromUrl requestBody: content: text/plain: schema: type: string format: uri example: https://example.com/api-definition.json required: true responses: '201': description: API successfully created content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_with_import_definition_from_url title: Create Api With Import Definition From Url description: 'Import API definition from a remote URL ⚠️ Support only v4 API for the moment. ⚠️
Create an API by fetching an API definition from a remote URL.
The URL must be permitted by the configured import whitelist.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_search: parameters: - $ref: '#/components/parameters/envIdParam' post: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/apiSortByParam' - $ref: '#/components/parameters/apisGetExpandsParam' - $ref: '#/components/parameters/apiManageOnlyParam' tags: - APIs summary: Search APIs description: 'Search APIs Search APIs for a specific environment.
The results are paginated and can be sorted.' operationId: searchApis requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiSearchQuery' required: true responses: '200': $ref: '#/components/responses/ApisResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: search_apis title: Search Apis description: 'Search APIs Search APIs for a specific environment.
The results are paginated and can be sorted.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_verify/paths: parameters: - $ref: '#/components/parameters/envIdParam' post: parameters: - $ref: '#/components/parameters/envIdParam' tags: - APIs summary: Verify HTTP API paths description: 'Verify HTTP API paths Verify paths before creating or updating a HTTP API.
This will check paths and hosts (depending on environment domain restrictions), and will check that path is not already used by other APIs in the environment.
The result will indicate if the paths are OK, and give the reason of the failure if they are not (path contains invalid chars, path is already covered by another API,...)' operationId: verifyPaths requestBody: content: application/json: schema: $ref: '#/components/schemas/VerifyApiPaths' required: true responses: '200': $ref: '#/components/responses/VerifyApiPathsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: verify_paths title: Verify Paths description: 'Verify HTTP API paths Verify paths before creating or updating a HTTP API.
This will check paths and hosts (depending on environment domain restrictions), and will check that path is not already used by other APIs in the environment.
The result will indicate if the paths are OK, and give the reason of the failure if they are not (path contains invalid chars, path is already covered by another API,...)' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/_verify/hosts: parameters: - $ref: '#/components/parameters/envIdParam' post: parameters: - $ref: '#/components/parameters/envIdParam' tags: - APIs summary: Verify TCP and Kafka API hosts description: 'Verify TCP and Kafka API hosts Verify hosts before creating or updating a TCP or Kafka API.
This will check it is not already used by other APIs in the environment.
The result will indicate if the hosts are OK, and give the reason of the failure if they are not.' operationId: verifyHosts requestBody: content: application/json: schema: $ref: '#/components/schemas/VerifyApiHosts' required: true responses: '200': $ref: '#/components/responses/VerifyApiHostsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: verify_hosts title: Verify Hosts description: 'Verify TCP and Kafka API hosts Verify hosts before creating or updating a TCP or Kafka API.
This will check it is not already used by other APIs in the environment.
The result will indicate if the hosts are OK, and give the reason of the failure if they are not.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - APIs summary: Get a specific API description: 'Get a specific API Get a specific API.' operationId: getApi responses: '200': description: API found content: application/json: schema: $ref: '#/components/schemas/Api' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api title: Get Api description: 'Get a specific API Get a specific API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false put: tags: - APIs summary: Update an API description: 'Update an API Update a V2 or a V4 API. Fetch the current API first, modify the complete API body, then submit the full update payload.' operationId: updateApi requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateApi' required: true responses: '200': description: API successfully updated content: application/json: schema: $ref: '#/components/schemas/Api' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api title: Update Api description: 'Update an API Update a V2 or a V4 API. Fetch the current API first, modify the complete API body, then submit the full update payload.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false patch: tags: - APIs summary: Patch a V4 HTTP Proxy API description: 'Patch a V4 HTTP Proxy API Partially update a V4 HTTP Proxy API using JSON Patch (RFC 6902) or JSON Merge Patch (RFC 7396). Only the following fields are patchable: name, description, apiVersion, visibility, labels, tags, lifecycleState, categories, groups, analytics, failover, flowExecution, flows, services, resources, endpointGroups,' operationId: patchApi parameters: - name: dryRun in: query required: false schema: type: boolean default: false requestBody: required: true content: application/merge-patch+json: schema: $ref: '#/components/schemas/ApiMergePatch' application/json: schema: $ref: '#/components/schemas/ApiMergePatch' application/json-patch+json: schema: $ref: '#/components/schemas/ApiJsonPatch' responses: '200': description: API successfully patched content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: patch_api title: Patch Api description: 'Patch a V4 HTTP Proxy API Partially update a V4 HTTP Proxy API using JSON Patch (RFC 6902) or JSON Merge Patch (RFC 7396). Only the following fields are patchable: name, description, apiVersion, visibility, labels, tags, lifecycleState, categories, groups, analytics, failover, flowExecution, flows, services, resources, endpointGroups,' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false delete: parameters: - name: closePlans in: query required: false description: 'Set to true to force deletion by closing API plans.
⚠️ Closed plans can''t be reopened and every active subscriptions will also be closed. ⚠️' schema: type: boolean tags: - APIs summary: Delete an API description: 'Delete an API Delete a V2 or a V4 API. High risk operation: require explicit user confirmation before execution.' operationId: deleteApi responses: '204': description: API successfully deleted default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_api title: Delete Api description: 'Delete an API Delete a V2 or a V4 API. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/background: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - APIs summary: Get an API's background picture description: 'Get an API''s background picture Get the API''s background picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: getApiBackground responses: '200': $ref: '#/components/responses/ImageResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_background title: Get Api Background description: 'Get an API''s background picture Get the API''s background picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - read - low-value readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: true put: tags: - APIs summary: Update an API's background description: 'Update an API''s background Update the API''s background. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: updateApiBackground requestBody: content: image/*: schema: type: string format: binary responses: '204': description: API background successfully updated default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_background title: Update Api Background description: 'Update an API''s background Update the API''s background. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: true delete: tags: - APIs summary: Delete an API's background description: 'Delete an API''s background Delete the API''s background. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: deleteApiBackground responses: '204': description: API background successfully deleted. default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_api_background title: Delete Api Background description: 'Delete an API''s background Delete the API''s background. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - dangerous - low-value readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/deployments: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Request a deployment to gateway instances description: 'Request a deployment to gateway instances Request a deployment for a given API.
An optional deployment label can be given to the requested deployment. Deploy after configuration or plan changes and before starting the API. Example request body: {"deploymentLabel":"release"}' operationId: createApiDeployment requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiDeployment' responses: '202': description: API deployment request received default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_deployment title: Create Api Deployment description: 'Request a deployment to gateway instances Request a deployment for a given API.
An optional deployment label can be given to the requested deployment. Deploy after configuration or plan changes and before starting the API. Example request body: {"deploymentLabel":"release"}' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/deployments/current: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - APIs summary: Get the current deployment of an API description: 'Get the current deployment of an API Get the current deployment of an API.' operationId: getCurrentApiDeployment responses: '200': description: Current API deployment found content: application/json: schema: type: object default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_current_api_deployment title: Get Current Api Deployment description: 'Get the current deployment of an API Get the current deployment of an API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/deployments/_verify: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - API Subscriptions summary: Check if a deployment is possible description: 'Check if a deployment is possible Check if an API deployment is possible given the API''s definition and license used by the organization.' operationId: verifyApiDeployment responses: '200': description: Verification successfully performed. content: application/json: schema: $ref: '#/components/schemas/VerifyApiDeploymentResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: verify_api_deployment title: Verify Api Deployment description: 'Check if a deployment is possible Check if an API deployment is possible given the API''s definition and license used by the organization.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/picture: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - APIs summary: Get an API's picture description: 'Get an API''s picture Get the API''s picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: getApiPicture responses: '200': $ref: '#/components/responses/ImageResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_picture title: Get Api Picture description: 'Get an API''s picture Get the API''s picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - read - low-value readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: true put: tags: - APIs summary: Update an API's picture description: 'Update an API''s picture Update the API''s picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: updateApiPicture requestBody: content: image/*: schema: type: string format: binary responses: '204': description: API picture successfully updated default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_picture title: Update Api Picture description: 'Update an API''s picture Update the API''s picture. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: true delete: tags: - APIs summary: Delete an API's picture description: 'Delete an API''s picture Delete the API''s picture. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: deleteApiPicture responses: '204': description: API picture successfully deleted. default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_api_picture title: Delete Api Picture description: 'Delete an API''s picture Delete the API''s picture. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - dangerous - low-value readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/metadata: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/apiMetadataSourceParam' - $ref: '#/components/parameters/apiMetadataSortByParam' tags: - APIs summary: Get metadata pertaining to API description: 'Get metadata pertaining to API Get the metadata that pertains to an API. Can be global and API metadata.' operationId: getApiMetadata responses: '200': $ref: '#/components/responses/MetadataResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_metadata title: Get Api Metadata description: 'Get metadata pertaining to API Get the metadata that pertains to an API. Can be global and API metadata.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_export/definition: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - name: excludeAdditionalData in: query required: false description: Exclude additional data from the API definition export schema: type: array items: type: string enum: - groups - members - metadata - pages - plans default: - groups - members - metadata - pages - plans tags: - APIs summary: Export an API description: 'Export an API ⚠️ Support only v4 API for the moment. ⚠️ Export an API to a JSON file. User should also have these permissions for specific data: - API_DEFINITION[READ] for the API - API_MEMBER[READ] for the API''s members - API_PLAN[READ] for the API''s plans' operationId: exportApiDefinition responses: '200': description: API deployment successfully deployed headers: Content-Disposition: schema: type: string example: attachment; filename="api-definition.json" content: application/json: schema: $ref: '#/components/schemas/ExportApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: export_api_definition title: Export Api Definition description: 'Export an API ⚠️ Support only v4 API for the moment. ⚠️ Export an API to a JSON file. User should also have these permissions for specific data: - API_DEFINITION[READ] for the API - API_MEMBER[READ] for the API''s members - API_PLAN[READ] for the API''s plans' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_import/definition: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' put: tags: - APIs summary: Update API from definition description: 'Update API from definition Update an existing API by importing a Gravitee API definition.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' operationId: updateApiWithDefinition requestBody: content: application/json: schema: $ref: '#/components/schemas/ExportApiV4' required: true responses: '200': description: API successfully updated content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_with_definition title: Update Api With Definition description: 'Update API from definition Update an existing API by importing a Gravitee API definition.
This definition can be retrieved from `GET /environments/{envId}/apis/{apiId}/_export/definition`' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_import/wsdl: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' put: tags: - APIs summary: Update API from WSDL descriptor description: 'Update API from WSDL descriptor Update an existing API by importing a WSDL descriptor.
The descriptor payload must be a valid WSDL 1.1 document, either as inline content or a remote URL.' operationId: updateApiFromWsdl requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportWsdlDescriptor' required: true responses: '200': description: API successfully updated content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_from_wsdl title: Update Api From Wsdl description: 'Update API from WSDL descriptor Update an existing API by importing a WSDL descriptor.
The descriptor payload must be a valid WSDL 1.1 document, either as inline content or a remote URL.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_import/definition-url: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' put: tags: - APIs summary: Update API from a definition fetched from a remote URL description: 'Update API from a definition fetched from a remote URL ⚠️ Support only v4 API for the moment. ⚠️
Update an existing API by fetching a Gravitee API definition from a remote URL.
The URL must be permitted by the configured import whitelist.' operationId: updateApiWithDefinitionFromUrl requestBody: content: text/plain: schema: type: string format: uri example: https://example.com/api-definition.json required: true responses: '200': description: API successfully updated content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_with_definition_from_url title: Update Api With Definition From Url description: 'Update API from a definition fetched from a remote URL ⚠️ Support only v4 API for the moment. ⚠️
Update an existing API by fetching a Gravitee API definition from a remote URL.
The URL must be permitted by the configured import whitelist.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_import/swagger: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' put: tags: - APIs summary: Update API from OpenAPI descriptor description: 'Update API from OpenAPI descriptor Update an existing API by importing an OpenAPI (Swagger) descriptor.
The descriptor payload must be a valid OpenAPI 2.x or 3.x document in JSON or YAML format.' operationId: updateApiFromSwagger requestBody: content: application/json: schema: $ref: '#/components/schemas/ImportSwaggerDescriptor' required: true responses: '200': description: API successfully updated content: application/json: schema: $ref: '#/components/schemas/ApiV4' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_from_swagger title: Update Api From Swagger description: 'Update API from OpenAPI descriptor Update an existing API by importing an OpenAPI (Swagger) descriptor.
The descriptor payload must be a valid OpenAPI 2.x or 3.x document in JSON or YAML format.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_start: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Start an API description: 'Start an API Change the API''s status to STARTED. Start only after the API has been deployed.' operationId: startApi responses: '204': description: API successfully started default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: start_api title: Start Api description: 'Start an API Change the API''s status to STARTED. Start only after the API has been deployed.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_migrate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - name: mode in: query required: false description: Migrate in dry run. schema: type: string enum: - DRY_RUN - FORCE post: tags: - APIs summary: Migrate an API x-experimental: true description: 'Migrate an API ⚠️ Experimental endpoints - subject to change Migrate an APIv2 to APIv4. High risk operation: require explicit user confirmation before execution.' operationId: migrateApi responses: '200': $ref: '#/components/responses/MigrationReportResponses' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: migrate_api title: Migrate Api description: 'Migrate an API ⚠️ Experimental endpoints - subject to change Migrate an APIv2 to APIv4. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_promote: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Promote an API description: 'Promote an API Promote the API to another environment. High risk operation: require explicit user confirmation before execution.' operationId: promoteApi requestBody: content: application/json: schema: $ref: '#/components/schemas/PromotionRequest' required: true responses: '200': description: Promotion successfully created content: application/json: schema: $ref: '#/components/schemas/Promotion' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: promote_api title: Promote Api description: 'Promote an API Promote the API to another environment. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_stop: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Stop an API description: 'Stop an API Change the API''s status to STOPPED. High risk operation: require explicit user confirmation before execution. Stops gateway instances for the API; use only when traffic should stop.' operationId: stopApi responses: '204': description: API successfully stopped default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: stop_api title: Stop Api description: 'Stop an API Change the API''s status to STOPPED. High risk operation: require explicit user confirmation before execution. Stops gateway instances for the API; use only when traffic should stop.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_transfer-ownership: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Transfer the ownership of the API description: 'Transfer the ownership of the API Transfer the ownership of the API to a user, a group or an api member. Return a 404 HTTP Error if API cannot be found. High risk operation: require explicit user confirmation before execution.' operationId: transferOwnership requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiTransferOwnership' required: true responses: '204': description: Ownership has been transfered successfully default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: transfer_ownership title: Transfer Ownership description: 'Transfer the ownership of the API Transfer the ownership of the API to a user, a group or an api member. Return a 404 HTTP Error if API cannot be found. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_duplicate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Duplicate an API description: 'Duplicate an API Create a new API from an existing one. Context-path is required for HTTP APIs and host is required for TCP APIs. If one of these fields is missing, then it returns a 400 Bad Request.' operationId: duplicateApi requestBody: content: application/json: schema: $ref: '#/components/schemas/DuplicateApiOptions' required: true responses: '200': description: API successfully duplicated content: application/json: schema: $ref: '#/components/schemas/Api' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: duplicate_api title: Duplicate Api description: 'Duplicate an API Create a new API from an existing one. Context-path is required for HTTP APIs and host is required for TCP APIs. If one of these fields is missing, then it returns a 400 Bad Request.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/_rollback: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Rollback an API description: 'Rollback an API Rollback an API to a previous version. High risk operation: require explicit user confirmation before execution.' operationId: rollbackApi requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiRollback' required: true responses: '204': description: API successfully rollbacked default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: rollback_api title: Rollback Api description: 'Rollback an API Rollback an API to a previous version. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/exposedEntrypoints: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - APIs summary: Get Exposed API Entrypoints description: 'Get Exposed API Entrypoints Get the list of exposed API entry points. This list represents the API''s usable entrypoints that can be used by a client. It takes into account tags associated with the API or configured AccessPoint.' operationId: exposedEntrypoints responses: '200': $ref: '#/components/responses/ExposedEntrypointResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: exposed_entrypoints title: Exposed Entrypoints description: 'Get Exposed API Entrypoints Get the list of exposed API entry points. This list represents the API''s usable entrypoints that can be used by a client. It takes into account tags associated with the API or configured AccessPoint.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/reviews/_ask: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Ask for a review description: Ask for a review operationId: reviewsAsk requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiReview' required: true responses: '204': description: API successfully change review state default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: reviews_ask title: Reviews Ask description: Ask for a review scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/reviews/_accept: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Accept a review description: Accept a review operationId: reviewsAccept requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiReview' required: true responses: '204': description: API successfully change review state default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: reviews_accept title: Reviews Accept description: Accept a review scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/reviews/_reject: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Reject a review description: 'Reject a review High risk operation: require explicit user confirmation before execution.' operationId: reviewsReject requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiReview' required: true responses: '204': description: API successfully change review state default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: reviews_reject title: Reviews Reject description: 'Reject a review High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/primaryowner: parameters: - $ref: '#/components/parameters/envIdParam' get: tags: - API Members summary: Get the API's primary owner userId description: 'Get the API''s primary owner userId Get the API Primary Owner userId. If the primary owner is a group, then the userId of the primary owner user within that group will be returned, not the groupId. The userId is wrapper into a Member object, but no other properties are returned.' operationId: getApiPrimaryOwner responses: '200': description: Primary owner returned successfully content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/Member default: $ref: '#/components/responses/Error' parameters: - $ref: '#/components/parameters/apiIdParam' x-speakeasy-mcp: name: get_api_primary_owner title: Get Api Primary Owner description: 'Get the API''s primary owner userId Get the API Primary Owner userId. If the primary owner is a group, then the userId of the primary owner user within that group will be returned, not the groupId. The userId is wrapper into a Member object, but no other properties are returned.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/members: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Members summary: Get the API's members description: 'Get the API''s members List the members for a given API.' operationId: listApiMembers responses: '200': $ref: ./openapi-environments.yaml#/components/responses/MembersResponse default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_api_members title: List Api Members description: 'Get the API''s members List the members for a given API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - API Members summary: Add a member to an API. description: 'Add a member to an API. Add a new member to an API. Returns a 400 HTTP Error:' operationId: addApiMember requestBody: content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/AddMember required: true responses: '201': description: Member successfully added content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/Member default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: add_api_member title: Add Api Member description: 'Add a member to an API. Add a new member to an API. Returns a 400 HTTP Error:' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/members/{memberId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: ./openapi-environments.yaml#/components/parameters/memberId put: tags: - API Members summary: Updates a member for an API. description: 'Updates a member for an API. Edit a member for an API. Returns a 400 HTTP Error:' operationId: updateApiMember requestBody: content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/UpdateMember required: true responses: '200': description: Membership successfully edited. content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/Member default: $ref: '#/components/responses/Error' parameters: - &id001 name: memberId in: path required: true description: The memberId path parameter. schema: type: string x-speakeasy-mcp: name: update_api_member title: Update Api Member description: 'Updates a member for an API. Edit a member for an API. Returns a 400 HTTP Error:' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false delete: tags: - API Members summary: Remove one API member description: 'Remove one API member Remove an API member. Returns a 400 HTTP Error: High risk operation: require explicit user confirmation before execution.' operationId: removeApiMember responses: '204': description: API member successfully removed default: $ref: '#/components/responses/Error' parameters: - *id001 x-speakeasy-mcp: name: remove_api_member title: Remove Api Member description: 'Remove one API member Remove an API member. Returns a 400 HTTP Error: High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/plans: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - name: statuses in: query required: false description: List of status filters schema: type: array items: $ref: '#/components/schemas/PlanStatus' default: - published explode: false - name: securities in: query required: false description: List of security plan type filters schema: type: array items: $ref: '#/components/schemas/PlanSecurityType' explode: false - name: mode in: query required: false description: Mode of plan schema: $ref: '#/components/schemas/PlanMode' - name: subscribableBy in: query required: false description: Application's identifier. Allow user to get API's plans subscribable by an application. schema: type: string - name: fields in: query description: Nested fields of data to return in plans. schema: type: array items: type: string enum: - flow - -flow default: - flow explode: false style: form - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Plans summary: List the API's plans description: 'List the API''s plans List plans for a given API, always filtered by a `status` and the possibility to filter by `security`.
The results are paginated.' operationId: listApiPlans responses: '200': $ref: '#/components/responses/PlansResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_api_plans title: List Api Plans description: 'List the API''s plans List plans for a given API, always filtered by a `status` and the possibility to filter by `security`.
The results are paginated.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - API Plans summary: Create an API's plan description: 'Create an API''s plan Create a new plan on a given API. Plans are created in STAGING status. Publish the plan before deployment when the API should receive traffic. Example request body: {"definitionVersion":"V4","name":"Keyless","security":{"type":"KEY_LESS"},"mode":"STANDARD","validation":"AUTO"}' operationId: createApiPlan requestBody: content: application/json: schema: $ref: '#/components/schemas/CreatePlan' required: true responses: '201': description: Plan successfully created content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_plan title: Create Api Plan description: 'Create an API''s plan Create a new plan on a given API. Plans are created in STAGING status. Publish the plan before deployment when the API should receive traffic. Example request body: {"definitionVersion":"V4","name":"Keyless","security":{"type":"KEY_LESS"},"mode":"STANDARD","validation":"AUTO"}' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/plans/{planId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/planIdParam' get: tags: - API Plans summary: Get one API's plan description: 'Get one API''s plan Get the API''s plan by its identifier.' operationId: getApiPlan responses: '200': description: An API's plan headers: ETag: description: 'Entity tag identifying the plan version. Value is the plan''s last-updated timestamp expressed as epoch milliseconds (quoted per RFC 7232). Clients may pass this value back in `If-Match` on subsequent mutating requests to detect concurrent updates.' schema: type: string example: '"1705314645123"' Last-Modified: description: 'Plan''s last-updated timestamp as an RFC 7231 HTTP-date (one-second resolution). Informational only. Use the `ETag` value, not `Last-Modified`, for `If-Match` requests — `Last-Modified` loses millisecond precision.' schema: type: string example: Mon, 15 Jan 2024 10:30:45 GMT content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_plan title: Get Api Plan description: 'Get one API''s plan Get the API''s plan by its identifier.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false put: tags: - API Plans summary: Update one API's plan description: 'Update one API''s plan Update the API''s plan.' operationId: updateApiPlan requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdatePlan' required: true responses: '200': description: API's plan successfully updated content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_plan title: Update Api Plan description: 'Update one API''s plan Update the API''s plan.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false patch: tags: - API Plans summary: Partially update one API's plan description: 'Partially update one API''s plan Apply a partial update to an API''s plan using JSON Merge Patch (RFC 7396) or JSON Patch (RFC 6902). Only v4 HTTP Proxy API plans support this operation. Only the following fields are patchable: name, description, security (configuration only),' operationId: patchApiPlan parameters: - name: dryRun in: query required: false schema: type: boolean default: false - name: If-Match in: header required: false description: 'Optional optimistic-concurrency precondition. Supply the plan''s current ETag (as returned by a prior read or patch). If the plan was modified since that ETag was read, the request is rejected with 412.' schema: type: string requestBody: content: application/merge-patch+json: schema: type: object application/json-patch+json: schema: type: array items: type: object application/json: schema: type: object required: true responses: '200': description: API's plan successfully patched headers: ETag: description: 'Entity tag identifying the plan version. Value is the plan''s last-updated timestamp expressed as epoch milliseconds (quoted per RFC 7232). Clients may pass this value back in `If-Match` on subsequent mutating requests to detect concurrent updates.' schema: type: string example: '"1705314645123"' Last-Modified: description: 'Plan''s last-updated timestamp as an RFC 7231 HTTP-date (one-second resolution). Informational only. Use the `ETag` value, not `Last-Modified`, for `If-Match` requests — `Last-Modified` loses millisecond precision.' schema: type: string example: Mon, 15 Jan 2024 10:30:45 GMT content: application/json: schema: $ref: '#/components/schemas/Plan' '400': description: 'Invalid patch request — for example targeting the status field or any other non-allow-listed field, a malformed patch body, or a plan that is not a v4 HTTP Proxy plan.' content: application/json: schema: $ref: '#/components/schemas/Error' '404': description: No plan with the given identifier exists for this API (including a plan that belongs to a different API). content: application/json: schema: $ref: '#/components/schemas/Error' '412': description: The If-Match precondition failed — the plan was modified since the supplied ETag was read. content: application/json: schema: $ref: '#/components/schemas/Error' '415': description: 'Unsupported media type. The request body must be sent with one of application/json, application/merge-patch+json, or application/json-patch+json.' content: application/json: schema: $ref: '#/components/schemas/Error' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: patch_api_plan title: Patch Api Plan description: 'Partially update one API''s plan Apply a partial update to an API''s plan using JSON Merge Patch (RFC 7396) or JSON Patch (RFC 6902). Only v4 HTTP Proxy API plans support this operation. Only the following fields are patchable: name, description, security (configuration only),' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false delete: tags: - API Plans summary: Delete one API's plan description: 'Delete one API''s plan Delete the API''s plan. High risk operation: require explicit user confirmation before execution.' operationId: deleteApiPlan responses: '204': description: API's plan successfully deleted default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_api_plan title: Delete Api Plan description: 'Delete one API''s plan Delete the API''s plan. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/plans/{planId}/_close: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/planIdParam' post: tags: - API Plans summary: Close an API's plan description: 'Close an API''s plan Close the API''s plan. High risk operation: require explicit user confirmation before execution.' operationId: closeApiPlan responses: '200': description: API's plan successfully closed content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: close_api_plan title: Close Api Plan description: 'Close an API''s plan Close the API''s plan. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/plans/{planId}/_deprecate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/planIdParam' post: tags: - API Plans summary: Deprecate an API's plan description: 'Deprecate an API''s plan Deprecate the API''s plan.' operationId: deprecateApiPlan responses: '200': description: API's plan successfully deprecated content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: deprecate_api_plan title: Deprecate Api Plan description: 'Deprecate an API''s plan Deprecate the API''s plan.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/plans/{planId}/_publish: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/planIdParam' post: tags: - API Plans summary: Publish an API's plan description: 'Publish an API''s plan Publish the API''s plan.' operationId: publishApiPlan responses: '200': description: API's plan successfully published content: application/json: schema: $ref: '#/components/schemas/Plan' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: publish_api_plan title: Publish Api Plan description: 'Publish an API''s plan Publish the API''s plan.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/groups: parameters: - $ref: '#/components/parameters/envIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - Groups summary: List of environment groups description: 'List of environment groups List the groups of a given environment.' operationId: listGroups responses: '200': $ref: '#/components/responses/GroupsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_groups title: List Groups description: 'List of environment groups List the groups of a given environment.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/groups/_search: parameters: - $ref: '#/components/parameters/envIdParam' post: tags: - Groups summary: Search for groups using filters description: 'Search for groups using filters Search for groups using filters.' operationId: searchGroups parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' requestBody: content: application/json: schema: $ref: '#/components/schemas/GroupSearchParams' responses: '200': $ref: '#/components/responses/GroupsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: search_groups title: Search Groups description: 'Search for groups using filters Search for groups using filters.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/groups/{groupId}/members: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/groupIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - Groups summary: List a group's members description: 'List a group''s members List the members of a given group.' operationId: listGroupMembers responses: '200': $ref: ./openapi-environments.yaml#/components/responses/MembersResponse default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_group_members title: List Group Members description: 'List a group''s members List the members of a given group.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/integrations: parameters: - $ref: '#/components/parameters/envIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - Integrations summary: List Integrations description: 'List Integrations Get the list of Integration for a specific environment.
The results are paginated.' operationId: listIntegrations responses: '200': $ref: '#/components/responses/IntegrationsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_integrations title: List Integrations description: 'List Integrations Get the list of Integration for a specific environment.
The results are paginated.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - Integrations summary: Create an Integration description: 'Create an Integration Create a new Integration. The response body will not contain Agent Status. To get it you should use getIntegration operation.' operationId: createIntegration requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateIntegration' required: true responses: '201': description: Integration successfully created content: application/json: schema: $ref: '#/components/schemas/Integration' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_integration title: Create Integration description: 'Create an Integration Create a new Integration. The response body will not contain Agent Status. To get it you should use getIntegration operation.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' get: tags: - Integrations summary: Get a specific Integration description: 'Get a specific Integration Get a specific Integration.' operationId: getIntegration responses: '200': description: Integration found content: application/json: schema: $ref: '#/components/schemas/Integration' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_integration title: Get Integration description: 'Get a specific Integration Get a specific Integration.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false put: tags: - Integrations summary: Update Integration description: 'Update Integration Update specific Integration. The response body will not contain Agent Status. To get it you should use getIntegration operation.' operationId: updateIntegration requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateIntegration' required: true responses: '200': description: Integration updated content: application/json: schema: $ref: '#/components/schemas/Integration' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_integration title: Update Integration description: 'Update Integration Update specific Integration. The response body will not contain Agent Status. To get it you should use getIntegration operation.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false delete: tags: - Integrations summary: Delete Integration description: 'Delete Integration Delete specific integration To delete integration user must have ENVIRONMENT_INTEGRATION[DELETE] permission. Deletion is not possible if there is any federated API associated. High risk operation: require explicit user confirmation before execution.' operationId: deleteIntegration responses: '204': description: Integration deleted default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_integration title: Delete Integration description: 'Delete Integration Delete specific integration To delete integration user must have ENVIRONMENT_INTEGRATION[DELETE] permission. Deletion is not possible if there is any federated API associated. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}/_ingest: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' post: tags: - Integrations summary: Ingest APIs for a specific Integration description: 'Ingest APIs for a specific Integration Ingest all APIs for a specific Integration.' operationId: ingestIntegration requestBody: content: application/json: schema: $ref: '#/components/schemas/ApisIngest' responses: '200': description: Ingestion successful content: application/json: schema: $ref: '#/components/schemas/IntegrationIngestionResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: ingest_integration title: Ingest Integration description: 'Ingest APIs for a specific Integration Ingest all APIs for a specific Integration.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}/_preview: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' get: tags: - Integrations summary: Preview APIs to ingest for a specific Integration description: 'Preview APIs to ingest for a specific Integration Preview APIs to ingest before actual ingestion. to perform ingestion preview.' operationId: previewIntegration responses: '200': description: Preview successful content: application/json: schema: $ref: '#/components/schemas/IngestionPreviewResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: preview_integration title: Preview Integration description: 'Preview APIs to ingest for a specific Integration Preview APIs to ingest before actual ingestion. to perform ingestion preview.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}/apis: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - Integrations summary: Get list of ingested APIs associated to integration description: 'Get list of ingested APIs associated to integration Get a list of all APIs that were ingested from 3rd party provider using this integration.' operationId: ingestedApis responses: '200': $ref: '#/components/responses/IngestedApisResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: ingested_apis title: Ingested Apis description: 'Get list of ingested APIs associated to integration Get a list of all APIs that were ingested from 3rd party provider using this integration.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false delete: tags: - Integrations summary: Delete ingested APIs associated to integration description: 'Delete ingested APIs associated to integration Delete APIs that were ingested from 3rd party provider using this integration. To delete APIs user must have ENVIRONMENT_API[DELETE] permission. Only unpublished APIs will deleted. APIs that are published will be omitted! High risk operation: require explicit user confirmation before execution.' operationId: deleteIngestedApis responses: '200': $ref: '#/components/responses/DeletedIngestedApisResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_ingested_apis title: Delete Ingested Apis description: 'Delete ingested APIs associated to integration Delete APIs that were ingested from 3rd party provider using this integration. To delete APIs user must have ENVIRONMENT_API[DELETE] permission. Only unpublished APIs will deleted. APIs that are published will be omitted! High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}/members: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - Integration Members summary: Get the Integration's members description: 'Get the Integration''s members List the members for a given Integration.' operationId: listIntegrationMembers responses: '200': $ref: ./openapi-environments.yaml#/components/responses/MembersResponse default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_integration_members title: List Integration Members description: 'Get the Integration''s members List the members for a given Integration.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - Integration Members summary: Add a member to an Integration. description: 'Add a member to an Integration. Add a new member to an Integration. Returns a 400 HTTP Error:' operationId: addIntegrationMember requestBody: content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/AddMember required: true responses: '201': description: Member successfully added content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/Member default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: add_integration_member title: Add Integration Member description: 'Add a member to an Integration. Add a new member to an Integration. Returns a 400 HTTP Error:' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/integrations/{integrationId}/members/{memberId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/integrationIdParam' - $ref: ./openapi-environments.yaml#/components/parameters/memberId put: tags: - Integration Members summary: Updates a member for an Integration. description: 'Updates a member for an Integration. Edit a member for an Integration. Returns a 400 HTTP Error:' operationId: updateIntegrationMember requestBody: content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/UpdateMember required: true responses: '200': description: Membership successfully edited. content: application/json: schema: $ref: ./openapi-environments.yaml#/components/schemas/Member default: $ref: '#/components/responses/Error' parameters: - *id001 x-speakeasy-mcp: name: update_integration_member title: Update Integration Member description: 'Updates a member for an Integration. Edit a member for an Integration. Returns a 400 HTTP Error:' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false delete: tags: - Integration Members summary: Remove one Integration member description: 'Remove one Integration member Remove an Integration member. Returns a 400 HTTP Error: High risk operation: require explicit user confirmation before execution.' operationId: removeIntegrationMember responses: '204': description: Integration member successfully removed default: $ref: '#/components/responses/Error' parameters: - *id001 x-speakeasy-mcp: name: remove_integration_member title: Remove Integration Member description: 'Remove one Integration member Remove an Integration member. Returns a 400 HTTP Error: High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscribers: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - name: name description: 'Name to use to filter subscribers.
Can be a part of a name.
For example, `foo` will match `foo`, `foobar` and `barfoo`.' in: query schema: type: string - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Subscriptions summary: Get the API's subscribers description: 'Get the API''s subscribers List applications that have subscribed to a given API.
The results are paginated.' operationId: getApiSubscribers responses: '200': $ref: '#/components/responses/SubscribersResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_subscribers title: Get Api Subscribers description: 'Get the API''s subscribers List applications that have subscribed to a given API.
The results are paginated.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - name: applicationIds description: List of application ids to filter on. in: query explode: false schema: type: array items: type: string - name: planIds description: List of plan ids to filter on. in: query explode: false schema: type: array items: type: string - name: statuses in: query required: false description: List of status filters. explode: false schema: type: array items: $ref: '#/components/schemas/SubscriptionStatus' - name: apiKey in: query description: API Key associated to the subscription to filter on. schema: type: string - name: expands in: query description: Expansion of data to return in subscriptions. schema: type: array items: type: string enum: - api - application - plan - subscribedBy explode: false - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Subscriptions summary: Get the API's subscriptions description: 'Get the API''s subscriptions List subscriptions for a given API, always filtered by a `status` and the possibility to filter by `security`.' operationId: getApiSubscriptions responses: '200': $ref: '#/components/responses/SubscriptionsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_subscriptions title: Get Api Subscriptions description: 'Get the API''s subscriptions List subscriptions for a given API, always filtered by a `status` and the possibility to filter by `security`.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false post: tags: - API Subscriptions summary: Subscribe to an API's plan description: 'Subscribe to an API''s plan Create a new subscription on a given API.' operationId: createApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateSubscription' required: true responses: '201': description: Subscription successfully created content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_api_subscription title: Create Api Subscription description: 'Subscribe to an API''s plan Create a new subscription on a given API.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/_export: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - name: applicationIds description: List of application ids to filter on. in: query explode: false schema: type: array items: type: string - name: planIds description: List of plan ids to filter on. in: query explode: false schema: type: array items: type: string - name: statuses in: query required: false description: List of status filters. explode: false schema: type: array items: $ref: '#/components/schemas/SubscriptionStatus' - name: apiKey in: query description: API Key associated to the subscription to filter on. schema: type: string - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Subscriptions summary: Export API subscriptions as CSV description: 'Export API subscriptions as CSV Export API subscriptions to a CSV file.' operationId: exportApiSubscriptions responses: '200': description: API subscriptions successfully exported. headers: Content-Disposition: schema: type: string example: attachment;filename="filename=subscriptions-51fdbabf-ab0c-3dc6-b3c1-77c99d96b535-1686772361126.csv" content: text/csv: {} default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: export_api_subscriptions title: Export Api Subscriptions description: 'Export API subscriptions as CSV Export API subscriptions to a CSV file.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/_verify: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - API Subscriptions summary: Check a subscription can be created description: 'Check a subscription can be created Check a subscription can be created with given API Key, and application.' operationId: verifyCreateApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/VerifySubscription' required: true responses: '200': description: Verification successfully performed. content: application/json: schema: $ref: '#/components/schemas/VerifySubscriptionResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: verify_create_api_subscription title: Verify Create Api Subscription description: 'Check a subscription can be created Check a subscription can be created with given API Key, and application.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' get: tags: - API Subscriptions parameters: - name: expands in: query description: Expansion of data to return in subscriptions. schema: type: array items: type: string enum: - api - application - plan - subscribedBy summary: Get one API's subscription description: 'Get one API''s subscription Get the API''s subscription by its identifier.' operationId: getApiSubscription responses: '200': description: An API's subscription content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_subscription title: Get Api Subscription description: 'Get one API''s subscription Get the API''s subscription by its identifier.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false put: tags: - API Subscriptions summary: Update one API's subscription description: 'Update one API''s subscription Update the API''s subscription.' operationId: updateApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateSubscription' required: true responses: '200': description: API's subscription successfully updated content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_subscription title: Update Api Subscription description: 'Update one API''s subscription Update the API''s subscription.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_close: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Close one API's subscription description: 'Close one API''s subscription Close the API''s subscription. High risk operation: require explicit user confirmation before execution.' operationId: closeApiSubscription responses: '200': description: API's subscription successfully closed content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: close_api_subscription title: Close Api Subscription description: 'Close one API''s subscription Close the API''s subscription. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_pause: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Pause one API's subscription description: 'Pause one API''s subscription Pause the API''s subscription.' operationId: pauseApiSubscription responses: '200': description: API's subscription successfully paused content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: pause_api_subscription title: Pause Api Subscription description: 'Pause one API''s subscription Pause the API''s subscription.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_resume: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Resume a paused API's subscription description: 'Resume a paused API''s subscription Resume a previously paused subscription.' operationId: resumeApiSubscription responses: '200': description: API's subscription successfully resumed content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: resume_api_subscription title: Resume Api Subscription description: 'Resume a paused API''s subscription Resume a previously paused subscription.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_accept: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Accept an API subscription description: 'Accept an API subscription Accept an API subscription with an optional starting / ending dates and reason.' operationId: acceptApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/AcceptSubscription' required: true responses: '200': description: API's subscription successfully accepted content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: accept_api_subscription title: Accept Api Subscription description: 'Accept an API subscription Accept an API subscription with an optional starting / ending dates and reason.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_reject: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Reject an API subscription description: 'Reject an API subscription Reject an API subscription with an optional reason. High risk operation: require explicit user confirmation before execution.' operationId: rejectApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/RejectSubscription' required: true responses: '200': description: API's subscription successfully rejected content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: reject_api_subscription title: Reject Api Subscription description: 'Reject an API subscription Reject an API subscription with an optional reason. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/_transfer: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Transfer an API subscription description: 'Transfer an API subscription Transfer an API subscription to another plan.
The targeted plan must be published and must have the same security type. Transfer cannot be performed if general conditions apply to the targeted plan. High risk operation: require explicit user confirmation before execution.' operationId: transferApiSubscription requestBody: content: application/json: schema: $ref: '#/components/schemas/TransferSubscription' required: true responses: '200': description: API's subscription successfully transferred content: application/json: schema: $ref: '#/components/schemas/Subscription' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: transfer_api_subscription title: Transfer Api Subscription description: 'Transfer an API subscription Transfer an API subscription to another plan.
The targeted plan must be published and must have the same security type. Transfer cannot be performed if general conditions apply to the targeted plan. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/api-keys: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' get: tags: - API Subscriptions summary: Get subscription's API Keys description: 'Get subscription''s API Keys Get the subscription API Keys.' operationId: getApiSubscriptionApiKeys responses: '200': $ref: '#/components/responses/SubscriptionApiKeysResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_subscription_api_keys title: Get Api Subscription Api Keys description: 'Get subscription''s API Keys Get the subscription API Keys.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/api-keys/_renew: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' post: tags: - API Subscriptions summary: Renew the subscription API Keys. description: 'Renew the subscription API Keys. Renew the subscription API Key by setting an expiration date on the existing active API Keys and creating a new API Key.
The newly created API Key is returned in response.' operationId: renewApiSubscriptionApiKeys requestBody: content: application/json: schema: $ref: '#/components/schemas/RenewApiKey' required: true responses: '200': description: API's subscription API Key successfully renewed content: application/json: schema: $ref: '#/components/schemas/ApiKey' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: renew_api_subscription_api_keys title: Renew Api Subscription Api Keys description: 'Renew the subscription API Keys. Renew the subscription API Key by setting an expiration date on the existing active API Keys and creating a new API Key.
The newly created API Key is returned in response.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/api-keys/{apiKeyId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' - $ref: '#/components/parameters/apiKeyIdParam' put: tags: - API Subscriptions summary: Update a subscription API Key description: 'Update a subscription API Key Update the subscription API Key.' operationId: updateApiSubscriptionApiKey requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateApiKey' required: true responses: '200': description: The subscription API Key. content: application/json: schema: $ref: '#/components/schemas/ApiKey' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_api_subscription_api_key title: Update Api Subscription Api Key description: 'Update a subscription API Key Update the subscription API Key.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/api-keys/{apiKeyId}/_revoke: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' - $ref: '#/components/parameters/apiKeyIdParam' post: tags: - API Subscriptions summary: Revoke a subscription API Key description: 'Revoke a subscription API Key Revoke the subscription API Key by setting the revocation date to the current date and flagging it as revoked.
A notification will be sent to the subscriber according to his portal notification options. High risk operation: require explicit user confirmation before execution.' operationId: revokeApiSubscriptionApiKey responses: '200': description: The revoked subscription API Key. content: application/json: schema: $ref: '#/components/schemas/ApiKey' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: revoke_api_subscription_api_key title: Revoke Api Subscription Api Key description: 'Revoke a subscription API Key Revoke the subscription API Key by setting the revocation date to the current date and flagging it as revoked.
A notification will be sent to the subscriber according to his portal notification options. High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/subscriptions/{subscriptionId}/api-keys/{apiKeyId}/_reactivate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/subscriptionIdParam' - $ref: '#/components/parameters/apiKeyIdParam' post: tags: - API Subscriptions summary: Reactivate subscription API Key description: 'Reactivate subscription API Key Reactivate the revoked or expired subscription API Key.' operationId: reactivateApiSubscriptionApiKey responses: '200': description: The reactivated subscription API Key. content: application/json: schema: $ref: '#/components/schemas/ApiKey' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: reactivate_api_subscription_api_key title: Reactivate Api Subscription Api Key description: 'Reactivate subscription API Key Reactivate the revoked or expired subscription API Key.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API Analytics summary: Perform analytics on API data description: 'Perform analytics on API data Perform analytics on API data based on the provided query parameters.' operationId: performApiAnalytics parameters: - name: from in: query required: false description: Start timestamp (epoch millis) schema: type: integer format: int64 - name: to in: query required: false description: End timestamp (epoch millis) schema: type: integer format: int64 - name: interval in: query required: false description: Interval in milliseconds schema: type: integer format: int64 - name: field in: query required: false description: Field to aggregate on schema: type: string - name: size in: query required: false description: Size of the result set schema: type: integer format: int32 - name: type in: query required: false description: Type of analytics (STATS, COUNT, HISTOGRAM, GROUP_BY) schema: $ref: '#/components/schemas/AnalyticsType' - name: ranges in: query required: false description: Ranges for aggregation, e.g. "100:199;200:299" schema: type: string - name: aggregations in: query required: false description: Aggregations to apply, e.g. "avg:response-time,avg:api-response-time" schema: type: string - name: order in: query required: false description: "Parameter format `:`.\ \ \nExample: `-avg:gateway-response-time-ms` will sort descending by average\ \ response time, \n`count:_key` will order ascending by count in bucket." schema: type: string - name: query in: query required: false description: Custom search query schema: type: string - name: terms description: Optional filters like plan-id, application-id applied in the dashboard, e.g. "plan-id:xyz,application-id:abc" in: query explode: false schema: type: array items: type: string responses: '200': $ref: '#/components/responses/ApiAnalyticsResponse' default: description: Unexpected error content: application/json: schema: $ref: '#/components/schemas/Error' x-speakeasy-mcp: name: perform_api_analytics title: Perform Api Analytics description: 'Perform analytics on API data Perform analytics on API data based on the provided query parameters.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/requests-count: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics deprecated: true summary: Get API Analytics requests count description: 'Get API Analytics requests count Get API analytics request count. TCP Proxy APIs are not supported.' operationId: getApiAnalyticsRequestCount responses: '200': $ref: '#/components/responses/ApiAnalyticsRequestsCountResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_analytics_request_count title: Get Api Analytics Request Count description: 'Get API Analytics requests count Get API analytics request count. TCP Proxy APIs are not supported.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/average-messages-per-request: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics summary: Get API Analytics average messages per request description: 'Get API Analytics average messages per request Get API analytics average messages per request.' operationId: getAverageMessagesPerRequest responses: '200': $ref: '#/components/responses/ApiAnalyticsAverageMessagesPerRequestResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_average_messages_per_request title: Get Average Messages Per Request description: 'Get API Analytics average messages per request Get API analytics average messages per request.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/average-connection-duration: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics deprecated: true summary: Get API Analytics average connection duration description: 'Get API Analytics average connection duration Get API analytics average connection duration. Duration is only computed for ended requests. TCP Proxy APIs are not supported.' operationId: getAverageConnectionDuration responses: '200': $ref: '#/components/responses/ApiAnalyticsAverageConnectionDurationResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_average_connection_duration title: Get Average Connection Duration description: 'Get API Analytics average connection duration Get API analytics average connection duration. Duration is only computed for ended requests. TCP Proxy APIs are not supported.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/response-status-ranges: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics deprecated: true summary: Get API Analytics response status counts description: 'Get API Analytics response status counts Get API analytics response status counts. Response statuses are grouped by endpoint and status code hundreds.' operationId: getResponseStatusCodes responses: '200': $ref: '#/components/responses/ApiAnalyticsResponseStatusRangesResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_response_status_codes title: Get Response Status Codes description: 'Get API Analytics response status counts Get API analytics response status counts. Response statuses are grouped by endpoint and status code hundreds.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/response-time-over-time: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics deprecated: true summary: Get API Analytics average response time description: Get API Analytics average response time operationId: getResponseTimeOverTime responses: '200': $ref: '#/components/responses/ApiAnalyticsOverPeriodResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_response_time_over_time title: Get Response Time Over Time description: Get API Analytics average response time scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/response-status-overtime: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Analytics deprecated: true summary: Get API Analytics response status counts over time description: 'Get API Analytics response status counts over time Get API analytics response status counts over time.' operationId: getResponseStatusOvertime responses: '200': $ref: '#/components/responses/ApiAnalyticsResponseStatusOvertimeResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_response_status_overtime title: Get Response Status Overtime description: 'Get API Analytics response status counts over time Get API analytics response status counts over time.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/analytics/{requestId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/requestIdParam' get: tags: - API Analytics summary: Get API metric for a request description: 'Get API metric for a request Get API metric for a request.' operationId: getApiMetricsDetail responses: '200': $ref: '#/components/responses/ApiMetricsDetailResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_metrics_detail title: Get Api Metrics Detail description: 'Get API metric for a request Get API metric for a request.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - $ref: '#/components/parameters/applicationIds' - $ref: '#/components/parameters/planIds' - $ref: '#/components/parameters/methods' - name: apiProductIds in: query description: Filter by API Product IDs. Only supported for v4 APIs. explode: false schema: type: array items: type: string example: - f5e6a5a0-1234-4b3a-9c1e-aabbccddeeff - $ref: '#/components/parameters/errorKeys' tags: - API Analytics summary: Get API logs description: 'Get API logs Get API logs.' operationId: getApiLogs responses: '200': $ref: '#/components/responses/ApiLogsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_logs title: Get Api Logs description: 'Get API logs Get API logs.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/error-keys: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API Analytics summary: Get API log error keys description: 'Get API log error keys Returns a list of distinct error keys found in connection logs for the specified API.' operationId: getApiLogErrorKeys parameters: - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' responses: '200': description: List of error keys. content: application/json: schema: type: array items: type: string default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_log_error_keys title: Get Api Log Error Keys description: 'Get API log error keys Returns a list of distinct error keys found in connection logs for the specified API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/{requestId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/requestIdParam' get: tags: - API Analytics summary: Get API log for a request description: 'Get API log for a request Get API log for a request.' operationId: getApiLog responses: '200': $ref: '#/components/responses/ApiLogResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_log title: Get Api Log description: 'Get API log for a request Get API log for a request.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/{requestId}/messages: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/requestIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' tags: - API Analytics summary: Get API Aggregated Messages logs (with endpoint and entrypoint messages) description: 'Get API Aggregated Messages logs (with endpoint and entrypoint messages) Get API Aggregated Messages logs (with endpoint and entrypoint messages).' operationId: getApiAggregatedMessageLogs responses: '200': $ref: '#/components/responses/ApiAggregatedMessageLogsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_aggregated_message_logs title: Get Api Aggregated Message Logs description: 'Get API Aggregated Messages logs (with endpoint and entrypoint messages) Get API Aggregated Messages logs (with endpoint and entrypoint messages).' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/messages: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/messageLogsConnectorType' - $ref: '#/components/parameters/messageLogsConnectorId' - $ref: '#/components/parameters/messageLogsOperation' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' tags: - API Analytics summary: Get API Messages logs description: 'Get API Messages logs Get API Messages logs. Allow filtering.' operationId: getApiMessageLogs responses: '200': $ref: '#/components/responses/ApiMessageLogsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_message_logs title: Get Api Message Logs description: 'Get API Messages logs Get API Messages logs. Allow filtering.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/native: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API Analytics summary: Get native API connection logs description: 'Get native API connection logs Returns the paginated list of native API connection log entries for the API.' operationId: getNativeApiLogs parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - name: from in: query required: true description: The timestamp from which the logs will be returned. schema: type: integer format: int64 - name: to in: query required: true description: The timestamp to which the logs will be returned. schema: type: integer format: int64 - $ref: '#/components/parameters/applicationIds' - $ref: '#/components/parameters/planIds' - name: connectionStatuses in: query description: Filter by native connection status. explode: false schema: type: array items: type: string enum: - CONNECTED - CONNECTION_ERROR - SESSION_ERROR - INTERNAL_ERROR example: - CONNECTED - CONNECTION_ERROR responses: '200': $ref: '#/components/responses/NativeApiLogsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_native_api_logs title: Get Native Api Logs description: 'Get native API connection logs Returns the paginated list of native API connection log entries for the API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/native/summary: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API Analytics summary: Get analytics for native API connection logs description: 'Get analytics for native API connection logs Returns the count of native API connection lifecycle events grouped by connection status.' operationId: getNativeApiLogsSummary parameters: - name: from in: query required: true description: The timestamp from which the logs will be returned. schema: type: integer format: int64 - name: to in: query required: true description: The timestamp to which the logs will be returned. schema: type: integer format: int64 responses: '200': $ref: '#/components/responses/NativeApiLogsSummaryResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_native_api_logs_summary title: Get Native Api Logs Summary description: 'Get analytics for native API connection logs Returns the count of native API connection lifecycle events grouped by connection status.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/logs/native/{requestId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/requestIdParam' get: tags: - API Analytics summary: Get a native API connection log for a request description: 'Get a native API connection log for a request Returns the native API connection log entry for the given request.' operationId: getNativeApiLog parameters: - name: from in: query required: true description: The timestamp from which the log will be returned. schema: type: integer format: int64 - name: to in: query required: true description: The timestamp to which the log will be returned. schema: type: integer format: int64 responses: '200': $ref: '#/components/responses/NativeApiLogResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_native_api_log title: Get Native Api Log description: 'Get a native API connection log for a request Returns the native API connection log entry for the given request.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/health/average-response-time: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - $ref: '#/components/parameters/healthField' get: tags: - API Health summary: Get API Health Check average response time description: 'Get API Health Check average response time Get API Health Check average response time.' operationId: getApiHealthAverageResponseTime responses: '200': $ref: '#/components/responses/ApiHealthAverageResponseTimeResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_health_average_response_time title: Get Api Health Average Response Time description: 'Get API Health Check average response time Get API Health Check average response time.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/health/average-response-time-overtime: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' get: tags: - API Health summary: Get API Health Check average response time overtime description: 'Get API Health Check average response time overtime Get API Health Check average response time overtime.' operationId: getApiHealthAverageResponseTimeOvertime responses: '200': $ref: '#/components/responses/ApiHealthAverageResponseTimeOvertimeResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_health_average_response_time_overtime title: Get Api Health Average Response Time Overtime description: 'Get API Health Check average response time overtime Get API Health Check average response time overtime.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/health/availability: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - $ref: '#/components/parameters/healthField' get: tags: - API Health summary: Get API availability by endpoint or by gateway description: 'Get API availability by endpoint or by gateway Get API Health availability.' operationId: getApiAvailability responses: '200': $ref: '#/components/responses/ApiHealthAvailabilityResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_availability title: Get Api Availability description: 'Get API availability by endpoint or by gateway Get API Health availability.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/health/logs: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - in: query name: success schema: type: boolean description: Filter logs by success status get: tags: - API Health summary: Get API Health Check logs description: 'Get API Health Check logs Get API Health Check average response time overtime.' operationId: getApiHealthLogs responses: '200': $ref: '#/components/responses/ApiHealthLogsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_health_logs title: Get Api Health Logs description: 'Get API Health Check logs Get API Health Check average response time overtime.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/audits: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - $ref: '#/components/parameters/auditEvents' tags: - API Audits summary: Get API Audit description: 'Get API Audit Get API Audit.' operationId: getApiAudits responses: '200': $ref: '#/components/responses/AuditsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_audits title: Get Api Audits description: 'Get API Audit Get API Audit.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/audits/events: get: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' tags: - API Audits summary: List available audit event type for API description: 'List available audit event type for API List available audit event type for API.' operationId: ListApiAuditEvents responses: '200': $ref: '#/components/responses/AuditEventsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_api_audit_events title: List Api Audit Events description: 'List available audit event type for API List available audit event type for API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/events: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - $ref: '#/components/parameters/from' - $ref: '#/components/parameters/to' - $ref: '#/components/parameters/eventTypes' tags: - API Events summary: Get API Events description: 'Get API Events Get API Events.' operationId: getApiEvents responses: '200': $ref: '#/components/responses/EventsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_events title: Get Api Events description: 'Get API Events Get API Events.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/events/{eventId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/eventIdParam' get: tags: - API Events summary: Get single API Event by it's ID description: 'Get single API Event by it''s ID Get specific single API Event.' operationId: getApiEventById responses: '200': $ref: '#/components/responses/EventResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_event_by_id title: Get Api Event By Id description: 'Get single API Event by it''s ID Get specific single API Event.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/pages: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: parameters: - $ref: '#/components/parameters/parentId' tags: - API Documentation summary: Get API documentation pages description: 'Get API documentation pages Get API documentation pages. When no parentId is specified, returns all the pages of the API. When parentId is specified (either ID of a folder, or ''ROOT''), only the pages with the given parent are returned, and the breadcrumb of the specified folder is added to the response. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: getApiPages responses: '200': $ref: '#/components/responses/ApiDocumentationPagesResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_pages title: Get Api Pages description: 'Get API documentation pages Get API documentation pages. When no parentId is specified, returns all the pages of the API. When parentId is specified (either ID of a folder, or ''ROOT''), only the pages with the given parent are returned, and the breadcrumb of the specified folder is added to the response. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - read - low-value readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: true post: tags: - API Documentation summary: Create API documentation page description: 'Create API documentation page Create API documentation. The result will be the created page or folder. Only MARKDOWN and FOLDER types are supported. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: createDocumentationPage requestBody: content: application/json: schema: $ref: '#/components/schemas/CreateDocumentation' required: true responses: '201': description: Created API Documentation content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: create_documentation_page title: Create Documentation Page description: 'Create API documentation page Create API documentation. The result will be the created page or folder. Only MARKDOWN and FOLDER types are supported. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/pages/{pageId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/pageIdParam' get: tags: - API Documentation summary: Get API Documentation Page description: 'Get API Documentation Page Get API Documentation Page by ID. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: getApiPage responses: '200': description: API Documentation Page content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_page title: Get Api Page description: 'Get API Documentation Page Get API Documentation Page by ID. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - read - low-value readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: true put: tags: - API Documentation summary: Update API documentation page description: 'Update API documentation page Update API documentation. The result will be the updated documentation. Only MARKDOWN and FOLDER types are supported. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: updateDocumentationPage requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateDocumentation' required: true responses: '200': description: API Documentation Updated content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_documentation_page title: Update Documentation Page description: 'Update API documentation page Update API documentation. The result will be the updated documentation. Only MARKDOWN and FOLDER types are supported. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: true openWorldHint: false disabled: true delete: tags: - API Documentation summary: Delete API documentation page description: 'Delete API documentation page Delete API documentation page. A FOLDER will be deleted only if it is empty. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: deleteDocumentationPage responses: '204': description: API Documentation page deleted default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: delete_documentation_page title: Delete Documentation Page description: 'Delete API documentation page Delete API documentation page. A FOLDER will be deleted only if it is empty. High risk operation: require explicit user confirmation before execution. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - dangerous - low-value readOnlyHint: false destructiveHint: true idempotentHint: true openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/pages/{pageId}/_publish: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/pageIdParam' post: tags: - API Documentation summary: Publish API Documentation Page description: 'Publish API Documentation Page Publish API Documentation Page. Returns the published page. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: publishDocumentationPage responses: '200': description: API Documentation Page content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: publish_documentation_page title: Publish Documentation Page description: 'Publish API Documentation Page Publish API Documentation Page. Returns the published page. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/pages/{pageId}/_unpublish: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/pageIdParam' post: tags: - API Documentation summary: Unpublish API Documentation Page description: 'Unpublish API Documentation Page Unpublish API Documentation Page. Returns the unpublished page. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: unpublishDocumentationPage responses: '200': description: API Documentation Page content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: unpublish_documentation_page title: Unpublish Documentation Page description: 'Unpublish API Documentation Page Unpublish API Documentation Page. Returns the unpublished page. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/pages/{pageId}/_fetch: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' - $ref: '#/components/parameters/pageIdParam' post: tags: - API Documentation summary: Fetch Content of API Documentation Page description: 'Fetch Content of API Documentation Page Fetch Content of API Documentation Page. Returns the page with newly fetched content. The page must have a configured source, otherwise an error is returned. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' operationId: fetchDocumentationPage responses: '200': description: API Documentation Page content: application/json: schema: $ref: '#/components/schemas/Page' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: fetch_documentation_page title: Fetch Documentation Page description: 'Fetch Content of API Documentation Page Fetch Content of API Documentation Page. Returns the page with newly fetched content. The page must have a configured source, otherwise an error is returned. Low-value for routine assistant workflows; prefer higher-level API inspection tools first.' scopes: - write - low-value readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: true /environments/{envId}/apis/{apiId}/spec-gen/_state: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API SpecGen summary: Evaluate the state of the API SpecGen description: Evaluate the state of the API SpecGen operationId: getSpecGenState responses: '200': description: API Scoring trigger response content: application/json: schema: $ref: '#/components/schemas/ApiSpecGenRequestState' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_spec_gen_state title: Get Spec Gen State description: Evaluate the state of the API SpecGen scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/spec-gen/_start: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API SpecGen summary: Starts the API SpecGen description: Starts the API SpecGen operationId: post responses: '200': description: API Scoring trigger response content: application/json: schema: $ref: '#/components/schemas/ApiSpecGenRequestState' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: post title: Post description: Starts the API SpecGen scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/scoring/_evaluate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - API Scoring summary: Trigger API Scoring description: 'Trigger API Scoring Trigger API Scoring.' operationId: triggerApiScoring responses: '202': description: API Scoring trigger response content: application/json: schema: $ref: '#/components/schemas/ApiScoringTriggerResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: trigger_api_scoring title: Trigger Api Scoring description: 'Trigger API Scoring Trigger API Scoring.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/scoring: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' get: tags: - API Scoring summary: Get API Scoring description: 'Get API Scoring Get API Scoring. Return a 404 HTTP Response status if API was never evaluated.' operationId: getApiScoring responses: '200': description: API Scoring content: application/json: schema: $ref: '#/components/schemas/ApiScoring' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_scoring title: Get Api Scoring description: 'Get API Scoring Get API Scoring. Return a 404 HTTP Response status if API was never evaluated.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/categories/{categoryIdOrKey}/apis: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/categoryIdOrKeyParam' get: tags: - Categories parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' description: Page of APIs within a Category operationId: getCategoryApisPage responses: '200': $ref: '#/components/responses/CategoryApisResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_category_apis_page title: Get Category Apis Page description: Page of APIs within a Category scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/categories/{categoryIdOrKey}/apis/{apiId}: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/categoryIdOrKeyParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - Categories description: Update a specified API within a Category operationId: updateCategoryApi requestBody: content: application/json: schema: $ref: '#/components/schemas/UpdateCategoryApi' required: true responses: '200': description: The updated CategoryApi content: application/json: schema: $ref: '#/components/schemas/CategoryApi' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: update_category_api title: Update Category Api description: Update a specified API within a Category scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/async-jobs: parameters: - $ref: '#/components/parameters/envIdParam' get: parameters: - $ref: '#/components/parameters/pageParam' - $ref: '#/components/parameters/perPageParam' - name: sourceId in: query required: true description: SourceId to filter schema: type: string - name: status in: query required: true description: Status to filter schema: $ref: '#/components/schemas/AsyncJobStatus' tags: - AsyncJobs summary: List Async Jobs description: 'List Async Jobs Get the list of AsyncJobs.' operationId: listAsyncJob responses: '200': $ref: '#/components/responses/AsyncJobsResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: list_async_job title: List Async Job description: 'List Async Jobs Get the list of AsyncJobs.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/el/_generate: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - newtai summary: Generate Expression Language description: 'Generate Expression Language Generate Expression Language.' operationId: generateEl requestBody: content: application/json: schema: $ref: '#/components/schemas/GenerateExpressionLanguage' required: true responses: '200': $ref: '#/components/responses/GenerateExpressionLanguageResponse' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: generate_el title: Generate El description: 'Generate Expression Language Generate Expression Language.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/el/feedback: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - newtai summary: Submit Newt AI generated Expression Language feedback description: 'Submit Newt AI generated Expression Language feedback Submit feedback for the Newt AI generated Expression Language.' operationId: feedbackEl requestBody: content: application/json: schema: $ref: '#/components/schemas/ExpressionLanguageFeedback' required: true responses: '204': description: Feedback successfully submitted default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: feedback_el title: Feedback El description: 'Submit Newt AI generated Expression Language feedback Submit feedback for the Newt AI generated Expression Language.' scopes: - write readOnlyHint: false destructiveHint: false idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/debug: parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' post: tags: - APIs summary: Debug an API on gateway instances description: 'Debug an API on gateway instances High risk operation: require explicit user confirmation before execution.' operationId: debugApi requestBody: content: application/json: schema: $ref: '#/components/schemas/DebugHttpRequest' required: true responses: '202': description: API Debug request successfully sent content: application/json: schema: $ref: '#/components/schemas/DebugEvent' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: debug_api title: Debug Api description: 'Debug an API on gateway instances High risk operation: require explicit user confirmation before execution.' scopes: - write - dangerous readOnlyHint: false destructiveHint: true idempotentHint: false openWorldHint: false disabled: false /environments/{envId}/apis/{apiId}/api-products: get: tags: - API Product summary: Get API Products for an API description: 'Get API Products for an API Returns the list of API Products that include the specified API.' operationId: getApiProductsForApi parameters: - $ref: '#/components/parameters/envIdParam' - $ref: '#/components/parameters/apiIdParam' responses: '200': description: List of API Products that include this API content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/ApiProductInfo' default: $ref: '#/components/responses/Error' x-speakeasy-mcp: name: get_api_products_for_api title: Get Api Products For Api description: 'Get API Products for an API Returns the list of API Products that include the specified API.' scopes: - read readOnlyHint: true destructiveHint: false idempotentHint: true openWorldHint: false disabled: false components: schemas: ApiMergePatch: type: object description: 'A JSON Merge Patch document (RFC 7396) for partially updating a V4 HTTP Proxy API. Only patchable fields are accepted.' additionalProperties: true ApiJsonPatch: type: array description: 'A JSON Patch document (RFC 6902) for partially updating a V4 HTTP Proxy API. Only operations targeting patchable fields are accepted.' items: type: object additionalProperties: true Analytics: type: object properties: enabled: type: boolean description: Whether or not analytics is enabled. default: true sampling: $ref: '#/components/schemas/Sampling' logging: $ref: '#/components/schemas/LoggingV4' tracing: $ref: '#/components/schemas/TracingV4' reporterMetricsEnabled: type: boolean description: 'Enable the connection-metrics reporter on the gateway. Only applicable to Native v4 APIs; ignored on HTTP v4 requests and omitted from HTTP v4 responses. Server-side default for Native v4 on create is `true`. Independent of the parent `enabled` flag: event-metrics reporting and the connection-metrics reporter are gated separately.' otelLogs: $ref: '#/components/schemas/OtelLogsV4' Api: oneOf: - $ref: '#/components/schemas/ApiV2' - $ref: '#/components/schemas/ApiV4' - $ref: '#/components/schemas/ApiFederated' - $ref: '#/components/schemas/ApiFederatedAgent' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/ApiV2' V4: '#/components/schemas/ApiV4' FEDERATED: '#/components/schemas/ApiFederated' FEDERATED_AGENT: '#/components/schemas/ApiFederatedAgent' BaseApi: type: object properties: id: type: string description: API's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: API's name. Duplicate names can exists. example: My Api description: type: string description: API's description. A short description of your API. example: I can use many characters to describe this API. BaseApiProduct: type: object properties: id: type: string description: API Product's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: API Product's name. example: My API Product description: type: string description: API Product's description. example: A bundle of public APIs. GenericApi: type: object allOf: - $ref: '#/components/schemas/BaseApi' - properties: crossId: type: string description: API's crossId. Identifies API across environments. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 apiVersion: type: string description: API's version. It's a simple string only used in the portal. example: v1.0 definitionVersion: $ref: '#/components/schemas/DefinitionVersion' deployedAt: type: string format: date-time description: The last date (as timestamp) when the API was deployed. example: 1581256457163 createdAt: type: string format: date-time description: The date (as timestamp) when the API was created. example: 1581256457163 updatedAt: type: string format: date-time description: The last date (as timestamp) when the API was updated. example: 1581256457163 disableMembershipNotifications: type: boolean description: Disable membership notifications. default: false metadata: type: object description: API metadata as key-value pairs, populated only when `expands=metadata` is requested. additionalProperties: true groups: type: array description: List of group IDs associated with this API. Used to manage team access. example: - 6c530064-0b2c-4004-9300-640b2ce0047b - 12559b64-0b2c-4004-9300-640b2ce0047b items: type: string state: type: string description: The state of the API regarding the gateway(s). example: STARTED enum: - CLOSED - INITIALIZED - STARTED - STOPPED - STOPPING deploymentState: type: string description: The deployment state of the API regarding the gateway(s). example: DEPLOYED enum: - NEED_REDEPLOY - DEPLOYED visibility: $ref: '#/components/schemas/Visibility' labels: type: array description: The free list of labels associated with this API. example: - json - read_only - awesome items: type: string lifecycleState: $ref: '#/components/schemas/ApiLifecycleState' tags: type: array description: The list of sharding tags associated with this API. example: - public - private items: type: string primaryOwner: $ref: '#/components/schemas/PrimaryOwner' categories: type: array description: The list of category keys associated with this API. example: - health - media items: type: string originContext: $ref: '#/components/schemas/BaseOriginContext' definitionContext: $ref: '#/components/schemas/DefinitionContext' workflowState: $ref: '#/components/schemas/ApiWorkflowState' responseTemplates: type: object additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/ResponseTemplate' resources: type: array items: $ref: '#/components/schemas/Resource' properties: type: array items: $ref: '#/components/schemas/Property' _links: $ref: '#/components/schemas/ApiLinks' required: - definitionVersion discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/ApiV2' V4: '#/components/schemas/ApiV4' FEDERATED: '#/components/schemas/ApiFederated' FEDERATED_AGENT: '#/components/schemas/ApiFederatedAgent' ApiV2: type: object title: ApiV2 allOf: - $ref: '#/components/schemas/GenericApi' - properties: environmentId: type: string description: The environment's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 executionMode: $ref: '#/components/schemas/ExecutionMode' contextPath: type: string description: The context path of the API. example: /my-api proxy: $ref: '#/components/schemas/Proxy' flowMode: $ref: '#/components/schemas/FlowMode' flows: type: array description: The list of flows associated with this API. items: $ref: '#/components/schemas/FlowV2' services: $ref: '#/components/schemas/ApiServicesV2' pathMappings: type: array description: The list of path mappings associated with this API. items: type: string entrypoints: type: array description: The list of entrypoints associated with this API. items: $ref: '#/components/schemas/ApiEntrypoint' ApiV4: type: object title: ApiV4 allOf: - $ref: '#/components/schemas/GenericApi' - properties: type: $ref: '#/components/schemas/ApiType' listeners: type: array description: The list of listeners associated with this API. items: $ref: '#/components/schemas/Listener' endpointGroups: type: array items: $ref: '#/components/schemas/EndpointGroupV4' analytics: $ref: '#/components/schemas/Analytics' failover: $ref: '#/components/schemas/FailoverV4' flowExecution: $ref: '#/components/schemas/FlowExecution' flows: type: array items: $ref: '#/components/schemas/FlowV4' services: $ref: '#/components/schemas/ApiServices' allowedInApiProducts: type: boolean description: Indicates whether this API is allowed to be used in API Products. Only applicable for V4 HTTP Proxy APIs. default: false example: false allowMultiJwtOauth2Subscriptions: type: boolean description: Allow an application to subscribe to more than one JWT/OAuth2 plan (V4 only). default: false ApiFederated: type: object title: ApiFederated allOf: - $ref: '#/components/schemas/GenericApi' ApiFederatedAgent: type: object title: ApiFederatedAgent allOf: - $ref: '#/components/schemas/GenericApi' - properties: url: type: string documentationUrl: type: string provider: type: object properties: organization: type: string url: type: string defaultInputModes: type: array items: type: string defaultOutputModes: type: array items: type: string capabilities: type: array items: type: string securitySchemes: type: object description: Security scheme details used for authenticating with this agent. security: type: object description: Security requirements for contacting the agent. skills: type: array description: The list of listeners associated with this API. items: type: object properties: id: type: string description: Unique skill identifier within this agent. name: type: string description: type: string tags: type: array items: type: string examples: type: array items: type: string inputModes: type: array items: type: string outputModes: type: array items: type: string required: - id - name - description - tags DebugHttpRequest: type: object title: DebugHttpRequest properties: path: type: string description: The path of the request. example: /my-api method: type: string description: The HTTP method of the request. example: GET body: type: string description: The body of the request. example: '{"key":"value"}' headers: type: object description: The headers of the request. additionalProperties: type: array items: type: string DebugEvent: type: object title: DebugEvent properties: id: type: string description: The ID of the event. example: 59327494-7258-4cd0-8715-144abe903531 type: type: string description: The type of the event. example: DEBUG_API createdAt: type: string format: date-time description: The date (as timestamp) when the event was created. example: 1581256457163 payload: type: string description: The payload of the event. properties: type: object description: Properties of the event additionalProperties: type: string ApiLinks: type: object properties: pictureUrl: type: string description: The URL to the API's picture. example: https://gravitee.example.com/management/v2/environments/00f8c9e7-78fc-4907-b8c9-e778fc790750/apis/6c530064-0b2c-4004-9300-640b2ce0047b/picture backgroundUrl: type: string description: The URL to the API's background. example: https://gravitee.example.com/management/v2/environments/00f8c9e7-78fc-4907-b8c9-e778fc790750/apis/6c530064-0b2c-4004-9300-640b2ce0047b/background ApiTransferOwnership: type: object properties: userId: type: string description: The new primary owner ID (user's technical identifier). Can be null if userReference is defined. userReference: type: string description: The new primary owner reference (user's reference provided by an identity provider). Can be null if userId is defined. userType: $ref: '#/components/schemas/MembershipMemberType' poRole: type: string description: The name of the role that will be assigned to the current primary owner after the transfer. ApiRollback: type: object properties: eventId: type: string description: The event ID to rollback to. CreateApi: oneOf: - $ref: '#/components/schemas/CreateApiV2' - $ref: '#/components/schemas/CreateApiV4' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/CreateApiV2' V4: '#/components/schemas/CreateApiV4' CreateGenericApi: type: object properties: name: type: string description: API's name. Duplicate names can exists. example: My Api minLength: 1 apiVersion: type: string description: API's version. It's a simple string only used in the portal. example: v1.0 minLength: 1 description: type: string description: API's description. A short description of your API. example: I can use many characters to describe this API. visibility: $ref: '#/components/schemas/Visibility' definitionVersion: $ref: '#/components/schemas/DefinitionVersion' groups: type: array description: List of group IDs associated with this API. Used to manage team access. example: - 6c530064-0b2c-4004-9300-640b2ce0047b - 12559b64-0b2c-4004-9300-640b2ce0047b items: type: string required: - name - apiVersion - definitionVersion discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/CreateApiV2' V4: '#/components/schemas/CreateApiV4' CreateApiV2: type: object title: CreateApiV2 allOf: - $ref: '#/components/schemas/CreateGenericApi' - properties: contextPath: type: string description: API's context path. It's the base path of your API. example: /my-api minLength: 3 endpoint: type: string description: API's endpoint. It's the base URL of your API. example: https://my-api.mycompany.com minLength: 1 flows: type: array items: $ref: '#/components/schemas/FlowV2' flowMode: $ref: '#/components/schemas/FlowMode' required: - contextPath - endpoint CreateApiV4: type: object title: CreateApiV4 allOf: - $ref: '#/components/schemas/CreateGenericApi' - properties: type: $ref: '#/components/schemas/ApiType' tags: type: array description: The list of sharding tags associated with this API. example: - public - private items: type: string uniqueItems: true listeners: type: array description: The list of listeners associated with this API. items: $ref: '#/components/schemas/Listener' minItems: 1 endpointGroups: type: array items: $ref: '#/components/schemas/EndpointGroupV4' minItems: 1 analytics: $ref: '#/components/schemas/Analytics' failover: $ref: '#/components/schemas/FailoverV4' flowExecution: $ref: '#/components/schemas/FlowExecution' flows: type: array items: $ref: '#/components/schemas/FlowV4' allowedInApiProducts: type: boolean description: Indicates whether this API is allowed to be used in API Products. Only applicable for V4 HTTP Proxy APIs. default: true example: true required: - listeners - endpointGroups - type DuplicateApiOptions: type: object properties: contextPath: type: string description: The context path of the duplicated API (required for HTTP APIs). host: type: string description: The host of the duplicated API (required for TCP APIs). version: type: string description: The version of the duplicated API. If it is not defined, the value of the source API is used. filteredFields: type: array description: The list of API fields that can be excluded to create the new API. items: type: string enum: - GROUPS - PLANS - MEMBERS - PAGES uniqueItems: true required: - filteredFields ExportApiV4: type: object properties: export: type: object properties: date: type: string format: date-time description: The datetime of export. example: 2023-05-25 12:40:46.184000+00:00 apimVersion: type: string description: API management version of export. api: $ref: '#/components/schemas/ApiV4' members: type: array description: The list of members associated with this API. items: $ref: ./openapi-environments.yaml#/components/schemas/Member uniqueItems: true metadata: type: array description: The list of API's metadata. items: $ref: '#/components/schemas/Metadata' uniqueItems: true pages: type: array description: The list of pages associated with this API. items: $ref: '#/components/schemas/Page' uniqueItems: true plans: type: array description: The list of plans associated with this API. items: $ref: '#/components/schemas/PlanV4' uniqueItems: true apiPicture: type: string format: base64 description: The API's picture. apiBackground: type: string format: base64 description: The API's background. apiMedia: type: array description: The list of API's media used in pages. items: $ref: '#/components/schemas/Media' ImportWsdlDescriptor: type: object required: - payload properties: payload: type: string description: Inline WSDL content (when type is INLINE) or a remote URL (when type is URL). type: type: string description: Whether the payload is inline WSDL or a remote URL. enum: - INLINE - URL default: INLINE withDocumentation: type: boolean description: Generate a Swagger documentation page from the converted OpenAPI spec. withOASValidationPolicy: type: boolean description: Add an OAS Validation policy to every flow. withPolicies: type: array description: Policy visitor IDs to apply (e.g. rest-to-soap, json-validation, mock, validate-request, xml-validation). items: type: string uniqueItems: true ImportSwaggerDescriptor: type: object properties: payload: type: string description: The Swagger/OpenAPI content. withDocumentation: type: boolean description: Create documentation based on Swagger/OpenAPI specification. withOASValidationPolicy: type: boolean description: Add an OpenAPI Specification validation policy based on OpenAPI specification. withPolicies: type: array description: Policy visitor IDs to apply during OpenAPI import. items: type: string uniqueItems: true withPolicyPaths: type: boolean description: Create a flow for each path declared in the OpenAPI specification. UpdateApi: oneOf: - $ref: '#/components/schemas/UpdateApiV2' - $ref: '#/components/schemas/UpdateApiV4' - $ref: '#/components/schemas/UpdateApiFederated' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/UpdateApiV2' V4: '#/components/schemas/UpdateApiV4' FEDERATED: '#/components/schemas/UpdateApiFederated' UpdateGenericApi: type: object properties: name: type: string description: API's name. Duplicate names can exists. example: My Api minLength: 1 apiVersion: type: string description: API's version. It's a simple string only used in the portal. example: v1.0 minLength: 1 description: type: string description: API's description. A short description of your API. example: I can use many characters to describe this API. definitionVersion: $ref: '#/components/schemas/DefinitionVersion' groups: type: array description: List of group IDs associated with this API. Used to manage team access. example: - 6c530064-0b2c-4004-9300-640b2ce0047b - 12559b64-0b2c-4004-9300-640b2ce0047b items: type: string tags: type: array description: The list of sharding tags associated with this API. example: - public - private items: type: string resources: type: array items: $ref: '#/components/schemas/Resource' responseTemplates: type: object additionalProperties: type: object additionalProperties: $ref: '#/components/schemas/ResponseTemplate' visibility: $ref: '#/components/schemas/Visibility' categories: type: array description: The list of category ids or keys associated with this API. example: - 6c530064-0b2c-4004-9300-640b2ce0047b - 12559b64-0b2c-4004-9300-640b2ce0047b - media - health items: type: string labels: type: array description: The free list of labels associated with this API. example: - json - read_only - awesome items: type: string lifecycleState: $ref: '#/components/schemas/ApiLifecycleState' disableMembershipNotifications: type: boolean description: Disable membership notifications. default: false properties: type: array items: $ref: '#/components/schemas/Property' required: - name - apiVersion - definitionVersion discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/UpdateApiV2' V4: '#/components/schemas/UpdateApiV4' FEDERATED: '#/components/schemas/UpdateApiFederated' UpdateApiV2: type: object title: UpdateApiV2 allOf: - $ref: '#/components/schemas/UpdateGenericApi' - properties: proxy: $ref: '#/components/schemas/Proxy' flowMode: $ref: '#/components/schemas/FlowMode' flows: type: array description: The list of flows associated with this API. items: $ref: '#/components/schemas/FlowV2' services: $ref: '#/components/schemas/ApiServicesV2' pathMappings: type: array description: The list of path mappings associated with this API. items: type: string executionMode: $ref: '#/components/schemas/ExecutionMode' required: - contextPath - endpoint UpdateApiV4: type: object title: UpdateApiV4 allOf: - $ref: '#/components/schemas/UpdateGenericApi' - properties: type: $ref: '#/components/schemas/ApiType' listeners: type: array description: The list of listeners associated with this API. items: $ref: '#/components/schemas/Listener' minItems: 1 endpointGroups: type: array items: $ref: '#/components/schemas/EndpointGroupV4' minItems: 1 analytics: $ref: '#/components/schemas/Analytics' failover: $ref: '#/components/schemas/FailoverV4' flowExecution: $ref: '#/components/schemas/FlowExecution' flows: type: array items: $ref: '#/components/schemas/FlowV4' services: $ref: '#/components/schemas/ApiServices' allowedInApiProducts: type: boolean description: Indicates whether this API is allowed to be used in API Products. Only applicable for V4 HTTP Proxy APIs. default: false example: false allowMultiJwtOauth2Subscriptions: type: boolean description: Allow an application to subscribe to more than one JWT/OAuth2 plan (V4 only). default: false required: - listeners - endpointGroups - type UpdateApiFederated: type: object title: UpdateApiFederated allOf: - $ref: '#/components/schemas/UpdateGenericApi' CategoryApi: type: object description: API in a category required: - id - name - apiVersion - definitionVersion - order allOf: - $ref: '#/components/schemas/BaseApi' - type: object properties: apiVersion: type: string description: API's version. It's a simple string only used in the portal. example: v1.0 definitionVersion: $ref: '#/components/schemas/DefinitionVersion' order: type: number description: Order of the API in the Category list accessPaths: type: array description: List of paths for accessing the API items: type: string example: - /context-path - /context-path-2 UpdateCategoryApi: type: object description: Update an API within a Category required: - order properties: order: type: number description: New order for the specified API GenerateExpressionLanguage: type: object description: Request an expression language generation required: - message properties: message: description: Prompt of generation. type: string ExpressionLanguageFeedback: type: object description: Feedback of expression language generation required: - answerHelpful - feedbackRequestId properties: feedbackRequestId: $ref: '#/components/schemas/FeedbackRequestId' answerHelpful: description: Indicates if the answer was helpful. type: boolean ApiDeployment: type: object properties: deploymentLabel: type: string description: Label for an Api deployment. Duplicate names can exists. example: My deployment maxLength: 32 VerifyApiDeploymentResponse: type: object properties: ok: type: boolean description: Indicates whether the deployment can be done or not. reason: type: string description: An optional reason giving details about the result. ApiLifecycleState: type: string description: The status of the API regarding the console. example: CREATED enum: - ARCHIVED - CREATED - DEPRECATED - PUBLISHED - UNPUBLISHED ApiServices: type: object properties: dynamicProperty: $ref: '#/components/schemas/ServiceV4' ApiSearchQuery: type: object properties: query: type: string description: The query to search for. example: my api ids: type: array items: type: string description: List of ids to find example: - apiId-1 - apiId-2 definitionVersion: $ref: '#/components/schemas/DefinitionVersion' definitionVersions: type: array items: $ref: '#/components/schemas/DefinitionVersion' apiTypes: type: array items: type: string statuses: type: array items: type: string tags: type: array items: type: string categories: type: array items: type: string published: type: array items: type: string visibilities: type: array items: type: string allowedInApiProducts: type: boolean description: When set, filters results to only APIs with this allowedInApiProducts value. When true, only returns APIs allowed in API Products. When false, only returns APIs not allowed in API Products. Only applicable for V4 HTTP Proxy APIs. example: true hasOpenApiDocumentation: type: boolean description: When set, filters results based on whether the API has at least one published OpenAPI/Swagger documentation page. When true, only returns APIs that publish an OpenAPI documentation page. When false, only returns APIs without one. example: true ApiType: type: string description: API's type. example: MESSAGE enum: - A2A_PROXY - AUTHZ - EDGE - LLM_PROXY - MCP_PROXY - MESSAGE - NATIVE - PROXY Visibility: type: string description: The visibility of the resource regarding the portal. example: PUBLIC default: PRIVATE enum: - PUBLIC - PRIVATE ApiWorkflowState: type: string description: The status of the API regarding the review feature. example: DRAFT enum: - DRAFT - IN_REVIEW - REQUEST_FOR_CHANGES - REVIEW_OK readOnly: true ChannelSelector: type: object title: ChannelSelector required: - type - channel - channelOperator allOf: - $ref: '#/components/schemas/BaseSelector' - type: object properties: operations: type: array description: The list of operations associated with this channel selector. items: type: string description: The operation associated with this channel selector. enum: - PUBLISH - SUBSCRIBE uniqueItems: true channel: type: string description: The channel of the selector example: /my/channel default: / channelOperator: $ref: '#/components/schemas/Operator' entrypoints: type: array items: type: string uniqueItems: true ConditionSelector: type: object title: ConditionSelector required: - type - condition allOf: - $ref: '#/components/schemas/BaseSelector' - type: object properties: condition: type: string description: The condition of the selector example: ${#jsonPath(payload, '$.myField') == 'myValue'} Cors: type: object properties: allowCredentials: type: boolean allowHeaders: uniqueItems: true type: array items: type: string allowMethods: uniqueItems: true type: array items: type: string allowOrigin: uniqueItems: true type: array items: type: string enabled: type: boolean exposeHeaders: uniqueItems: true type: array items: type: string maxAge: type: integer format: int32 default: -1 runPolicies: type: boolean allowPrivateNetwork: type: boolean description: Allow private network access (PNA) requests during CORS preflight Dlq: type: object properties: endpoint: type: string description: The endpoint of the DLQ. OriginContext: oneOf: - $ref: '#/components/schemas/ManagementOriginContext' - $ref: '#/components/schemas/KubernetesOriginContext' - $ref: '#/components/schemas/IntegrationOriginContext' discriminator: propertyName: origin mapping: MANAGEMENT: '#/components/schemas/ManagementOriginContext' KUBERNETES: '#/components/schemas/KubernetesOriginContext' INTEGRATION: '#/components/schemas/IntegrationOriginContext' BaseOriginContext: type: object properties: origin: type: string description: The origin of the API. example: MANAGEMENT enum: - MANAGEMENT - KUBERNETES - INTEGRATION discriminator: propertyName: origin mapping: MANAGEMENT: '#/components/schemas/ManagementOriginContext' KUBERNETES: '#/components/schemas/KubernetesOriginContext' INTEGRATION: '#/components/schemas/IntegrationOriginContext' ManagementOriginContext: type: object title: ManagementOriginContext description: Indicates the API has been created by the Management API allOf: - $ref: '#/components/schemas/BaseOriginContext' KubernetesOriginContext: type: object title: KubernetesOriginContext description: Indicates the API has been created by the Gravitee Kubernetes Operator allOf: - $ref: '#/components/schemas/BaseOriginContext' - properties: mode: type: string description: 'The mode of the API. fully_managed: Mode indicating the api is fully managed by the origin and so, only the origin should be able to manage the api.' example: FULLY_MANAGED enum: - FULLY_MANAGED syncFrom: type: string description: "syncFrom stands for where the Gateway should source the\ \ API definition from. \nIf the value is KUBERNETES, then the gateway\ \ will sync the definition by listening to changes\nissued on a kubernetes\ \ config map. If the value is MANAGEMENT, then the gateway will sync\n\ the definition using the same datastore as APIM. \nDefining MANAGEMENT\ \ as source for sync is useful e.g. when a single operator should operate\n\ on gateways deployed on multiple kubernetes clusters." example: MANAGEMENT enum: - MANAGEMENT - KUBERNETES IntegrationOriginContext: type: object title: IntegrationOriginContext description: Indicates the API has been created through an Integration allOf: - $ref: '#/components/schemas/BaseOriginContext' - properties: integrationId: type: string description: The id of the integration that created the API. example: b300b445-8bbb-4034-865c-d2113ba5b768 provider: type: string description: Provider of this Federated API. example: solace integrationName: type: string description: Name of integration of this Federated API. example: My Solace env DefinitionContext: deprecated: true type: object description: the context where the api definition was created. Deprecated in favor of OriginContext. properties: origin: type: string description: The origin of the API. example: MANAGEMENT enum: - MANAGEMENT - KUBERNETES mode: deprecated: true type: string description: 'The mode of the API. fully_managed: Mode indicating the api is fully managed by the origin and so, only the origin should be able to manage the api. api_definition_only: Mode indicating the api is partially managed by the origin and so, only the origin should be able to manage the api definition part of the api. This includes everything regarding the definition of the apis (plans, flows, metadata, ...)' example: FULLY_MANAGED enum: - FULLY_MANAGED - API_DEFINITION_ONLY syncFrom: type: string description: "syncFrom stands for where the Gateway should source the API\ \ definition from. \nIf the value is KUBERNETES, then the gateway will\ \ sync the definition by listening to changes\nissued on a kubernetes\ \ config map. If the value is MANAGEMENT, then the gateway will sync\n\ the definition using the same datastore as APIM. \nDefining MANAGEMENT\ \ as source for sync is useful e.g. when a single operator should operate\n\ on gateways deployed on multiple kubernetes clusters." example: MANAGEMENT enum: - MANAGEMENT - KUBERNETES readOnly: true DefinitionVersion: type: string description: API's gravitee definition version. example: V4 enum: - V2 - V4 - FEDERATED - FEDERATED_AGENT EndpointV4: type: object properties: name: type: string description: The name of the endpoint example: default-endpoint nullable: false type: type: string description: The type of the endpoint example: mock nullable: false weight: type: integer format: int32 description: The weight of the endpoint default: 1 inheritConfiguration: type: boolean description: Is the configuration of the endpoint inherited from the endpoint group it belongs to. default: false configuration: type: object sharedConfigurationOverride: type: object services: $ref: '#/components/schemas/EndpointServices' secondary: type: boolean description: Is the endpoint a secondary endpoint. default: false tenants: type: array description: The list of tenants associated to the endpoint. items: type: string required: - type EndpointGroupV4: type: object properties: name: type: string description: The name of the endpoint group example: default-endpoint-group nullable: false type: type: string description: The type of the endpoint group example: default nullable: false loadBalancer: $ref: '#/components/schemas/LoadBalancer' sharedConfiguration: type: object endpoints: type: array items: $ref: '#/components/schemas/EndpointV4' services: $ref: '#/components/schemas/EndpointGroupServices' required: - type EndpointGroupServices: type: object properties: discovery: $ref: '#/components/schemas/ServiceV4' healthCheck: $ref: '#/components/schemas/ServiceV4' EndpointServices: type: object properties: healthCheck: $ref: '#/components/schemas/ServiceV4' Entrypoint: type: object required: - type properties: type: type: string description: The type of the entrypoint example: http-get nullable: false qos: $ref: '#/components/schemas/Qos' dlq: $ref: '#/components/schemas/Dlq' configuration: type: object Error: type: object properties: httpStatus: type: integer format: int32 description: The error code example: 400 message: type: string description: The error message example: Bad request technicalCode: type: string description: A technical code to identify the error example: invalid.import.definition parameters: type: object description: A map of parameters to be used in the error message additionalProperties: type: string details: type: array description: A list of details about the error items: type: object properties: message: type: string description: The error message example: Bad request location: type: string description: The json path of the field in error. example: updateApi.properties[0].key invalidValue: description: The invalid value. IngestedApi: type: object properties: id: type: string description: Ingested API uuid example: 4e6abbd2-c0c6-462d-be9e-6371209af34b name: type: string description: Ingested API name example: My API version: type: string description: the version of API FlowV4: type: object properties: id: type: string description: Flow's uuid. example: 4e6abbd2-c0c6-462d-be9e-6371209af34b name: type: string description: Flow's name. example: My Flow enabled: type: boolean description: Is the flow enabled. default: true selectors: type: array items: $ref: '#/components/schemas/Selector' request: type: array description: Flow step used for PROXY and MESSAGE APIs items: $ref: '#/components/schemas/StepV4' response: type: array description: Flow step used for PROXY and MESSAGE APIs items: $ref: '#/components/schemas/StepV4' subscribe: type: array description: Flow step used for MESSAGE and NATIVE APIs items: $ref: '#/components/schemas/StepV4' publish: type: array description: Flow step used for MESSAGE and NATIVE APIs items: $ref: '#/components/schemas/StepV4' entrypointConnect: type: array description: Flow step used for NATIVE APIs entrypoint connect phase items: $ref: '#/components/schemas/StepV4' interact: type: array description: Flow step used for NATIVE APIs items: $ref: '#/components/schemas/StepV4' tags: type: array items: type: string description: Flow's tags. example: - tag1 - tag2 uniqueItems: true FlowExecution: type: object properties: mode: $ref: '#/components/schemas/FlowMode' matchRequired: type: boolean description: Is the flow execution match required. default: false FlowMode: type: string description: API's flow mode. example: BEST_MATCH default: DEFAULT enum: - BEST_MATCH - DEFAULT HttpListener: type: object title: HttpListener required: - type allOf: - $ref: '#/components/schemas/BaseListener' - type: object properties: paths: type: array minItems: 1 items: $ref: '#/components/schemas/PathV4' pathMappings: type: array items: type: string cors: $ref: '#/components/schemas/Cors' requestValidation: $ref: '#/components/schemas/RequestValidation' RequestValidation: type: object properties: rejectNullByte: type: boolean HttpMethod: type: string description: The method of the selector example: GET enum: - CONNECT - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT - TRACE - OTHER HttpSelector: type: object title: HttpSelector required: - type - path - pathOperator allOf: - $ref: '#/components/schemas/BaseSelector' - type: object properties: path: type: string description: The path of the selector example: /my/path default: / pathOperator: $ref: '#/components/schemas/Operator' methods: type: array items: $ref: '#/components/schemas/HttpMethod' uniqueItems: true Integration: type: object properties: id: type: string description: Id of the integration name: type: string description: Name of the integration description: type: string description: Description of the integration provider: type: string description: Provider of this integration primaryOwner: $ref: '#/components/schemas/PrimaryOwner' groups: type: array description: A list of group ids example: - 3dc1bc32-1411-4262-b3a2-058222569670 - 63cd7036-694f-4c40-833f-84c4a5d39544 items: type: string agentStatus: type: string description: Agent connection status (not for A2A) example: DISCONNECTED enum: - CONNECTED - DISCONNECTED pendingJob: $ref: '#/components/schemas/IngestionJob' wellKnownUrls: type: array description: A2A well-known URLs (only for A2A provider) items: $ref: '#/components/schemas/IntegrationWellKnownUrl' IntegrationWellKnownUrl: type: object properties: url: type: string description: URL for well-known endpoint IngestionJob: type: object properties: id: type: string description: Id of the ingestion job startedAt: type: string format: date-time description: The last datetime when the job was started. example: 2023-05-25 12:40:46.184000+00:00 status: $ref: '#/components/schemas/AsyncJobStatus' IngestionPreviewResponse: type: object properties: totalCount: type: number description: number of APIs found to ingest example: 12 newCount: type: number description: number of new APIs found to ingest example: 8 updateCount: type: number description: number of update APIs found to ingest example: 4 isPartiallyDiscovered: type: boolean description: flag to tell if apis where only partially discovered due to timeout example: false apis: type: array description: number of new APIs found to ingest items: allOf: - $ref: '#/components/schemas/IngestedApi' - type: object properties: state: type: string description: '''NEW'' if it''s new API or ''UPDATE'' if we maybe have update' enum: - NEW - UPDATE IntegrationIngestionResponse: type: object properties: status: $ref: '#/components/schemas/AsyncJobStatus' message: type: string description: Integration Ingestion message. example: Integration APIs have been ingested successfully Links: description: List of links for pagination properties: self: type: string description: Link to current resource first: type: string description: In a paginated response, link to the first page last: type: string description: In a paginated response, link to the last page previous: type: string description: In a paginated response, link to the previous page. Maybe null if current is the first page next: type: string description: In a paginated response, link to the next page. Maybe null if current is the last page Listener: oneOf: - $ref: '#/components/schemas/HttpListener' - $ref: '#/components/schemas/SubscriptionListener' - $ref: '#/components/schemas/TcpListener' - $ref: '#/components/schemas/KafkaListener' discriminator: propertyName: type mapping: HTTP: '#/components/schemas/HttpListener' TCP: '#/components/schemas/TcpListener' SUBSCRIPTION: '#/components/schemas/SubscriptionListener' KAFKA: '#/components/schemas/KafkaListener' BaseListener: type: object required: - type properties: type: $ref: '#/components/schemas/ListenerType' entrypoints: type: array minItems: 1 items: $ref: '#/components/schemas/Entrypoint' servers: type: array items: type: string discriminator: propertyName: type mapping: HTTP: '#/components/schemas/HttpListener' TCP: '#/components/schemas/TcpListener' SUBSCRIPTION: '#/components/schemas/SubscriptionListener' KAFKA: '#/components/schemas/KafkaListener' ListenerType: type: string description: Listener type. example: HTTP enum: - HTTP - SUBSCRIPTION - TCP - KAFKA LoadBalancer: type: object properties: type: type: string description: Load balancer type. example: ROUND_ROBIN default: ROUND_ROBIN enum: - RANDOM - ROUND_ROBIN - WEIGHTED_RANDOM - WEIGHTED_ROUND_ROBIN LoggingV4: type: object properties: condition: type: string messageCondition: type: string content: $ref: '#/components/schemas/LoggingContentV4' phase: $ref: '#/components/schemas/LoggingPhase' mode: $ref: '#/components/schemas/LoggingModeV4' LoggingContentV4: type: object properties: headers: type: boolean messageHeaders: type: boolean payload: type: boolean messagePayload: type: boolean messageMetadata: type: boolean LoggingModeV4: type: object properties: endpoint: type: boolean entrypoint: type: boolean LoggingPhase: type: object properties: request: type: boolean response: type: boolean TracingV4: type: object properties: enabled: type: boolean description: Enable OpenTelemetry tracing verbose: type: boolean description: Enable technical tracing to get more details on request execution. Be careful this settings would generate more noise and would impact performance. redaction: $ref: '#/components/schemas/TracingRedactionConfig' TracingRedactionConfig: type: object properties: defaultReplacement: type: string description: 'Fallback replacement text for FULL masking rules with no per-rule replacement. Defaults to [REDACTED]. ' example: '[REDACTED]' rules: type: array items: $ref: '#/components/schemas/TracingRedactionRule' TracingRedactionRule: type: object required: - attributeNamePattern properties: attributeNamePattern: type: string description: 'Glob pattern, short name (no dots — matches anywhere in key hierarchy), or regex:-prefixed Java regex matching the span attribute key. ' example: http.request.header.authorization maskingStrategy: $ref: '#/components/schemas/TracingMaskingStrategy' valuePattern: type: string description: 'Optional Java regex (partial match). Rule only fires when the attribute value matches. ' example: '^Bearer ' TracingMaskingStrategy: type: object required: - type properties: type: type: string enum: - FULL - PARTIAL description: 'FULL replaces the entire value; PARTIAL keeps a visible prefix and/or suffix. ' example: FULL replacement: type: string description: 'For FULL: replacement text (default [REDACTED]). For PARTIAL: single mask character (default *). ' example: '[REDACTED]' prefixLength: type: integer description: PARTIAL only — number of leading characters to keep visible. default: 0 minimum: 0 suffixLength: type: integer description: PARTIAL only — number of trailing characters to keep visible. default: 0 minimum: 0 OtelLogsV4: type: object properties: enabled: type: boolean description: Enable OpenTelemetry log export for this API (payload capture with traceId/spanId correlation). ResponseMetadata: description: Generic object to handle additional information about an entity. Can also be used for pagination data. type: object MoreInformation: type: object properties: description: type: string description: Plugin's description. example: Let your consumers send synchronous, on-demand requests for events via a standard HTTP GET requests. Use a standard HTTP proxy to mediate between client applications as data consumers and event brokers such as Kafka. documentationUrl: type: string description: Plugin's documentation URL. example: https://documentation.gravitee.io schemaImg: type: string description: Plugin's schema image as base64. format: base64 example: data:image/png;base64,aFDqfda Operator: type: string description: The path operator of the selector example: EQUALS default: STARTS_WITH enum: - EQUALS - STARTS_WITH Pagination: description: Generic object to handle pagination data. type: object properties: page: type: integer description: The current page. perPage: type: integer description: The number of items requested per page. pageCount: type: integer description: The total number of pages. pageItemsCount: type: integer description: The number of items for the current page. totalCount: type: integer format: int64 description: The total number of items, or `-1` if the count could not be computed within the configured timeout. Path: type: object properties: host: type: string path: type: string default: / overrideAccess: type: boolean default: false PathV4: type: object properties: host: type: string path: type: string default: / overrideAccess: type: boolean default: false ApiReview: type: object properties: message: type: string description: Optional message from the API reviewer. BasePlan: type: object properties: id: type: string description: Plan's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: Plan's name. Duplicate names can exists. example: My Api plan description: type: string description: Plan's description. A short description of your plan. example: I can use a hundred characters to describe this plan. apiId: type: string description: Id of the API owning the plan. example: 6c530064-0b2c-4004-9300-640b2ce0047b apiProductId: type: string description: Id of the API Product owning the plan. Present only when the plan belongs to an API Product (omitted for API plans). example: 6c530064-0b2c-4004-9300-640b2ce0047b security: $ref: '#/components/schemas/PlanSecurity' mode: $ref: '#/components/schemas/PlanMode' GenericPlan: type: object allOf: - $ref: '#/components/schemas/BasePlan' - properties: characteristics: type: array items: type: string closedAt: type: string format: date-time description: The datetime when the plan was closed. example: 2023-05-25 12:40:46.184000+00:00 commentMessage: type: string description: A message from the API Publisher that is displayed to the consumer at subscription time. example: Explain why you want to subscribe. commentRequired: type: boolean description: A flag indicating if the consumer has to write a "consumer message" or if he/she can leave the field blank. createdAt: type: string format: date-time description: The last datetime when the plan was created. example: 2023-05-25 12:40:46.184000+00:00 crossId: type: string description: Plan's crossId. Identifies plan across environments. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 definitionVersion: $ref: '#/components/schemas/DefinitionVersion' description: type: string description: Plan's description. A short description of your plan. example: I can use a hundred characters to describe this plan. excludedGroups: type: array description: Groups of users which are not allowed to subscribe to this plan. example: - MY_GROUP1 - MY_GROUP2 items: type: string generalConditions: type: string order: type: integer publishedAt: type: string format: date-time description: The last datetime when the plan was published. example: 2023-05-25 12:40:46.184000+00:00 selectionRule: type: string status: $ref: '#/components/schemas/PlanStatus' tags: type: array description: The list of sharding tags associated with this plan. example: - public - private items: type: string type: $ref: '#/components/schemas/PlanType' updatedAt: type: string format: date-time description: The last datetime when the plan was updated. example: 2023-05-25 12:40:46.184000+00:00 validation: $ref: '#/components/schemas/PlanValidation' required: - definitionVersion discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/PlanV2' V4: '#/components/schemas/PlanV4' FEDERATED: '#/components/schemas/PlanFederated' PlanV4: type: object title: PlanV4 allOf: - $ref: '#/components/schemas/GenericPlan' - properties: flows: type: array items: $ref: '#/components/schemas/FlowV4' bootstrapPort: type: integer description: Bootstrap port for port-based routing (native Kafka APIs only). Null in host/SNI routing mode. example: 9092 brokerRangeStart: type: integer description: Start of broker port range for port-based routing (native Kafka APIs only). example: 9100 brokerRangeEnd: type: integer description: End of broker port range for port-based routing (native Kafka APIs only). example: 9102 PlanFederated: type: object title: PlanFederated allOf: - $ref: '#/components/schemas/GenericPlan' Plan: oneOf: - $ref: '#/components/schemas/PlanV2' - $ref: '#/components/schemas/PlanV4' - $ref: '#/components/schemas/PlanFederated' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/PlanV2' V4: '#/components/schemas/PlanV4' FEDERATED: '#/components/schemas/PlanFederated' PlanSecurity: type: object properties: type: $ref: '#/components/schemas/PlanSecurityType' configuration: type: object required: - type PlanSecurityType: type: string description: Plan security type. example: KEY_LESS enum: - KEY_LESS - API_KEY - OAUTH2 - JWT - MTLS PlanStatus: type: string description: Plan status. example: STAGING enum: - STAGING - PUBLISHED - DEPRECATED - CLOSED PlanType: type: string description: Plan type. example: API enum: - API - CATALOG PlanValidation: type: string description: Plan validation type. example: AUTO enum: - AUTO - MANUAL PromotionRequest: type: object properties: targetEnvCockpitId: type: string description: The target environment id where the promotion should be done. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 targetEnvName: type: string description: The target environment name where the promotion should be done. example: prod Promotion: type: object properties: id: type: string description: The promotion id. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 apiDefinition: type: string description: The api definition. apiId: type: string description: The api id. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 status: type: string description: The status of the promotion. enum: - CREATED - TO_BE_VALIDATED - ACCEPTED - REJECTED - ERROR targetEnvCockpitId: type: string description: The target environment id where the promotion should be done. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 targetEnvName: type: string description: The target environment name where the promotion should be done. example: prod sourceEnvCockpitId: type: string description: The source environment id where the promotion should come from. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 sourceEnvName: type: string description: The source environment name where the promotion should come from. example: dev createdAt: type: string format: date-time description: The datetime when the promotion was created. example: 2023-05-25 12:40:46.184000+00:00 updatedAt: type: string format: date-time description: The datetime when the promotion was updated. example: 2023-05-25 12:40:46.184000+00:00 author: $ref: '#/components/schemas/PromotionAuthor' targetApiId: type: string description: The target api id. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 PromotionAuthor: type: object properties: userId: type: string description: The user id. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 displayName: type: string description: The display name of the user who created the promotion. example: John Doe email: type: string description: The email of the user who created the promotion. example: email@example.com source: type: string description: The source of the use who created the promotion. example: cockpit sourceId: type: string description: The id of the user who created the promotion source. example: 89eb0e39-1706-49c1-ab0e-391706d9c10a CreatePlan: oneOf: - $ref: '#/components/schemas/CreatePlanV2' - $ref: '#/components/schemas/CreatePlanV4' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/CreatePlanV2' V4: '#/components/schemas/CreatePlanV4' CreateGenericPlan: type: object properties: crossId: type: string description: Plan's crossId. Identifies plan across environments. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 characteristics: type: array items: type: string commentMessage: type: string description: A message from the API Publisher that is displayed to the consumer at subscription time. example: Explain why you want to subscribe. commentRequired: type: boolean description: A flag indicating if the consumer has to write a "consumer message" or if he/she can leave the field blank. definitionVersion: $ref: '#/components/schemas/DefinitionVersion' description: type: string description: Plan's description. A short description of your Plan. example: I can use a hundred characters to describe this plan. excludedGroups: type: array description: Groups of users which are not allowed to subscribe to this plan. example: - MY_GROUP1 - MY_GROUP2 items: type: string generalConditions: type: string description: This field contains the UUID of the documentation page that is used as General Conditions. example: 4e3de652-2301-48ba-bde6-522301e8ba3a name: type: string description: Plan's name. Duplicate names can exists. example: My Api plan order: type: integer description: Simple order that could be used by a front end to display plans in a certain order. To highlight a plan on the portal for instance. example: 0 security: $ref: '#/components/schemas/PlanSecurity' selectionRule: type: string description: An optional EL expression that will be evaluated at request time to select this plan. tags: type: array description: The list of sharding tags associated with this plan. example: - public - private items: type: string validation: $ref: '#/components/schemas/PlanValidation' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/CreatePlanV2' V4: '#/components/schemas/CreatePlanV4' required: - definitionVersion CreatePlanV2: type: object title: CreatePlanV2 allOf: - $ref: '#/components/schemas/CreateGenericPlan' - properties: flows: type: array items: $ref: '#/components/schemas/FlowV2' CreatePlanV4: type: object title: CreatePlanV4 allOf: - $ref: '#/components/schemas/CreateGenericPlan' - properties: flows: type: array items: $ref: '#/components/schemas/FlowV4' mode: $ref: '#/components/schemas/PlanMode' bootstrapPort: type: integer description: Bootstrap port for port-based routing (native Kafka APIs only). Null in host/SNI routing mode. example: 9092 brokerRangeStart: type: integer description: Start of broker port range for port-based routing (native Kafka APIs only). example: 9100 brokerRangeEnd: type: integer description: End of broker port range for port-based routing (native Kafka APIs only). example: 9102 PlanMode: type: string description: The behavioural mode of the Plan (Standard for classical plan, Push for subscription plan). example: STANDARD enum: - STANDARD - PUSH UpdatePlan: oneOf: - $ref: '#/components/schemas/UpdatePlanV2' - $ref: '#/components/schemas/UpdatePlanV4' - $ref: '#/components/schemas/UpdatePlanFederated' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/UpdatePlanV2' V4: '#/components/schemas/UpdatePlanV4' FEDERATED: '#/components/schemas/UpdatePlanFederated' UpdateGenericPlan: type: object properties: crossId: type: string description: Plan's crossId. Identifies plan across environments. example: df83b2a4-cc3e-3f80-9f0d-c138c106c076 characteristics: type: array items: type: string commentMessage: type: string description: A message from the API Publisher that is displayed to the consumer at subscription time. example: Explain why you want to subscribe. commentRequired: type: boolean description: A flag indicating if the consumer has to write a "consumer message" or if he/she can leave the field blank. definitionVersion: $ref: '#/components/schemas/DefinitionVersion' description: type: string description: Plan's description. A short description of your Plan. example: I can use a hundred characters to describe this plan. excludedGroups: type: array description: Groups of users which are not allowed to subscribe to this plan. example: - MY_GROUP1 - MY_GROUP2 items: type: string generalConditions: type: string description: This field contains the UUID of the documentation page that is used as General Conditions. example: 4e3de652-2301-48ba-bde6-522301e8ba3a name: type: string description: Plan's name. Duplicate names can exists. example: My Api plan order: type: integer description: Simple order that could be used by a front end to display plans in a certain order. To highlight a plan on the portal for instance. example: 0 security: type: object properties: configuration: type: object validation: $ref: '#/components/schemas/PlanValidation' discriminator: propertyName: definitionVersion mapping: V2: '#/components/schemas/UpdatePlanV2' V4: '#/components/schemas/UpdatePlanV4' FEDERATED: '#/components/schemas/UpdatePlanFederated' required: - definitionVersion UpdatePlanV2: type: object title: UpdatePlanV2 allOf: - $ref: '#/components/schemas/UpdateGenericPlan' - properties: selectionRule: type: string description: An optional EL expression that will be evaluated at request time to select this plan. tags: type: array description: The list of sharding tags associated with this plan. example: - public - private items: type: string flows: type: array items: $ref: '#/components/schemas/FlowV2' UpdatePlanV4: type: object title: UpdatePlanV4 allOf: - $ref: '#/components/schemas/UpdateGenericPlan' - properties: selectionRule: type: string description: An optional EL expression that will be evaluated at request time to select this plan. tags: type: array description: The list of sharding tags associated with this plan. example: - public - private items: type: string flows: type: array items: $ref: '#/components/schemas/FlowV4' bootstrapPort: type: integer description: Bootstrap port for port-based routing (native Kafka APIs only). Null in host/SNI routing mode. example: 9092 brokerRangeStart: type: integer description: Start of broker port range for port-based routing (native Kafka APIs only). example: 9100 brokerRangeEnd: type: integer description: End of broker port range for port-based routing (native Kafka APIs only). example: 9102 UpdatePlanFederated: type: object title: UpdatePlanFederated allOf: - $ref: '#/components/schemas/UpdateGenericPlan' BaseSubscription: type: object properties: id: type: string description: Subscription's uuid. example: 34f8c9e7-68fd-4922-b8c9-e778fc790777 Subscription: allOf: - $ref: '#/components/schemas/BaseSubscription' - properties: api: $ref: '#/components/schemas/BaseApi' apiProduct: $ref: '#/components/schemas/BaseApiProduct' plan: $ref: '#/components/schemas/BasePlan' application: $ref: '#/components/schemas/BaseApplication' consumerMessage: type: string description: Message given by the api consumer when subscribing to the api. publisherMessage: type: string description: Message given by the api publisher when accepting or rejecting the subscription. metadata: type: object description: A list of metadata associated to this subscription. additionalProperties: type: string daysToExpirationOnLastNotification: type: integer format: int32 description: Number of days before the expiration of this subscription when the last pre-expiration notification was sent. consumerConfiguration: $ref: '#/components/schemas/SubscriptionConsumerConfiguration' failureCause: type: string description: Details about the last failure encountered on this subscription. status: $ref: '#/components/schemas/SubscriptionStatus' consumerStatus: $ref: '#/components/schemas/SubscriptionConsumerStatus' processedBy: $ref: '#/components/schemas/BaseUser' subscribedBy: $ref: '#/components/schemas/BaseUser' processedAt: type: string format: date-time description: The datetime when the subscription was processed. example: 2023-05-18 12:40:46.184000+00:00 startingAt: type: string format: date-time description: The datetime when the subscription starts. No starting date means the subscription starts immediately. example: 2023-05-20 12:30:42.101000+00:00 endingAt: type: string format: date-time description: The datetime when the subscription ends. No ending date means the subscription never ends. example: 2023-05-25 12:40:46.184000+00:00 createdAt: type: string format: date-time description: The datetime when the subscription was created. example: 2023-05-18 12:40:46.184000+00:00 updatedAt: type: string format: date-time description: The last datetime when the subscription was updated. example: 2023-05-25 12:40:46.184000+00:00 closedAt: type: string format: date-time description: The datetime when the subscription was closed. example: 2023-05-31 13:40:46.184000+00:00 pausedAt: type: string format: date-time description: The datetime when the subscription was paused by the api publisher. example: 2023-05-25 12:40:46.184000+00:00 consumerPausedAt: type: string format: date-time description: The datetime when the subscription was paused by the api consumer. example: 2023-05-25 12:40:46.184000+00:00 origin: type: string example: KUBERNETES description: The origin of the subscription. enum: - KUBERNETES - MANAGEMENT SubscriptionStatus: type: string description: The status of the subscription manageable by the api publisher. example: ACCEPTED enum: - PENDING - REJECTED - ACCEPTED - CLOSED - PAUSED - RESUMED SubscriptionConsumerStatus: type: string description: The status of the subscription manageable by the api consumer. example: STOPPED enum: - STARTED - STOPPED - FAILURE SubscriptionConsumerConfiguration: type: object description: Consumer configuration associated to the subscription in case it is attached to a push plan. properties: entrypointId: type: string description: The id of the targeted entrypoint example: webhook channel: type: string description: The channel to consume example: /channel1 entrypointConfiguration: type: object description: The configuration to use at subscription time to push to the target service. example: "{\n \"callbackUrl\": \"https://webhook.site/aaaaaaaa-ffff-ffff-ffff-aaaaaaaa\"\ ,\n \"headers\": [\n {\n \"name\": \"demoHeader\"\ ,\n \"value\": \"my-value\"\n },\n {\n \ \ \"name\": \"anotherHeader\",\n \"value\": \"my-value2\"\ \n }\n ]\n}\n" required: - entrypointId ApisIngest: type: object properties: apiIds: type: array items: type: string description: The list of ids of APIs to ingest. If null or empty, ingest all. required: - apiIds CreateSubscription: type: object properties: applicationId: type: string description: The id of the application subscribing. planId: type: string description: The id plan the application is subscribing to. customApiKey: type: string description: Optional custom API Key that can be given when the subscription is related to an api-key plan and custom API Key support is enabled. consumerConfiguration: $ref: '#/components/schemas/SubscriptionConsumerConfiguration' metadata: type: object description: A list of metadata associated to this subscription. additionalProperties: type: string apiKeyMode: $ref: '#/components/schemas/ApiKeyMode' required: - applicationId - planId UpdateSubscription: type: object properties: consumerConfiguration: $ref: '#/components/schemas/SubscriptionConsumerConfiguration' metadata: type: object description: A list of metadata associated to this subscription. additionalProperties: type: string startingAt: type: string format: date-time description: The datetime when the subscription starts. No starting date means the subscription starts immediately. example: 2023-05-20 12:30:42.101000+00:00 endingAt: type: string format: date-time description: The datetime when the subscription ends. No ending date means the subscription never ends. example: 2023-05-25 12:40:46.184000+00:00 VerifySubscription: type: object properties: applicationId: type: string description: The id of the application subscribing. apiKey: type: string description: 'The API Key that needs to be verified. Should not contain: ^ # % @ \\ / ; = ? | ~ , (space)' pattern: ^[^#%@/;=?|^~, \\]*$ required: - applicationId - apiKey VerifySubscriptionResponse: type: object properties: ok: type: boolean description: Indicates whether the creation can be done or not. reason: type: string description: An optional reason giving details about the result. AcceptSubscription: type: object properties: reason: type: string description: Optional reason explaining why the subscription has been accepted. customApiKey: type: string description: Optional custom API Key that can be given when the subscription is related to an api-key plan and custom API Key support is enabled. startingAt: type: string format: date-time description: The datetime when the subscription starts. No starting date means the subscription starts immediately. example: 2023-05-20 12:30:42.101000+00:00 endingAt: type: string format: date-time description: The datetime when the subscription ends. No ending date means the subscription never ends. example: 2023-05-25 12:40:46.184000+00:00 RejectSubscription: type: object properties: reason: type: string description: Optional reason explaining why the subscription has been rejected. TransferSubscription: type: object properties: planId: type: string description: The plan identifier to transfer the subscription to. ApiKey: type: object properties: id: type: string description: The internal UUID of the API Key. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 key: type: string description: The API Key value to use to call the protected api. example: my-api-key application: $ref: '#/components/schemas/BaseApplication' subscriptions: type: array items: $ref: '#/components/schemas/BaseSubscription' description: The list of subscriptions using this API Key. Multiple subscription is possible with shared API Key. revoked: type: boolean description: Flag indicating that the API Key has been revoked. paused: type: boolean description: Flag indicating that the API Key has been paused. expired: type: boolean description: Flag indicating that the API Key has expired. daysToExpirationOnLastNotification: type: integer format: int32 description: Number of days before the expiration of this subscription when the last pre-expiration notification was sent. expireAt: type: string format: date-time description: The datetime when the API Key expires. No date means no expiration. example: 2023-05-18 12:40:46.184000+00:00 createdAt: type: string format: date-time description: The datetime when the API Key has been created. example: 2023-01-18 12:40:46.184000+00:00 updatedAt: type: string format: date-time description: The datetime when the API Key has been updated. example: 2023-01-18 12:40:46.184000+00:00 revokedAt: type: string format: date-time description: The datetime when the API Key has been revoke. No date means not revoked. example: 2023-01-18 12:40:46.184000+00:00 UpdateApiKey: type: object properties: expireAt: type: string format: date-time description: The datetime when the API Key expires. No date means no expiration. example: 2023-05-18 12:40:46.184000+00:00 RenewApiKey: type: object properties: customApiKey: type: string description: Optional custom API Key that can be given when custom API Key support is enabled. ApiKeyMode: type: string description: 'The mode of an application regarding ApiKey plans. * UNSPECIFIED: no selected mode yet * EXCLUSIVE: an API Key is generated for each new subscription * SHARED: reuse always the same API Key for all subscriptions ' example: UNSPECIFIED enum: - SHARED - EXCLUSIVE - UNSPECIFIED BaseUser: type: object description: Base information about a user. properties: id: type: string description: User's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 displayName: type: string description: User's name. example: John Doe BaseApplication: type: object properties: id: type: string description: Application's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: Application's name. Duplicate names can exist. example: My App description: type: string description: Application's description. A short description of your App. example: I can use a hundred characters to describe this App. domain: type: string description: Application's domain. Domain used by application, if relevant. example: https://my-app.com type: type: string description: Application's type. example: iOS primaryOwner: $ref: '#/components/schemas/PrimaryOwner' apiKeyMode: $ref: '#/components/schemas/ApiKeyMode' BaseGroup: type: object properties: id: type: string description: Group's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: Group's name. example: Gravitee group minLength: 1 Group: type: object allOf: - $ref: '#/components/schemas/BaseGroup' - properties: eventRules: type: array items: $ref: '#/components/schemas/GroupEvent' description: Event rules for the group. manageable: type: boolean description: Current user can manage group. createdAt: type: string format: date-time description: Group's creation date. example: 2018-11-23 22:00:00+00:00 updatedAt: type: string format: date-time description: Group's last updated date. example: 2018-11-23 22:00:00+00:00 maxInvitation: type: integer description: Maximum number of group members. apiRole: type: string description: The Api role of the group. lockApiRole: type: boolean description: Api role cannot be changed. applicationRole: type: string description: The Application role of the group. lockApplicationRole: type: boolean description: Application role cannot be changed. lockApiProductRole: type: boolean description: Api Product role cannot be changed. systemInvitation: type: boolean description: Invitation via user search enabled. emailInvitation: type: boolean description: Email invitation enabled. disableMembershipNotifications: type: boolean description: Notifications of new members are disabled. primaryOwner: type: boolean description: Group's members contain one primary owner. apiPrimaryOwner: type: string description: The group member id with API primary owner role. apiProductPrimaryOwner: type: string description: The group member id with API Product primary owner role. GroupEvent: type: string description: Type of group event. enum: - API_CREATE - APPLICATION_CREATE - API_PRODUCT_CREATE GroupSearchParams: type: object properties: ids: type: array description: List of group IDs to search for. items: type: string uniqueItems: true PrimaryOwner: type: object properties: id: type: string description: Owner's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 email: type: string description: Owner's email. Can be null if owner is a group. displayName: type: string description: Owner's name. example: John Doe minLength: 1 type: $ref: '#/components/schemas/MembershipMemberType' Property: type: object required: - key - value properties: key: type: string value: type: string encrypted: type: boolean dynamic: type: boolean encryptable: type: boolean writeOnly: true Qos: type: string description: Type of the quality of service. example: NONE default: AUTO enum: - NONE - AUTO - AT_MOST_ONCE - AT_LEAST_ONCE Resource: type: object required: - name - type - configuration properties: name: type: string type: type: string configuration: type: object enabled: type: boolean ResponseTemplate: type: object properties: statusCode: type: integer headers: type: object additionalProperties: type: string body: type: string propagateErrorKeyToLogs: type: boolean Sampling: description: API analytics sampling (message API only). This is meant to log only a portion to avoid overflowing the log sink. type: object properties: type: type: string description: 'The type of the sampling: `PROBABILITY`: based on a specified probability, `TEMPORAL`: report one message at least every duration, `COUNT`: for every number of specified messages, `WINDOWED_COUNT`: x number of messages on a time window, ' enum: - PROBABILITY - TEMPORAL - COUNT - WINDOWED_COUNT value: type: string description: 'The value of the sampling: `PROBABILITY`: between `0.01` and `0.5`, `TEMPORAL`: ISO-8601 duration format, 1 second minimum (PT1S) `COUNT`: greater than `1`, `WINDOWED_COUNT`: x/ cannot exceed 1 message per second ' required: - type MembershipMemberType: type: string description: The type of membership enum: - USER - GROUP Selector: oneOf: - $ref: '#/components/schemas/HttpSelector' - $ref: '#/components/schemas/ChannelSelector' - $ref: '#/components/schemas/ConditionSelector' - $ref: '#/components/schemas/McpSelector' discriminator: propertyName: type mapping: HTTP: '#/components/schemas/HttpSelector' CHANNEL: '#/components/schemas/ChannelSelector' CONDITION: '#/components/schemas/ConditionSelector' MCP: McpSelector BaseSelector: properties: type: type: string description: Selector type. example: HTTP enum: - HTTP - CHANNEL - CONDITION - MCP discriminator: propertyName: type mapping: HTTP: '#/components/schemas/HttpSelector' CHANNEL: '#/components/schemas/ChannelSelector' CONDITION: '#/components/schemas/ConditionSelector' MCP: '#/components/schemas/McpSelector' required: - type ServiceV4: type: object properties: overrideConfiguration: type: boolean description: Override the configuration of the service default: false configuration: type: object description: The configuration of the service enabled: type: boolean description: Is the service enabled or not. default: true type: type: string BaseStep: type: object properties: name: type: string description: The name of the step description: type: string description: The description of the step enabled: type: boolean description: Is the step enabled or not. default: true policy: type: string description: The policy of the step configuration: type: object description: The configuration of the step condition: type: string description: The condition of the step StepV4: allOf: - $ref: '#/components/schemas/BaseStep' - properties: messageCondition: type: string description: The message condition of the step SubscriptionListener: title: SubscriptionListener required: - type allOf: - $ref: '#/components/schemas/BaseListener' TcpListener: title: TcpListener required: - type allOf: - $ref: '#/components/schemas/BaseListener' - type: object properties: hosts: description: A list of hostnames for which the API will match against SNI. This must be unique for all TCP listener for a given server id. See 'servers' attribute type: array minItems: 1 items: type: string minLength: 1 required: - hosts KafkaListener: title: KafkaListener required: - type allOf: - $ref: '#/components/schemas/BaseListener' - type: object properties: host: description: A hostname for which the API will match against SNI. type: string port: type: integer minimum: 0 description: The port of the listener example: 8080 required: - host VerifyApiPaths: title: VerifyApiPaths properties: apiId: type: string paths: type: array items: $ref: '#/components/schemas/Path' required: - paths VerifyApiHosts: title: VerifyApiHosts properties: apiId: type: string listenerType: $ref: '#/components/schemas/ListenerType' hosts: type: array example: - foo.example.com items: type: string required: - hosts McpSelector: type: object title: McpSelector required: - methods allOf: - $ref: '#/components/schemas/BaseSelector' - type: object properties: methods: type: array description: MCP Methods to select on items: type: string uniqueItems: true ApiEntrypoint: type: object properties: target: type: string description: The target of the entrypoint. example: /my-api host: type: string description: The host of the entrypoint. example: my-api.mycompany.com tags: type: array description: The list of sharding tags associated with this entrypoint. example: - public - private items: type: string Consumer: type: object properties: consumerType: $ref: '#/components/schemas/ConsumerType' consumerId: type: string description: The id of the consumer. example: myTag ConsumerType: type: string description: The type of the consumer. default: TAG enum: - TAG DynamicPropertyProvider: type: string description: The type of the dynamic property provider. example: HTTP enum: - HTTP DynamicPropertyService: type: object properties: schedule: type: string description: The schedule of the service provider: $ref: '#/components/schemas/DynamicPropertyProvider' configuration: oneOf: - $ref: '#/components/schemas/HttpDynamicPropertyProviderConfiguration' discriminator: propertyName: provider mapping: HTTP: '#/components/schemas/HttpDynamicPropertyProviderConfiguration' enabled: type: boolean description: Is the service enabled or not. default: true EndpointV2: oneOf: - $ref: '#/components/schemas/HttpEndpointV2' discriminator: propertyName: type mapping: http: '#/components/schemas/HttpEndpointV2' grpc: '#/components/schemas/HttpEndpointV2' BaseEndpointV2: type: object properties: name: type: string description: The name of the endpoint example: default-endpoint nullable: false target: type: string description: The target of the endpoint example: http://mycompany.com weight: type: integer format: int32 description: The weight of the endpoint default: 1 backup: type: boolean description: Is the endpoint a backup or not. default: false status: $ref: '#/components/schemas/EndpointStatus' tenants: type: array description: The list of tenants associated with this endpoint. example: - my-tenant items: type: string type: type: string description: The type of the endpoint. example: HTTP inherit: type: boolean description: Inherit the configuration of the parent endpoint group. default: false healthCheck: $ref: '#/components/schemas/EndpointHealthCheckService' required: - type HttpEndpointV2: title: HttpEndpointV2 allOf: - $ref: '#/components/schemas/BaseEndpointV2' - properties: httpProxy: $ref: '#/components/schemas/HttpProxy' httpClientOptions: $ref: '#/components/schemas/HttpClientOptions' httpClientSslOptions: $ref: '#/components/schemas/HttpClientSslOptions' headers: type: array description: The list of headers associated with this endpoint. example: - name: X-My-Header value: my-value items: $ref: '#/components/schemas/HttpHeader' healthCheck: $ref: '#/components/schemas/EndpointHealthCheckService' EndpointDiscoveryService: type: object properties: provider: type: string description: The provider of the service configuration: type: object description: The configuration of the service enabled: type: boolean description: Is the service enabled or not. default: true EndpointGroupV2: type: object properties: name: type: string description: Endpoint group's name. example: My Endpoint Group minLength: 1 endpoints: type: array description: The list of endpoints associated with this endpoint group. items: $ref: '#/components/schemas/EndpointV2' loadBalancer: $ref: '#/components/schemas/LoadBalancer' services: $ref: '#/components/schemas/EndpointGroupServicesV2' httpProxy: $ref: '#/components/schemas/HttpProxy' httpClientOptions: $ref: '#/components/schemas/HttpClientOptions' httpClientSslOptions: $ref: '#/components/schemas/HttpClientSslOptions' headers: type: array description: The list of headers associated with this endpoint group. example: - name: X-My-Header value: my-value items: $ref: '#/components/schemas/HttpHeader' EndpointHealthCheckService: allOf: - $ref: '#/components/schemas/HealthCheckService' - properties: inherit: type: boolean description: Inherit the configuration of the parent endpoint. EndpointStatus: type: string description: The status of the endpoint. x-field-extra-annotation: '@com.fasterxml.jackson.annotation.JsonIgnore' x-getter-extra-annotation: '@com.fasterxml.jackson.annotation.JsonIgnore' x-setter-extra-annotation: '@com.fasterxml.jackson.annotation.JsonIgnore' example: UP enum: - UP - DOWN - TRANSITIONALLY_DOWN - TRANSITIONALLY_UP ExecutionMode: type: string description: The execution mode of the API. example: V4_EMULATION_ENGINE default: V4_EMULATION_ENGINE enum: - V3 - V4_EMULATION_ENGINE Failover: type: object properties: maxAttempts: type: integer format: int32 description: The maximum number of attempts. default: 1 retryTimeout: type: integer format: int64 description: The retry timeout in ms default: 10000 cases: type: array description: The list of cases associated with this failover. items: $ref: '#/components/schemas/FailoverCase' default: - TIMEOUT FailoverCase: type: string description: The case of the failover. enum: - TIMEOUT FlowStage: type: string description: The stage of the flow. enum: - PLATFORM - PLAN - API FlowV2: type: object properties: id: type: string description: Flow's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: Flow's name. example: My Flow pathOperator: $ref: '#/components/schemas/PathOperator' pre: type: array items: $ref: '#/components/schemas/StepV2' post: type: array items: $ref: '#/components/schemas/StepV2' enabled: type: boolean description: Is the flow enabled. default: true methods: type: array items: $ref: '#/components/schemas/HttpMethod' condition: type: string description: The condition to evaluate to determine if the flow should be executed. example: '{#request.headers[''x-foo''] == ''bar''}' consumers: type: array items: $ref: '#/components/schemas/Consumer' stage: $ref: '#/components/schemas/FlowStage' HealthCheckRequest: type: object properties: path: type: string description: The path of the request example: /my/path method: $ref: '#/components/schemas/HttpMethod' headers: type: array items: $ref: '#/components/schemas/HttpHeader' body: type: string description: The body of the request example: my body fromRoot: type: boolean description: Is the request from the root or not default: false HealthCheckResponse: type: object properties: assertions: type: array items: type: string description: The assertion to check example: '{#response.status == 200}' HealthCheckService: type: object properties: schedule: type: string description: The schedule of the service steps: type: array items: $ref: '#/components/schemas/HealthCheckStep' enabled: type: boolean description: Is the service enabled or not. HealthCheckStep: type: object properties: name: type: string description: The name of the step default: default-step request: $ref: '#/components/schemas/HealthCheckRequest' response: $ref: '#/components/schemas/HealthCheckResponse' HttpClientOptions: type: object properties: idleTimeout: type: integer format: int32 description: The idle timeout of the http client in ms default: 60000 keepAliveTimeout: type: integer format: int32 description: The keep-alive timeout of the http client in ms default: 30000 connectTimeout: type: integer format: int32 description: The connect timeout of the http client in ms default: 5000 keepAlive: type: boolean description: The keep alive parameter of the http client default: true readTimeout: type: integer format: int32 description: The read timeout of the http client in ms default: 10000 pipelining: type: boolean description: The pipelining parameter of the http client default: false maxConcurrentConnections: type: integer format: int32 description: The max connections of the http client default: 100 useCompression: type: boolean description: Use compression or not default: true propagateClientAcceptEncoding: type: boolean description: Propagate the client accept encoding or not default: false followRedirects: type: boolean description: Follow redirects or not default: false clearTextUpgrade: type: boolean description: Clear text upgrade or not default: true version: $ref: '#/components/schemas/ProtocolVersion' maxHeaderSize: type: integer format: int32 description: Maximum header size value default: 8192 maxChunkSize: type: integer format: int32 description: Maximum chunk size value default: 8192 HttpClientSslOptions: type: object properties: trustAll: type: boolean description: Trust all certificates or not default: false hostnameVerifier: type: boolean description: Should the hostname be verified or not default: false trustStore: $ref: '#/components/schemas/TrustStore' keyStore: $ref: '#/components/schemas/KeyStore' headers: type: array items: $ref: '#/components/schemas/HttpHeader' HttpDynamicPropertyProviderConfiguration: type: object title: HttpDynamicPropertyProviderConfiguration properties: url: type: string description: The url of the dynamic property provider example: http://my-provider.com specification: type: string description: The specification of the dynamic property provider example: my-specification useSystemProxy: type: boolean description: Use the system proxy or not default: false method: $ref: '#/components/schemas/HttpMethod' headers: type: array items: $ref: '#/components/schemas/HttpHeader' body: type: string description: The body of the request example: my body provider: $ref: '#/components/schemas/DynamicPropertyProvider' required: - provider HttpHeader: type: object properties: name: type: string description: The name of the header example: my-header value: type: string description: The value of the header example: my-value HttpProxy: type: object properties: enabled: type: boolean description: Is the proxy enabled or not default: false useSystemProxy: type: boolean description: Use the system proxy or not default: false host: type: string description: The host of the proxy example: my-proxy.com port: type: integer description: The port of the proxy example: 8080 username: type: string description: The username used to connect to the proxy example: my-username password: type: string description: The password used to connect to the proxy example: my-password type: $ref: '#/components/schemas/HttpProxyType' HttpProxyType: type: string description: The type of the proxy. example: HTTP enum: - HTTP - SOCKS4 - SOCKS5 KeyStore: oneOf: - $ref: '#/components/schemas/JKSKeyStore' - $ref: '#/components/schemas/PEMKeyStore' - $ref: '#/components/schemas/PKCS12KeyStore' - $ref: '#/components/schemas/NoneKeyStore' discriminator: propertyName: type mapping: JKS: '#/components/schemas/JKSKeyStore' PEM: '#/components/schemas/PEMKeyStore' PKCS12: '#/components/schemas/PKCS12KeyStore' NONE: '#/components/schemas/NoneKeyStore' KeyStoreType: type: string description: The type of the key store. example: JKS enum: - JKS - PEM - PKCS12 - NONE BaseKeyStore: type: object properties: type: $ref: '#/components/schemas/KeyStoreType' discriminator: propertyName: type mapping: JKS: '#/components/schemas/JKSKeyStore' PEM: '#/components/schemas/PEMKeyStore' PKCS12: '#/components/schemas/PKCS12KeyStore' NONE: '#/components/schemas/NoneKeyStore' required: - type JKSKeyStore: title: JKSKeyStore allOf: - $ref: '#/components/schemas/BaseKeyStore' - properties: path: type: string description: The path of the key store example: /path/to/KeyStore.jks content: type: string description: The content of the key store password: type: string description: The password of the key store PEMKeyStore: title: PEMKeyStore allOf: - $ref: '#/components/schemas/BaseKeyStore' - properties: keyPath: type: string description: The path of the key store example: /path/to/KeyStore.pem keyContent: type: string description: The content of the key store certPath: type: string description: The path of the key store example: /path/to/KeyStore.pem certContent: type: string description: The content of the key store PKCS12KeyStore: title: PKCS12KeyStore allOf: - $ref: '#/components/schemas/BaseKeyStore' - properties: path: type: string description: The path of the key store example: /path/to/KeyStore.jks content: type: string description: The content of the key store password: type: string description: The password of the key store NoneKeyStore: title: NoneKeyStore allOf: - $ref: '#/components/schemas/BaseKeyStore' LoggingV2: type: object properties: mode: $ref: '#/components/schemas/LoggingModeV2' scope: $ref: '#/components/schemas/LoggingScope' content: $ref: '#/components/schemas/LoggingContentV2' condition: type: string description: The condition of the logging example: '{#context.attributes[''my-attribute''] == ''my-value''}' LoggingContentV2: type: string description: The content of the logging. example: NONE enum: - NONE - HEADERS - PAYLOADS - HEADERS_PAYLOADS LoggingModeV2: type: string description: The mode of the logging. example: NONE enum: - NONE - CLIENT - PROXY - CLIENT_PROXY LoggingScope: type: string description: The scope of the logging. example: REQUEST enum: - NONE - REQUEST - RESPONSE - REQUEST_RESPONSE PathOperator: type: object properties: path: type: string description: The path of the selector example: /my/path operator: $ref: '#/components/schemas/Operator' PlanV2: type: object title: PlanV2 allOf: - $ref: '#/components/schemas/GenericPlan' - properties: flows: type: array items: $ref: '#/components/schemas/FlowV2' ProtocolVersion: type: string description: The protocol version. example: HTTP_1_1 default: HTTP_1_1 enum: - HTTP_1_1 - HTTP_2 Proxy: type: object properties: virtualHosts: type: array items: $ref: '#/components/schemas/VirtualHost' groups: type: array items: $ref: '#/components/schemas/EndpointGroupV2' failover: $ref: '#/components/schemas/Failover' cors: $ref: '#/components/schemas/Cors' requestValidation: $ref: '#/components/schemas/RequestValidation' logging: $ref: '#/components/schemas/LoggingV2' stripContextPath: type: boolean default: false preserveHost: type: boolean default: false servers: type: array items: type: string ApiServicesV2: type: object properties: dynamicProperty: $ref: '#/components/schemas/DynamicPropertyService' healthCheck: $ref: '#/components/schemas/HealthCheckService' EndpointGroupServicesV2: type: object properties: discovery: $ref: '#/components/schemas/EndpointDiscoveryService' StepV2: allOf: - $ref: '#/components/schemas/BaseStep' TrustStore: oneOf: - $ref: '#/components/schemas/JKSTrustStore' - $ref: '#/components/schemas/PEMTrustStore' - $ref: '#/components/schemas/PKCS12TrustStore' - $ref: '#/components/schemas/NoneTrustStore' discriminator: propertyName: type mapping: JKS: '#/components/schemas/JKSTrustStore' PEM: '#/components/schemas/PEMTrustStore' PKCS12: '#/components/schemas/PKCS12TrustStore' NONE: '#/components/schemas/NoneTrustStore' TrustStoreType: type: string description: The type of the trust store. example: JKS enum: - JKS - PEM - PKCS12 - NONE BaseTrustStore: type: object properties: type: $ref: '#/components/schemas/TrustStoreType' required: - type discriminator: propertyName: type mapping: JKS: '#/components/schemas/JKSTrustStore' PEM: '#/components/schemas/PEMTrustStore' PKCS12: '#/components/schemas/PKCS12TrustStore' NONE: '#/components/schemas/NoneTrustStore' JKSTrustStore: title: JKSTrustStore allOf: - $ref: '#/components/schemas/BaseTrustStore' - properties: path: type: string description: The path of the trust store example: /path/to/truststore.jks content: type: string description: The content of the trust store password: type: string description: The password of the trust store PEMTrustStore: title: PEMTrustStore allOf: - $ref: '#/components/schemas/BaseTrustStore' - properties: path: type: string description: The path of the trust store example: /path/to/truststore.pem content: type: string description: The content of the trust store PKCS12TrustStore: title: PKCS12TrustStore allOf: - $ref: '#/components/schemas/BaseTrustStore' - properties: path: type: string description: The path of the trust store example: /path/to/truststore.jks content: type: string description: The content of the trust store password: type: string description: The password of the trust store NoneTrustStore: title: NoneTrustStore allOf: - $ref: '#/components/schemas/BaseTrustStore' VirtualHost: type: object properties: host: type: string description: The host of the virtual host path: type: string description: The path of the virtual host default: / overrideEntrypoint: type: boolean description: Override the entrypoint or not default: false ApiLog: type: object properties: timestamp: type: string format: date-time description: The date (as timestamp) of the log. example: 2023-05-18 12:40:46.184000+00:00 id: type: string description: The internal UUID of the Log. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 requestId: type: string description: The id of the request. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 method: $ref: '#/components/schemas/HttpMethod' clientIdentifier: type: string description: The client identifier of the request. example: 12ca17b49af2289436f303e0166030a21e525d266e209267433801a8fd4071a0 plan: $ref: '#/components/schemas/BasePlan' application: $ref: '#/components/schemas/BaseApplication' transactionId: type: string description: The id of the transaction. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 status: type: integer description: The response's status. example: 200 requestEnded: type: boolean description: The flag indicating if the request has ended. example: true gatewayResponseTime: type: integer description: The response time in ms example: 12 uri: type: string description: URI of the request. example: /my-api endpoint: type: string description: The endpoint URL. example: https://my-api-example.com message: type: string description: The error message. example: The timeout period of 1000ms has been exceeded errorKey: type: string description: The error key. example: TIMEOUT_ERROR errorComponentName: type: string description: The name of the component that generated the error. example: security errorComponentType: type: string description: The type of the component that generated the error. example: ENDPOINT warnings: type: array description: The warning diagnotics items: $ref: '#/components/schemas/ApiLogDiagnostic' additionalMetrics: type: object additionalProperties: true description: A map of string keys to values apiProductId: type: string description: The ID of the API Product associated with this log entry. Absent when the request is not associated with any API Product. example: f5e6a5a0-1234-4b3a-9c1e-aabbccddeeff apiProductName: type: string description: The human-readable name of the API Product. Absent when no API Product is associated or the product cannot be resolved. example: My Partner API Product ApiLogDiagnostic: type: object properties: componentType: type: string description: The type of the component from where the diagnostic has been emitted example: POLICY componentName: type: string description: The name of the component from where the diagnostic has been emitted example: transform-header key: type: string description: The diagnostic key. example: TRANSFORM_HEADERS_FAILURE message: type: string description: The diagnostic message. ApiAggregatedMessageLog: type: object properties: requestId: type: string description: The id of the request. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 timestamp: type: string format: date-time description: The date (as timestamp) of the log. example: 2023-05-18 12:40:46.184000+00:00 clientIdentifier: type: string description: The client identifier of the request. example: 12ca17b49af2289436f303e0166030a21e525d266e209267433801a8fd4071a0 correlationId: type: string description: The correlation id. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 parentCorrelationId: type: string description: The parent correlation id. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 operation: type: string description: The operation. example: subscribe entrypoint: $ref: '#/components/schemas/ApiMessageLogContent' endpoint: $ref: '#/components/schemas/ApiMessageLogContent' ApiLogRequestContent: type: object description: The log request content. properties: method: $ref: '#/components/schemas/HttpMethod' uri: type: string description: URI of the request. example: /my-api headers: type: object description: The list of headers associated with this message. example: - name: X-My-Header value: - my-value body: type: string description: The request's body. example: my body ApiMessageLog: type: object description: Metrics data for a sampled message. properties: gateway: description: Gateway ID emitting this metrics type: string timestamp: type: string format: date-time requestId: description: Request ID after which message were emitted type: string apiId: description: API UUID type: string apiName: description: API Name (may change between metrics if API was redeployed with another name) type: string clientIdentifier: description: identified client if any type: string correlationId: description: ID to identify that message traserving the Gateway type: string operation: $ref: '#/components/schemas/MessageOperation' connectorType: $ref: '#/components/schemas/ConnectorType' connectorId: description: Plugin ID of the connector that emitted the metric type: string example: webhook contentLength: description: Message content length type: integer format: int64 minimum: 0 count: description: Total successful messages count over the span of the subscription type: integer format: int64 minimum: 0 errorCount: description: Total failure message count in error count type: integer format: int64 minimum: 0 countIncrement: description: Rate in which message are counted type: integer format: int64 minimum: 0 error: description: If the message is in error type: boolean gatewayLatencyMs: description: Gateway latency to deliver this message type: integer format: int64 minimum: 0 custom: description: User defined custom metrics data type: object additionalProperties: type: string additionalMetrics: description: Plugin specific metrics (e.g. webhook entrypoint add several to monitor callback information such status, errors, latency, time) type: object additionalProperties: true MessageOperation: description: The operation that emitted the message type: string enum: - publish - subscribe ConnectorType: description: Type of connector that emitted the metric type: string enum: - entrypoint - endpoint ApiLogResponseContent: type: object description: The log response content. properties: status: type: integer description: The response's status. example: 200 headers: type: object description: The list of headers associated with this message. example: - name: X-My-Header value: - my-value body: type: string description: The response's body. example: my body ApiMessageLogContent: type: object description: The message content. example: "{\n\t\t\t\"id\": \"0\",\n\t\t\t\"payload\": \"mock message\",\n\t\t\ \t\"headers\": {\n\t\t\t\t\"X-Mock\": [\n\t\t\t\t\t\"mocked\"\n\t\t\t\t]\n\ \t\t\t},\n\t\t\t\"metadata\": {\n\t\t\t\t\"MessageMetadata\": \"A metadata\"\ \n\t\t\t}\n\t\t}\n" properties: id: type: string description: The internal UUID of the Message. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 connectorId: type: string description: The id of connector for this log. example: kafka payload: type: string description: The payload of the Message. example: This is a message isError: type: boolean description: Is the Message in error. example: false headers: type: object description: The list of headers associated with this message. example: - name: X-My-Header value: - my-value metadata: type: object description: The list of Message's metadata. ApiLogHeader: type: object properties: name: type: string description: The name of the header example: my-header value: type: array description: The values of the header example: - my-value items: type: string ApiLogMetadata: type: object properties: name: type: string description: The name of the metadata example: my-metadata value: type: string description: The value of the metadata example: - my-value NativeApiLogsSummary: type: object description: Summary of native API connection logs aggregated by connection status. properties: countByConnectionStatus: type: object description: Number of native connection lifecycle events keyed by connection status (CONNECTED, CONNECTION_ERROR, SESSION_ERROR, INTERNAL_ERROR). additionalProperties: type: integer format: int64 NativeApiLog: type: object description: Native API connection log entry. properties: timestamp: type: string format: date-time description: The date (as timestamp) when the connection lifecycle event was recorded. example: 2026-01-01 00:00:00+00:00 apiId: type: string description: The id of the API. requestId: type: string description: The id of the request. transactionId: type: string description: The id of the transaction. applicationId: type: string description: The id of the application. planId: type: string description: The id of the plan. clientIdentifier: type: string description: The client identifier of the request. subscriptionId: type: string description: The id of the subscription. entrypointId: type: string description: The id of the entrypoint serving the connection. gateway: type: string description: The id of the gateway instance handling the connection. remoteAddress: type: string description: The client remote address. localAddress: type: string description: The gateway local address. host: type: string description: The host targeted by the client. errorKey: type: string description: The error key when the connection terminated with an error. errorMessage: type: string description: The error message when the connection terminated with an error. connectionStatus: type: string enum: - CONNECTED - CONNECTION_ERROR - SESSION_ERROR - INTERNAL_ERROR description: The connection lifecycle status of the native API connection. clientId: type: string description: The native protocol client id (e.g. Kafka client.id) reported by the connection. Visible in detail view only. brokerId: type: string description: The id of the native protocol broker the connection is targeting (e.g. Kafka broker id). Visible in detail view only. connectionDurationMs: type: integer format: int64 description: The duration of the connection in milliseconds, when the connection has terminated. Audit: type: object properties: id: type: string description: The internal UUID of the audit. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 createdAt: type: string format: date-time description: The date when the audit has been created. example: 2023-05-18 12:40:46.184000+00:00 organizationId: type: string description: The id of the organization. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 environmentId: type: string description: The id of the environment. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 reference: $ref: '#/components/schemas/AuditReference' user: $ref: '#/components/schemas/BaseUser' event: type: string description: The audit event. example: API_CREATED properties: description: Properties of the audits. type: array items: type: object properties: key: type: string description: The key of the property. example: API value: type: string description: The value of the property. Usually an id of an entity. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 name: type: string description: The name of the entity identified by the value. example: My API patch: type: string description: The JSON Patch of the modification. example: '[{ "op": "add", "path": "/hello", "value": ["world"] }]' AuditReference: type: object properties: id: type: string description: The id of the auditable element. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 type: type: string description: The type of the auditable element example: API enum: - API - APPLICATION - ENVIRONMENT - ORGANIZATION name: type: string description: The name of the auditable element example: My API Event: type: object properties: id: type: string description: The internal UUID of the event. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 createdAt: type: string format: date-time description: The date when the event has been created. example: 2023-05-18 12:40:46.184000+00:00 environmentIds: type: array items: type: string description: The id of the environments. example: - 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 initiator: $ref: '#/components/schemas/BaseUser' type: $ref: '#/components/schemas/EventType' payload: type: string description: The event payload. example: '{"id":"023d7a64-b5de-4e1a-bd7a-64b5dede1adb"}' properties: type: object description: Properties of the event. additionalProperties: type: string EventType: type: string description: The type of the event. example: START_API enum: - ALERT_NOTIFICATION - DEBUG_API - DEPLOY_API_PRODUCT - DEPLOY_CLUSTER - DEPLOY_SHARED_POLICY_GROUP - GATEWAY_STARTED - GATEWAY_STOPPED - PUBLISH_API - PUBLISH_API_RESULT - PUBLISH_DICTIONARY - PUBLISH_ORGANIZATION - PUBLISH_ORGANIZATION_LICENSE - START_API - START_DICTIONARY - STOP_API - STOP_DICTIONARY - UNDEPLOY_API_PRODUCT - UNDEPLOY_CLUSTER - UNDEPLOY_SHARED_POLICY_GROUP - UNPUBLISH_API - UNPUBLISH_API_RESULT - UNPUBLISH_DICTIONARY - PUBLISH_AUTHZ_POLICY - UNPUBLISH_AUTHZ_POLICY - PUBLISH_AUTHZ_ENTITY - UNPUBLISH_AUTHZ_ENTITY - PUBLISH_AUTHZ_PDP - UNPUBLISH_AUTHZ_PDP AccessControl: type: object properties: referenceId: type: string description: The id of the resource used to check the access control example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 referenceType: type: string description: The type of the resource used to check the access control example: - GROUP - ROLE Media: type: object properties: id: type: string description: Media's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 hash: type: string description: Media's hash. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 type: type: string description: Media's type. example: image/png subType: type: string description: Media's sub type. example: png fileName: type: string description: Media's file name. example: my-image.png size: type: integer format: int64 description: Media's size. example: 1000 data: type: string format: byte description: Media's data. example: binary encoded data createdAt: type: string format: date-time description: Media's creation date. example: 2018-11-23 22:00:00+00:00 Page: description: Documentation page. Can be of multiple formats. type: object properties: id: type: string description: Page's uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 crossId: type: string description: Page's cross uuid. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 name: type: string description: Page's name. example: My Page type: $ref: '#/components/schemas/PageType' content: type: string description: Page's content. example: My Page content order: type: integer description: Page's order. example: 1 lastContributor: type: string description: Page's last contributor. Id of a user. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 published: type: boolean description: Page's published status. example: true visibility: $ref: '#/components/schemas/Visibility' updatedAt: type: string format: date-time description: Page's last update date. example: 2018-01-01 00:00:00+00:00 contentType: type: string description: Page's content type. example: application/json source: $ref: '#/components/schemas/PageSource' configuration: type: object description: Page's configuration. additionalProperties: type: string homepage: type: boolean description: Page's homepage status. example: true parentId: type: string description: Page's parent id. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 parentPath: type: string description: Page's parent path. example: /parent excludedAccessControls: type: boolean description: Flag to restrict access to user matching the restrictions. accessControls: type: array description: List of access controls. items: $ref: '#/components/schemas/AccessControl' attachedMedia: type: array description: List of attached media. items: $ref: '#/components/schemas/PageMedia' metadata: type: object description: Page's metadata. additionalProperties: type: string translations: type: array description: List of page translations. items: $ref: '#/components/schemas/Page' contentRevision: $ref: '#/components/schemas/Revision' hidden: type: boolean description: If folder is published but not shown in Portal. generalConditions: type: boolean description: If page is used as General Conditions of an active plan. PageMedia: type: object properties: name: type: string description: Media's name. example: My Media hash: type: string description: Media's hash. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 attachedAt: type: string format: date-time description: Media's attachment date. example: 2018-01-01 00:00:00+00:00 PageSource: type: object properties: type: type: string description: The type of the page source (=fetcher type). example: - http-fetcher - git-fetcher - gitlab-fetcher - github-fetcher - bitbucket-fetcher configuration: type: object description: Page source's configuration. PageType: type: string description: The type of the page. example: MARKDOWN enum: - ASCIIDOC - ASYNCAPI - MARKDOWN - MARKDOWN_TEMPLATE - SWAGGER - FOLDER - LINK - ROOT - SYSTEM_FOLDER - TRANSLATION FailoverV4: type: object properties: enabled: type: boolean description: Is the failover enabled. default: false maxRetries: type: integer format: int32 description: The maximum number of retries. default: 2 minimum: 0 slowCallDuration: type: integer format: int64 description: The duration in milliseconds to consider a request as slow. default: 2000 minimum: 50 openStateDuration: type: integer format: int64 description: The duration in milliseconds to indicate how long the circuit breaker should stay open, before it switches to half open. default: 10000 minimum: 500 maxFailures: type: integer format: int32 description: The maximum number of failures allowed before the circuit breaker can calculate the error rate. default: 5 minimum: 1 perSubscription: type: boolean description: If true, a circuit breaker breaker will be dedicated for each subscriber, else, one and only circuit breaker will be used for the API. default: true failureCondition: type: string description: An EL expression evaluated on the response to determine if it should be considered a failure (e.g. "{#response.status >= 500}"). If null, response content is not evaluated. forceNextEndpointOnFailure: type: boolean description: If true, on retry the next endpoint in the group is forced instead of relying on the shared load balancer. This ensures retries target different endpoints. default: false CreateDocumentation: type: object properties: name: type: string description: Page's name. example: My Page minLength: 1 type: type: string description: The type of the page. example: MARKDOWN enum: - MARKDOWN - FOLDER - SWAGGER - ASYNCAPI - ASCIIDOC visibility: $ref: '#/components/schemas/Visibility' parentId: type: string description: Page's parent id. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 excludedAccessControls: type: boolean description: Flag to restrict access to user matching the restrictions. accessControls: type: array description: List of access controls. items: $ref: '#/components/schemas/AccessControl' configuration: type: object description: Configuration of a page additionalProperties: type: string required: - name - type discriminator: propertyName: type mapping: FOLDER: '#/components/schemas/CreateDocumentationFolder' MARKDOWN: '#/components/schemas/CreateDocumentationMarkdown' SWAGGER: '#/components/schemas/CreateDocumentationSwagger' ASYNCAPI: '#/components/schemas/CreateDocumentationAsyncApi' ASCIIDOC: '#/components/schemas/CreateDocumentationAsciiDoc' CreateDocumentationFolder: title: CreateDocumentationFolder description: Create documentation folder. type: object allOf: - $ref: '#/components/schemas/CreateDocumentation' required: - name - type CreateDocumentationMarkdown: title: CreateDocumentationMarkdown description: Create documentation markdown page. type: object allOf: - $ref: '#/components/schemas/CreateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true source: $ref: '#/components/schemas/SourceConfiguration' required: - name - type CreateDocumentationSwagger: title: CreateDocumentationSwagger description: Create documentation Swagger. type: object allOf: - $ref: '#/components/schemas/CreateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true source: $ref: '#/components/schemas/SourceConfiguration' required: - name - type CreateDocumentationAsyncApi: title: CreateDocumentationAsyncApi description: Create documentation Async API. type: object allOf: - $ref: '#/components/schemas/CreateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true source: $ref: '#/components/schemas/SourceConfiguration' required: - name - type CreateDocumentationAsciiDoc: title: CreateDocumentationAsciiDoc description: Create documentation AsciiDoc. type: object allOf: - $ref: '#/components/schemas/CreateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true source: $ref: '#/components/schemas/SourceConfiguration' required: - name - type SourceConfiguration: type: object description: Source configuration for fetching documentation content. properties: type: type: string description: Type of the source. example: http-fetcher configuration: type: object description: Configuration for the source. UpdateDocumentation: type: object properties: type: type: string description: The type of documentation to update. enum: - FOLDER - MARKDOWN - SWAGGER - ASYNCAPI - ASCIIDOC name: type: string description: Page's name. example: My Page minLength: 1 order: type: integer description: Page's order. example: 1 default: 0 minimum: 0 visibility: $ref: '#/components/schemas/Visibility' excludedAccessControls: type: boolean description: Flag to restrict access to user matching the restrictions. accessControls: type: array description: List of access controls. items: $ref: '#/components/schemas/AccessControl' configuration: type: object description: Configuration of a page additionalProperties: type: string source: $ref: '#/components/schemas/PageSource' required: - type - name discriminator: propertyName: type mapping: FOLDER: '#/components/schemas/UpdateDocumentationFolder' MARKDOWN: '#/components/schemas/UpdateDocumentationMarkdown' SWAGGER: '#/components/schemas/UpdateDocumentationSwagger' ASYNCAPI: '#/components/schemas/UpdateDocumentationAsyncApi' ASCIIDOC: '#/components/schemas/UpdateDocumentationAsciiDoc' UpdateDocumentationFolder: title: UpdateDocumentationFolder description: Update documentation folder. type: object allOf: - $ref: '#/components/schemas/UpdateDocumentation' UpdateDocumentationMarkdown: title: UpdateDocumentationMarkdown description: Update documentation markdown page. type: object allOf: - $ref: '#/components/schemas/UpdateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true UpdateDocumentationSwagger: title: UpdateDocumentationSwagger description: Update documentation Swagger. type: object allOf: - $ref: '#/components/schemas/UpdateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true UpdateDocumentationAsyncApi: title: UpdateDocumentationAsyncApi description: Update documentation Async API. type: object allOf: - $ref: '#/components/schemas/UpdateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true UpdateDocumentationAsciiDoc: title: UpdateDocumentationAsciiDoc description: Update documentation AsciiDoc. type: object allOf: - $ref: '#/components/schemas/UpdateDocumentation' - properties: content: type: string description: Page's content. example: My Page content homepage: type: boolean description: Page's homepage status. example: true Revision: type: object properties: id: type: string description: Id of the page used to fill the content attributes. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 revision: type: integer description: Revision number. example: 1 Breadcrumb: type: object properties: position: type: integer description: Distance of folder from the root example: 1 id: type: string description: Id of the folder example: folder-id name: type: string description: Name of the folder example: A lovely folder name Metadata: type: object properties: key: type: string description: The key of the metadata. minLength: 1 name: type: string description: The name of the metadata. format: $ref: '#/components/schemas/MetadataFormat' value: type: string description: The value of the metadata. minLength: 1 defaultValue: type: string description: The default value of the metadata. MetadataFormat: type: string description: The format of the metadata. example: DATE enum: - STRING - NUMERIC - BOOLEAN - DATE - MAIL - URL CreateIntegration: type: object properties: name: type: string description: Name of the integration minLength: 1 maxLength: 50 description: type: string description: Description of the integration minLength: 0 maxLength: 250 provider: type: string description: Provider of this integration (use "A2A" for A2A integrations) wellKnownUrls: type: array description: A2A well-known URLs (only for A2A provider) items: $ref: '#/components/schemas/IntegrationWellKnownUrl' required: - name - provider UpdateIntegration: type: object properties: name: type: string description: Updated name of the integration minLength: 1 maxLength: 50 description: type: string description: Updated description of the integration minLength: 0 maxLength: 250 groups: type: array description: Update integration's groups example: - MY_GROUP1 - MY_GROUP2 items: type: string wellKnownUrls: type: array description: A2A well-known URLs (only for A2A provider) items: $ref: '#/components/schemas/IntegrationWellKnownUrl' required: - name ApiSpecGenRequestState: type: object description: API SpecGen state. properties: state: $ref: '#/components/schemas/SpecGenState' SpecGenState: type: string description: API SpecGen state value example: AVAILABLE enum: - AVAILABLE - UNAVAILABLE - STARTED - GENERATING ApiScoringTriggerResponse: type: object properties: status: $ref: '#/components/schemas/ScoringStatus' message: type: string description: Api Scoring message. example: API Scoring triggered successfully. ScoringStatus: type: string description: API Scoring status. example: SUCCESS enum: - SUCCESS - PENDING - ERROR ApiScoring: type: object properties: createdAt: type: string format: date-time description: The date when the scoring has been created. example: 2023-05-18 12:40:46.184000+00:00 summary: $ref: '#/components/schemas/ApiScoringSummary' assets: type: array items: $ref: '#/components/schemas/ApiScoringAsset' ApiScoringSummary: type: object properties: score: type: number description: The score of the API. example: 0.91 all: type: integer description: The total number of violated rules for all assets. example: 100 errors: type: integer description: The total number of violated rules with severity ERROR for all assets. example: 10 warnings: type: integer description: The total number of violated rules with severity WARN for all assets. example: 20 infos: type: integer description: The total number of violated rules with severity INFO for all assets. example: 30 hints: type: integer description: The total number of violated rules with severity HINT for all assets. example: 40 ApiScoringAsset: type: object properties: name: type: string description: Asset name. example: Echo-oas.json type: $ref: '#/components/schemas/ApiScoringAssetType' diagnostics: type: array items: $ref: '#/components/schemas/ApiScoringDiagnostic' errors: type: array items: $ref: '#/components/schemas/ApiScoringError' ApiScoringAssetType: type: string description: The type of the asset. example: SWAGGER enum: - ASYNCAPI - GRAVITEE_DEFINITION - SWAGGER ApiScoringDiagnostic: type: object properties: severity: $ref: '#/components/schemas/ApiScoringSeverity' range: type: object properties: start: $ref: '#/components/schemas/ApiScoringPosition' end: $ref: '#/components/schemas/ApiScoringPosition' rule: type: string description: The rule that has been violated. example: operation-operationId message: type: string description: A string that contains a human-readable message describing the issue found. example: Operation must have 'operationId'. path: type: string description: A string that indicates the location within the analyzed document where the rule was triggered. It shows the "path" in the document structure to the issue. example: paths./my-api.get ApiScoringError: type: object properties: code: type: string description: code of the api scoring validation error example: undefined-function path: type: array description: Path to the specific place in document where problem occurred items: type: string ApiScoringSeverity: type: string description: An enum representing the severity level of the rule violation. example: WARN enum: - ERROR - HINT - INFO - WARN ApiScoringPosition: type: object properties: line: type: integer description: An integer that represents the line number within the line where the issue starts or ends. The value is zero indexed. example: 17 character: type: integer description: An integer that represents the character position within the line where the issue starts or ends. The value is zero indexed. example: 12 AsyncJob: type: object properties: id: type: string description: Id of the job. example: b21cbef5-02b6-462e-9ee8-694c89c3dee5 sourceId: type: string description: Resource id related to this job. example: 660bf428-4f06-451f-8144-10bbb581db65 environmentId: type: string description: The environment id example: DEFAULT initiatorId: type: string description: User id who triggered this job. example: 660bf428-4f06-451f-8144-10bbb581db65 type: type: string description: Resource id related to this job. example: FEDERATED_APIS_INGESTION enum: - FEDERATED_APIS_INGESTION - SCORING_REQUEST - AM_USER_SYNC status: $ref: '#/components/schemas/AsyncJobStatus' errorMessage: type: string description: A message detailing why the job failed. createdAt: type: string format: date-time description: The date when the job has been created. example: 2023-05-18 12:40:46.184000+00:00 updatedAt: type: string format: date-time description: The date when the job has been updated. example: 2023-05-18 12:40:46.184000+00:00 AsyncJobStatus: type: string description: Status of the job. example: SUCCESS enum: - SUCCESS - PENDING - ERROR - TIMEOUT AnalyticTimeRange: type: object description: A Time range properties: from: type: integer format: int64 description: The timestamp starting the time range example: 1621339200000 to: type: integer format: int64 description: The timestamp ending the time range example: 1621425600000 interval: type: integer format: int64 description: The interval in milliseconds splitting the data example: 120000 AnalyticsType: type: string description: The type of the analytics example: STATS enum: - STATS - COUNT - HISTOGRAM - GROUP_BY GenericAnalytics: type: object description: Generic Analytics response properties: analyticsType: $ref: '#/components/schemas/AnalyticsType' required: - analyticsType discriminator: propertyName: analyticsType mapping: STATS: '#/components/schemas/StatsAnalytics' COUNT: '#/components/schemas/CountAnalytics' HISTOGRAM: '#/components/schemas/HistogramAnalytics' GROUP_BY: '#/components/schemas/GroupByAnalytics' StatsAnalytics: allOf: - $ref: '#/components/schemas/GenericAnalytics' - type: object properties: avg: type: number format: float description: Average value of the metric. min: type: number format: float description: Minimum value of the metric. max: type: number format: float description: Maximum value of the metric. sum: type: number format: float description: Sum of all metric values. count: type: number format: float description: Total number of data points. rps: type: number format: float description: Requests per second. rpm: type: number format: float description: Requests per minute. rph: type: number format: float description: Requests per hour. CountAnalytics: allOf: - $ref: '#/components/schemas/GenericAnalytics' - type: object properties: count: type: integer format: int64 HistogramAnalytics: allOf: - $ref: '#/components/schemas/GenericAnalytics' - type: object properties: timestamp: type: object title: HistogramTimestamp properties: from: type: integer format: int64 to: type: integer format: int64 interval: type: integer format: int64 values: type: array items: type: object properties: buckets: type: array items: type: object properties: name: type: string data: type: array items: type: number format: double field: type: string name: type: string metadata: type: object additionalProperties: type: object additionalProperties: type: string GroupByAnalytics: allOf: - $ref: '#/components/schemas/GenericAnalytics' - type: object properties: values: type: object additionalProperties: type: integer format: int64 metadata: type: object additionalProperties: type: object additionalProperties: type: string HealthCheckLog: type: object description: A healh check log properties: id: type: string description: The id of the log example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 timestamp: type: string format: date-time description: The date of the log example: 2023-05-18 12:40:46.184000+00:00 endpointName: type: string description: The name of the endpoint example: default gatewayId: type: string description: The id of the gateway that called the health check example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 responseTime: type: integer format: int64 description: The response time in ms example: 12 success: type: boolean description: The success of the health check example: true steps: type: array items: $ref: '#/components/schemas/HealthCheckLogStep' HealthCheckLogStep: type: object description: A healh check log step properties: name: type: string description: The step name example: default-step success: type: boolean description: The status of the step example: true message: type: string description: The failure message when step failed example: Assertions failed request: $ref: '#/components/schemas/HealthCheckLogRequest' response: $ref: '#/components/schemas/HealthCheckLogResponse' HealthCheckLogRequest: type: object description: A health check request properties: uri: type: string description: The uri called example: https://api.gravitee.io/ method: type: string description: The http method example: GET headers: type: object description: The request headers additionalProperties: type: string HealthCheckLogResponse: type: object description: A health check response properties: status: type: integer description: The response status example: 200/ body: type: string description: The response body example: OK headers: type: object description: The response headers additionalProperties: type: string ExposedEntrypoint: type: object properties: value: type: string description: The url or host of the entrypoint depending on the API type example: https://my-api.domain.com/echo MigrationStateType: type: string description: '* MIGRATED: API is migrated * MIGRATABLE: DRY_RUN and can works * CAN_BE_FORCED: if you force, we upgrade * IMPOSSIBLE: we don’t know howto upgrade ' enum: - MIGRATED - MIGRATABLE - CAN_BE_FORCED - IMPOSSIBLE FeedbackRequestId: description: newt AI feedback request id. type: object properties: chatId: type: string userMessageId: type: string agentMessageId: type: string ApiProduct: type: object title: ApiProduct description: API Product representation properties: id: type: string description: The API Product ID example: api-product-123 environmentId: type: string description: The environment ID example: DEFAULT name: type: string description: The API Product name example: My API Product description: type: string description: The API Product description example: A bundle of public APIs version: type: string description: The API Product version example: 1.0.0 apiIds: type: array description: List of API IDs included in the product items: type: string example: - api-1 - api-2 createdAt: type: string format: date-time description: API Product creation date example: '2025-01-01T10:15:30Z' updatedAt: type: string format: date-time description: API Product last update date example: '2025-01-01T10:15:30Z' primaryOwner: $ref: '#/components/schemas/PrimaryOwner' description: The primary owner of the API Product tags: type: array description: The list of sharding tags associated with this API Product. items: type: string example: - internal - external ApiProductInfo: type: object title: ApiProductInfo description: Info of an API Product that includes the given API — id and name only. required: - id - name properties: id: type: string description: The API Product ID example: api-product-123 name: type: string description: The API Product name example: My API Product parameters: orgIdParam: name: orgId in: path required: true description: Id of an organization. schema: type: string default: DEFAULT envIdParam: name: envId in: path required: true description: Id or Hrid (Human readable Id) of an environment. schema: type: string default: DEFAULT apiIdParam: name: apiId in: path required: true description: Id of an API. schema: type: string requestIdParam: name: requestId in: path required: true description: Id of a request. schema: type: string categoryIdOrKeyParam: name: categoryIdOrKey in: path required: true description: Id or Key of a category. schema: type: string groupIdParam: name: groupId in: path required: true description: Id of a group. schema: type: string pageIdParam: name: pageId in: path required: true description: Id of a documentation page. schema: type: string planIdParam: name: planId in: path required: true description: Id of a plan. schema: type: string subscriptionIdParam: name: subscriptionId in: path required: true description: Id of a subscription. schema: type: string apiKeyIdParam: name: apiKeyId in: path required: true description: Id of an API Key. schema: type: string endpointIdParam: name: endpointId in: path required: true description: Id of an endpoint. schema: type: string entrypointIdParam: name: entrypointId in: path required: true description: Id of an entrypoint. schema: type: string policyIdParam: name: policyId in: path required: true description: Id of a policy. schema: type: string integrationIdParam: name: integrationId in: path required: true description: Id of an integration. schema: type: string apiSortByParam: name: sortBy in: query required: false description: 'Possibility to sort APIs results by field. Can be ascending or descending with minus ''-'' prefix. By default, no sort is applied.' schema: type: string example: name enum: - name - -name - api_type - -api_type - status - -status - paths - -paths - tags_asc - -tags_desc - categories_asc - -categories_desc - owner - -owner - visibility - -visibility apiMetadataSortByParam: name: sortBy in: query required: false description: 'Possibility to sort API Metadata results by field. Can be ascending or descending with minus ''-'' prefix. By default, ''key'' is applied.' schema: type: string example: key enum: - key - -key - name - -name - format - -format - value - -value pageParam: name: page in: query required: false description: The page number for pagination. schema: type: integer default: 1 perPageParam: name: perPage in: query required: false description: 'The number of items per page for pagination. ' schema: type: integer default: 10 messageLogsConnectorType: name: connectorType in: query description: Connector type to filter on. If unset, no filtering is applied. schema: $ref: '#/components/schemas/ConnectorType' messageLogsConnectorId: name: connectorId in: query description: Connector ID (plugin ID) to filter on. If unset, no filtering is applied. schema: type: string example: webhook messageLogsOperation: name: operation in: query description: Operation to filter on. If unset, no filtering is applied. schema: $ref: '#/components/schemas/MessageOperation' apisSearchExpandsParam: name: expands in: query description: Expansion of data to return in APIs. schema: type: array items: type: string enum: - deploymentState apisGetExpandsParam: name: expands in: query description: Expansion of data to return in APIs. schema: type: array items: type: string enum: - deploymentState - primaryOwner - metadata apiManageOnlyParam: name: manageOnly in: query description: By default only APIs that the user can manage are returned. If set to false, all APIs that the user can view are returned. schema: type: boolean default: true apiMetadataSourceParam: name: source in: query description: Determines source of API Metadata (GLOBAL or API). schema: type: array items: type: string enum: - GLOBAL - API from: name: from in: query required: false description: 'The timestamp from which the logs will be returned. ' schema: type: integer format: int64 to: name: to in: query required: false description: 'The timestamp to which the logs will be returned. ' schema: type: integer format: int64 applicationIds: name: applicationIds description: List of application ids to filter on. in: query explode: false schema: type: array items: type: string auditEvents: name: events description: List of Audit event name to filter on. in: query explode: false schema: type: array items: type: string eventTypes: name: types description: List of event types to filter on. in: query explode: false schema: type: array items: type: string parentId: name: parentId in: query required: false description: Id of the parent folder or 'ROOT' for the top folder. examples: root: value: ROOT summary: Hard-coded value for top level folder parentId: value: 919a8df8-6e53-11ee-b962-0242ac120002 summary: ID of the parent folder schema: type: string planIds: name: planIds description: List of plan ids to filter on. in: query explode: false schema: type: array items: type: string methods: name: methods description: List of HTTP request methods to filter on. in: query explode: false schema: type: array items: $ref: '#/components/schemas/HttpMethod' statuses: name: statuses description: List of http statuses to filter on. in: query explode: false schema: type: array items: type: integer errorKeys: name: errorKeys description: Return only connection logs whose error key matches any of the supplied values. For Native Kafka APIs with connection logging enabled and debug disabled, this filter is AND-composed with the default failed-connections-only filter. in: query explode: false schema: type: array items: type: string eventIdParam: name: eventId in: path required: true description: Id of an API Event. schema: type: string healthField: name: field in: query required: false description: 'The field to group response time and availability. ' schema: type: string default: endpoint enum: - endpoint - gateway responses: ApisResponse: description: Page of apis content: application/json: schema: title: ApisResponse properties: data: description: List of Apis. type: array items: $ref: '#/components/schemas/Api' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' IngestedApisResponse: description: Page of Ingested APIs content: application/json: schema: title: IngestedApisResponse properties: data: description: List of Ingested APIs . type: array items: $ref: '#/components/schemas/IngestedApi' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' DeletedIngestedApisResponse: description: Result of deleting ingested APIs operation content: application/json: schema: title: DeletedIngestedApisResponse properties: deleted: description: 'Number of successfully deleted APIs ' type: number skipped: description: Number of skipped APIs due to some criteria (e.g. being PUBLISHED) type: number errors: description: Number of errors encountered during deletion process type: number GroupsResponse: description: Page of Groups content: application/json: schema: title: GroupsResponse properties: data: description: List of groups. type: array items: $ref: '#/components/schemas/Group' links: $ref: '#/components/schemas/Links' metadata: $ref: '#/components/schemas/ResponseMetadata' pagination: $ref: '#/components/schemas/Pagination' ImageResponse: description: An image content: image/*: schema: type: string format: binary MetadataResponse: description: Page of metadata content: application/json: schema: title: MetadataResponse properties: data: description: List of metadata. type: array items: $ref: '#/components/schemas/Metadata' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' IntegrationsResponse: description: Page of integrations content: application/json: schema: title: IntegrationsResponse properties: data: description: List of Integrations. type: array items: $ref: '#/components/schemas/Integration' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' PlansResponse: description: Page of API plans content: application/json: schema: title: PlansResponse properties: data: description: List of API plans. type: array items: $ref: '#/components/schemas/Plan' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' SubscribersResponse: description: Page of API subscribers content: application/json: schema: title: SubscribersResponse properties: data: description: List of API subscribers. type: array items: $ref: '#/components/schemas/BaseApplication' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' SubscriptionsResponse: description: Page of API subscriptions content: application/json: schema: title: SubscriptionsResponse properties: data: description: List of API subscriptions. type: array items: $ref: '#/components/schemas/Subscription' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' SubscriptionApiKeysResponse: description: Page of subscription API Keys content: application/json: schema: title: SubscriptionApiKeysResponse properties: data: description: List of subscription API Keys. type: array items: $ref: '#/components/schemas/ApiKey' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' SchemaFormResponse: description: Schema form of a plugin content: application/json: schema: type: object Error: description: Generic error response content: application/json: schema: $ref: '#/components/schemas/Error' VerifyApiPathsResponse: description: Result of the API paths verification content: application/json: schema: title: VerifyApiPathsResponse properties: ok: type: boolean description: Indicates whether the paths are valid. reason: type: string description: An optional reason giving details about the result. VerifyApiHostsResponse: description: Result of the API hosts verification content: application/json: schema: title: VerifyApiHostsResponse properties: ok: type: boolean description: Indicates whether the hosts are valid. reason: type: string description: An optional reason giving details about the result. ExposedEntrypointResponse: description: List of exposed entrypoints content: application/json: schema: title: ExposedEntrypointResponse type: array items: $ref: '#/components/schemas/ExposedEntrypoint' ApiAnalyticsResponse: description: Successful analytics response content: application/json: schema: title: ApiAnalyticsResponse oneOf: - $ref: '#/components/schemas/StatsAnalytics' - $ref: '#/components/schemas/CountAnalytics' - $ref: '#/components/schemas/HistogramAnalytics' - $ref: '#/components/schemas/GroupByAnalytics' discriminator: propertyName: analyticsType mapping: STATS: '#/components/schemas/StatsAnalytics' COUNT: '#/components/schemas/CountAnalytics' HISTOGRAM: '#/components/schemas/HistogramAnalytics' GROUP_BY: '#/components/schemas/GroupByAnalytics' ApiAnalyticsRequestsCountResponse: description: Analytics for requests count by entrypoint content: application/json: schema: title: ApiAnalyticsRequestsCountResponse description: API Analytics for requests count by entrypoint. properties: total: type: integer format: int64 description: The total count of requests example: 100 countsByEntrypoint: type: object additionalProperties: description: A map of metrics by entrypoint type: number ApiAnalyticsAverageMessagesPerRequestResponse: description: Analytics for average messages per request by entrypoint content: application/json: schema: title: ApiAnalyticsAverageMessagesPerRequestResponse description: API Analytics for average messages per request by entrypoint. properties: average: type: number format: double description: The rounded global average of messages per request example: 1000 averagesByEntrypoint: type: object additionalProperties: description: A map of rounded average messages request by entrypoint type: number ApiAnalyticsAverageConnectionDurationResponse: description: Analytics for average connection duration by entrypoint content: application/json: schema: title: ApiAnalyticsAverageConnectionDurationResponse description: API Analytics for average connection duration by entrypoint. properties: average: type: number format: double description: The rounded global average of connection duration example: 1000 averagesByEntrypoint: type: object additionalProperties: description: A map of rounded average connection duration by entrypoint type: number ApiAnalyticsOverPeriodResponse: description: Analytics for number over period content: application/json: schema: title: ApiAnalyticsOverPeriodResponse description: API Analytics integer data point on a period. properties: timeRange: $ref: '#/components/schemas/AnalyticTimeRange' data: type: array description: Response time average (in milliseconds) over time items: type: integer format: int64 minimum: 0 exclusiveMinimum: true ApiAnalyticsResponseStatusRangesResponse: description: Analytics for status codes by entrypoint content: application/json: schema: title: ApiAnalyticsResponseStatusRangesResponse description: API Analytics for status codes by entrypoint. properties: ranges: type: object description: Global status ranges additionalProperties: description: A map of response status range and counts type: number example: 100.0-200.0: value: 5 200.0-300.0: value: 357 300.0-400.0: value: 0 400.0-500.0: value: 0 500.0-600.0: value: 0 rangesByEntrypoint: type: object description: Status ranges by entrypoint additionalProperties: description: A map of response status range and counts type: object additionalProperties: description: Count of status code type: number example: http-proxy: value: 100.0-200.0: value: 5 200.0-300.0: value: 357 300.0-400.0: value: 0 400.0-500.0: value: 0 500.0-600.0: value: 0 ApiAnalyticsResponseStatusOvertimeResponse: description: Analytics for status codes over time content: application/json: schema: title: ApiAnalyticsResponseStatusOvertimeResponse description: API Analytics for status codes over time. properties: timeRange: $ref: '#/components/schemas/AnalyticTimeRange' data: type: object description: Status count overt time additionalProperties: description: A map of response status and counts type: array items: type: integer format: int64 ApiMetricsDetailResponse: description: API metric for a particular request content: application/json: schema: title: ApiMetricsDetailResponse description: API metrics detail for a request ID. properties: timestamp: type: string format: date-time description: The date (as timestamp) of the metric. example: 2023-05-18 12:40:46.184000+00:00 apiId: type: string description: The id of the api. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 requestId: type: string description: The id of the request. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 transactionId: type: string description: The id of the transaction. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 host: type: string description: The host used for the request example: mycompany.example.com plan: $ref: '#/components/schemas/BasePlan' application: $ref: '#/components/schemas/BaseApplication' gateway: type: string description: The id of the gateway. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 gatewayHostname: type: string description: The hostname of the gateway instance. example: gateway-1.example.com gatewayIp: type: string description: The IP address of the gateway instance. example: 192.168.1.100 uri: type: string description: URI of the request. example: /my-api status: type: integer description: The response status example: 200 requestContentLength: type: integer description: The request content length example: 42 responseContentLength: type: integer description: The response content length example: 42 remoteAddress: type: string description: the remote address example: null gatewayLatency: type: integer description: The gateway latency example: 42 gatewayResponseTime: type: integer description: The gateway response time example: 42 endpointResponseTime: type: integer description: The endpoint response time example: 42 method: $ref: '#/components/schemas/HttpMethod' endpoint: type: string description: The endpoint URL. example: https://my-api-example.com message: type: string description: The error message. example: The timeout period of 1000ms has been exceeded errorKey: type: string description: The error key. example: TIMEOUT_ERROR errorComponentName: type: string description: The name of the component that generated the error. example: security errorComponentType: type: string description: The type of the component that generated the error. example: ENDPOINT warnings: type: array description: The warning diagnotics items: $ref: '#/components/schemas/ApiLogDiagnostic' additionalMetrics: type: object additionalProperties: true description: A map of string keys to values ApiLogsResponse: description: Page of API Logs content: application/json: schema: title: ApiLogsResponse properties: data: description: List of API logs. type: array items: $ref: '#/components/schemas/ApiLog' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' ApiMessageLogsResponse: description: Page of Message metrics content: application/json: schema: title: ApiMessageLogsResponse properties: data: description: List of Message metrics. type: array items: $ref: '#/components/schemas/ApiMessageLog' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' ApiLogResponse: description: API log for a particular request content: application/json: schema: title: ApiLogResponse description: API log for a request. properties: timestamp: type: string format: date-time description: The date (as timestamp) of the log. example: 2023-05-18 12:40:46.184000+00:00 apiId: type: string description: The id of the api. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 requestId: type: string description: The id of the request. example: 1719d8d1-8d01-48f6-99d8-d18d0178f6d4 clientIdentifier: type: string description: The client identifier of the request. example: 12ca17b49af2289436f303e0166030a21e525d266e209267433801a8fd4071a0 transactionId: type: string description: The id of the transaction. example: 00f8c9e7-78fc-4907-b8c9-e778fc790750 requestEnded: type: boolean description: The flag indicating if the request has ended. example: true entrypointRequest: $ref: '#/components/schemas/ApiLogRequestContent' entrypointResponse: $ref: '#/components/schemas/ApiLogResponseContent' endpointRequest: $ref: '#/components/schemas/ApiLogRequestContent' endpointResponse: $ref: '#/components/schemas/ApiLogResponseContent' NativeApiLogsSummaryResponse: description: Summary of native API connection logs aggregated by connection status. content: application/json: schema: $ref: '#/components/schemas/NativeApiLogsSummary' NativeApiLogsResponse: description: Page of native API connection logs. content: application/json: schema: title: NativeApiLogsResponse properties: data: type: array items: $ref: '#/components/schemas/NativeApiLog' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' NativeApiLogResponse: description: Native API connection log for a particular request. content: application/json: schema: $ref: '#/components/schemas/NativeApiLog' ApiAggregatedMessageLogsResponse: description: Page of API Messages Logs content: application/json: schema: title: ApiAggregatedMessageLogsResponse properties: data: description: List of API Messages logs. type: array items: $ref: '#/components/schemas/ApiAggregatedMessageLog' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' ApiHealthAverageResponseTimeResponse: description: Average response time of an API Health-Check content: application/json: schema: title: ApiHealthAverageResponseTimeResponse description: Average response time of an API Health-Check. properties: global: type: integer format: int64 description: Average response time of the API Health-Check for all endpoint combined group: type: object description: Average response time by endpoint or by gateway additionalProperties: description: Average response time type: integer format: int64 example: default: 30 ApiHealthAverageResponseTimeOvertimeResponse: description: Average response time overtime of an API Health-Check content: application/json: schema: title: ApiHealthAverageResponseTimeOvertimeResponse description: Average response time of an API Health-Check. properties: timeRange: $ref: '#/components/schemas/AnalyticTimeRange' data: type: array description: Average response time buckets items: type: integer format: int64 ApiHealthAvailabilityResponse: description: Availability of an API content: application/json: schema: title: ApiHealthAvailabilityResponse description: Availability of an API. properties: global: type: number format: float minimum: 0 maximum: 1 multipleOf: 0.0001 description: Availability of the API for all endpoint combined group: type: object description: Availability by endpoint or by gateway additionalProperties: description: Average response time type: number format: float minimum: 0 maximum: 1 multipleOf: 0.0001 example: default: 0.7504 ApiHealthLogsResponse: description: Page of HealthCheck logs content: application/json: schema: title: ApiHealthLogsResponse properties: data: description: List of health check logs. type: array items: $ref: '#/components/schemas/HealthCheckLog' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' AuditsResponse: description: Page of Audit content: application/json: schema: title: AuditsResponse properties: data: description: List of audits. type: array items: $ref: '#/components/schemas/Audit' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' AuditEventsResponse: description: Audit events response content: application/json: schema: title: AuditEventsResponse properties: data: description: List of Audit events name. type: array items: type: string EventsResponse: description: Page of Event content: application/json: schema: title: EventsResponse properties: data: description: List of events. type: array items: $ref: '#/components/schemas/Event' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' EventResponse: description: Single Event content: application/json: schema: $ref: '#/components/schemas/Event' ApiDocumentationPagesResponse: description: API documentation pages content: application/json: schema: title: ApiDocumentationPagesResponse properties: pages: type: array items: $ref: '#/components/schemas/Page' breadcrumb: type: array description: Breadcrumb to the root folder. Only returned when parentId is specified. items: $ref: '#/components/schemas/Breadcrumb' CategoryApisResponse: description: Page of APIs within a Category content: application/json: schema: title: CategoryApisResponse properties: data: description: List of APIs within a Category. type: array items: $ref: '#/components/schemas/CategoryApi' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' AsyncJobsResponse: description: Page of async jobs content: application/json: schema: title: AsyncJobsResponse properties: data: description: List of Async Jobs. type: array items: $ref: '#/components/schemas/AsyncJob' pagination: $ref: '#/components/schemas/Pagination' links: $ref: '#/components/schemas/Links' MigrationReportResponses: description: Migration report content: application/json: schema: title: MigrationReportResponses properties: state: $ref: '#/components/schemas/MigrationStateType' issues: description: List of issues. type: array items: type: object properties: message: type: string state: $ref: '#/components/schemas/MigrationStateType' GenerateExpressionLanguageResponse: description: Response an expression language generation content: application/json: schema: title: GenerateExpressionLanguageResponse properties: message: description: Expression language generated. type: string feedbackRequestId: $ref: '#/components/schemas/FeedbackRequestId' securitySchemes: bearerAuth: type: http scheme: bearer