---
title: "Konnect Service Catalog"
url: "https://us-prod.jeffyongtaotang.com/apis/konnect-service-catalog-1/versions/cdbef9b7-686c-4189-bbc8-55c727a972e8"
---

# Konnect Service Catalog

OpenAPI specification document.

```json
{"openapi":"3.0.3","info":{"title":"Konnect Service Catalog","version":"1.3.0","description":"The platform API for Konnect Service Catalog.","contact":{"name":"Kong","url":"https://konghq.com"}},"servers":[{"url":"https://us.api.konghq.com/v1","description":"United-States Production region"},{"url":"https://eu.api.konghq.com/v1","description":"Europe Production region"},{"url":"https://au.api.konghq.com/v1","description":"Australia Production region"},{"url":"https://me.api.konghq.com/v1","description":"Middle-East Production region"},{"url":"https://in.api.konghq.com/v1","description":"India Production region"},{"url":"https://sg.api.konghq.com/v1","description":"Singapore Production region"}],"security":[{"konnectAccessToken":[]},{"personalAccessToken":[]},{"systemAccountAccessToken":[]}],"tags":[{"name":"Catalog Services","description":"Create and maintain a centralized catalog of all services running in your organization.\nAdd custom fields and map resources from across your organization to provide a 360-degree overview of your services.\n\nCustom fields allow you to surface key information such as:\n- `Owner`: The person or team responsible for the service\n- `Product Manager`: The person assigned to guide the service's direction for customer success\n- `Jira Project`: The Jira project which represents past, present and future work for the service\n\nResources are discovered from the integrations you use within your organization to create, operate and manage your services.\nMapping the resources relevant to your service will provide a rich view of the service's communication channels, dependencies and more.\nTypes of resources which you can map to a service include:\n- `Code Repositories:` The software project(s) that make up the service\n- `Monitors and Dashboards:` Tools providing visibility into the health and performance of the service\n- `Communication Channels`: Virtual spaces where questions and concerns can be raised about the service\n- `Incident Management Resources`: Alerts setup within your incident management platform to notify individuals regarding issues with the service\n"},{"name":"Catalog Service API Specs","description":"Attach API specifications which describe the interface and behavior of the service.\nThese specifications describe service API constracts for internal or external consumption.\nYou may attach an API specification by uploading a file, providing a link to the specification, or my mapping a resource from a API spec compliant integration.\n"},{"name":"Catalog Integrations","description":"Integrations are applications, either Konnect-internal or external, which extend the functionality of the Service Catalog.\nInstall and authorize an integration to discover the resources across your organization which support your services.\nMap relevant resources to your services to provide a rich view of cataloged services.\nTo set up and view a list of all the integrations we support please view our [documentation](https://developer.konghq.com/service-catalog/integrations/).\n"},{"name":"Integration Instances","description":"An integration instance represents a specific account of the integration which contains the resources used to manage and support your services.\nSome integrations provide configuration options to customize how it should behave once authorized (see the integration's manifest for details).\nKonnect-internal integrations are built-in and do not need to be installed.\n\nOnce an integration instance is created, authorize the instance to allow the Service Catalog to discover its resources.\nNote that deleting an integration instance is a **destructive** operation.\nWhen an integration instance is deleted, all its resources and mappings will be deleted from the service catalog.\nIn cases where the integration instance's credentials need to be updated, you may re-authorize the instance to retain all currently discovered resources and mappings.\nTo set up and view a list of all the integrations we support, please view our [documentation](https://developer.konghq.com/service-catalog/integrations/).\n"},{"name":"Integration Instance Auth Credentials","description":"Represents the credentials use to authorize an integration instance.\nYou will want to configure the integration instance settings and authorization configuration before authorizing the instance.\nThis will inform the authorization process on how to reach and authorize the account.\nOnce the integration instance is authorized, the system will automatically discover all the relevant resources from the account.\nThe integration instance's auth credentials can be removed or updated while retaining all resources which have already been discovered.\n"},{"name":"Integration Instance Auth Config","description":"A integration instance may need to be provided with an auth config before authorizing the instance.\nTypically an auth config will be required when authorizing against a integration which is hosted within your organization.\nThe integration instance's auth config will inform how the Service Catalog will authorize the integration instance.\nNote that updating the auth config for an instance which is already authorized will **remove the existing credential**, requiring you to re-authorize the instance.\n"},{"name":"Catalog Resources","description":"Resources are entities discovered from integration instances and are intended to be mapped to the relevant services in the catalog.\nOnce a resource has been mapped to a service, a rich view of this resource will be displayed when viewing your service.\n\nAny resources which you would like to ignore and hide can be archived.\nNote that archiving a resource will **remove** any mappings it has to services in the catalog.\n\nYou can create Resources using only the properties required to identify the resource in the third-party system.\nAdditional data will be hydrated if the integration that the Resource is linked to has been provided with authentication credentials.\nResources which have not yet been hydrated may still be mapped to a Catalog Service.\n"},{"name":"Catalog Resource Mappings","description":"Resource mappings represent the link between a resource and a service.\nOnce a resource is mapped to a service, a rich view of the resource will be presented on the service page.\nA resource may be mapped to multiple services, but it cannot be mapped to the same service twice.\nIf a resource mapped to a service is later archived, the resource mapping will be deleted.\n"},{"name":"Catalog Service Resources","description":"Represents all the resources mapped to a specific service.\n"},{"name":"Catalog Resource Services","description":"Represents all the services mapped to a specific resource.\n"},{"name":"Criteria Templates","description":"Several criteria templates are provided to help ensure your services adhere to industry best practices.\nA criteria template is a collection of criteria grouped together to target various categories.\n\nCriteria may require a specific type of integration be installed and authorized.\nFor example, criteria which evaluates the operation performance across incident management may require a integration related to incident management to be installed and authorized.\nLearn more about scorecards by visiting our [documentation](https://developer.konghq.com/service-catalog/scorecards/).\n"},{"name":"Scorecards","description":"A scorecard helps you evaluate services based on its criteria.\nScorecards help you detect issues, like whether there are services in the catalog that don't have an on-call engineer assigned, or if you have GitHub repositories with stale pull requests that aren't getting reviewed or closed.\nFrom the scorecard, you can view details on either a per-service or per-criteria basis.\nLearn more about scorecards by visiting our [documentation](https://developer.konghq.com/service-catalog/scorecards/).\n"},{"name":"Resource Ingestion","description":"Get details and trigger resource ingestion from authorized integrations.\nResource ingestion allows for manually syncing resources from authorized integrations.\nIt provides details on when the resources were last synced from an authorized integration.\n"},{"name":"Resource Actions","description":"Resource actions provides an overview of actions taken on resources.\nIt provides information on when one of the following actions are taken on a resource:\n- Map\n- Unmap\n- Archive\n- Restore\n"},{"name":"Integration Instance Proxy","description":"The integration instance proxy allows requests to be made to the authorized integration instance.\nThe APIs which are allowed to be proxied to the integration instances are defined in the `proxies` section of the Integration.\n"},{"name":"Suggestion Rules","description":"Suggestion rules allow for automated management of resources.\nSuggestion rule can be configured to:\n- Map resources to existing catalog service\n- Map resources to a new catalog service\n- Archive resources\n\nSystem suggestion rules are built-in rules which are configured and managed by Kong.\n"},{"name":"Suggestion Rule Errors","description":"Suggestion rule errors describes errors which have occured when a suggestion rule was evaluated on a resource.\nAn error may occur due to syntax errors on the configured suggestion rule, or various other runtime errors.\n"},{"name":"Integration Events","description":"Integration events represent the activity within an integration instance.\n"},{"name":"Catalog Service Documents","description":"Attach documentation for your services to communicate it's architecture, support details, release notes, and usage examples, to help others understand and integrate with the service.\n"},{"name":"Suggested Resource Actions","description":"Provides suggested actions to take on resources. Suggested actions are generated from suggestion rules.\n"},{"name":"Vulnerabilities","description":"Retrieving, analyzing, and managing software vulnerabilities.\n"},{"name":"Catalog Service Custom Fields","description":"Manage custom fields for catalog services."},{"name":"Catalog Service API Mappings","description":"Service API mappings represent the link between Service and API entities.\nOnce an API is mapped to a Service, a rich view of the linked APIs will be presented on the APIs tab of the Catalog Service.\nSimilarily, Services mapped to an API will be listed on the API overview page under Catalog.\nAn API may be mapped to multiple services, but it cannot be mapped to the same service twice.\nIf a mapped API is unlinked from a Service, the mapping will be deleted.\n"}],"paths":{"/catalog-services":{"post":{"x-speakeasy-entity-operation":"CatalogService#create","summary":"Create Service","description":"Creates a service.","operationId":"create-catalog-service","requestBody":{"$ref":"#/components/requestBodies/CreateCatalogServiceRequest"},"responses":{"201":{"$ref":"#/components/responses/CatalogServiceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Services"]},"get":{"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogServiceFilter"},{"$ref":"#/components/parameters/CatalogServiceSort"}],"summary":"List Services","description":"Returns a paginated collection of services.","operationId":"list-catalog-services","responses":{"200":{"$ref":"#/components/responses/ListCatalogServicesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Services"]}},"/catalog-services/{id}":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"id","in":"path","required":true,"description":"The `id` of the service."}],"get":{"x-speakeasy-entity-operation":{"terraform-resource":"CatalogService#read","terraform-datasource":null},"summary":"Get a Service","description":"Fetches a service.","operationId":"fetch-catalog-service","responses":{"200":{"$ref":"#/components/responses/CatalogServiceResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Services"]},"patch":{"x-speakeasy-entity-operation":"CatalogService#update","summary":"Update Service","operationId":"update-catalog-service","description":"Updates a service.","requestBody":{"$ref":"#/components/requestBodies/UpdateCatalogServiceRequest"},"responses":{"200":{"$ref":"#/components/responses/CatalogServiceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Catalog Services"]},"delete":{"x-speakeasy-entity-operation":"CatalogService#delete","summary":"Delete Service","description":"Deletes a service.","operationId":"delete-catalog-service","responses":{"204":{"description":"Service was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Services"]}},"/catalog-services/{id}/api-specs":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"id","in":"path","required":true,"description":"The `id` of the service."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Create API spec","operationId":"create-catalog-service-api-spec","description":"Creates an API spec associated to the given service.","requestBody":{"$ref":"#/components/requestBodies/CreateCatalogServiceApiRequest"},"responses":{"201":{"$ref":"#/components/responses/CatalogServiceApiSpecResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]},"get":{"x-unstable":true,"x-internal":true,"summary":"List Catalog Service API Specs","operationId":"list-catalog-service-api-specs","description":"Returns a paginated collection of API Specs for the given service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogServiceApiSpecFilter"},{"$ref":"#/components/parameters/CatalogServiceApiSpecSort"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceApiSpecsResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]}},"/catalog-services/{serviceId}/api-specs/preview":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Preview API Spec","operationId":"preview-catalog-service-api-spec","description":"Previews the contents of an API spec as JSON or YAML.\nSpecify `Accept: application/json` to retrieve the contents as JSON.\nSpecify `Accept: application/yaml` to retrieve the contents as YAML.\nDefaults to JSON format.\n","requestBody":{"$ref":"#/components/requestBodies/PreviewCatalogServiceApiRequest"},"responses":{"200":{"$ref":"#/components/responses/CatalogServiceApiSpecPreviewResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]}},"/catalog-services/{serviceId}/api-specs/{apiSpecId}":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"apiSpecId","in":"path","required":true,"description":"The `id` of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get an API spec","operationId":"fetch-catalog-service-api-spec","description":"Returns the API spec for the given service.","responses":{"200":{"$ref":"#/components/responses/CatalogServiceApiSpecResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]},"patch":{"x-unstable":true,"x-internal":true,"summary":"Update API Spec","operationId":"update-catalog-service-api-spec","description":"Updates the API spec for the given service.","requestBody":{"$ref":"#/components/requestBodies/UpdateCatalogServiceApiRequest"},"responses":{"200":{"$ref":"#/components/responses/CatalogServiceApiSpecResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete API Spec","operationId":"delete-catalog-service-api-spec","description":"Deletes the API spec for the given service.","responses":{"204":{"description":"API Spec was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]}},"/catalog-services/{serviceId}/api-specs/{apiSpecId}/contents":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"apiSpecId","in":"path","required":true,"description":"The `id` of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get an API Spec Contents","operationId":"fetch-catalog-service-api-spec-contents","description":"Returns the API spec for the given service.\nSpecify `Accept: application/json` to retrieve the contents as JSON.\nSpecify `Accept: application/yaml` to retrieve the contents as YAML.\nDefaults to JSON format.\n","responses":{"200":{"$ref":"#/components/responses/CatalogServiceApiSpecContentResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Specs"]}},"/integrations":{"post":{"x-unstable":true,"x-internal":true,"summary":"Create Integration","description":"Creates a catalog integration.","operationId":"create-catalog-integration","requestBody":{"$ref":"#/components/requestBodies/CreateCatalogIntegrationRequest"},"responses":{"201":{"$ref":"#/components/responses/CatalogIntegrationResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Integrations"]},"get":{"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogIntegrationFilter"},{"$ref":"#/components/parameters/CatalogIntegrationSort"}],"summary":"List Integrations","description":"Returns a paginated collection of all catalog integrations available to connect.\nEach integration represents a built-in connector that extends the platform's capabilities;\nenabling discovery, resource management, event ingestion, and more.\nIntegrations expose metadata that describes how they authenticate, what configuration they\nrequire, and how they interact with catalog entities like Resources and Services.\n\nCurrently, integrations are platform-defined and cannot be extend or registered by customers.\n","operationId":"list-catalog-integrations","responses":{"200":{"$ref":"#/components/responses/ListCatalogIntegrationsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Integrations"]}},"/integrations/{integration}":{"parameters":[{"schema":{"type":"string","example":"jira"},"name":"integration","in":"path","required":true,"description":"The name of the integration."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get Integration","description":"Gets a catalog integration.","operationId":"get-catalog-integration","responses":{"200":{"$ref":"#/components/responses/CatalogIntegrationResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Integrations"]},"patch":{"x-unstable":true,"x-internal":true,"summary":"Update Integration","operationId":"update-catalog-integration","description":"Updates a catalog integration.","requestBody":{"$ref":"#/components/requestBodies/UpdateCatalogIntegrationRequest"},"responses":{"200":{"$ref":"#/components/responses/CatalogIntegrationResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Catalog Integrations"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete Integration","description":"Deletes a catalog integration.","operationId":"delete-catalog-integration","responses":{"204":{"description":"Catalog Integration was deleted successfully."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Integrations"]}},"/integration-instances":{"post":{"x-speakeasy-entity-operation":"IntegrationInstance#create","summary":"Create Integration Instance","description":"Creates an integration instance.","operationId":"create-integration-instance","requestBody":{"$ref":"#/components/requestBodies/CreateIntegrationInstanceRequest"},"responses":{"201":{"$ref":"#/components/responses/IntegrationInstanceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Integration Instances"]},"get":{"summary":"List Integration Instances","description":"Returns a paginated collection of integration instances.","operationId":"list-integration-instances","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/IntegrationInstanceFilter"},{"$ref":"#/components/parameters/IntegrationInstanceSort"}],"responses":{"200":{"$ref":"#/components/responses/ListIntegrationInstancesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Integration Instances"]}},"/integration-instances/{id}":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"id","in":"path","required":true,"description":"The `id` of the integration instance."}],"get":{"x-speakeasy-entity-operation":{"terraform-resource":"IntegrationInstance#read","terraform-datasource":null},"summary":"Get an Integration Instance","description":"Fetches a integration instance.","operationId":"fetch-integration-instance","responses":{"200":{"$ref":"#/components/responses/IntegrationInstanceResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instances"]},"patch":{"x-speakeasy-entity-operation":"IntegrationInstance#update","summary":"Update Integration Instance","operationId":"update-integration-instance","description":"Updates an integration instance.","requestBody":{"$ref":"#/components/requestBodies/UpdateIntegrationInstanceRequest"},"responses":{"200":{"$ref":"#/components/responses/IntegrationInstanceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Integration Instances"]},"delete":{"x-speakeasy-entity-operation":"IntegrationInstance#delete","summary":"Delete Integration Instance","description":"Deletes an integration instance.","operationId":"delete-integration-instance","responses":{"204":{"description":"Integration Instance was deleted successfully."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instances"]}},"/integration-instances/{integrationInstanceId}/auth-credential":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"integrationInstanceId","in":"path","required":true,"description":"The `id` of the integration instance."}],"post":{"x-speakeasy-entity-operation":"IntegrationInstanceAuthCredential#create","summary":"Create Integration Instance Auth Credential","operationId":"create-integration-instance-auth-credential","description":"Creates an auth credential scoped to the given integration instance.\nAuth credentials are singleton resources that have a 1-to-1 relationship with\nan integration instance.\n\nAn attempt to create subsequent auth credentials for an instance will result in a 409 response.\n","requestBody":{"$ref":"#/components/requestBodies/CreateIntegrationInstanceAuthCredentialRequest"},"responses":{"201":{"$ref":"#/components/responses/IntegrationInstanceAuthCredentialResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Integration Instance Auth Credentials"]},"get":{"x-speakeasy-entity-operation":{"terraform-resource":"IntegrationInstanceAuthCredential#read","terraform-datasource":null},"summary":"Get Integration Instance Auth Credential","operationId":"get-integration-instance-auth-credential","description":"Fetches the auth credential scoped to the given integration instance.","responses":{"200":{"$ref":"#/components/responses/IntegrationInstanceAuthCredentialResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instance Auth Credentials"]},"delete":{"x-speakeasy-entity-operation":"IntegrationInstanceAuthCredential#delete","summary":"Delete Integration Instance Auth Credential","operationId":"delete-integration-instance-auth-credential","description":"Deletes the auth credential scoped to the given integration instance.","responses":{"204":{"description":"Integration Instance Auth Credential was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instance Auth Credentials"]}},"/integration-instances/{integrationInstanceId}/auth-config":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"integrationInstanceId","in":"path","required":true,"description":"The `id` of the integration instance."}],"get":{"x-speakeasy-entity-operation":{"terraform-resource":"IntegrationInstanceAuthConfig#read","terraform-datasource":null},"summary":"Get Integration Instance Auth Config","operationId":"get-integration-instance-auth-config","description":"Fetches auth config scoped to the given integration instance.","responses":{"200":{"$ref":"#/components/responses/IntegrationInstanceAuthConfigResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instance Auth Config"]},"put":{"x-speakeasy-entity-operation":"IntegrationInstanceAuthConfig#create,update","summary":"Upsert Integration Instance Auth Config","operationId":"upsert-integration-instance-auth-config","description":"Upserts auth config scoped to the given integration instance.","requestBody":{"$ref":"#/components/requestBodies/UpsertIntegrationInstanceAuthConfigRequest"},"responses":{"200":{"$ref":"#/components/responses/IntegrationInstanceAuthConfigResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instance Auth Config"]},"delete":{"x-speakeasy-entity-operation":"IntegrationInstanceAuthConfig#delete","summary":"Delete Integration Instance Auth Config","operationId":"delete-integration-instance-auth-config","description":"Deletes the auth config scoped to the given integration instance.","responses":{"204":{"description":"Integration Instance Auth Config was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Instance Auth Config"]}},"/resources":{"get":{"parameters":[{"$ref":"#/components/parameters/CursorPageQuery"},{"$ref":"#/components/parameters/CatalogResourceFilter"},{"$ref":"#/components/parameters/CatalogResourceSort"}],"summary":"List Resources","description":"Returns a paginated collection of resources.","operationId":"list-resources","responses":{"200":{"$ref":"#/components/responses/ListCatalogResourcesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Resources"]}},"/resources/{id}":{"parameters":[{"schema":{"type":"string","example":"AflTNLY0tTQhv2my"},"name":"id","in":"path","required":true,"description":"The `id` of the resource."}],"get":{"summary":"Get a Resource","description":"Fetches a resource by ID.","operationId":"fetch-resource","responses":{"200":{"$ref":"#/components/responses/CatalogResourceResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resources"]}},"/integration-instances/{integrationInstanceId}/resources":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"integrationInstanceId","in":"path","required":true,"description":"The `id` of the integration instance."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Initialize Resource","description":"Initializes a placeholder resource. This operation is typically used in GitOps workflows or other infrastructure-as-code setups where a resource is declared before it is fully discovered.\nThe initialized resource acts as a stub — it contains minimal identifying metadata and does not yet include the full set of attributes typically populated by integration-based discovery.\nAfter initialization, the resource will be automatically hydrated with additional data by catalog integrations responsible for discovering and maintaining its up-to-date state.\nThis API is not intended for direct resource management, but rather for signaling the intent to track a given resource, allowing integrations to take over and populate it asynchronously.\n","operationId":"initialize-resource","requestBody":{"$ref":"#/components/requestBodies/InitializeCatalogResourceRequest"},"responses":{"201":{"$ref":"#/components/responses/CatalogResourceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resources"]},"put":{"x-unstable":true,"x-internal":true,"summary":"Upsert Resources","description":"Upserts resources. If a resource with the same `externalId` already exists for the given integration instance, it will be updated; otherwise, a new resource will be created.\nWhen a resource's backing definition in the integration has `integration_data_schema` populated, the `integration_data` value provided for that resource will be validated against `integration_data_schema` during upsert operations.\nWhen a resource's backing definition in the integration has no `integration_data_schema` populated (i.e. null), no validation will be performed on the `integration_data` value provided for that resource.\nThis API is typically used by service catalog integration applications to report discovered resources back to the catalog.\n","operationId":"upsert-resources","requestBody":{"$ref":"#/components/requestBodies/UpsertCatalogResourcesRequest"},"responses":{"200":{"description":"All resources delivered in the payload were ingested successfully."},"202":{"description":"The payload was accepted but a no-op was performed."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resources"]}},"/integration-instances/{id}/resources/bulk-delete":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"id","in":"path","required":true,"description":"The `id` of the integration instance."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Delete Resources","description":"Delete up to 100 resources which belong to the related integration instance.\nThis API is intended only for service catalog integration applications.\n","operationId":"delete-resources","requestBody":{"$ref":"#/components/requestBodies/DeleteCatalogResourcesRequest"},"responses":{"204":{"description":"Resources deleted successfully."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resources"]}},"/integration-instances/{integrationInstanceId}/resources/{resourceId}":{"parameters":[{"schema":{"type":"string","example":"3f51fa25-310a-421d-bd1a-007f859021a3"},"name":"integrationInstanceId","in":"path","required":true,"description":"The `id` of the integration instance."},{"schema":{"type":"string","example":"AflTNLY0tTQhv2my"},"name":"resourceId","in":"path","required":true,"description":"The `id` of the resource."}],"patch":{"summary":"Update Resource","description":"Updates a resource.","operationId":"update-resource","requestBody":{"$ref":"#/components/requestBodies/UpdateCatalogResourceRequest"},"responses":{"200":{"$ref":"#/components/responses/CatalogResourceResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resources"]}},"/resources/{id}/catalog-services":{"parameters":[{"schema":{"type":"string","example":"AflTNLY0tTQhv2my"},"name":"id","in":"path","required":true,"description":"The `id` of the resource."}],"get":{"summary":"List Resource Services","operationId":"list-catalog-resource-services","description":"Returns a paginated collection of services the given resource is mapped to.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogServiceFilter"},{"$ref":"#/components/parameters/CatalogServiceSort"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogServicesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resource Services"]}},"/resource-mappings":{"post":{"x-terraform-excluded":"Waiting for Resource entities to be added","summary":"Create Resource Mapping","description":"Creates a mapping between a catalog resource and service.","operationId":"create-resource-mapping","requestBody":{"$ref":"#/components/requestBodies/CreateCatalogResourceMappingRequest"},"responses":{"201":{"$ref":"#/components/responses/CatalogResourceMappingResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Catalog Resource Mappings"]},"get":{"summary":"List Resource Mappings","description":"Returns a paginated collection of catalog resource mappings.","operationId":"list-resource-mappings","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogResourceMappingFilter"},{"$ref":"#/components/parameters/CatalogResourceMappingSort"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogResourceMappingsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Catalog Resource Mappings"]}},"/resource-mappings/{resourceMappingId}":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"d277faad-ed4e-4c56-a0fb-acce065dee34"},"name":"resourceMappingId","in":"path","required":true,"description":"The `id` of the resource mapping.","x-speakeasy-match":"id"}],"get":{"summary":"Get a Resource Mapping","description":"Fetches a resource mapping by ID.","operationId":"fetch-resource-mapping","responses":{"200":{"$ref":"#/components/responses/CatalogResourceMappingResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resource Mappings"]},"delete":{"summary":"Delete Resource Mapping","description":"Removes an existing mapping between a catalog resource and service.","operationId":"delete-resource-mapping","responses":{"204":{"description":"Resource Mapping was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Resource Mappings"]}},"/catalog-services/{id}/resources":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"id","in":"path","required":true,"description":"The `id` of the service."}],"get":{"summary":"List Service Resources","operationId":"list-catalog-service-resources","description":"Returns a paginated collection of resources mapped to a service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogResourceRefFilter"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceResourcesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service Resources"]}},"/criteria-templates":{"get":{"summary":"List Criteria Templates","operationId":"list-criteria-templates","description":"Returns a paginated collection of criteria templates.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CriteriaTemplateFilter"},{"$ref":"#/components/parameters/CriteriaTemplateSort"}],"responses":{"200":{"$ref":"#/components/responses/ListCriteriaTemplatesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Criteria Templates"]}},"/scorecard-templates":{"get":{"summary":"List Scorecard Templates","operationId":"list-scorecard-templates","description":"Returns a paginated collection of scorecard templates.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardTemplateFilter"},{"$ref":"#/components/parameters/ScorecardTemplateSort"}],"responses":{"200":{"$ref":"#/components/responses/ListScorecardTemplatesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Scorecards"]}},"/scorecards":{"post":{"summary":"Create Scorecard","operationId":"create-scorecard","description":"Creates a scorecard.","requestBody":{"$ref":"#/components/requestBodies/CreateScorecardRequest"},"responses":{"201":{"$ref":"#/components/responses/ScorecardResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Scorecards"]},"get":{"summary":"List Scorecards","operationId":"list-scorecards","description":"Returns a paginated collection of scorecards.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardFilter"},{"$ref":"#/components/parameters/ScorecardSort"}],"responses":{"200":{"$ref":"#/components/responses/ListScorecardsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Scorecards"]}},"/scorecards/{id}":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"id","in":"path","required":true,"description":"The `id` of the scorecard."}],"get":{"summary":"Get a Scorecard","description":"Fetches a scorecard.","operationId":"fetch-scorecard","responses":{"200":{"$ref":"#/components/responses/ScorecardResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]},"put":{"summary":"Update Scorecard","operationId":"update-scorecard","description":"Updates a scorecard.","requestBody":{"$ref":"#/components/requestBodies/UpdateScorecardRequest"},"responses":{"200":{"$ref":"#/components/responses/ScorecardResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]},"delete":{"summary":"Delete Scorecard","description":"Deletes a scorecard.","operationId":"delete-scorecard","responses":{"204":{"description":"Scorecard was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/scorecards/{id}/schedule-evaluation":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"id","in":"path","required":true,"description":"The `id` of the scorecard."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Schedule Scorecard Evaluation","description":"Schedules an evaluation of the scorecard selected services.","operationId":"schedule-scorecard-evaluation","responses":{"202":{"description":"The scheduling for scorecard evaluation was accepted.\n"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/scorecards/{id}/catalog-services":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"id","in":"path","required":true,"description":"The `id` of the scorecard."}],"get":{"summary":"List Scorecard Services","description":"Lists services targeted by a scorecard.","operationId":"list-scorecard-services","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardServiceFilter"},{"$ref":"#/components/parameters/ScorecardServiceSort"}],"responses":{"200":{"$ref":"#/components/responses/ListScorecardServicesResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/scorecards/{id}/criteria":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"id","in":"path","required":true,"description":"The `id` of the scorecard."}],"get":{"summary":"List Scorecard Criteria","description":"Lists criteria, including passing service counts, belonging to a scorecard.","operationId":"list-scorecard-criteria","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardCriteriaFilter"},{"$ref":"#/components/parameters/ScorecardCriteriaSort"}],"responses":{"200":{"$ref":"#/components/responses/ListScorecardCriteriaResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/scorecards/{scorecardId}/criteria/{criteriaId}/catalog-services":{"parameters":[{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"scorecardId","in":"path","required":true,"description":"The `id` of the scorecard."},{"schema":{"type":"string","format":"uuid","example":"5c1121f9-3f3a-47c7-9bb6-c81a51128714"},"name":"criteriaId","in":"path","required":true,"description":"The `id` of the criteria."}],"get":{"summary":"List Scorecard Criteria Services","description":"Lists services targeted by a scorecard criteria with evaluation results per-service.","operationId":"list-scorecard-criteria-services","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardCriteriaServiceFilter"},{"$ref":"#/components/parameters/ScorecardCriteriaServiceSort"}],"responses":{"200":{"$ref":"#/components/responses/ListScorecardCriteriaServicesResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/catalog-services/{id}/scorecards":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"id","in":"path","required":true,"description":"The `id` of the service."}],"get":{"summary":"List Catalog Service Scorecards","operationId":"list-catalog-service-scorecards","description":"Returns a paginated collection of scorecards targeting the given service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ScorecardFilter"},{"$ref":"#/components/parameters/ScorecardSort"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceScorecardsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/catalog-services/{serviceId}/scorecards/{scorecardId}":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"schema":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":"scorecardId","in":"path","required":true,"description":"The `id` of the scorecard."}],"get":{"summary":"Get a Catalog Service Scorecard","operationId":"fetch-catalog-service-scorecard","description":"Fetches the given scorecard targeting the service.","responses":{"200":{"$ref":"#/components/responses/CatalogServiceScorecardResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Scorecards"]}},"/integration-instances/{integrationInstanceId}/resource-ingestion":{"parameters":[{"schema":{"type":"string","example":"004d6d17-d21f-4518-89a2-b9177cb5485c"},"name":"integrationInstanceId","in":"path","required":true,"description":"The `id` of the integration instance."}],"put":{"x-unstable":true,"x-internal":true,"summary":"Schedule Resource Ingestion","operationId":"schedule-resource-ingestion","description":"Schedules a resource ingestion job for the given integration instance.","requestBody":{"$ref":"#/components/requestBodies/ResourceIngestionBody"},"responses":{"200":{"$ref":"#/components/responses/ResourceIngestionResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Resource Ingestion"]},"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Resource Ingestion","operationId":"fetch-resource-ingestion","description":"Fetches a resource ingestion job for the given integration instance.","responses":{"200":{"$ref":"#/components/responses/ResourceIngestionResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Resource Ingestion"]}},"/resource-actions":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Resource Actions","operationId":"list-resource-actions","description":"Returns a paginated collection of a resource actions.","responses":{"200":{"$ref":"#/components/responses/ListResourceActionResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/CursorPageQuery"},{"$ref":"#/components/parameters/ResourceActionFilter"}],"tags":["Resource Actions"]}},"/integration-instances/{integrationInstance}/proxy":{"parameters":[{"schema":{"type":"string","example":"3321067c-407f-417b-8aac-cd2c5ec92d85"},"name":"integrationInstance","in":"path","required":true,"description":"The `id` of the integration instance."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Integration Instance Proxy Request","operationId":"integration-instance-proxy-request","description":"Proxies a request to an external API for the integration instance.","requestBody":{"$ref":"#/components/requestBodies/IntegrationInstanceProxyBody"},"responses":{"400":{"description":"Error response indicating the proxy request could not be sent due to invalid state of the request body or integration instance\n","content":{"application/problem+json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/BadRequestError"},{"$ref":"#/components/schemas/IntegrationUnauthorizedError"}]},"examples":{"Bad Request":{"$ref":"#/components/examples/BadRequestError"},"Integration Not Authorized":{"$ref":"#/components/examples/IntegrationNotAuthorizedError"}}}}},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"description":"Not Found","content":{"application/problem+json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/NotFoundError"},{"$ref":"#/components/schemas/IntegrationNotInstalledError"}]},"examples":{"Not Found":{"$ref":"#/components/examples/NotFoundExample"},"Integration Not Installed":{"$ref":"#/components/examples/IntegrationNotInstalledError"}}}}},"2XX":{"description":"2XX response code returned from the proxied API","headers":{"x-service-hub-integration-proxy":{"schema":{"type":"boolean","description":"When `true`, indicates that the response comes from upstream APIs."}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"3XX":{"description":"3XX response code returned from the proxied API","headers":{"x-service-hub-integration-proxy":{"schema":{"type":"boolean","description":"When `true`, indicates that the response comes from upstream APIs."}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"4XX":{"description":"4XX response code returned from the proxied API","headers":{"x-service-hub-integration-proxy":{"schema":{"type":"boolean","description":"When `true`, indicates that the response comes from upstream APIs."}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}}},"tags":["Integration Instance Proxy"]}},"/integrations/{integration}/system-suggestion-rules":{"parameters":[{"schema":{"type":"string","example":"gateway-manager"},"name":"integration","in":"path","required":true,"description":"Machine name of the integration."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List System Suggestion Rules","operationId":"list-system-integration-suggestion-rule","description":"Returns a paginated collection of a system defined suggestion rules.","responses":{"200":{"$ref":"#/components/responses/ListSystemSuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"}],"tags":["Suggestion Rules"]}},"/integrations/{integration}/suggestion-rules":{"parameters":[{"schema":{"type":"string","example":"gateway-manager"},"name":"integration","in":"path","required":true,"description":"Machine name of the integration."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Create Suggestion Rule","operationId":"create-integration-suggestion-rule","description":"Creates a suggestion rule for the given integration.","requestBody":{"$ref":"#/components/requestBodies/CreateSuggestionRuleBody"},"responses":{"201":{"$ref":"#/components/responses/SuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Suggestion Rules"]},"get":{"x-unstable":true,"x-internal":true,"summary":"List Suggestion Rules","operationId":"list-integration-suggestion-rule","description":"Returns a paginated collection of a suggestion rules.","responses":{"200":{"$ref":"#/components/responses/ListSuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/SuggestionRuleFilter"}],"tags":["Suggestion Rules"]}},"/integrations/{integration}/suggestion-rules/{suggestionRuleId}":{"parameters":[{"schema":{"type":"string","example":"gateway-manager"},"name":"integration","in":"path","required":true,"description":"Machine name of the integration."},{"schema":{"type":"string","format":"uuid","example":"22f72bd1-2897-473e-9471-302de3ccf38b"},"name":"suggestionRuleId","in":"path","required":true,"description":"ID of the suggestion rule."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Suggestion Rule","operationId":"get-integration-suggestion-rule","description":"Returns information about a suggestion rule from a given suggestion rule ID.","responses":{"200":{"$ref":"#/components/responses/SuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Suggestion Rules"]},"put":{"x-unstable":true,"x-internal":true,"summary":"Update Suggestion Rule","operationId":"update-integration-suggestion-rule","description":"Updates the given suggestion rule.","requestBody":{"$ref":"#/components/requestBodies/CreateSuggestionRuleBody"},"responses":{"200":{"$ref":"#/components/responses/SuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Suggestion Rules"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete Suggestion Rule","operationId":"delete-integration-suggestion-rule","description":"Deletes the given suggestion rule.","responses":{"204":{"description":"No Content"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Suggestion Rules"]}},"/integrations/{integration}/suggestion-rules/test":{"parameters":[{"schema":{"type":"string","example":"gateway-manager"},"name":"integration","in":"path","required":true,"description":"Machine name of the integration."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Test a Suggestion Rule Configuration","operationId":"test-suggestion-rule","description":"Test suggestion rule configuration against an integration record.","requestBody":{"$ref":"#/components/requestBodies/CreateTestSuggestionRuleBody"},"responses":{"200":{"$ref":"#/components/responses/TestSuggestionRuleResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Suggestion Rules"]}},"/suggestion-rule-errors":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Suggestion Rule Errors","operationId":"list-suggestion-rule-errors","description":"Returns a paginated collection of suggestion rule errors.","responses":{"200":{"$ref":"#/components/responses/ListSuggestionRuleErrorResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/SuggestionRuleErrorFilter"}],"tags":["Suggestion Rule Errors"]}},"/integration-events":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Integration Events","operationId":"list-integration-events","description":"Returns a paginated collection of integration events.","responses":{"200":{"$ref":"#/components/responses/ListIntegrationEventsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"parameters":[{"$ref":"#/components/parameters/CursorPageQuery"},{"$ref":"#/components/parameters/IntegrationEventsFilter"},{"$ref":"#/components/parameters/IntegrationEventsSort"}],"tags":["Integration Events"]}},"/integration-instances/{integrationInstance}/integration-events":{"post":{"x-unstable":true,"x-internal":true,"summary":"Bulk Create Integration Events","operationId":"create-integration-events","description":"Bulk-creates integration events for an integration.","parameters":[{"schema":{"type":"string","example":"gateway-manager"},"name":"integrationInstance","in":"path","required":true,"description":"Machine name of the integration."}],"requestBody":{"$ref":"#/components/requestBodies/CreateIntegrationEventsBody"},"responses":{"202":{"description":"The payload for bulk integration event create was accepted.\n"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Integration Events"]}},"/catalog-services/{serviceId}/integration-events":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","format":"uuid"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List a catalog service integration Events","operationId":"list-catalog-service-integration-events","description":"Returns a paginated collection of integration events belonging to the given catalog service.","responses":{"200":{"$ref":"#/components/responses/ListIntegrationEventsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/CursorPageQuery"},{"$ref":"#/components/parameters/CatalogServiceIntegrationEventsFilter"},{"$ref":"#/components/parameters/IntegrationEventsSort"}],"tags":["Integration Events"]}},"/catalog-services/{serviceId}/documents":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Create Service Document","description":"Creates a service document","operationId":"create-catalog-service-document","requestBody":{"$ref":"#/components/requestBodies/CreateServiceDocumentBody"},"responses":{"201":{"$ref":"#/components/responses/CatalogServiceDocumentResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]},"get":{"x-unstable":true,"x-internal":true,"summary":"List Catalog Service Documents","description":"Returns a paginated collection of documents attached to the given service.","operationId":"list-catalog-service-documents","parameters":[{"in":"header","name":"Accept","schema":{"$ref":"#/components/schemas/DocumentContentTypeEnum"}},{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceDocumentsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]}},"/catalog-services/{serviceId}/documents/{documentId}":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"schema":{"type":"string","example":"7b453ae4-66f5-4530-88b0-0b6e34072325"},"name":"documentId","in":"path","required":true,"description":"The `id` of the document."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Catalog Service Document","description":"Fetched a service document.","operationId":"fetch-catalog-service-document","parameters":[{"in":"header","name":"Accept","schema":{"$ref":"#/components/schemas/DocumentFormatContentTypeEnum"}}],"responses":{"200":{"$ref":"#/components/responses/CatalogServiceDocumentResponse"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]},"patch":{"x-unstable":true,"x-internal":true,"summary":"Update Catalog Service Document","description":"Updates a service document.","operationId":"update-catalog-service-document","requestBody":{"$ref":"#/components/requestBodies/UpdateServiceDocumentBody"},"responses":{"200":{"$ref":"#/components/responses/UpdateCatalogServiceDocumentResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete Catalog Service Document","description":"Deletes a service document.","operationId":"delete-catalog-service-document","responses":{"204":{"description":"Service document was deleted successfully."},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]}},"/catalog-services/{serviceId}/documents/{documentId}/move":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"schema":{"type":"string","example":"7b453ae4-66f5-4530-88b0-0b6e34072325"},"name":"documentId","in":"path","required":true,"description":"The `id` of the document."}],"post":{"x-unstable":true,"x-internal":true,"summary":"Move Catalog Service Document","description":"Moves a service document.","operationId":"move-catalog-service-document","requestBody":{"$ref":"#/components/requestBodies/MoveServiceDocumentBody"},"responses":{"204":{"description":"The service document has been moved"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"500":{"$ref":"#/components/responses/Internal"}},"tags":["Catalog Service Documents"]}},"/suggested-resource-actions":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Suggested Resource Actions","operationId":"list-suggested-resource-action","description":"Returns a paginated collection of a suggested resource actions.","responses":{"200":{"$ref":"#/components/responses/ListSuggestedResourceActionResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/SuggestedResourceActionFilter"},{"$ref":"#/components/parameters/SuggestedResourceActionSort"}],"tags":["Suggested Resource Actions"]}},"/suggested-resource-actions/{suggestedResourceActionId}":{"parameters":[{"schema":{"type":"string","example":"76ca0689-f08e-4c04-b2a6-4c992d89d554"},"name":"suggestedResourceActionId","in":"path","required":true,"description":"ID of the suggested resource action."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Suggested Resource Action","operationId":"get-suggested-resource-action","description":"Returns information about a suggested resource action.","responses":{"200":{"$ref":"#/components/responses/SuggestedResourceActionResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Suggested Resource Actions"]},"patch":{"x-unstable":true,"x-internal":true,"summary":"Update Suggested Resource Action","operationId":"update-suggested-resource-action","description":"Updates the given suggested resource.","requestBody":{"$ref":"#/components/requestBodies/UpdateSuggestedResourceActionBody"},"responses":{"200":{"$ref":"#/components/responses/SuggestedResourceActionResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"415":{"$ref":"#/components/responses/UnsupportedMediaType"}},"tags":["Suggested Resource Actions"]}},"/vulnerability-scans":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Vulnerability Scans","operationId":"list-vulnerability-scans","description":"Returns a paginated collection of vulnerability scans.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/VulnerabilityScanFilter"},{"$ref":"#/components/parameters/VulnerabilityScanSort"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityScansResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]},"post":{"x-unstable":true,"x-internal":true,"summary":"Create Vulnerability Scan","operationId":"create-vulnerability-scan","description":"Create a vulnerability scan, to be broken down into a set of vulnerabilities.","requestBody":{"$ref":"#/components/requestBodies/CreateVulnerabilityScanBody"},"responses":{"201":{"$ref":"#/components/responses/VulnerabilityScanResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Vulnerabilities"]}},"/vulnerability-scans/{scanId}":{"parameters":[{"schema":{"type":"string","format":"uuid"},"name":"scanId","in":"path","required":true,"description":"ID of the vulnerability scan."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Vulnerability Scan","operationId":"fetch-vulnerability-scan","description":"Returns vulnerability scan by ID.","responses":{"200":{"$ref":"#/components/responses/VulnerabilityScanResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerability-scans/{scanId}/vulnerabilities":{"parameters":[{"schema":{"type":"string","format":"uuid"},"name":"scanId","in":"path","required":true,"description":"ID of the vulnerability scan."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Vulnerability Scan Vulnerabilities","operationId":"list-vulnerability-scan-vulnerabilities","description":"Returns a paginated collection of vulnerabilities for a given vulnerability scan.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/VulnerabilityScanVulnerabilityFilter"},{"$ref":"#/components/parameters/VulnerabilitySort"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityScanVulnerabilitiesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerability-scans":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Service Vulnerability Scans","operationId":"list-service-vulnerability-scans","description":"Returns a paginated collection of vulnerability scans for a given service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ServiceVulnerabilityScanFilter"},{"$ref":"#/components/parameters/VulnerabilityScanSort"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityScansResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerability-scans/{scanId}":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."},{"schema":{"type":"string","format":"uuid"},"name":"scanId","in":"path","required":true,"description":"ID of the vulnerability scan."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get a Service Vulnerability Scan","operationId":"fetch-service-vulnerability-scan","description":"Returns vulnerability scan, for a given service, by ID.","responses":{"200":{"$ref":"#/components/responses/VulnerabilityScanResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerabilities":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Vulnerabilities","operationId":"list-vulnerabilities","description":"Returns a paginated collection of vulnerabilities.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogVulnerabilityFilter"},{"$ref":"#/components/parameters/CatalogVulnerabilitySort"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogVulnerabilitiesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerabilities/{vulnerabilityId}":{"parameters":[{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get Vulnerability","operationId":"fetch-vulnerability","description":"Returns vulnerability by ID.","responses":{"200":{"$ref":"#/components/responses/CatalogVulnerabilityResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerabilities/{vulnerabilityId}/catalog-services":{"parameters":[{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Vulnerability Services","operationId":"list-vulnerability-services","description":"Returns a paginated collection of services for a given vulnerability.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/VulnerabilityServiceSort"},{"$ref":"#/components/parameters/VulnerabilityServiceFilter"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityServicesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerabilities/{vulnerabilityId}/instances":{"parameters":[{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Vulnerability Instances","operationId":"list-vulnerability-instances","description":"Returns a paginated collection of vulnerability instances for a given vulnerability.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/VulnerabilityInstanceSort"},{"$ref":"#/components/parameters/VulnerabilityInstanceFilter"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityInstancesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerabilities":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Service Vulnerabilities","operationId":"list-service-vulnerabilities","description":"Returns a paginated collection of vulnerabilities for a given service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/ServiceVulnerabilityFilter"},{"$ref":"#/components/parameters/VulnerabilitySort"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilitiesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerabilities/{vulnerabilityId}":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."},{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get Service Vulnerability","operationId":"fetch-service-vulnerability","description":"Returns vulnerability instance, for a given service, by ID.","responses":{"200":{"$ref":"#/components/responses/VulnerabilityResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerabilities/{vulnerabilityId}/instances":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."},{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Service Vulnerability Instances","operationId":"list-service-vulnerability-instances","description":"Returns a paginated collection of vulnerability instances for a given service.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/VulnerabilityInstanceSort"},{"$ref":"#/components/parameters/ServiceVulnerabilityInstanceFilter"}],"responses":{"200":{"$ref":"#/components/responses/ListVulnerabilityInstancesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerabilities/{vulnerabilityId}/severity":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."},{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"put":{"x-unstable":true,"x-internal":true,"summary":"Put Service Vulnerability Severity Override","operationId":"put-service-vulnerability-severity-override","description":"Overrides a vulnerability severity for a given service.","requestBody":{"$ref":"#/components/requestBodies/PutVulnerabilitySeverityOverrideBody"},"responses":{"200":{"$ref":"#/components/responses/VulnerabilityResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete Vulnerability Severity Override","operationId":"delete-service-vulnerability-severity-override","description":"Deletes the severity override on a vulnerability for a given service.","responses":{"204":{"description":"No Content"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/catalog-services/{serviceId}/vulnerabilities/{vulnerabilityId}/dismissal":{"parameters":[{"schema":{"type":"string"},"name":"serviceId","in":"path","required":true,"description":"ID of the service."},{"schema":{"type":"string","format":"uuid"},"name":"vulnerabilityId","in":"path","required":true,"description":"ID of the vulnerability."}],"put":{"x-unstable":true,"x-internal":true,"summary":"Put Service Vulnerability Dismissal","operationId":"put-service-vulnerability-dismissal","description":"Dismisses a vulnerability for a given service.","requestBody":{"$ref":"#/components/requestBodies/PutVulnerabilityDismissalBody"},"responses":{"200":{"$ref":"#/components/responses/VulnerabilityResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete Service Vulnerability Dismissal","operationId":"delete-service-vulnerability-dismissal","description":"Deletes the dismissal on a vulnerability for a given service.","responses":{"204":{"description":"No Content"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Vulnerabilities"]}},"/vulnerability-catalog-services":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Catalog Vulnerability-Services","operationId":"list-catalog-vulnerability-services","description":"Returns a paginated collection of services with cross-vulnerability context.","parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogVulnerabilityServiceSort"},{"$ref":"#/components/parameters/CatalogVulnerabilityServiceFilter"}],"responses":{"200":{"$ref":"#/components/responses/ListCatalogVulnerabilityServicesResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Vulnerabilities"]}},"/metrics/vulnerabilities":{"post":{"x-unstable":true,"x-internal":true,"summary":"Query Vulnerabilities Metrics","operationId":"query-vulnerabilities-metrics","description":"Post a query to the endpoint to retrieve aggregated vulnerabilities metrics.\nData can be requested to group by any 2 dimensions and can include any number of filter conditions.\n","requestBody":{"$ref":"#/components/requestBodies/QueryVulnerabilitiesMetricsRequest"},"responses":{"200":{"$ref":"#/components/responses/VulnerabilitiesMetricsQueryResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"tags":["Vulnerabilities"]}},"/catalog-custom-fields/schemas":{"get":{"x-unstable":true,"x-internal":true,"summary":"List Catalog Custom Field Schemas","operationId":"list-catalog-custom-field-schemas","description":"Returns a paginated collection of catalog custom field schemas.","responses":{"200":{"$ref":"#/components/responses/ListCustomFieldSchemaResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CustomFieldSchemaFilter"},{"$ref":"#/components/parameters/CustomFieldSchemaSort"}],"tags":["Catalog Service Custom Fields"]}},"/catalog-services/{serviceId}/api-mappings":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List API Mappings for a Service","operationId":"list-catalog-service-api-mappings","description":"Returns a paginated collection of API mappings for the given service.","responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceApiMappingsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogServiceApiMappingSort"},{"$ref":"#/components/parameters/CatalogServiceApiMappingFilter"}],"tags":["Catalog Service API Mappings"]},"post":{"x-unstable":true,"x-internal":true,"summary":"Create API Mapping for a Service","operationId":"create-catalog-service-api-mapping","description":"Creates a new API mapping for the given service.","requestBody":{"$ref":"#/components/requestBodies/CreateCatalogServiceApiMappingBody"},"responses":{"201":{"$ref":"#/components/responses/CatalogServiceApiMappingResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"},"409":{"$ref":"#/components/responses/Conflict"}},"tags":["Catalog Service API Mappings"]}},"/catalog-services/{serviceId}/api-mappings/{mappingId}":{"parameters":[{"schema":{"type":"string","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"name":"serviceId","in":"path","required":true,"description":"The `id` of the service."},{"name":"mappingId","in":"path","required":true,"schema":{"type":"string","format":"uuid","example":"d277faad-ed4e-4c56-a0fb-acce065dee34"},"description":"ID of the catalog service API mapping."}],"get":{"x-unstable":true,"x-internal":true,"summary":"Get API Mapping for a Service","operationId":"get-catalog-service-api-mapping","description":"Returns information about a specific API mapping for the given service.","responses":{"200":{"$ref":"#/components/responses/CatalogServiceApiMappingResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Mappings"]},"delete":{"x-unstable":true,"x-internal":true,"summary":"Delete API Mapping for a Service","operationId":"delete-catalog-service-api-mapping","description":"Deletes a specific API mapping for the given service.","responses":{"204":{"description":"Catalog service API mapping was deleted successfully."},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"tags":["Catalog Service API Mappings"]}},"/apis/{apiId}/service-mappings":{"parameters":[{"name":"apiId","in":"path","required":true,"schema":{"type":"string","format":"uuid"},"description":"ID of the API."}],"get":{"x-unstable":true,"x-internal":true,"summary":"List Service Mappings for an API","operationId":"list-service-mappings-for-api","description":"Returns a paginated collection of Service mappings for the given API.","responses":{"200":{"$ref":"#/components/responses/ListCatalogServiceApiMappingsResponse"},"400":{"$ref":"#/components/responses/BadRequest"},"401":{"$ref":"#/components/responses/Unauthorized"},"403":{"$ref":"#/components/responses/Forbidden"},"404":{"$ref":"#/components/responses/NotFound"}},"parameters":[{"$ref":"#/components/parameters/PageSize"},{"$ref":"#/components/parameters/PageNumber"},{"$ref":"#/components/parameters/CatalogServiceApiMappingSort"},{"$ref":"#/components/parameters/CatalogApiServiceMappingFilter"}],"tags":["Catalog Service API Mappings"]}}},"components":{"parameters":{"CatalogServiceFilter":{"name":"filter","description":"Filters a collection of services.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogServiceFilterParameters"}},"CatalogServiceSort":{"name":"sort","description":"Sorts a collection of services. Supported sort attributes are:\n  - `display_name`\n  - `name`\n  - `created_at`\n  - `updated_at`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogServiceApiSpecFilter":{"name":"filter","description":"Filters a collection of API specs belonging to a service.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogServiceApiSpecFilterParameters"}},"CatalogServiceApiSpecSort":{"name":"sort","description":"Sorts a collection of API specs belonging to a service. Supported sort attributes are:\n  - `name`\n  - `provider.type`\n\nDefault sort is `name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogIntegrationFilter":{"name":"filter","description":"Filters a collection of integrations.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogIntegrationFilterParameters"}},"CatalogIntegrationSort":{"name":"sort","description":"Sorts a collection of integrations. Supported sort attributes are:\n  - `display_name`\n  - `name`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"IntegrationInstanceFilter":{"name":"filter","description":"Filters a collection of integration instances.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/IntegrationInstanceFilterParameters"}},"IntegrationInstanceSort":{"name":"sort","description":"Sorts a collection of integration instances. Supported sort attributes are:\n  - `display_name`\n  - `name`\n  - `created_at`\n  - `updated_at`\n  - `integration.display_name`\n\nDefault sort is `integration.display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogResourceFilter":{"name":"filter","description":"Filters a collection of resources.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogResourceFilterParameters"}},"CatalogResourceRefFilter":{"name":"filter","description":"Filters a collection of resources.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogResourceRefFilterParameters"}},"CatalogResourceSort":{"name":"sort","description":"Sorts a collection of resources. Supported sort attributes are:\n  - `created_at`\n  - `updated_at`\n\nDefault sort is `created_at` in descending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogResourceMappingFilter":{"name":"filter","description":"Filters a collection of resource mappings.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogResourceMappingFilterParameters"}},"CatalogResourceMappingSort":{"name":"sort","description":"Sorts a collection of resource mappings. Supported sort attributes are:\n  - `created_at`\n\nDefault sort is `created_at` in descending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CriteriaTemplateFilter":{"name":"filter","description":"Filters a collection of criteria templates.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CriteriaTemplateFilterParameters"}},"CriteriaTemplateSort":{"name":"sort","description":"Sorts a collection of criteria templates. Supported sort attributes are:\n  - `display_name`\n  - `name`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ScorecardTemplateFilter":{"name":"filter","description":"Filters a collection of scorecard templates.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ScorecardTemplateFilterParameters"}},"ScorecardTemplateSort":{"name":"sort","description":"Sorts a collection of scorecard templates. Supported sort attributes are:\n  - `display_name`\n  - `name`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ScorecardFilter":{"name":"filter","description":"Filters a collection of scorecards.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ScorecardFilterParameters"}},"ScorecardSort":{"name":"sort","description":"Sorts a collection of scorecards. Supported sort attributes are:\n  - `name`\n  - `score.value`\n  - `score.raw_value`\n\nDefault sort is `name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ScorecardCriteriaFilter":{"name":"filter","description":"Filters a collection of criteria belonging to a scorecard.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ScorecardCriteriaFilterParameters"}},"ScorecardCriteriaSort":{"name":"sort","description":"Sorts a collection of criteria belonging to a scorecard. Supported sort attributes are:\n  - `evaluation.passing_services_count`\n\nBy default, criteria will be returned in the order that they are configured in the scorecard.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ScorecardServiceFilter":{"name":"filter","description":"Filters a collection of services targeted by a scorecard.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ScorecardServiceFilterParameters"}},"SuggestionRuleFilter":{"name":"filter","description":"Filters a collection of suggestion rules.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/SuggestionRuleFilterParameters"}},"SuggestionRuleErrorFilter":{"name":"filter","description":"Filters a collection of suggestion rule errors.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/SuggestionRuleErrorFilterParameters"}},"ScorecardServiceSort":{"name":"sort","description":"Sorts a collection of services targeted by a scorecard. Supported sort attributes are:\n  - `display_name`\n  - `name`\n  - `score.value`\n  - `score.raw_value`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ScorecardCriteriaServiceFilter":{"name":"filter","description":"Filters a collection of services targeted by a scorecard criteria.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ScorecardCriteriaServiceFilterParameters"}},"ScorecardCriteriaServiceSort":{"name":"sort","description":"Sorts a collection of services targeted by a scorecard criteria. Supported sort attributes are:\n  - `display_name`\n  - `name`\n  - `evaluation.is_passing`\n  - `evaluation.successfully_evaluated_at`\n  - `evaluation.attempted_at`\n\nDefault sort is `display_name` in ascending order.\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ResourceActionFilter":{"name":"filter","description":"Filters a collection of resource actions.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ResourceActionFilterParameters"}},"IntegrationEventsFilter":{"name":"filter","description":"Filters a collection of integration events.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/IntegrationEventsFilterParameters"}},"CatalogServiceIntegrationEventsFilter":{"name":"filter","description":"Filters a collection of events for a given service.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogServiceIntegrationEventsFilterParameters"}},"IntegrationEventsSort":{"name":"sort","description":"Sorts a collection of integration events. Supported sort attributes are:\n  - ts\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"SuggestedResourceActionFilter":{"name":"filter","description":"Filters a collection of suggested resource actions.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/SuggestedResourceActionFilterParameters"}},"SuggestedResourceActionSort":{"name":"sort","description":"Sorts a collection of suggested resource actions. Supported sort attributes are:\n  - created_at\n  - updated_at\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"VulnerabilityScanSort":{"name":"sort","description":"Sorts a collection of vulnerability scans. Supported sort attributes are:\n  - ts\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"VulnerabilityScanFilter":{"name":"filter","description":"Filters a collection of vulnerability scans.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/VulnerabilityScanFilterParameters"}},"VulnerabilityScanVulnerabilityFilter":{"name":"filter","description":"Filters a collection of vulnerabilities for a given vulnerability scan.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/VulnerabilityScanVulnerabilityFilterParameters"}},"VulnerabilitySort":{"name":"sort","description":"Sorts a collection of vulnerabilities. Supported sort attributes are:\n  - last_opened_at\n  - dismissed_at\n  - fixed_at\n  - instance_count\n  - severity_score\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ServiceVulnerabilityFilter":{"name":"filter","description":"Filters a collection of vulnerabilities.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ServiceVulnerabilityFilterParameters"}},"ServiceVulnerabilityScanFilter":{"name":"filter","description":"Filters a collection of vulnerability scans, for a given service.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ServiceVulnerabilityScanFilterParameters"}},"CatalogVulnerabilityFilter":{"name":"filter","description":"Filters a collection of catalog-wide vulnerabilities.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogVulnerabilityFilterParameters"}},"CatalogVulnerabilitySort":{"name":"sort","description":"Sorts a collection of catalog-wide vulnerabilities. Supported sort attributes are:\n  - last_opened_at\n  - dismissed_at\n  - fixed_at\n  - instance_count\n  - service_count\n  - severity_score\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"VulnerabilityServiceSort":{"name":"sort","description":"Sorts a collection of services for a given vulnerability. Supported sort attributes are:\n  - name\n  - display_name\n  - vulnerability.last_opened_at\n  - vulnerability.dismissed_at\n  - vulnerability.fixed_at\n  - vulnerability.instance_count\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"VulnerabilityServiceFilter":{"name":"filter","description":"Filters a collection of services for a given vulnerability.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/VulnerabilityServiceFilterParameters"}},"VulnerabilityInstanceSort":{"name":"sort","description":"Sorts a collection of vulnerability instances. Supported sort attributes are:\n  - last_opened_at\n  - fixed_at\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"ServiceVulnerabilityInstanceFilter":{"name":"filter","description":"Filters a collection of vulnerability instances for a given service.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/ServiceVulnerabilityInstanceFilterParameters"}},"VulnerabilityInstanceFilter":{"name":"filter","description":"Filters a collection of vulnerability instances.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/VulnerabilityInstanceFilterParameters"}},"CatalogVulnerabilityServiceSort":{"name":"sort","description":"Sorts a collection of services with cross-ulnerability context. Supported sort attributes are:\n  - name\n  - display_name\n  - vulnerability.most_recent_vulnerability_opened_at\n  - vulnerability.vulnerability_count\n  - vulnerability.instance_count\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogVulnerabilityServiceFilter":{"name":"filter","description":"Filters a collection of services with cross-vulnerability context.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CatalogVulnerabilityServiceFilterParameters"}},"CustomFieldSchemaFilter":{"name":"filter","description":"Filters a collection of custom field schemas.","required":false,"in":"query","style":"deepObject","schema":{"$ref":"#/components/schemas/CustomFieldSchemaFilterParameters"}},"CustomFieldSchemaSort":{"name":"sort","description":"Sorts a collection of custom field schemas. Supported sort attributes are:\n  - created_at\n  - updated_at\n  - name\n","required":false,"in":"query","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogServiceApiMappingSort":{"name":"sort","in":"query","required":false,"description":"Sorts a collection of catalog service API mappings. Supported sort attributes are:\n  - `created_at`\n  - `updated_at`\n\nDefault sort is `created_at` in descending order.\n","schema":{"$ref":"#/components/schemas/SortQuery"}},"CatalogServiceApiMappingFilter":{"name":"filter","in":"query","required":false,"style":"deepObject","description":"Filters a collection of catalog service API mappings for a given Service. Supported filter attributes are:\n  - `api_id`\n  - `id`\n","schema":{"$ref":"#/components/schemas/CatalogServiceApiMappingFilterParameters"}},"CatalogApiServiceMappingFilter":{"name":"filter","in":"query","required":false,"style":"deepObject","description":"Filters a collection of catalog API service mappings for a given API. Supported filter attributes are:\n  - `service_id`\n  - `id`\n","schema":{"$ref":"#/components/schemas/CatalogApiServiceMappingFilterParameters"}},"PageSize":{"name":"page[size]","description":"The maximum number of items to include per page. The last page of a collection may include fewer items.","required":false,"in":"query","allowEmptyValue":true,"schema":{"type":"integer","example":10}},"PageNumber":{"name":"page[number]","description":"Determines which page of the entities to retrieve.","required":false,"in":"query","allowEmptyValue":true,"schema":{"type":"integer","example":1}},"CursorPageQuery":{"name":"page","description":"Determines which page of the collection to retrieve.","required":false,"in":"query","schema":{"$ref":"#/components/schemas/CursorPageParameters"}}},"requestBodies":{"CreateCatalogServiceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCatalogService"},"examples":{"Service":{"$ref":"#/components/examples/SampleServiceCreatePayload"}}}}},"UpdateCatalogServiceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCatalogService"},"examples":{"Service":{"$ref":"#/components/examples/SampleServicePatchDescriptionPayload"}}}}},"CreateCatalogServiceApiRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCatalogServiceApiSpec"},"examples":{"Url":{"$ref":"#/components/examples/CreateServiceApiUrlPayload"},"Raw":{"$ref":"#/components/examples/CreateServiceApiRawPayload"},"Integration":{"$ref":"#/components/examples/CreateServiceApiIntegrationPayload"},"Resource":{"$ref":"#/components/examples/CreateServiceApiResourcePayload"}}}}},"UpdateCatalogServiceApiRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCatalogServiceApiSpec"},"examples":{"Update Service API":{"$ref":"#/components/examples/UpdateServiceApiPayload"}}}}},"CreateCatalogIntegrationRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCatalogIntegration"},"examples":{"Integration":{"$ref":"#/components/examples/CreatePrivateCatalogIntegrationPayload"}}}}},"UpdateCatalogIntegrationRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCatalogIntegration"},"examples":{"Integration":{"$ref":"#/components/examples/UpdateCatalogIntegrationPayload"}}}}},"CreateIntegrationInstanceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIntegrationInstance"},"examples":{"SwaggerHub":{"$ref":"#/components/examples/SampleInstanceCreateSwaggerHubPayload"},"Datadog":{"$ref":"#/components/examples/SampleInstanceCreateDatadogPayload"},"Github":{"$ref":"#/components/examples/SampleInstanceCreateGithubPayload"},"Gitlab":{"$ref":"#/components/examples/SampleInstanceCreateGitlabPayload"},"PagerDuty":{"$ref":"#/components/examples/SampleInstanceCreatePagerDutyPayload"},"Slack":{"$ref":"#/components/examples/SampleInstanceCreateSlackPayload"},"Traceable":{"$ref":"#/components/examples/SampleInstanceCreateTraceablePayload"},"Dynatrace":{"$ref":"#/components/examples/SampleInstanceCreateDynatracePayload"},"SonarQube":{"$ref":"#/components/examples/SampleInstanceCreateSonarQubePayload"},"azureApiManagement":{"$ref":"#/components/examples/SampleInstanceCreateAzureApiManagementPayload"},"AzureDevops":{"$ref":"#/components/examples/SampleInstanceCreateAzureDevopsPayload"}}}}},"PreviewCatalogServiceApiRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PreviewCatalogServiceApiSpec"},"examples":{"Url":{"$ref":"#/components/examples/PreviewServiceApiUrlPayload"},"Raw":{"$ref":"#/components/examples/PreviewServiceApiRawPayload"},"Integration":{"$ref":"#/components/examples/PreviewServiceApiIntegrationPayload"},"Resource":{"$ref":"#/components/examples/PreviewServiceApiResourcePayload"}}}}},"UpdateIntegrationInstanceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateIntegrationInstance"},"examples":{"SwaggerHub":{"$ref":"#/components/examples/SampleInstanceUpdateSwaggerHubPayload"}}}}},"CreateIntegrationInstanceAuthCredentialRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateIntegrationInstanceAuthCredential"},"examples":{"SwaggerHub":{"$ref":"#/components/examples/SampleCreateSwaggerHubMultiKeyAuthPayload"},"Datadog":{"$ref":"#/components/examples/SampleCreateDatadogMultiKeyAuthPayload"},"Traceable":{"$ref":"#/components/examples/SampleCreateTraceableMultiKeyAuthPayload"},"AwsApiGateway":{"$ref":"#/components/examples/SampleCreateAWSRoleDelegationAuthPayload"},"Dynatrace":{"$ref":"#/components/examples/SampleCreateDynatraceMultiKeyAuthPayload"},"SonarQube":{"$ref":"#/components/examples/SampleCreateSonarQubeMultiKeyAuthPayload"},"azureApiManagement":{"$ref":"#/components/examples/AzureApiManagementAuthConfigPayload"},"azureDevops":{"$ref":"#/components/examples/SampleCreateAzureDevopsMultiKeyAuthPayload"}}}}},"UpsertIntegrationInstanceAuthConfigRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpsertIntegrationInstanceAuthConfig"},"examples":{"GitLab Self Managed":{"$ref":"#/components/examples/GitLabSelfManagedAuthConfigPayload"}}}}},"InitializeCatalogResourceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InitializeCatalogResource"}}}},"DeleteCatalogResourcesRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeleteCatalogResources"}}}},"UpdateCatalogResourceRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateCatalogResource"},"examples":{"Unarchive":{"$ref":"#/components/examples/ResourceArchivePayload"}}}}},"UpsertCatalogResourcesRequest":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["data"],"properties":{"data":{"type":"array","minItems":1,"maxItems":100,"items":{"$ref":"#/components/schemas/UpsertCatalogResource"}}}}}}},"CreateCatalogResourceMappingRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateCatalogResourceMapping"},"examples":{"Resource ID":{"$ref":"#/components/examples/CreateMappingByResourceIDPayload"},"Resource Config":{"$ref":"#/components/examples/CreateMappingByResourceConfigPayload"}}}}},"CreateScorecardRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateScorecard"},"examples":{"Scorecard":{"$ref":"#/components/examples/CreateScorecardPayload"}}}}},"UpdateScorecardRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateScorecard"},"examples":{"Scorecard":{"$ref":"#/components/examples/UpdateScorecardPayload"}}}}},"ResourceIngestionBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScheduleResourceIngestion"},"examples":{"Resource Ingestion":{"$ref":"#/components/examples/ResourceIngestionPayload"}}}}},"IntegrationInstanceProxyBody":{"description":"Request body schema for an integration instance proxy request.","required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"method":{"type":"string","enum":["DELETE","GET","PATCH","POST","PUT"],"description":"The HTTP request method.","example":"GET"},"base_url":{"type":"string","format":"uri","description":"The base URL of the proxied API as defined in the integration manifest.","example":"https://api.pagerduty.com"},"path":{"type":"string","description":"The URL path of the proxied API request as defined in the integration manifest.","example":"/incidents","writeOnly":true},"body":{"type":"object","additionalProperties":true,"description":"JSON object representing the request body that will be sent to the proxied API.","example":{"name":"Foo"}},"query":{"type":"object","additionalProperties":true,"description":"JSON object representing the query parameters that will be sent to the proxied API.","example":{"limit":5,"offset":10}},"headers":{"type":"object","additionalProperties":true,"description":"JSON object representing the request headers that will be sent to the proxied API.","example":{"content-type":"application/json"}}},"required":["method","base_url","path"]}}}},"CreateSuggestionRuleBody":{"description":"Request body schema for creating a suggestion rule for an integration.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuggestionRulePayload"},"examples":{"Suggestion Rule":{"$ref":"#/components/examples/CreateSuggestionRule"}}}}},"CreateTestSuggestionRuleBody":{"description":"Request body schema for testing a suggestion rule configuration against an integration data.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TestSuggestionRulePayload"},"examples":{"Test Suggestion Rule":{"$ref":"#/components/examples/TestSuggestionRule"}}}}},"CreateIntegrationEventsBody":{"description":"Request body schema for bulk-creating integration events.","required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/CreateIntegrationEvent"}}},"required":["data"]}}}},"CreateServiceDocumentBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateServiceDocumentPayload"},"examples":{"Service Document":{"$ref":"#/components/examples/ServiceDocumentPayload"},"Service Document Child":{"$ref":"#/components/examples/ServiceDocumentChildPayload"}}}}},"UpdateServiceDocumentBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateServiceDocumentPayload"},"examples":{"Service Document":{"$ref":"#/components/examples/ServiceDocumentPayload"},"Service Document Child":{"$ref":"#/components/examples/ServiceDocumentChildPayload"}}}}},"MoveServiceDocumentBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MoveDocumentRequestPayload"},"examples":{"Update Service Document Markdown Payload":{"$ref":"#/components/examples/MoveServiceDocumentPayload"}}}}},"UpdateSuggestedResourceActionBody":{"description":"Request body schema for updating a suggested resource action.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateSuggestedResourceAction"}}}},"CreateVulnerabilityScanBody":{"description":"Request body schema for uploading a vulnerability scan.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateVulnerabilityScan"}}}},"PutVulnerabilitySeverityOverrideBody":{"description":"Request body schema for overriding a vulnerability severity.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutVulnerabilitySeverityOverride"}}}},"PutVulnerabilityDismissalBody":{"description":"Request body schema for dismissing a vulnerability.","required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PutVulnerabilityDismissal"}}}},"QueryVulnerabilitiesMetricsRequest":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VulnerabilitiesMetricsQuery"}}}},"CreateCatalogServiceApiMappingBody":{"description":"Request body schema for creating a new API mapping for catalog service.","required":true,"content":{"application/json":{"schema":{"type":"object","required":["api_id"],"additionalProperties":false,"properties":{"api_id":{"type":"string","format":"uuid","description":"The ID of the API Entity to map."}}}}}}},"responses":{"CatalogServiceResponse":{"description":"A response containing a single service object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogService"},"examples":{"Service":{"$ref":"#/components/examples/SampleServiceResponse"}}}}},"ListCatalogServicesResponse":{"description":"A paginated list response for a collection of services.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogService"}}},"required":["meta","data"]},"examples":{"Services":{"$ref":"#/components/examples/SampleServiceListResponse"}}}}},"CatalogServiceApiSpecResponse":{"description":"A response containing a single API spec.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogServiceApiSpec"},"examples":{"Url":{"$ref":"#/components/examples/ServiceApiUrlResponse"},"Raw":{"$ref":"#/components/examples/ServiceApiRawResponse"},"Integration":{"$ref":"#/components/examples/CreateServiceApiIntegrationResponse"},"Resource":{"$ref":"#/components/examples/CreateServiceApiResourceResponse"}}}}},"ListCatalogServiceApiSpecsResponse":{"description":"A paginated list response for a collection of API specs.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogServiceApiSpec"}}},"required":["meta","data"]},"examples":{"Service APIs":{"$ref":"#/components/examples/ListServiceApiResponse"}}}}},"CatalogServiceApiSpecPreviewResponse":{"description":"Response object containing raw API spec contents","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiSpecContents"},"examples":{"JSON":{"$ref":"#/components/examples/PreviewServiceApiResponseJson"}}},"application/yaml":{"schema":{"$ref":"#/components/schemas/ApiSpecContentsYaml"},"examples":{"YAML":{"$ref":"#/components/examples/PreviewServiceApiResponseYaml"}}}}},"CatalogIntegrationResponse":{"description":"A response containing a single integration object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogIntegration"},"examples":{"Integration":{"$ref":"#/components/examples/CatalogIntegrationResponse"}}}}},"ListCatalogIntegrationsResponse":{"description":"A paginated list response for a collection of integrations.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogIntegration"}}},"required":["meta","data"]},"examples":{"Built-In Integrations":{"$ref":"#/components/examples/BuiltInIntegrationsListResponse"}}}}},"CatalogServiceApiSpecContentResponse":{"description":"Response object containing raw API spec contents","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiSpecContents"},"examples":{"JSON":{"$ref":"#/components/examples/PreviewServiceApiResponseJson"}}},"application/yaml":{"schema":{"$ref":"#/components/schemas/ApiSpecContentsYaml"},"examples":{"YAML":{"$ref":"#/components/examples/PreviewServiceApiResponseYaml"}}}}},"IntegrationInstanceResponse":{"description":"A response containing a single integration instance object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationInstance"},"examples":{"SwaggerHub":{"$ref":"#/components/examples/SampleInstanceSwaggerHubResponse"}}}}},"ListIntegrationInstancesResponse":{"description":"A paginated list response for a collection of integration instances.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/IntegrationInstance"}}},"required":["meta","data"]},"examples":{"Integration Instances":{"$ref":"#/components/examples/SampleListInstancesResponse"}}}}},"CatalogResourceMappingResponse":{"description":"A response containing a single catalog resource mapping.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogResourceMapping"},"examples":{"Resource Mapping":{"$ref":"#/components/examples/ResourceMappingResponse"}}}}},"ListCatalogResourceMappingsResponse":{"description":"A paginated list response for a collection of catalog resource mappings.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogResourceMapping"}}},"required":["meta","data"]},"examples":{"Resource Mappings":{"$ref":"#/components/examples/ResourceMappingListResponse"}}}}},"IntegrationInstanceAuthCredentialResponse":{"description":"A response containing an integration instance auth credential.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationInstanceAuthCredential"},"examples":{"SwaggerHub":{"$ref":"#/components/examples/SampleCreateSwaggerHubMultiKeyAuthResponse"},"AwsApiGateway":{"$ref":"#/components/examples/SampleCreateAWSRoleDelegationAuthResponse"},"Dynatrace":{"$ref":"#/components/examples/SampleCreateDynatraceMultiKeyAuthResponse"},"SonarQube":{"$ref":"#/components/examples/SampleCreateSonarQubeMultiKeyAuthResponse"},"azureApiManagement":{"$ref":"#/components/examples/AzureApiManagementAuthConfigResponse"},"azureDevops":{"$ref":"#/components/examples/SampleCreateAzureDevopsMultiKeyAuthResponse"}}}}},"IntegrationInstanceAuthConfigResponse":{"description":"A response containing integration instance auth config.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationInstanceAuthConfig"},"examples":{"GitLab Self Managed":{"$ref":"#/components/examples/GitLabSelfManagedAuthConfigResponse"}}}}},"ListCatalogResourcesResponse":{"description":"A paginated list response for a collection of resources.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/CursorMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogResource"}}},"required":["meta","data"]},"examples":{"Resources":{"$ref":"#/components/examples/ResourcesListResponse"}}}}},"ListCatalogServiceResourcesResponse":{"description":"A paginated list response for a collection of resources mapped to a service.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogResource"}}},"required":["meta","data"]},"examples":{"Service Resources":{"$ref":"#/components/examples/ServiceResourcesResponse"}}}}},"CatalogResourceResponse":{"description":"A response containing a single resource object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogResource"},"examples":{"Resource":{"$ref":"#/components/examples/ResourceFetchGwsResponse"},"Initialized Resource":{"$ref":"#/components/examples/ResourceInitializeResponse"}}}}},"ListCriteriaTemplatesResponse":{"description":"A paginated list response for a collection of criteria templates.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CriteriaTemplate"}}},"required":["meta","data"]},"examples":{"Criteria Templates":{"$ref":"#/components/examples/ListCriteriaTemplatesResponse"}}}}},"ListScorecardTemplatesResponse":{"description":"A paginated list response for a collection of scorecard templates.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardTemplate"}}},"required":["meta","data"]},"examples":{"Scorecard Templates":{"$ref":"#/components/examples/ListScorecardTemplatesResponse"}}}}},"ListScorecardsResponse":{"description":"A paginated list response for a collection of scorecards.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Scorecard"}}},"required":["meta","data"]},"examples":{"Scorecards":{"$ref":"#/components/examples/ListScorecardResponse"}}}}},"ScorecardResponse":{"description":"A response containing a single scorecard.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ScorecardWithCriteria"},"examples":{"Scorecard":{"$ref":"#/components/examples/FetchScorecardResponse"}}}}},"ListScorecardCriteriaResponse":{"description":"A paginated list response for a collection of criteria belonging to a scorecard.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardCriteriaWithEvaluation"}}},"required":["meta","data"]},"examples":{"Scorecard Criteria":{"$ref":"#/components/examples/ListScorecardCriteriaResponse"}}}}},"ListCatalogServiceScorecardsResponse":{"description":"A paginated list response for a collection of scorecards targeting a service.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Scorecard"}}},"required":["meta","data"]},"examples":{"Service Scorecards":{"$ref":"#/components/examples/ListServiceScorecardsResponse"}}}}},"CatalogServiceScorecardResponse":{"description":"A response containing a scorecard targeting a service.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogServiceScorecard"},"examples":{"Service Scorecard":{"$ref":"#/components/examples/FetchServiceScorecardResponse"}}}}},"ListScorecardServicesResponse":{"description":"A paginated list response for a collection of services targeted by a scorecard.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardService"}}},"required":["meta","data"]},"examples":{"Scorecard Services":{"$ref":"#/components/examples/ListScorecardServicesResponse"}}}}},"ListScorecardCriteriaServicesResponse":{"description":"A paginated list response for a collection of services targeted by a scorecard criteria.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardCriteriaService"}}},"required":["meta","data"]},"examples":{"Scorecard Criteria Services":{"$ref":"#/components/examples/ListScorecardCriteriaServicesResponse"}}}}},"ResourceIngestionResponse":{"description":"A response containing the resource ingestion status.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ResourceIngestionStatus"},"examples":{"Resource Ingestion":{"$ref":"#/components/examples/ResourceIngestionStatus"}}}}},"ListResourceActionResponse":{"description":"A paginated list response for a collection of resource actions.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/CursorMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ResourceAction"}}},"required":["meta","data"]},"examples":{"Resource Actions":{"$ref":"#/components/examples/ListResourceActionsResponse"}}}}},"ListSystemSuggestionRuleResponse":{"description":"A paginated list response for a collection of system defined suggestion rules.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/SystemSuggestionRule"}}},"required":["meta","data"]},"examples":{"System Suggestion Rules":{"$ref":"#/components/examples/ListSystemSuggestionRulesResponse"}}}}},"ListSuggestionRuleResponse":{"description":"A paginated list response for a collection of suggestion rules.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/SuggestionRule"}}},"required":["meta","data"]},"examples":{"Suggestion Rule Errors":{"$ref":"#/components/examples/ListSuggestionRulesResponse"}}}}},"ListSuggestionRuleErrorResponse":{"description":"A paginated list response for a collection of suggestion rule errors.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/SuggestionRuleError"}}},"required":["meta","data"]},"examples":{"Suggestion Rule Errors":{"$ref":"#/components/examples/ListSuggestionRuleErrorsResponse"}}}}},"SuggestionRuleResponse":{"description":"A response containg a suggestion rule object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuggestionRule"},"examples":{"Suggestion Rule":{"$ref":"#/components/examples/SuggestionRule"}}}}},"TestSuggestionRuleResponse":{"description":"A response containing the evaluation of a suggestion rule configuration against an integration data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TestSuggestionRule"},"examples":{"Test Suggestion Rule":{"$ref":"#/components/examples/TestSuggestionRuleArchiveResponse"}}}}},"ListIntegrationEventsResponse":{"description":"A Paginated list response for a collection of integration events.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/CursorMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/IntegrationEvent"}}},"required":["meta","data"]},"examples":{"Integration Events":{"$ref":"#/components/examples/ListIntegrationEventsResponse"}}}}},"ListCatalogServiceDocumentsResponse":{"description":"A paginated list response for a collection of documents targeted by a service.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ServiceDocument"}}},"required":["meta","data"]},"examples":{"List Service Documents Response JSON":{"$ref":"#/components/examples/ListServiceDocumentsResponseJSON"}}},"application/vnd.konnect.document-tree+json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ServiceDocumentTree"}},"meta":{"$ref":"#/components/schemas/PaginatedMeta"}}},"examples":{"List Service Documents Response JSON Tree":{"$ref":"#/components/examples/ListServiceDocumentsResponseJSONTree"}}}}},"CatalogServiceDocumentResponse":{"description":"Response object for fetching a single service document","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceDocumentContentResponse"},"examples":{"Service Document":{"$ref":"#/components/examples/ServiceDocumentResponseJSON"}}}}},"UpdateCatalogServiceDocumentResponse":{"description":"A paginated list response for a collection of documents targeted by a service.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ServiceDocumentContentResponse"},"examples":{"Service Document":{"$ref":"#/components/examples/ServiceDocumentResponseJSON"}}}}},"ListSuggestedResourceActionResponse":{"description":"A paginated list response for a collection of suggested resource actions.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/SuggestedResourceActionObject"}}},"required":["meta","data"]},"examples":{"Suggested Resource Actions":{"$ref":"#/components/examples/ListSuggestedResourceActionsResponse"}}}}},"SuggestedResourceActionResponse":{"description":"A response containg a suggested resource action object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SuggestedResourceActionObject"},"examples":{"Suggested Resource Action":{"$ref":"#/components/examples/SuggestedResourceActionResponse"}}}}},"ListVulnerabilityScansResponse":{"description":"A paginated list response for a collection of vulnerability scans.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityScan"}}},"required":["meta","data"]}}}},"VulnerabilityScanResponse":{"description":"Response object containing a single vulnerability scan, without its catalog mapping.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VulnerabilityScan"}}}},"ListVulnerabilityScanVulnerabilitiesResponse":{"description":"A paginated list response for a collection of vulnerabilities, for a given vulnerability scan.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/ScanVulnerability"}}},"required":["meta","data"]}}}},"ListCatalogVulnerabilitiesResponse":{"description":"A paginated list response for a collection of catalog-wide vulnerabilities.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogVulnerability"}}},"required":["meta","data"]}}}},"CatalogVulnerabilityResponse":{"description":"Response object containing a single catalog-wide vulnerability.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogVulnerability"}}}},"ListVulnerabilityServicesResponse":{"description":"A paginated list response for a collection of services for a given vulnerability.\n","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityService"}}},"required":["meta","data"]}}}},"ListVulnerabilityInstancesResponse":{"description":"A paginated list response for a collection of vulnerability instances.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityInstance"}}},"required":["meta","data"]}}}},"ListVulnerabilitiesResponse":{"description":"A paginated list response for a collection of vulnerabilities.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/Vulnerability"}}},"required":["meta","data"]}}}},"VulnerabilityResponse":{"description":"Response object containing a single vulnerability.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Vulnerability"}}}},"ListCatalogVulnerabilityServicesResponse":{"description":"A paginated list response for a collection of services with cross-vulnerability context.\n","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogVulnerabilityService"}}},"required":["meta","data"]}}}},"VulnerabilitiesMetricsQueryResponse":{"description":"The result of a vulnerabilities metrics query.\nContains the aggregated data along with metadata about the query.\n","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"readOnly":true,"type":"array","items":{"$ref":"#/components/schemas/VulnerabilitiesMetricsQueryResult"}},"meta":{"$ref":"#/components/schemas/VulnerabilitiesMetricsResponseMetadata"}}}}}},"ListCustomFieldSchemaResponse":{"description":"A paginated list response for a collection of custom field schemas.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CustomFieldSchema"}}},"required":["meta","data"]}}}},"CatalogServiceApiMappingResponse":{"description":"A response containing a single catalog service API mapping.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CatalogServiceApiMapping"},"examples":{"Service API Mapping":{"$ref":"#/components/examples/SampleServiceApiMappingResponse"}}}}},"ListCatalogServiceApiMappingsResponse":{"description":"A paginated list response for a collection of catalog service API mappings.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"meta":{"$ref":"#/components/schemas/PaginatedMeta"},"data":{"type":"array","items":{"$ref":"#/components/schemas/CatalogServiceApiMapping"}}},"required":["meta","data"]}}}},"BadRequest":{"description":"Bad Request","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/BadRequestError"}}}},"Unauthorized":{"description":"Unauthorized","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/UnauthorizedError"},"examples":{"UnauthorizedExample":{"$ref":"#/components/examples/UnauthorizedExample"}}}}},"Forbidden":{"description":"Forbidden","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ForbiddenError"},"examples":{"UnauthorizedExample":{"$ref":"#/components/examples/ForbiddenExample"}}}}},"NotFound":{"description":"Not Found","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/NotFoundError"},"examples":{"NotFoundExample":{"$ref":"#/components/examples/NotFoundExample"}}}}},"Conflict":{"description":"Conflict","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ConflictError"}}}},"Internal":{"description":"Internal","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/BaseError"}}}},"UnsupportedMediaType":{"description":"Unsupported Media Type","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/UnsupportedMediaTypeError"},"examples":{"UnsupportedMediaTypeExample":{"$ref":"#/components/examples/UnsupportedMediaTypeExample"}}}}}},"schemas":{"CreateCatalogService":{"type":"object","additionalProperties":false,"required":["name","display_name"],"properties":{"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service.","nullable":true,"maxLength":2048},"labels":{"$ref":"#/components/schemas/Labels"},"custom_fields":{"$ref":"#/components/schemas/CustomFields"}}},"CatalogServiceSuggestion":{"type":"object","additionalProperties":false,"required":["name","display_name"],"properties":{"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service."},"labels":{"$ref":"#/components/schemas/LabelsSuggestion"},"metadata":{"$ref":"#/components/schemas/CustomFieldsSuggestion"}}},"UpdateCatalogService":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service.","nullable":true,"maxLength":2048},"labels":{"$ref":"#/components/schemas/LabelsUpdate"},"custom_fields":{"$ref":"#/components/schemas/CustomFields"}}},"CatalogServiceFilterParameters":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/UuidFieldFilter"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"custom_fields":{"description":"Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"},{"$ref":"#/components/schemas/BooleanFieldFilter"},{"$ref":"#/components/schemas/NumericFieldFilter"}]},"labels":{"$ref":"#/components/schemas/LabelsFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CatalogService":{"title":"CatalogService","description":"The service object contains information about a Service Catalog service.","type":"object","required":["id","name","display_name","description","custom_fields","labels","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The service ID.","readOnly":true},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service.","nullable":true,"maxLength":2048},"custom_fields":{"$ref":"#/components/schemas/CustomFields"},"labels":{"$ref":"#/components/schemas/Labels"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"CreateCatalogServiceApiSpec":{"type":"object","additionalProperties":false,"required":["name","description","provider"],"properties":{"name":{"type":"string","description":"The name of the API","minLength":1,"maxLength":120,"example":"Pet Store"},"description":{"type":"string","description":"The description of the API","nullable":true,"maxLength":2048,"example":"A sample API that uses a pet store as an example to demonstrate features in the OpenAPI specification\n"},"provider":{"title":"CreateApiSpecProvider","description":"Represents the provider, or source, of an API spec","oneOf":[{"$ref":"#/components/schemas/UrlApiSpecProvider"},{"$ref":"#/components/schemas/RawApiSpecProviderPayload"},{"$ref":"#/components/schemas/IntegrationApiSpecProviderPayload"},{"$ref":"#/components/schemas/ResourceBoundIntegrationApiSpecProviderPayload"}]}}},"UpdateCatalogServiceApiSpec":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"The name of the API","minLength":1,"maxLength":120,"example":"Pet Store"},"description":{"type":"string","description":"The description of the API","nullable":true,"maxLength":2048,"example":"A sample API that uses a pet store as an example to demonstrate features in the OpenAPI specification\n"},"provider":{"title":"CreateApiSpecProvider","description":"Represents the provider, or source, of an API specs.\nNote that `provider` cannot be patched for API specs that are bound to a resource.\nTrying to do so will result in a 400 response.\n","oneOf":[{"$ref":"#/components/schemas/UrlApiSpecProvider"},{"$ref":"#/components/schemas/RawApiSpecProviderPayload"},{"$ref":"#/components/schemas/IntegrationApiSpecProviderPayload"},{"$ref":"#/components/schemas/ResourceBoundIntegrationApiSpecProviderPayload"}]}}},"PreviewCatalogServiceApiSpec":{"type":"object","additionalProperties":false,"required":["provider"],"properties":{"provider":{"title":"CreateApiSpecProvider","description":"Represents the provider, or source, of an API spec","oneOf":[{"$ref":"#/components/schemas/UrlApiSpecProvider"},{"$ref":"#/components/schemas/RawApiSpecProviderPayload"},{"$ref":"#/components/schemas/IntegrationApiSpecProviderPayload"},{"$ref":"#/components/schemas/ResourceBoundIntegrationApiSpecProviderPayload"}]}}},"CatalogServiceApiSpecFilterParameters":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"}}},"CatalogServiceApiSpec":{"type":"object","required":["id","service_id","name","description","resource_id","provider","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","example":"eadb88fe-e8eb-45c2-9591-dc783f93f29b","description":"The API spec ID"},"service_id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The ID of the service the API spec is associated to."},"name":{"type":"string","description":"The name of the API","minLength":1,"maxLength":120,"example":"Pet Store"},"description":{"type":"string","description":"The description of the API.","nullable":true,"maxLength":2048,"example":"A sample API that uses a pet store as an example to demonstrate features in the OpenAPI specification.\n"},"resource_id":{"type":"string","nullable":true,"description":"The ID of the Resource that is bound to the API spec.\nOnly set when the given `provider.type` requires a 1-to-1 mapping between Resource\nand API Spec.\n","example":"IqkHvMdyHukxcwAs"},"provider":{"title":"ApiSpecProvider","description":"Represents the provider, or source, of API spec contents.","x-convert-oneOf":true,"anyOf":[{"$ref":"#/components/schemas/UrlApiSpecProvider"},{"$ref":"#/components/schemas/RawApiSpecProvider"},{"$ref":"#/components/schemas/IntegrationApiSpecProvider"},{"$ref":"#/components/schemas/ResourceBoundIntegrationApiSpecProvider"}]},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"ApiSpecContents":{"title":"ApiSpecContents","description":"Represents raw API spec contents","type":"object","additionalProperties":true,"example":{"openapi":"3.0.0","info":{"version":"1.0.0","title":"Swagger Petstore"},"servers":[{"url":"http://petstore.swagger.io/v1"}],"paths":{}}},"ApiSpecContentsYaml":{"title":"ApiSpecContentsYaml","description":"Represents raw API spec contents","type":"string"},"RawApiSpecProvider":{"type":"object","required":["type","config"],"properties":{"type":{"type":"string","enum":["raw"]},"config":{"type":"object","additionalProperties":false,"minProperties":0,"maxProperties":0}}},"RawApiSpecProviderPayload":{"type":"object","properties":{"type":{"type":"string","enum":["raw"]},"config":{"title":"RawApiSpecProviderConfig","type":"object","additionalProperties":false,"properties":{"contents":{"type":"string","description":"Raw API spec file contents.\nSupports JSON or YAML format.\nRaw specs have a maximum size limit of 8mb.\n","example":"{\"openapi\":\"3.0.0\",\"info\":{\"version\":\"1.0.0\",\"title\":\"Swagger Petstore\",\"license\":{\"name\":\"MIT\"}},\"servers\":[{\"url\":\"http://petstore.swagger.io/v1\"}],\"paths\":{\"/pets\":{\"get\":{\"summary\":\"List all pets\",\"operationId\":\"listPets\",\"tags\":[\"pets\"],\"parameters\":[{\"name\":\"limit\",\"in\":\"query\",\"description\":\"How many items to return at one time (max 100)\",\"required\":false,\"schema\":{\"type\":\"integer\",\"maximum\":100,\"format\":\"int32\"}}],\"responses\":{\"200\":{\"description\":\"A paged array of pets\",\"headers\":{\"x-next\":{\"description\":\"A link to the next page of responses\",\"schema\":{\"type\":\"string\"}}},\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Pets\"}}}},\"default\":{\"description\":\"unexpected error\",\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Error\"}}}}}},\"post\":{\"summary\":\"Create a pet\",\"operationId\":\"createPets\",\"tags\":[\"pets\"],\"requestBody\":{\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Pet\"}}},\"required\":true},\"responses\":{\"201\":{\"description\":\"Null response\"},\"default\":{\"description\":\"unexpected error\",\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Error\"}}}}}}},\"/pets/{petId}\":{\"get\":{\"summary\":\"Info for a specific pet\",\"operationId\":\"showPetById\",\"tags\":[\"pets\"],\"parameters\":[{\"name\":\"petId\",\"in\":\"path\",\"required\":true,\"description\":\"The id of the pet to retrieve\",\"schema\":{\"type\":\"string\"}}],\"responses\":{\"200\":{\"description\":\"Expected response to a valid request\",\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Pet\"}}}},\"default\":{\"description\":\"unexpected error\",\"content\":{\"application/json\":{\"schema\":{\"$ref\":\"#/components/schemas/Error\"}}}}}}}},\"components\":{\"schemas\":{\"Pet\":{\"type\":\"object\",\"required\":[\"id\",\"name\"],\"properties\":{\"id\":{\"type\":\"integer\",\"format\":\"int64\"},\"name\":{\"type\":\"string\"},\"tag\":{\"type\":\"string\"}}},\"Pets\":{\"type\":\"array\",\"maxItems\":100,\"items\":{\"$ref\":\"#/components/schemas/Pet\"}},\"Error\":{\"type\":\"object\",\"required\":[\"code\",\"message\"],\"properties\":{\"code\":{\"type\":\"integer\",\"format\":\"int32\"},\"message\":{\"type\":\"string\"}}}}}}\n"}},"required":["contents"]}},"required":["type","config"]},"UrlApiSpecProvider":{"type":"object","required":["type","config"],"properties":{"type":{"type":"string","enum":["url"]},"config":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Public URL that resolves to the raw API spec contents.\nSupported formats are JSON and YAML.\n","example":"https://api.petstore.com/v3/openapi.json"}}}}},"IntegrationApiSpecProviderPayload":{"description":"API spec provider registered by a catalog integration.\n\nIntegrations can function as API spec providers where they register a globally unique\n`type` and config schema which defines the shape of `config`.\n\nConsult integration documentation to learn more about available API spec providers.\n","type":"object","required":["type","config","integration_instance"],"properties":{"type":{"type":"string","description":"The globally unique API spec provider type that is registered by a given catalog integration.","minLength":1,"maxLength":120,"example":"swaggerhub_api_version"},"config":{"type":"object","additionalProperties":true,"minProperties":1,"description":"JSON object containing values as defined by integration provider's config schema.","example":{"owner":"petco","api":"pet_store","version":"v3"}},"integration_instance":{"type":"string","description":"The integration instance id or name"}}},"IntegrationApiSpecProvider":{"description":"API spec provider registered by a catalog integration.\n\nIntegrations can function as API spec providers where they register a globally unique\n`type` and config schema which defines the shape of `config`.\n\nConsult integration documentation to learn more about available API spec providers.\n","type":"object","required":["type","config","integration"],"properties":{"type":{"type":"string","description":"The globally unique API spec provider type that is registered by a given catalog integration.","minLength":1,"maxLength":120,"example":"swaggerhub_api_version"},"config":{"type":"object","additionalProperties":true,"minProperties":1,"description":"JSON object containing values as defined by integration provider's config schema.","example":{"owner":"petco","api":"pet_store","version":"v3"}},"integration":{"$ref":"#/components/schemas/IntegrationRef"}}},"ResourceBoundIntegrationApiSpecProvider":{"description":"API spec provider registered by a catalog integration.\n\nThese providers differ from `IntegrationApiSpecProvider` in that they\ndenote a binding relationship between a resource type and the API spec.\nThis means that the API Spec will automatically be created/deleted for/from a service\nas resources of the given type are mapped/unmapped.\n\nConsult integration documentation to learn more about available API spec providers.\n","type":"object","required":["type","config","integration"],"properties":{"type":{"type":"string","description":"The globally unique API spec provider type that is registered by a given catalog integration.\nResource-bound providers create a 1-to-1 mapping between a resource type and the API Spec.\n","minLength":1,"maxLength":120},"config":{"type":"object","required":["resource_id"],"properties":{"resource_id":{"type":"string","description":"ID of the associated Resource the API spec is bound to.","example":"IqkHvMdyHukxcwAs"}}},"integration":{"$ref":"#/components/schemas/IntegrationRef"}}},"ResourceBoundIntegrationApiSpecProviderPayload":{"description":"API spec provider registered by a catalog integration.\n\nThese providers differ from `IntegrationApiSpecProvider` in that they\ndenote a binding relationship between a resource type and the API spec.\nThis means that the API Spec will automatically be created/deleted for/from a service\nas resources of the given type are mapped/unmapped.\n\nConsult integration documentation to learn more about available API spec providers.\n","type":"object","required":["type","config"],"properties":{"type":{"type":"string","description":"The globally unique API spec provider type that is registered by a given catalog integration.\nResource-bound providers create a 1-to-1 mapping between a resource type and the API Spec.\n","minLength":1,"maxLength":120},"config":{"type":"object","required":["resource_id"],"properties":{"resource_id":{"type":"string","description":"ID of the associated Resource the API spec is bound to.","example":"IqkHvMdyHukxcwAs"}}}}},"CatalogIntegrationFilterParameters":{"type":"object","x-property-annotations":{"visibility":["x-internal","x-unstable"]},"properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"visibility":{"$ref":"#/components/schemas/StringFieldFilter"}}},"CatalogIntegration":{"type":"object","required":["built_in","name","display_name","version","authorization","config_schema","resource_types","discovery","api_spec_provider","events","visibility"],"x-property-annotations":{"incident_provider":["x-internal","x-unstable"],"on_call_provider":["x-internal","x-unstable"],"pull_request_provider":["x-internal","x-unstable"],"workflow_provider":["x-internal","x-unstable"]},"properties":{"name":{"type":"string","description":"The machine name of the integration that uniquely identifies it within the catalog.","example":"gateway-manager","readOnly":true},"display_name":{"type":"string","description":"The display name of the integration.","example":"Gateway Manager"},"description":{"type":"string","description":"The description of the integration."},"built_in":{"type":"boolean","description":"Denotes whether the integration is built-in to the catalog.\nBuilt-in integrations are always connected and available by default.\n","example":true,"readOnly":true},"version":{"type":"string","description":"The integration version.","example":"v1","readOnly":true},"visibility":{"type":"string","description":"The visibility of the integration.","enum":["public","private"],"example":"public"},"authorization":{"$ref":"#/components/schemas/CatalogIntegrationAuthorization"},"config_schema":{"$ref":"#/components/schemas/CatalogIntegrationConfigSchema"},"resource_types":{"$ref":"#/components/schemas/CatalogIntegrationResourceTypes"},"discovery":{"$ref":"#/components/schemas/CatalogIntegrationDiscovery"},"api_spec_provider":{"$ref":"#/components/schemas/CatalogIntegrationApiSpecProvider"},"events":{"$ref":"#/components/schemas/CatalogIntegrationEvents"},"incident_provider":{"$ref":"#/components/schemas/CatalogIntegrationIncidentProvider"},"on_call_provider":{"$ref":"#/components/schemas/CatalogIntegrationOnCallProvider"},"pull_request_provider":{"$ref":"#/components/schemas/CatalogIntegrationPullRequestProvider"},"workflow_provider":{"$ref":"#/components/schemas/CatalogIntegrationWorkflowProvider"}}},"CatalogIntegrationAuthorization":{"x-convert-oneOf":true,"anyOf":[{"type":"object","nullable":true},{"$ref":"#/components/schemas/OAuth"},{"$ref":"#/components/schemas/MultiKeyAuth"},{"$ref":"#/components/schemas/GitHubAppInstallationAuth"}],"title":"CatalogIntegrationAuthorization","description":"Defines the authorization strategy for an integration."},"OAuth":{"type":"object","description":"Defines the OAuth 2.0 authorization strategy used by an integration.\nThis schema provides all necessary information for the platform to initiate\nand manage OAuth-based authorization flows on behalf of customers.\n","required":["type","config"],"properties":{"type":{"type":"string","enum":["oauth"],"x-terraform-transform-const":true},"overridable_config":{"description":"A list of field names from the `config` object (e.g., `client_id`, `authorization_endpoint`, etc)\nthat can be overridden on a per-customer basis. When a field is listed here, the catalog allows\ncustomer-defined values to take precedence over the default configuration provided by the integration.\nThis supports flexible deployment models, including both SaaS-based and self-hosted OAuth authorization flows.\n","type":"array","items":{"type":"string","enum":["client_id","client_secret","authorization_endpoint","token_endpoint"]}},"config":{"type":"object","required":["grant_type","client_id","authorization_endpoint","token_endpoint","scope","rolling_refresh_exp_seconds"],"properties":{"grant_type":{"type":"string","enum":["authorization_code"],"description":"The OAuth 2.0 grant type used for authorization (e.g., `authorization_code`).\nDetermines the flow the integration uses to request access tokens.\n"},"client_id":{"type":"string","example":"d745213a-b7e8-4998-abe3-41f164001970","description":"The OAuth client identifier registered with the integration provider."},"authorization_endpoint":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://identity.service.com/oauth/authorize","description":"The URL where users are redirected to authorize access."}}},"token_endpoint":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://identity.service.com/oauth/token","description":"The URL used to retrieve access tokens."}}},"scope":{"type":"array","items":{"type":"string"},"example":["read","write"],"description":"A list of permission scopes requested by the integration.\nDefines what level of access the token will grant.\n"},"scope_delimiter":{"type":"string","default":" ","description":"A string used to separate multiple scopes in the `scope` parameter.\n"},"rolling_refresh_exp_seconds":{"type":"number","nullable":true,"description":"Number of seconds before the refresh token grant can no longer be used to mint\na new access token. Once expired clients must re-authenticate to restart the\nwindow interval.\n","example":15780000}}}}},"MultiKeyAuth":{"type":"object","description":"Defines an authentication strategy based on one or more API keys passed via HTTP headers.\nThis strategy supports integrations that require custom headers for credential-based access,\nallowing flexibility across providers with different authentication header requirements.\n","required":["type","config"],"properties":{"type":{"type":"string","enum":["multi_key_auth"],"x-terraform-transform-const":true},"config":{"type":"object","required":["headers"],"properties":{"headers":{"type":"array","minItems":1,"description":"A list of header definitions used to transmit API credentials to the integration's external API.\nEach header represents a unique key required by the provider.\n","items":{"type":"object","title":"KeyAuthHeader","required":["name","display_name","description"],"properties":{"name":{"description":"The exact name of the HTTP request header where the credential should be inserted.","type":"string","example":"X-API-Key"},"display_name":{"description":"An optional user-friendly label for the key, used in UI forms to guide users.","type":"string","example":"API Key","nullable":true},"description":{"description":"An optional brief explanation of the purpose or usage of the key.","type":"string","nullable":true}}}}}}}},"GitHubAppInstallationAuth":{"type":"object","description":"Defines the GitHub App authorization strategy used by the GitHub integration.\nThis strategy enables secure access to GitHub APIs using app installation tokens.\nIt supports both API-based interactions and real-time event delivery via GitHub webhooks.\nUnlike standard OAuth flows, this strategy leverages GitHub's custom app installation flow\nand token lifecycle, making it ideal for deep, organization-level GitHub integration.\n","required":["type","config"],"properties":{"type":{"type":"string","enum":["github_app_installation"],"x-terraform-transform-const":true},"config":{"type":"object","required":["app_install_url","app_manage_url","authorize_app_installation_endpoint","pending_app_installs_endpoint"],"properties":{"app_install_url":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://global.api.konghq.com/service-catalog-integrations/github/app/install","description":"The URL where customers are directed to install the GitHub App into their\nGitHub organization.\n"}}},"app_manage_url":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://global.api.konghq.com/service-catalog-integrations/github/app/manage","description":"The GitHub App management page URL where users can view, configure, or uninstall the app after installation."}}},"authorize_app_installation_endpoint":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://global.api.konghq.com/service-catalog-integrations/github/app/authorize-installation","description":"The endpoint used to link a completed GitHub App installation with a customer account in the catalog.\nThis step finalizes the integration by exchanging metadata from the GitHub installation event.\n"}}},"pending_app_installs_endpoint":{"type":"object","additionalProperties":false,"required":["url"],"properties":{"url":{"type":"string","format":"uri","example":"https://global.api.konghq.com/service-catalog-integrations/github/app/pending-installs","description":"The endpoint used to return a list of in-progress or unlinked GitHub App installations awaiting user confirmation.\n"}}}}}}},"CatalogIntegrationConfigSchema":{"description":"Defines the configuration schema for the integration.","additionalProperties":{"x-convert-oneOf":true,"anyOf":[{"type":"object","nullable":true},{"$ref":"#/components/schemas/StringConfigFieldSchema"},{"$ref":"#/components/schemas/EnumConfigFieldSchema"},{"$ref":"#/components/schemas/BooleanConfigFieldSchema"}]},"example":{"base_url":{"type":"string","display_name":"Base URL","description":"The customer-specific API URL","required":true}}},"StringConfigFieldSchema":{"type":"object","properties":{"display_name":{"type":"string","description":"user-friendly name of the configuration field."},"description":{"type":"string","description":"Optional brief description of the configuration field."},"required":{"type":"boolean","description":"Denotes whether the config field is a required value.","default":false},"mutable_condition":{"$ref":"#/components/schemas/MutableCondition"},"type":{"type":"string","description":"The field type of the config value.","enum":["string"]},"default":{"type":"string","description":"The default value for the config field."}},"title":"StringConfigFieldSchema","description":"Defines a string value integration config field.","required":["type"]},"EnumConfigFieldSchema":{"type":"object","properties":{"display_name":{"type":"string","description":"user-friendly name of the configuration field."},"description":{"type":"string","description":"Optional brief description of the configuration field."},"required":{"type":"boolean","description":"Denotes whether the config field is a required value.","default":false},"mutable_condition":{"$ref":"#/components/schemas/MutableCondition"},"type":{"type":"string","description":"The field type of config value.","enum":["enum"]},"choices":{"type":"array","description":"List of enumerated choices that can be selected as the config field value.","items":{"type":"object","required":["value","display_name"],"properties":{"value":{"type":"string","description":"The value represented by this option."},"display_name":{"type":"string","description":"user-friendly name of the option."},"description":{"type":"string","description":"Optional brief description of the option."}}}},"default":{"type":"string","description":"The default value for the config field.\nMust reference the value of an option listed in `choices`.\n"}},"title":"EnumConfigFieldSchema","description":"Defines an enum value integration config field.","required":["type","choices"]},"BooleanConfigFieldSchema":{"type":"object","properties":{"display_name":{"type":"string","description":"user-friendly name of the configuration field."},"description":{"type":"string","description":"Optional brief description of the configuration field."},"required":{"type":"boolean","description":"Denotes whether the config field is a required value.","default":false},"mutable_condition":{"$ref":"#/components/schemas/MutableCondition"},"type":{"type":"string","description":"The field type of the config value.","enum":["boolean"]},"default":{"type":"boolean","description":"The default value for the config field."}},"title":"BooleanConfigFieldSchema","description":"Defines a boolean value integration config field.","required":["type"]},"MutableCondition":{"description":"Defines the condition under which this configuration field is allowed to be modified.\nWhen specified, the platform will restrict updates to this field unless the integration\nmeets the given condition.\n\nFor example, setting `mutable_condition: unauthorized` means the field can only be\nchanged while the integration is in an unauthorized state.\n","type":"string","enum":["unauthorized"]},"CatalogIntegrationResourceTypes":{"type":"object","description":"Defines the resource types that the integration manages within the catalog.\n\nThis schema is a key-value object where:\n  - Keys are globally unique, machine-readable identifiers for each resource type.\n  - Values are objects describing metadata about the resource type.\n\nThis declaration enables the platform to understand the structure, identity, and behavior of resources discovered by the integration.\nBy registering resource types, integrations communicate the kinds of entities they will ingest and maintain,\nallowing the catalog to enforce consistency, validation, and visibility across all integrations.\n","additionalProperties":{"type":"object","title":"ResourceType","x-property-annotations":{"resource_id_template":["x-internal","x-unstable"],"integration_data_schema":["x-internal","x-unstable"]},"required":["resource_id_template","schema","integration_data_schema"],"properties":{"display_name":{"type":"string","description":"The user-friendly resource type name."},"resource_id_template":{"type":"string","description":"Custom template used to generate a string that uniquely identifies a resource.\nThe template must include at least one key defined in the resource type schema definition, enclosed in double curly braces (e.g., `{{field_name}}`).\nThis template must not reference keys not required to identify the external resource.\n"},"schema":{"$ref":"#/components/schemas/SimpleSchema"},"integration_data_schema":{"$ref":"#/components/schemas/CatalogIntegrationResourceTypeIntegrationDataSchema"}}},"example":{"gateway_svc":{"display_name":"Gateway Service","schema":{"type":"simple","definition":{"control_plane_id":"string","gatway_service_id":"string"}},"resource_id_template":"{{control_plane_id}}:{{gateway_service_id}}","integration_data_schema":null},"analytics_dashboard":{"display_name":"Dashboard","schema":{"type":"simple","definition":{"dashboard_id":"string"}},"resource_id_template":"{{dashboard_id}}","integration_data_schema":null}}},"CatalogIntegrationResourceTypeIntegrationDataSchema":{"x-convert-oneOf":true,"anyOf":[{"title":"EmptySchema","type":"object","nullable":true},{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["simple"]},"definition":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean"]}}},"title":"CatalogIntegrationResourceTypeIntegrationDataSimpleSchema","description":"Defines the schema to validate incoming integration_data values for a resource type, on resource\ningestion, using simple schema.\nSet to `null` when the given resource type does not validate incoming integration_data.\n"},{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["json_schema"]},"definition":{"type":"object","additionalProperties":true}},"title":"CatalogIntegrationResourceTypeIntegrationDataJSONSchema","description":"Defines the schema to validate incoming integration_data values for a resource type, on resource\ningestion, using JSON schema.\nSet to `null` when the given resource type does not validate incoming integration_data.\n"}]},"CatalogIntegrationDiscovery":{"type":"object","description":"Defines how the integration participates in Discovery.\nDiscovery enables integrations to automatically ingest and update resources in the catalog.\n","nullable":true,"required":["resource_integration_data_examples"],"properties":{"resource_integration_data_examples":{"description":"A map of example resource `integration_data` payloads by resource type.\n\n  - Keys are the machine-readable, globally unique names of resource types registered by this integration.\n  - Values are example `integration_data` payloads.\n","type":"object","additionalProperties":{"type":"object","additionalProperties":true,"description":"An example `integration_data` payload for the given resource type."},"example":{"gateway_service":{"control_plane":{"id":"00000000-0000-0000-0000-000000000000","name":"dev-ext","labels":{"env":"development"}},"gateway_service":{"id":"11111111-1111-1111-1111-111111111111","name":"gateway-service","host":"konghq.com","path":"/example","type":"service","port":443,"protocol":"https","enabled":true}}}}}},"CatalogIntegrationApiSpecProvider":{"description":"Defines how an integration behaves as a source provider of Catalog Service API specs.\nAPI specs are entities that can be attached to Catalog Services.\nWhen an integration implements this capability, it can act as a source type for API spec contents.\nIn this role, the integration becomes the source of truth for the spec.\nWhen a spec is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the spec data.\nA null value indicates the given integration does not act as a source provider of API specs.\n","type":"object","nullable":true,"required":["name","display_name","description","config_schema","resource_type"],"properties":{"name":{"type":"string","example":"konnect_api","description":"The globally unique name of the API spec provider that identifies it within the catalog.\nCorresponds to the API spec provider `type` when creating API specs.\n"},"display_name":{"type":"string","example":"Konnect API","description":"A user-friendly name for the API spec provider."},"description":{"type":"string","description":"An brief description of the API spec provider."},"config_schema":{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["simple"]},"definition":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean"]}}},"description":"Defines the shape of the API spec provider config.","example":{"type":"simple","definition":{"api_id":"string"}}},"resource_type":{"type":"string","nullable":true,"description":"When non-null, denotes that the API spec provider is bound to the given Resource type.\nThis means that API specs are auto-created when a Resource of the given type is mapped to a service.\nFurthermore, it couples the lifecycle of the API Spec with the given Resource mapping.\nWhen the given Resource is removed, the API spec will be deleted.\n"}}},"CatalogIntegrationIncidentProvider":{"description":"Defines how an integration behaves as a source provider of Catalog Service Incidents.\nIncidents are entities that can be attached to Catalog Services via an integration's Resource mapping.\nWhen an integration implements this capability, it can act as a source type for Incident data.\nIn this role, the integration becomes the source of truth for the incident data.\nWhen an incident is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the incident data.\nA null value indicates the given integration does not act as a source provider of incidents.\n","type":"object","nullable":true,"x-internal":true,"x-unstable":true},"CatalogIntegrationOnCallProvider":{"description":"Defines how an integration behaves as a source provider of Catalog Service On-Call schedules.\nOn-Call schedules are entities that can be attached to Catalog Services via an integration's Resource mapping.\nWhen an integration implements this capability, it can act as a source type for On-Call data.\nIn this role, the integration becomes the source of truth for the on-call schedule data.\nWhen an on-call schedule is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the on-call schedule data.\nA null value indicates the given integration does not act as a source provider of on-call schedules.\n","type":"object","nullable":true,"x-internal":true,"x-unstable":true},"CatalogIntegrationPullRequestProvider":{"description":"Defines how an integration behaves as a source provider of Catalog Service Pull Requests.\nPull Requests are entities that can be attached to Catalog Services via an integration's Resource mapping.\nWhen an integration implements this capability, it can act as a source type for Pull Request data.\nIn this role, the integration becomes the source of truth for the pull request data.\nWhen a pull request is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the pull request data.\nA null value indicates the given integration does not act as a source provider of pull requests.\n","type":"object","nullable":true,"x-internal":true,"x-unstable":true},"CatalogIntegrationWorkflowProvider":{"description":"Defines how an integration behaves as a source provider of Catalog Service Workflows.\nWorkflows are entities that can be attached to Catalog Services via an integration's Resource mapping.\nWhen an integration implements this capability, it can act as a source type for Workflow data.\nIn this role, the integration becomes the source of truth for the workflow data.\nWhen a workflow is attached to a Catalog Service using this source type, the platform relies on the external system to provide and update the workflow data.\nA null value indicates the given integration does not act as a source provider of workflows.\n","type":"object","nullable":true,"x-internal":true,"x-unstable":true},"CatalogIntegrationEvents":{"description":"Defines the event types across all resource types belonging to the integration that will be ingested into the catalog.\n\n  - Keys are the machine-readable, globally unique names of resource types registered by this integration.\n  - Values are a map of event type definitions.\n","type":"object","nullable":true,"additionalProperties":{"$ref":"#/components/schemas/IntegrationResourceEvents"},"example":{"gateway_svc":{"plugin_added":{"display_name":"Plugin Added","description":"Event triggered when a new plugin is added to a gateway service.","events_feed":{"enabled":true}}}}},"IntegrationResourceEvents":{"description":"Defines the event types for a given resource type belonging to the integration that will be ingested in the catalog.\n\n  - Keys are the machine-readable, globally unique names of resource types registered by this integration.\n  - Values are the event type definition.\n","type":"object","additionalProperties":{"$ref":"#/components/schemas/IntegrationResourceEvent"}},"IntegrationResourceEvent":{"description":"Defines a registered event type for a given resource.","type":"object","required":["display_name","description","events_feed"],"properties":{"display_name":{"type":"string","description":"User-friendly display name for the event type."},"description":{"type":"string","description":"Optional, brief description of the integration event type.","nullable":true},"events_feed":{"type":"object","required":["enabled"],"properties":{"enabled":{"type":"boolean","description":"Whether this event type is returned by default in the Events API."}}}}},"CreateCatalogIntegration":{"oneOf":[{"$ref":"#/components/schemas/CreatePrivateCatalogIntegration"}]},"CreatePrivateCatalogIntegration":{"type":"object","additionalProperties":false,"required":["visibility","resource_types","description","display_name"],"properties":{"visibility":{"type":"string","enum":["private"]},"resource_types":{"$ref":"#/components/schemas/CatalogIntegrationResourceTypes"},"description":{"type":"string","description":"Description of the integration.","maxLength":2048},"display_name":{"type":"string","description":"The display name of the integration.","minLength":1,"maxLength":120,"example":"My Integration"}}},"UpdateCatalogIntegration":{"type":"object","additionalProperties":false,"properties":{"description":{"type":"string","description":"Description of the integration.","maxLength":2048},"display_name":{"type":"string","description":"The display name of the catalog integration.","minLength":1,"maxLength":120,"example":"Updated Catalog Integration"}}},"CreateIntegrationInstance":{"type":"object","additionalProperties":false,"required":["integration_name","name","display_name","config"],"properties":{"integration_name":{"type":"string","description":"The type of integration instance to create.","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"aws-lambda"},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"aws-lambda-prod"},"display_name":{"type":"string","description":"The display name of the integration instance.","minLength":1,"maxLength":120,"example":"AWS (prod)"},"description":{"type":"string","description":"Optionally provide a description of the integration instance.","nullable":true,"maxLength":2048},"config":{"$ref":"#/components/schemas/IntegrationInstanceConfig"}}},"UpdateIntegrationInstance":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"aws-lambda-prod"},"display_name":{"type":"string","description":"The display name of the integration instance.","minLength":1,"maxLength":120,"example":"AWS (prod)"},"description":{"type":"string","description":"Optionally provide a description of the integration instance.","nullable":true,"maxLength":2048},"config":{"$ref":"#/components/schemas/IntegrationInstanceConfig"}}},"IntegrationInstanceFilterParameters":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"authorized":{"$ref":"#/components/schemas/BooleanFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"IntegrationInstance":{"description":"Information about an integration instance.","type":"object","required":["id","name","display_name","description","integration","authorized","config","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","example":"3f51fa25-310a-421d-bd1a-007f859021a3","description":"The integration instance ID.","readOnly":true},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"aws-lambda-prod"},"display_name":{"type":"string","description":"The display name of the integration instance.","minLength":1,"maxLength":120,"example":"AWS (prod)"},"description":{"type":"string","description":"The description of the integration instance.","nullable":true,"maxLength":2048},"integration":{"$ref":"#/components/schemas/IntegrationRefWithoutInstance"},"authorized":{"type":"boolean","description":"Denotes whether the integration instance has been authorized within the catalog.","example":true,"readOnly":true},"config":{"$ref":"#/components/schemas/IntegrationInstanceConfig"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"IntegrationInstanceConfig":{"type":"object","x-speakeasy-type-override":"any","description":"JSON object representing configuration specific to the integration instance.\nThe expected schema depends on the integration type and is dynamically registered at runtime.\n","additionalProperties":true,"default":{},"example":{"account_region":"eu"}},"CreateIntegrationInstanceAuthCredential":{"title":"CreateIntegrationInstanceAuthCredential","oneOf":[{"$ref":"#/components/schemas/CreateOAuthCredential"},{"$ref":"#/components/schemas/CreateGitHubAppInstallationCredential"},{"$ref":"#/components/schemas/CreateMultiKeyAuthCredential"},{"$ref":"#/components/schemas/CreateAWSRoleDelegationAuthCredential"}]},"IntegrationInstanceAuthCredential":{"title":"IntegrationInstanceAuthCredential","description":"Object containing metadata for an integration instance auth credential.","oneOf":[{"$ref":"#/components/schemas/OAuthCredential"},{"$ref":"#/components/schemas/GitHubAppInstallationCredential"},{"$ref":"#/components/schemas/MultiKeyAuthCredential"},{"$ref":"#/components/schemas/AWSRoleDelegationAuthCredential"}]},"CreateOAuthCredential":{"type":"object","description":"Payload used to create an `OAuth` credential for an integration instance.","additionalProperties":false,"required":["type","config"],"properties":{"type":{"type":"string","enum":["oauth"],"x-terraform-transform-const":true},"config":{"type":"object","title":"CreateOAuthCredentialConfig","additionalProperties":false,"required":["grant_type","code","redirect_uri"],"properties":{"grant_type":{"type":"string","description":"The OAuth 2.0 grant type used for authorization (e.g., `authorization_code`).","enum":["authorization_code"]},"code":{"type":"string","description":"The authorization code used to exchange for an access token with the identity server.","example":"Yzk5ZDczMzRlNDEwY"},"redirect_uri":{"type":"string","format":"uri","description":"The redirect URI submitted to the authorization server during the authentication request\nto retrieve the authorization code.\n","example":"https://cloud.konghq.com/us/service-catalog/integrations/pagerduty/oauth"}}}}},"CreateGitHubAppInstallationCredential":{"type":"object","description":"Payload used to create an `GitHub App Installation` credential for an integration instance.","additionalProperties":false,"required":["type","config"],"properties":{"type":{"type":"string","enum":["github_app_installation"],"x-terraform-transform-const":true},"config":{"type":"object","title":"CreateGitHubAppInstallationCredentialConfig","additionalProperties":false,"required":["installation_id","code"],"properties":{"installation_id":{"type":"string","description":"The GitHub App installation ID.","example":"46952218"},"code":{"type":"string","description":"The authorization code used to exchange for a GitHub user-scoped access token.","example":"Yzk5ZDczMzRlNDEwY"},"app_installed_by":{"type":"string","description":"The GitHub user who installed the app"}}}}},"CreateMultiKeyAuthCredential":{"writeOnly":true,"x-speakeasy-name-override":"multi_key_auth","type":"object","description":"Payload used to create an `Multi Key` credential for an integration instance.","additionalProperties":false,"required":["type","config"],"properties":{"type":{"type":"string","enum":["multi_key_auth"],"x-terraform-transform-const":true},"config":{"x-speakeasy-param-suppress-computed-diff":true,"x-speakeasy-param-force-new":true,"type":"object","title":"CreateMultiKeyAuthCredentialConfig","additionalProperties":false,"required":["headers"],"properties":{"headers":{"type":"array","description":"A list of header key/value pairs used to transmit API credentials to the integration's external API.\nHeader names are defined by the integration within its `Multi Key` authorization strategy definition.\n","items":{"type":"object","required":["name","key"],"properties":{"name":{"description":"Name of the request header","type":"string"},"key":{"description":"The key used to populate the request header","type":"string"}}},"example":[{"name":"x-api-key","key":"9f2a3b4c8d6e7f00112233445566778899aabbccddeeff001122334455667788"}]}}}}},"CreateAWSRoleDelegationAuthCredential":{"type":"object","description":"Payload used to create an `AWS Role Delegation` credential for an integration instance.","additionalProperties":false,"required":["type","config"],"properties":{"type":{"type":"string","enum":["aws_role_delegation"]},"config":{"type":"object","title":"CreateAWSRoleDelegationAuthCredentialConfig","additionalProperties":false,"required":["role_arn"],"properties":{"role_arn":{"type":"string","description":"The AWS Role ARN string\n","example":"arn:aws:iam::084735895545:role/KonnectServiceCatalogRole"}}}}},"OAuthCredential":{"x-speakeasy-param-suppress-computed-diff":true,"type":"object","required":["id","integration_instance","missing_permissions","tainted","expires_at","created_at","type"],"properties":{"id":{"type":"string","format":"uuid","example":"4f535923-ec24-456c-b4e5-e67f65c8c208"},"integration_instance":{"$ref":"#/components/schemas/IntegrationInstanceRef"},"missing_permissions":{"type":"array","description":"List of detected missing permissions required to enable the full functionality of the given integration instance.","items":{"$ref":"#/components/schemas/MissingPermission"}},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential.","example":false},"expires_at":{"type":"string","format":"date-time","nullable":true,"example":"2025-04-01T07:20:50Z","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n\nA `null` value indicates no known expiration time.\n"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"type":{"type":"string","enum":["oauth"],"x-terraform-transform-const":true}},"title":"OAuthCredential","x-speakeasy-name-override":"Oauth","description":"Represents a credential scoped to an integration instance that supports the `OAuth` authorization strategy."},"GitHubAppInstallationCredential":{"x-speakeasy-param-suppress-computed-diff":true,"type":"object","required":["id","integration_instance","missing_permissions","tainted","expires_at","created_at","type","config"],"properties":{"id":{"type":"string","format":"uuid","example":"4f535923-ec24-456c-b4e5-e67f65c8c208"},"integration_instance":{"$ref":"#/components/schemas/IntegrationInstanceRef"},"missing_permissions":{"type":"array","description":"List of detected missing permissions required to enable the full functionality of the given integration instance.","items":{"$ref":"#/components/schemas/MissingPermission"}},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential.","example":false},"expires_at":{"type":"string","format":"date-time","nullable":true,"example":"2025-04-01T07:20:50Z","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n\nA `null` value indicates no known expiration time.\n"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"type":{"type":"string","enum":["github_app_installation"],"x-terraform-transform-const":true},"config":{"title":"GitHubAppInstallationCredentialConfig","type":"object","required":["installation_id","app_installed_by"],"properties":{"installation_id":{"type":"string","description":"The GitHub App installation ID"},"app_installed_by":{"type":"string","description":"The GitHub user who installed the app.","nullable":true}}}},"title":"GitHubAppInstallationCredential","x-speakeasy-name-override":"GithubAppInstallation","description":"Represents a credential scoped to an integration instance that supports the `GitHub App Installation` authorization strategy."},"MultiKeyAuthCredential":{"x-speakeasy-param-suppress-computed-diff":true,"type":"object","required":["id","integration_instance","missing_permissions","tainted","expires_at","created_at","type"],"properties":{"id":{"type":"string","format":"uuid","example":"4f535923-ec24-456c-b4e5-e67f65c8c208"},"integration_instance":{"$ref":"#/components/schemas/IntegrationInstanceRef"},"missing_permissions":{"type":"array","description":"List of detected missing permissions required to enable the full functionality of the given integration instance.","items":{"$ref":"#/components/schemas/MissingPermission"}},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential.","example":false},"expires_at":{"type":"string","format":"date-time","nullable":true,"example":"2025-04-01T07:20:50Z","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n\nA `null` value indicates no known expiration time.\n"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"type":{"type":"string","enum":["multi_key_auth"],"x-terraform-transform-const":true}},"title":"MultiKeyAuthCredential","description":"Represents a credential scoped to an integration instance that supports the `Multi Key` authorization strategy."},"AWSRoleDelegationAuthCredential":{"x-speakeasy-param-suppress-computed-diff":true,"type":"object","required":["id","integration_instance","missing_permissions","tainted","expires_at","created_at","type","config"],"properties":{"id":{"type":"string","format":"uuid","example":"4f535923-ec24-456c-b4e5-e67f65c8c208"},"integration_instance":{"$ref":"#/components/schemas/IntegrationInstanceRef"},"missing_permissions":{"type":"array","description":"List of detected missing permissions required to enable the full functionality of the given integration instance.","items":{"$ref":"#/components/schemas/MissingPermission"}},"tainted":{"type":"boolean","description":"Indicates that the credential is no longer valid and must be replaced with a new valid credential.","example":false},"expires_at":{"type":"string","format":"date-time","nullable":true,"example":"2025-04-01T07:20:50Z","description":"Timestamp denoting when the when the credential will expire in RFC-3339 format with a \"T\" character separating date from time within the field value.\nWhen expired, the credential must be replaced with a new valid credential to re-enable full functionality for the given integration instance.\n\nA `null` value indicates no known expiration time.\n"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"type":{"type":"string","enum":["aws_role_delegation"]},"config":{"title":"AWSRoleDelegationAuthCredentialConfig","type":"object","required":["role_arn"],"properties":{"role_arn":{"type":"string","description":"The Role ARN use for AWS Assume Role."}}}},"title":"AWSRoleDelegationAuthCredential","description":"Represents a credential scoped to an integration instance that supports the `AWS Role Delegation` authorization strategy."},"MissingPermission":{"type":"object","required":["scopes","message"],"properties":{"scopes":{"type":"array","items":{"type":"string","nullable":true},"example":["incident:read"]},"message":{"type":"string","description":"Describes the degraded experience of the integration instance due to the missing permission.\nMay also include a message on how to resolve the missing permission.\n"}}},"UpsertIntegrationInstanceAuthConfig":{"title":"UpsertIntegrationInstanceAuthConfig","oneOf":[{"$ref":"#/components/schemas/UpsertOAuthAuthConfig"}]},"IntegrationInstanceAuthConfig":{"title":"IntegrationInstanceAuthConfig","oneOf":[{"$ref":"#/components/schemas/OAuthAuthConfig"}]},"UpsertOAuthAuthConfig":{"title":"OAuth Config","x-speakeasy-name-override":"oauth_config","type":"object","additionalProperties":false,"required":["type","client_id","client_secret","authorization_endpoint","token_endpoint"],"properties":{"type":{"type":"string","enum":["oauth"],"x-terraform-transform-const":true},"client_id":{"type":"string","description":"The OAuth client identifier.","example":"d745213a-b7e8-4998-abe3-41f164001970"},"client_secret":{"type":"string","description":"The OAuth client secret.","example":"s3cr3t4p1cl13ntt0k3n1234567890abcdef","writeOnly":true},"authorization_endpoint":{"type":"string","format":"uri","description":"The URL where users are redirected to authorize access.","example":"https://identity.service.com/oauth/authorize"},"token_endpoint":{"type":"string","format":"uri","description":"The URL used to retrieve access tokens.","example":"https://identity.service.com/oauth/token"}}},"OAuthAuthConfig":{"x-speakeasy-name-override":"OauthAuthConfig","type":"object","required":["type","client_id","authorization_endpoint","token_endpoint"],"properties":{"type":{"type":"string","enum":["oauth"],"x-terraform-transform-const":true},"client_id":{"type":"string","description":"The OAuth client identifier.","example":"d745213a-b7e8-4998-abe3-41f164001970"},"authorization_endpoint":{"type":"string","format":"uri","description":"The URL where users are redirected to authorize access.","example":"https://identity.service.com/oauth/authorize"},"token_endpoint":{"type":"string","format":"uri","description":"The URL used to retrieve access tokens.","example":"https://identity.service.com/oauth/token"}}},"InitializeCatalogResource":{"type":"object","additionalProperties":false,"required":["type","config"],"properties":{"type":{"$ref":"#/components/schemas/CatalogResourceType"},"config":{"$ref":"#/components/schemas/CatalogResourceConfig"}}},"DeleteCatalogResources":{"type":"object","additionalProperties":false,"required":["data"],"properties":{"data":{"type":"array","minItems":1,"maxItems":100,"items":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string"}}}}}},"UpdateCatalogResource":{"type":"object","additionalProperties":false,"properties":{"archived":{"type":"boolean","example":false,"description":"Whether or not to archive the resource.\nWhen a resource is archived, all catalog service mappings will be removed.\n"}}},"UpsertCatalogResource":{"type":"object","additionalProperties":false,"required":["name","type","integration_data","config"],"properties":{"name":{"type":"string","description":"The name of the resource.","minLength":1,"maxLength":255},"type":{"$ref":"#/components/schemas/CatalogResourceType"},"config":{"$ref":"#/components/schemas/CatalogResourceConfig"},"integration_data":{"type":"object","description":"JSON object containing schemaless integration data of the resource.\nThis field is always populated by the system backing the integration.\n","additionalProperties":true}}},"CatalogResourceFilterParameters":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/UuidFieldFilter"}]},"integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"type":{"$ref":"#/components/schemas/StringFieldFilterExact"},"config":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceConfigFieldFilter"}]},"integration_data":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceIntegrationDataFieldFilter"}]},"archived":{"$ref":"#/components/schemas/BooleanFieldFilter"},"service_associations":{"$ref":"#/components/schemas/NumericFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CatalogResourceRefFilterParameters":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/UuidFieldFilter"}]},"integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"type":{"$ref":"#/components/schemas/StringFieldFilterExact"},"config":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceConfigFieldFilter"}]},"integration_data":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceIntegrationDataFieldFilter"}]},"service_associations":{"$ref":"#/components/schemas/NumericFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CatalogResourceConfigFieldFilter":{"description":"Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`","x-examples":{"example-1":{"contains":"some-value","ocontains":"this-value,or-that-value","oeq":"some-value,some-other-value","neq":"not-this-value"},"example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.","example":"?filter[field_name_here][eq]=foo"},"contains":{"type":"string","description":"The field contains the provided value.","example":"?filter[field_name_here][contains]=foo"},"ocontains":{"type":"string","description":"The field contains any of the provided values.","example":"?filter[field_name_here][ocontains]=foo,bar"},"oeq":{"type":"string","description":"The field matches any of the provided values.","example":"?filter[field_name_here][oeq]=foo,bar"},"neq":{"type":"string","description":"The field does not match the provided value.","example":"?filter[field_name_here][neq]=bar"}},"type":"object","additionalProperties":false},"CatalogResourceIntegrationDataFieldFilter":{"description":"Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`","x-examples":{"example-1":{"contains":"some-value","ocontains":"this-value,or-that-value","oeq":"some-value,some-other-value","neq":"not-this-value"},"example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.","example":"?filter[field_name_here][eq]=foo"},"contains":{"type":"string","description":"The field contains the provided value.","example":"?filter[field_name_here][contains]=foo"},"ocontains":{"type":"string","description":"The field contains any of the provided values.","example":"?filter[field_name_here][ocontains]=foo,bar"},"oeq":{"type":"string","description":"The field matches any of the provided values.","example":"?filter[field_name_here][oeq]=foo,bar"},"neq":{"type":"string","description":"The field does not match the provided value.","example":"?filter[field_name_here][neq]=bar"}},"type":"object","additionalProperties":false},"CatalogResource":{"description":"Information about a catalog resource.","type":"object","required":["id","name","integration","type","config","integration_data","archived","service_associations","created_at","updated_at"],"properties":{"id":{"$ref":"#/components/schemas/CatalogResourceId"},"name":{"type":"string","description":"The name of the resource.\nWill be `null` when the resource has not yet been hydrated by the integration.\n","nullable":true,"minLength":1,"maxLength":255},"integration":{"$ref":"#/components/schemas/IntegrationRef"},"type":{"$ref":"#/components/schemas/CatalogResourceType"},"config":{"$ref":"#/components/schemas/CatalogResourceConfig"},"integration_data":{"type":"object","nullable":true,"description":"JSON object containing schemaless integration data of the resource.\nThis field is always populated by the system backing the integration.\nWhen `null`, the resource has been manually initialized via API but has\nyet to be hydrated by the integration.\n","additionalProperties":true},"archived":{"type":"boolean","description":"Whether or not the resource has been archived.","example":false},"service_associations":{"readOnly":true,"type":"number","description":"The number of catalog services this resource is mapped to.","minimum":0,"example":2},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"CatalogResourceId":{"type":"string","format":"base64url","example":"4UdXnoaDYYJsH_Ir","description":"The resource ID.","minLength":16,"maxLength":16},"CatalogResourceConfig":{"x-speakeasy-type-override":"any","type":"object","description":"JSON object representing the properties used to identify the resource in the third-party system.\nThe schema depends on the resource type and is dynamically registered at runtime.\n","additionalProperties":true,"example":{"control_plane_id":"ccadfb0a-56cd-4f74-955d-aec1d87157c8","gateway_service_id":"94896d05-0c4d-45eb-aae3-de754885dd58"}},"CatalogResourceType":{"type":"string","description":"The resource type. Available resource types are compiled from the integrations installed within the catalog.\n","minLength":1,"maxLength":120,"example":"gateway_svc"},"CreateCatalogResourceMapping":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"type":"string","description":"The `id` or `name` of the service to map the resource to.","example":"user-svc","x-speakeasy-name-override":"service_id"},"resource":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceId"},{"$ref":"#/components/schemas/CreateCatalogResourceMappingResourceByConfig"}]}}},"CreateCatalogResourceMappingResourceByConfig":{"type":"object","title":"CreateCatalogResourceMappingResourceByConfig","additionalProperties":false,"required":["integration_instance","type","config"],"properties":{"integration_instance":{"type":"string","description":"The `id` or `name` of the integration instance the resource belongs to.","example":"aws-lambda-prod"},"type":{"$ref":"#/components/schemas/CatalogResourceType"},"config":{"$ref":"#/components/schemas/CatalogResourceConfig"}}},"CatalogResourceMappingFilterParameters":{"type":"object","properties":{"resource.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"resource.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"resource.type":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"resource.config":{"oneOf":[{"$ref":"#/components/schemas/CatalogResourceConfigFieldFilter"}]},"resource.integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"resource.integration.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"resource.integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/UuidFieldFilter"}]},"resource.integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"resource.integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"service.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"service.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"service.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CatalogResourceMapping":{"description":"Describes a mapping between a catalog resource and a service.","type":"object","required":["id","resource","service","created_at"],"properties":{"id":{"type":"string","format":"uuid","example":"d277faad-ed4e-4c56-a0fb-acce065dee34","description":"The resource mapping ID."},"resource":{"$ref":"#/components/schemas/CatalogResourceRef"},"service":{"$ref":"#/components/schemas/CatalogServiceRef"},"created_at":{"$ref":"#/components/schemas/CreatedAt"}}},"CriteriaTemplateFilterParameters":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"installed":{"$ref":"#/components/schemas/BooleanFieldFilter"},"integration_name":{"$ref":"#/components/schemas/StringFieldFilter"}}},"CriteriaTemplate":{"type":"object","description":"Representation of a criteria template.","required":["name","display_name","category","template_string","integration_name","installed","schema","required_integration_capability"],"properties":{"name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"display_name":{"type":"string","description":"The human-readable display name of the template."},"category":{"type":"string","enum":["Source Code Management","Incident Management","Observability","Code Quality","Issue Tracking","Communications","Feature Management","Security / Vulnerability","Documentation","Catalog Management","Gateway Configuration"],"nullable":true,"description":"Categorical tag for the functionality the template relates to.","example":"Source Code Management"},"template_string":{"type":"string","nullable":true,"description":"[Liquid](https://shopify.github.io/liquid/) template string used to render the criteria interpolated by parameters."},"integration_name":{"type":"string","nullable":true,"description":"The catalog integration who registered the given criteria template.\nThis will be `null` when a template is always available independent of connected integrations.\n"},"installed":{"type":"boolean","description":"Whether the template is available given the current state of the catalog.\nFor example, this will be `false` when the template is provided by an integrastion\nthat is not currently connected.\n"},"schema":{"$ref":"#/components/schemas/CriteriaTemplateSchema"},"required_integration_capability":{"type":"string","nullable":true,"enum":[null,"on_call_provider","incident_provider","pull_request_provider","workflow_provider"],"description":"Required capability from connected integrations to use this criteria template.\nApplicable for templates that are not provided by a given integration (functional\nacross integrations).\n"}}},"CriteriaTemplateSchema":{"x-convert-oneOf":true,"anyOf":[{"title":"EmptySchema","type":"object","nullable":true},{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["simple"]},"definition":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean"]}}},"title":"CriteriaTemplateSimpleSchema","description":"Defines the parameters required to evaluate the criteria using simple schema.\nSet to `null` when the given criteria does not rely on parameterization.\n"},{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["json_schema"]},"definition":{"type":"object","additionalProperties":true}},"title":"CriteriaTemplateJSONSchema","description":"Defines the parameters required to evaluate the criteria using JSON schema.\nSet to `null` when the given criteria does not rely on parameterization.\n"}]},"ScorecardTemplateFilterParameters":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"}}},"ScorecardTemplate":{"type":"object","description":"Representation of a scorecard template.","required":["name","display_name","description","criteria"],"properties":{"name":{"$ref":"#/components/schemas/ScorecardTemplateName"},"display_name":{"type":"string","example":"Kong Best Practices"},"description":{"type":"string","example":"Best practices that we encourage users to follow when using other Konnect applications."},"criteria":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardTemplateCriteria"},"example":[{"template_name":"gateway_manager_error_rate","template_parameters":{"relative_window":"30d"},"integration":"gateway_manager","section_name":"Gateway Observability"},{"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","relative_window":"30d"},"integration":"gateway_manager","section_name":"Gateway Observability"},{"template_name":"gateway_manager_has_plugin","template_parameters":{},"integration":"gateway_manager","section_name":"Plugin Management"}]}}},"ScorecardTemplateName":{"type":"string","description":"Well-known name of the template. Uniquely identifies the template.","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices"},"ScorecardTemplateCriteria":{"type":"object","required":["integration","template_name","template_parameters","section_name"],"properties":{"integration":{"type":"string","nullable":true,"description":"The integration `name` when it provides the criteria template. Otherwise `null`.","example":null},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"description":"Organizational section that the criteria belongs to within the scorecard template.","example":"Source Code Management"}}},"CreateScorecard":{"type":"object","additionalProperties":false,"required":["name","description","entity_selector","criteria","scorecard_template"],"properties":{"name":{"type":"string","description":"The human-readable name of the scorecard.","example":"Incident Response"},"description":{"type":"string","nullable":true,"example":"Governs key metrics pertaining to teams' incident response practices."},"entity_selector":{"$ref":"#/components/schemas/ScorecardEntitySelector"},"criteria":{"type":"array","minItems":1,"items":{"$ref":"#/components/schemas/CreateScorecardCriteria"}},"scorecard_template":{"type":"string","description":"The name of the scorecard template used to create the scorecard.\nOtherwise, `null`.\n","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices","nullable":true}}},"UpdateScorecard":{"type":"object","additionalProperties":false,"required":["name","description","entity_selector","criteria","scorecard_template"],"properties":{"name":{"type":"string","description":"The human-readable name of the scorecard.","example":"Incident Response"},"description":{"type":"string","nullable":true,"example":"Governs key metrics pertaining to teams' incident response practices."},"entity_selector":{"$ref":"#/components/schemas/ScorecardEntitySelector"},"criteria":{"type":"array","minItems":1,"items":{"oneOf":[{"$ref":"#/components/schemas/UpdateScorecardCriteria"},{"$ref":"#/components/schemas/CreateScorecardCriteria"}]}},"scorecard_template":{"type":"string","description":"The name of the scorecard template used to create the scorecard.\nOtherwise, `null`.\n","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices","nullable":true}}},"ScheduleResourceIngestion":{"type":"object","additionalProperties":false,"properties":{"ingest_from":{"type":"string","format":"date-time","description":"A timestamp indicating when to start ingestion from.\nRFC-3339 format is used with a \"T\" character separating date from time within the field value.\nOmitting this property indicates ingestion will be triggered from the beginning of time until the present.\n"}}},"ServiceDocument":{"type":"object","additionalProperties":false,"properties":{"slug":{"$ref":"#/components/schemas/Slug"},"title":{"type":"string","description":"Document title"},"parent_document_id":{"description":"parent document id","type":"string","format":"uuid","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2","nullable":true},"id":{"type":"string","format":"uuid","example":"de5c9818-be5c-42e6-b514-e3d4bc30ddeb","description":"The service document identifier."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}},"required":["id","slug","title","created_at","updated_at"]},"ServiceDocumentTree":{"type":"object","additionalProperties":false,"properties":{"slug":{"$ref":"#/components/schemas/Slug"},"title":{"type":"string","description":"Document title"},"parent_document_id":{"description":"parent document id","type":"string","format":"uuid","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2","nullable":true},"id":{"type":"string","format":"uuid","example":"de5c9818-be5c-42e6-b514-e3d4bc30ddeb","description":"The service document identifier."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"children":{"type":"array","items":{"$ref":"#/components/schemas/ServiceDocumentTree"}}},"required":["id","slug","title","created_at","updated_at","children"]},"CreateServiceDocumentPayload":{"type":"object","additionalProperties":false,"properties":{"slug":{"$ref":"#/components/schemas/Slug"},"title":{"type":"string","description":"Document title"},"parent_document_id":{"description":"parent document id","type":"string","format":"uuid","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2","nullable":true},"content":{"description":"Markdown content.","type":"string"}},"required":["slug","title","content"]},"UpdateServiceDocumentPayload":{"type":"object","additionalProperties":false,"properties":{"slug":{"$ref":"#/components/schemas/Slug"},"title":{"type":"string","description":"Document title"},"parent_document_id":{"description":"parent document id","type":"string","format":"uuid","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2","nullable":true},"content":{"description":"Markdown content.","type":"string"}}},"ServiceDocumentContentResponse":{"type":"object","additionalProperties":false,"properties":{"slug":{"$ref":"#/components/schemas/Slug"},"title":{"type":"string","description":"Document title"},"parent_document_id":{"description":"parent document id","type":"string","format":"uuid","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2","nullable":true},"content":{"description":"Markdown content.","type":"string"},"id":{"type":"string","format":"uuid","example":"de5c9818-be5c-42e6-b514-e3d4bc30ddeb","description":"The service document identifier."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}},"required":["slug","title","content","id","parent_document_id","created_at","updated_at"]},"ScorecardFilterParameters":{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"score.value":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"score.raw_value":{"oneOf":[{"$ref":"#/components/schemas/NumericFieldFilter"}]}}},"Scorecard":{"type":"object","description":"Representation of a scorecard.","required":["id","name","description","score","entity_selector","scorecard_template","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":{"type":"string","description":"The human-readable name of the scorecard.","example":"Incident Response"},"description":{"type":"string","nullable":true,"example":"Governs key metrics pertaining to teams' incident response practices."},"score":{"$ref":"#/components/schemas/ScorecardScore"},"entity_selector":{"$ref":"#/components/schemas/ScorecardEntitySelector"},"scorecard_template":{"type":"string","description":"The name of the scorecard template used to create the scorecard.\nOtherwise, `null`.\n","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices","nullable":true},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"ScorecardWithCriteria":{"type":"object","description":"Representation of a scorecard.","required":["id","name","description","score","entity_selector","scorecard_template","created_at","updated_at","criteria"],"properties":{"id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":{"type":"string","description":"The human-readable name of the scorecard.","example":"Incident Response"},"description":{"type":"string","nullable":true,"example":"Governs key metrics pertaining to teams' incident response practices."},"score":{"$ref":"#/components/schemas/ScorecardScore"},"entity_selector":{"$ref":"#/components/schemas/ScorecardEntitySelector"},"scorecard_template":{"type":"string","description":"The name of the scorecard template used to create the scorecard.\nOtherwise, `null`.\n","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices","nullable":true},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"criteria":{"type":"array","items":{"$ref":"#/components/schemas/ScorecardCriteria"}}}},"CatalogServiceScorecard":{"type":"object","description":"Representation of a scorecard.","required":["id","name","description","score","entity_selector","scorecard_template","created_at","updated_at","criteria"],"properties":{"id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"name":{"type":"string","description":"The human-readable name of the scorecard.","example":"Incident Response"},"description":{"type":"string","nullable":true,"example":"Governs key metrics pertaining to teams' incident response practices."},"score":{"$ref":"#/components/schemas/ScorecardScore"},"entity_selector":{"$ref":"#/components/schemas/ScorecardEntitySelector"},"scorecard_template":{"type":"string","description":"The name of the scorecard template used to create the scorecard.\nOtherwise, `null`.\n","enum":["kong_best_practices","service_documentation","service_maturity","security_and_compliance"],"example":"kong_best_practices","nullable":true},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"criteria":{"type":"array","items":{"$ref":"#/components/schemas/CatalogServiceScorecardCriteria"}}}},"ScorecardEntitySelector":{"title":"ScorecardEntitySelector","description":"Selector used to dynamically target catalog entities that will be\nincluded in the given scorecard's evaluated score.\n","oneOf":[{"$ref":"#/components/schemas/ServiceSelector"}],"example":{"selector":"label","selector_parameters":{"label_key":"product_area","operator":"eq","value":"cloud_platform"}},"type":"object","nullable":true},"ScorecardScore":{"type":"object","description":"The current score for the given Scorecard.\nA `null` value indicates the scorecard has not yet been evaluated and therefore no score has been computed.\n","nullable":true,"required":["value","raw_value"],"properties":{"value":{"type":"string","description":"The human-readable score value coverted to the Scorecard's assigned grading system.","example":"88%"},"raw_value":{"type":"number","description":"The raw, numeric score calculated during evaluation of the scorecard.\nRounded to 3 decimal places.\n","minimum":0,"maximum":100,"example":87.5}}},"ScorecardServiceFilterParameters":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/UuidFieldFilter"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"custom_fields":{"description":"Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"},{"$ref":"#/components/schemas/BooleanFieldFilter"},{"$ref":"#/components/schemas/NumericFieldFilter"}]},"labels":{"$ref":"#/components/schemas/LabelsFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"score.value":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"score.raw_value":{"oneOf":[{"$ref":"#/components/schemas/NumericFieldFilter"}]}}},"ScorecardService":{"title":"ScorecardService","description":"Service object that includes its score for the given scorecard.","type":"object","required":["id","name","display_name","description","custom_fields","labels","created_at","updated_at","score"],"properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The service ID.","readOnly":true},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service.","nullable":true,"maxLength":2048},"custom_fields":{"$ref":"#/components/schemas/CustomFields"},"labels":{"$ref":"#/components/schemas/Labels"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"score":{"$ref":"#/components/schemas/ScorecardScore"}}},"ScorecardCriteriaFilterParameters":{"type":"object","properties":{"evaluation.passing_services_count":{"oneOf":[{"$ref":"#/components/schemas/NumericFieldFilter"}]}}},"ScorecardCriteriaServiceFilterParameters":{"type":"object","properties":{"id":{"$ref":"#/components/schemas/UuidFieldFilter"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"custom_fields":{"description":"Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"},{"$ref":"#/components/schemas/BooleanFieldFilter"},{"$ref":"#/components/schemas/NumericFieldFilter"}]},"labels":{"$ref":"#/components/schemas/LabelsFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"evaluation.is_passing":{"oneOf":[{"$ref":"#/components/schemas/BooleanFieldFilter"}]},"evaluation.successfully_evaluated_at":{"oneOf":[{"$ref":"#/components/schemas/DateTimeFieldFilter"}]},"evaluation.attempted_at":{"oneOf":[{"$ref":"#/components/schemas/DateTimeFieldFilter"}]}}},"CreateScorecardCriteria":{"type":"object","additionalProperties":false,"required":["enabled","template_name","template_parameters","section_name"],"properties":{"name":{"type":"string","example":"Median time to merge opened PRs is less than 6 hours over the last 3 months.","minLength":1,"maxLength":2048},"enabled":{"type":"boolean","example":true},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"minLength":1,"maxLength":120,"example":"Source Code Management","description":"Organizational section name for the criteria within the scorecard."}}},"UpdateScorecardCriteria":{"type":"object","additionalProperties":false,"required":["id","enabled","template_name","template_parameters","section_name"],"properties":{"id":{"type":"string","format":"uuid","example":"5c1121f9-3f3a-47c7-9bb6-c81a51128714"},"name":{"type":"string","example":"Median time to merge opened PRs is less than 6 hours over the last 3 months.","minLength":1,"maxLength":2048},"enabled":{"type":"boolean","example":true},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"minLength":1,"maxLength":120,"example":"Source Code Management","description":"Organizational section name for the criteria within the scorecard."}}},"ScorecardCriteria":{"type":"object","required":["id","name","scorecard_id","integration","enabled","template_name","template_parameters","section_name","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","example":"5c1121f9-3f3a-47c7-9bb6-c81a51128714"},"name":{"type":"string","nullable":true,"description":"Override display name for the criteria, for greater contextual clarity within a given scorecard.","example":"Time to restore service is less than 6 hours over the last 3 months."},"scorecard_id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"integration":{"type":"string","nullable":true,"description":"The integration `name` when it provides the criteria template. Otherwise `null`.","example":null},"enabled":{"type":"boolean","description":"Whether the criteria is enabled for the given scorecard.","example":true},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"minLength":1,"maxLength":120,"example":"Documentation","description":"Organizational section name for the criteria within the scorecard."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}},"CatalogServiceScorecardCriteria":{"type":"object","required":["id","name","scorecard_id","integration","enabled","template_name","template_parameters","section_name","created_at","updated_at","evaluation"],"properties":{"id":{"type":"string","format":"uuid","example":"5c1121f9-3f3a-47c7-9bb6-c81a51128714"},"name":{"type":"string","nullable":true,"description":"Override display name for the criteria, for greater contextual clarity within a given scorecard.","example":"Time to restore service is less than 6 hours over the last 3 months."},"scorecard_id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"integration":{"type":"string","nullable":true,"description":"The integration `name` when it provides the criteria template. Otherwise `null`.","example":null},"enabled":{"type":"boolean","description":"Whether the criteria is enabled for the given scorecard.","example":true},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"minLength":1,"maxLength":120,"example":"Documentation","description":"Organizational section name for the criteria within the scorecard."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"evaluation":{"$ref":"#/components/schemas/ScorecardCriteriaServiceEvaluation"}}},"ScorecardCriteriaWithEvaluation":{"type":"object","required":["id","name","scorecard_id","integration","enabled","template_name","template_parameters","section_name","created_at","updated_at","evaluation"],"properties":{"id":{"type":"string","format":"uuid","example":"5c1121f9-3f3a-47c7-9bb6-c81a51128714"},"name":{"type":"string","nullable":true,"description":"Override display name for the criteria, for greater contextual clarity within a given scorecard.","example":"Time to restore service is less than 6 hours over the last 3 months."},"scorecard_id":{"type":"string","format":"uuid","example":"f3704e4c-104d-4f21-998a-20d4364c893f"},"integration":{"type":"string","nullable":true,"description":"The integration `name` when it provides the criteria template. Otherwise `null`.","example":null},"enabled":{"type":"boolean","description":"Whether the criteria is enabled for the given scorecard.","example":true},"template_name":{"$ref":"#/components/schemas/CriteriaTemplateName"},"template_parameters":{"$ref":"#/components/schemas/CriteriaParameters"},"section_name":{"type":"string","nullable":true,"minLength":1,"maxLength":120,"example":"Documentation","description":"Organizational section name for the criteria within the scorecard."},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"evaluation":{"$ref":"#/components/schemas/ScorecardCriteriaEvaluation"}}},"ScorecardCriteriaEvaluation":{"type":"object","nullable":true,"required":["passing_services_count"],"properties":{"passing_services_count":{"type":"number","description":"Number of targeted Services passing the criteria.","example":3}}},"CriteriaTemplateName":{"type":"string","description":"Reference to the unique `name` of the criteria template.","example":"time_to_merge"},"CriteriaParameters":{"type":"object","description":"Input parameters for the given criteria template.\nThe available parameters, and its schema, are found on the criteria template definition via\nthe `schema` property. Criteria template definitions are determined by the `/v1/criteria-templates`\nendpoint.\n","nullable":true,"additionalProperties":true,"example":{"measure":"median","threshold":{"unit":"hours","value":6},"window":{"unit":"months","value":3}}},"ScorecardCriteriaService":{"title":"ScorecardService","description":"Service object that includes its evaluation result for the given scorecard criteria.","type":"object","required":["id","name","display_name","description","custom_fields","labels","created_at","updated_at","evaluation"],"properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The service ID.","readOnly":true},"name":{"type":"string","description":"The machine name of the Service that uniquely identifies it within the catalog.\n","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"},"description":{"type":"string","description":"Optionally provide a description of the Service.","nullable":true,"maxLength":2048},"custom_fields":{"$ref":"#/components/schemas/CustomFields"},"labels":{"$ref":"#/components/schemas/Labels"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"score":{"$ref":"#/components/schemas/ScorecardCriteriaServiceEvaluation"}}},"ScorecardCriteriaServiceEvaluation":{"type":"object","description":"Evaluation for a scorecard criteria relative to the given service service.\nHas a `null` value when the criteria has not yet been evaluated for the service.\n","nullable":true,"required":["is_passing","evaluation_context","evaluation_error","successfully_evaluated_at","attempted_at","created_at"],"properties":{"is_passing":{"type":"boolean","description":"Whether or not the service has most recently passed the criteria check."},"evaluation_context":{"$ref":"#/components/schemas/CriteriaEvaluationResultDetails"},"evaluation_error":{"type":"object","nullable":true,"description":"Details about an error that occurred during evaluation preventing computation of a pass/fail result.\nWill be `null` when no error occurred.\n","required":["type","details"],"properties":{"type":{"type":"string","description":"The type of error that occurred.","example":"integration_unauthorized"},"details":{"type":"string","description":"Human-readable error message about the error.","example":"The GitHub integration is unauthorized. Please ensure that the\nintegration is re-authorized for the criteria to be successfully evaluated.\n"}},"example":null},"attempted_at":{"type":"string","format":"date-time","example":"2023-02-15T07:20:50Z","description":"The timestamp denoting the last evaluation attempt of the criteria for the service."},"successfully_evaluated_at":{"type":"string","format":"date-time","example":"2023-02-15T07:20:50Z","description":"The timestamp denoting when the criteria was last successfully evaluated for the service.\nError states preventing the evaluation from being performed will not update this timestamp.\n"},"created_at":{"$ref":"#/components/schemas/CreatedAt"}}},"CriteriaEvaluationResultDetails":{"type":"object","description":"Provides additional metadata about the criteria evaluation result.","nullable":true,"required":["raw_value","display_text"],"properties":{"raw_value":{"description":"Raw value of the criteria evaluation.\n\nFor example, a service may be failing the `time_to_acknowledge` criteria evaluation when\nthe the mean time-to-ack is greater than 15 minutes. This value represents the _actual_\nmean time-to-ack value for the service which if not passing could be 25 minutes.\n","oneOf":[{"type":"number"},{"type":"string"},{"type":"boolean"},{"$ref":"#/components/schemas/TimeValue"},{"$ref":"#/components/schemas/CriteriaEvaluationRelationMap"},{"type":"object","additionalProperties":true},{"nullable":true}]},"display_text":{"type":"string","example":"25 minutes","description":"Renderable text providing human-readable context about the evaluation value."}},"example":{"raw_value":{"unit":"minutes","value":25},"display_text":"25 minutes"}},"CriteriaEvaluationRelationMap":{"type":"object","required":["instance","relation","map"],"properties":{"instance":{"type":"string","enum":["criteria_result_relation_map"]},"relation":{"type":"string","example":"gateway_svc"},"map":{"additionalProperties":{"oneOf":[{"$ref":"#/components/schemas/CriteriaEvaluationRelationResult"},{"$ref":"#/components/schemas/CriteriaEvaluationErrorResult"}]}}}},"CriteriaEvaluationRelationResult":{"type":"object","required":["is_passing","relation","details"],"properties":{"is_passing":{"type":"boolean","description":"Whether or not the relation has passed the criteria evaluation."},"relation":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"}}},"details":{"$ref":"#/components/schemas/CriteriaEvaluationResultDetails"}}},"CriteriaEvaluationErrorResult":{"type":"object","required":["relation","error"],"properties":{"relation":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"}}},"error":{"type":"object","nullable":true,"description":"Details about an error that occurred during evaluation preventing computation of a pass/fail result.\nWill be `null` when no error occurred.\n","required":["type","details"],"properties":{"type":{"type":"string","description":"The type of error that occurred.","example":"integration_unauthorized"},"details":{"type":"string","description":"Human-readable error message about the error.","example":"The GitHub integration is unauthorized. Please ensure that the\nintegration is re-authorized for the criteria to be successfully evaluated.\n"}},"example":null}}},"SuggestionRuleFilterParameters":{"title":"SuggestionRuleFilterParameters","type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"name":{"$ref":"#/components/schemas/StringFieldFilter"},"active":{"$ref":"#/components/schemas/BooleanFieldFilter"},"auto_accept":{"$ref":"#/components/schemas/BooleanFieldFilter"},"binding":{"$ref":"#/components/schemas/StringFieldFilterExact"},"action.type":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"SuggestionRuleErrorFilterParameters":{"title":"SuggestionRuleErrorFilterParameters","type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/UuidFieldFilter"},"resource_id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"suggestion_rule_id":{"$ref":"#/components/schemas/UuidFieldFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CustomFields":{"type":"object","x-speakeasy-type-override":"any","description":"Map of customizable, catalog-defined fields providing information about a service.\n","additionalProperties":{"x-convert-oneOf":true,"anyOf":[{"$ref":"#/components/schemas/TextCustomField"},{"$ref":"#/components/schemas/NumericCustomField"},{"$ref":"#/components/schemas/BooleanCustomField"},{"$ref":"#/components/schemas/UrlCustomField"}]},"example":{"owner":"John Appleseed","dashboard":{"name":"On-Call Dashboard","link":"https://my-dashboard-svc.io/dashboards/1"}}},"CustomFieldsSuggestion":{"type":"object","description":"Map of customizable, catalog-defined fields providing information about a service.\n","additionalProperties":{"anyOf":[{"$ref":"#/components/schemas/TextCustomField"},{"$ref":"#/components/schemas/NumericCustomField"},{"$ref":"#/components/schemas/BooleanCustomField"},{"$ref":"#/components/schemas/UrlCustomFieldSuggestion"}]},"example":{"owner":"John Appleseed","dashboard":{"name":"On-Call Dashboard","link":"https://my-dashboard-svc.io/dashboards/1"}}},"TextCustomField":{"type":"string","nullable":true},"NumericCustomField":{"type":"number","nullable":true},"BooleanCustomField":{"type":"boolean","nullable":true},"UrlCustomField":{"type":"object","nullable":true,"required":["name","link"],"properties":{"name":{"description":"The human-readable name of the URL link.","type":"string","example":"On-Call Dashboard"},"link":{"description":"The href value of the URL link.","type":"string","format":"uri-reference","example":"https://my-dashboard-svc.io/dashboards/1"}}},"UrlCustomFieldSuggestion":{"additionalProperties":{"type":"string"}},"ServiceSelector":{"oneOf":[{"$ref":"#/components/schemas/AllEntitiesSelector"},{"$ref":"#/components/schemas/ByIDsSelector"},{"$ref":"#/components/schemas/ByNameSelector"},{"$ref":"#/components/schemas/ByDisplayNameSelector"},{"$ref":"#/components/schemas/ByCustomFieldSelector"},{"$ref":"#/components/schemas/ByLabelSelector"},{"$ref":"#/components/schemas/HasLabelKeySelector"},{"$ref":"#/components/schemas/HasDocsSelector"},{"$ref":"#/components/schemas/HasApisSelector"},{"$ref":"#/components/schemas/HasResourcesSelector"}]},"AllEntitiesSelector":{"type":"object","description":"Entity selector that includes all entities of the given type within the catalog.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["all"]},"selector_parameters":{"type":"string","enum":[null],"nullable":true}}},"ByIDsSelector":{"type":"object","description":"Entity selector that includes entities contained within a list of IDs.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["ids"]},"selector_parameters":{"type":"object","required":["ids"],"properties":{"ids":{"type":"array","items":{"type":"string","format":"uuid"}}}}}},"ByNameSelector":{"type":"object","description":"Entity selector that includes entities by `name`.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["name"]},"selector_parameters":{"$ref":"#/components/schemas/StringFieldSelectorParams"}}},"ByDisplayNameSelector":{"type":"object","description":"Entity selector that includes entities by `display_name`.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["display_name"]},"selector_parameters":{"$ref":"#/components/schemas/StringFieldSelectorParams"}}},"ByCustomFieldSelector":{"type":"object","description":"Entity selector that include entities by a custom field.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["custom_field"]},"selector_parameters":{"oneOf":[{"type":"object","title":"StringCustomFieldSelectorParams","required":["field","value","operator"],"properties":{"field":{"type":"string","description":"Name of the custom field."},"value":{"type":"string"},"operator":{"$ref":"#/components/schemas/StringSelectorOperator"}}},{"type":"object","title":"NumberCustomFieldSelectorParams","required":["field","value","operator"],"properties":{"field":{"type":"string","description":"Name of the custom field."},"value":{"type":"number"},"operator":{"$ref":"#/components/schemas/NumberSelectorOperator"}}},{"type":"object","title":"BooleanCustomFieldSelectorParams","required":["field","value","operator"],"properties":{"field":{"type":"string","description":"Name of the custom field."},"value":{"type":"boolean"},"operator":{"$ref":"#/components/schemas/BooleanSelectorOperator"}}},{"type":"object","title":"UrlCustomFieldSelectorParams","required":["field","subfield","value","operator"],"properties":{"field":{"type":"string","description":"Name of the custom field."},"subfield":{"type":"string","enum":["name","link"],"description":"Specify which subfield of the `url` custom field value to use for selection."},"value":{"type":"string"},"operator":{"$ref":"#/components/schemas/StringSelectorOperator"}}}]}}},"ByLabelSelector":{"type":"object","description":"Entity selector that includes entities by `label` value.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["label"]},"selector_parameters":{"type":"object","required":["operator","value","label_key"],"properties":{"operator":{"$ref":"#/components/schemas/StringSelectorOperator"},"value":{"type":"string"},"label_key":{"type":"string"}},"title":"LabelSelectorParams"}}},"HasLabelKeySelector":{"type":"object","description":"Entity selector that includes entities by inclusion of a `label` key.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["has_label_key"]},"selector_parameters":{"type":"object","title":"HasLabelKeySelectorParams","required":["label_key"],"properties":{"label_key":{"type":"string"}}}}},"HasDocsSelector":{"type":"object","description":"Entity selector to include entities by attached documentation.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["has_docs"]},"selector_parameters":{"type":"string","enum":[null],"nullable":true}}},"HasApisSelector":{"type":"object","description":"Entity selector that includes services by attached APIs.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["api_count"]},"selector_parameters":{"$ref":"#/components/schemas/HasSelectorParams"}}},"HasResourcesSelector":{"type":"object","description":"Entity selector that includes services by mapped resources.","required":["selector","selector_parameters"],"properties":{"selector":{"type":"string","enum":["resource_count"]},"selector_parameters":{"type":"object","required":["operator","value","resource_type","integration"],"properties":{"operator":{"$ref":"#/components/schemas/HasRelationshipSelectorOperator"},"value":{"type":"number"},"resource_type":{"$ref":"#/components/schemas/CatalogResourceType"},"integration":{"type":"string","description":"The machine name of the integration that uniquely identifies it within the catalog.","example":"gateway-manager"}},"title":"HasResourcesSelectorParams"}}},"StringFieldSelectorParams":{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/StringSelectorOperator"},"value":{"type":"string"}}},"HasSelectorParams":{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/HasRelationshipSelectorOperator"},"value":{"type":"number"}}},"StringSelectorOperator":{"type":"string","enum":["eq","contains"]},"NumberSelectorOperator":{"type":"string","enum":["eq","lt","gt"]},"BooleanSelectorOperator":{"type":"string","enum":["eq"]},"HasRelationshipSelectorOperator":{"type":"string","enum":["eq","gte","lte"]},"SimpleSchema":{"type":"object","required":["type","definition"],"properties":{"type":{"type":"string","enum":["simple"]},"definition":{"type":"object","additionalProperties":{"type":"string","enum":["string","number","boolean"]}}}},"CatalogServiceRef":{"type":"object","description":"Short-hand descriptor of a catalog service.","required":["id","name","display_name"],"properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The service ID."},"name":{"type":"string","description":"The machine name of the service that uniquely identifies it within the catalog.\n","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the service.","example":"User Service"}}},"IntegrationRef":{"type":"object","description":"Short-hand descriptor of an integration installed within the catalog.","required":["name","display_name","instance"],"properties":{"name":{"type":"string","example":"gateway-manager"},"display_name":{"type":"string","example":"gateway-manager"},"instance":{"$ref":"#/components/schemas/IntegrationInstanceRef"}}},"IntegrationRefWithoutInstance":{"type":"object","description":"Short-hand descriptor of an integration that omits instance metadata.","required":["name","display_name"],"properties":{"name":{"type":"string","example":"gateway-manager"},"display_name":{"type":"string","example":"gateway-manager"}}},"IntegrationInstanceRef":{"type":"object","description":"Short-hand descriptor of an integration instance.","required":["id","name","display_name"],"properties":{"id":{"type":"string","format":"uuid","example":"772b9caf-ddbc-4f4f-8aa4-8dfbbe420351","description":"The integration instance ID."},"name":{"type":"string","description":"The machine name of the integration instance that uniquely identifies it within the catalog.\n","pattern":"^[0-9a-z.-]+$","example":"aws-lambda-prod"},"display_name":{"type":"string","description":"The display name of the integration instance.","example":"AWS (prod)"}}},"CatalogResourceRef":{"type":"object","description":"Short-hand descriptor of a catalog resource.","required":["id","name","type","config","integration"],"properties":{"id":{"$ref":"#/components/schemas/CatalogResourceId"},"name":{"type":"string","nullable":true,"description":"The name of the resource."},"integration":{"$ref":"#/components/schemas/IntegrationRef"},"type":{"$ref":"#/components/schemas/CatalogResourceType"},"config":{"$ref":"#/components/schemas/CatalogResourceConfig"}}},"ResourceIngestionStatus":{"title":"ResourceIngestionStatus","description":"The resource ingestion status.","type":"object","additionalProperties":false,"required":["last_scheduled"],"properties":{"last_scheduled":{"type":"string","nullable":true,"format":"date-time","description":"The timestamp denoting when the last ingestion job was run.\nRFC-3339 format is used with a \"T\" character separating date from time within the field value.\nA `null` value denotes that ingestion for the given integration was never run.\n"}}},"TimeValue":{"type":"object","description":"Represents a time value inclusive of units.","required":["value","unit"],"properties":{"value":{"type":"number","example":3.25},"unit":{"type":"string","example":"hours","enum":["milliseconds","seconds","minutes","hours","days","months","years"]}}},"IntegrationNotInstalledError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":404},"title":{"example":"Not Found"},"type":{"example":"https://httpstatuses.com/404"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"Not found"}}}],"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["service_catalog_integration_not_installed"]},"status":{"type":"integer","description":"The HTTP status code of the error. Useful when passing the response\nbody to child properties in a frontend UI. Must be returned as an integer.\n","readOnly":true},"title":{"type":"string","description":"A short, human-readable summary of the problem. It should not\nchange between occurences of a problem, except for localization.\nShould be provided as \"Sentence case\" for direct use in the UI.\n","readOnly":true},"instance":{"type":"string","description":"Used to return the correlation ID back to the user, in the format\nkong:trace:<correlation_id>. This helps us find the relevant logs\nwhen a customer reports an issue.\n","readOnly":true}}},"IntegrationUnauthorizedError":{"type":"object","title":"IntegrationUnauthorizedError","properties":{"type":{"type":"string","enum":["service_catalog_integration_unauthorized"]},"status":{"type":"integer","enum":[400]},"title":{"type":"string","example":"Invalid Request"},"instance":{"type":"string","description":"The Konnect trace ID.","example":"konnect:trace:3674017986744198214"},"detail":{"type":"string","example":"The integration instance \"cc461d8c-dade-4ce0-ad86-290f3ff8de1a\" is unauthorized"},"invalid_parameters":{"$ref":"#/components/schemas/InvalidParameters"}},"required":["type","status","title","detail","instance","invalid_parameters"]},"ResourceAction":{"title":"ResourceAction","description":"Contains information about a resource action","type":"object","additionalProperties":false,"required":["id","user_id","action_type","cause","service_id","resource_id","resource_name","integration","created_at"],"properties":{"id":{"description":"The resource action ID.","type":"string","format":"uuid","example":"93b411db-6f68-47d2-8959-de2d91914f2f"},"user_id":{"description":"Represents the user who performed the action.\nA `null` value represents that action was taken by the system.\n","type":"string","nullable":true},"action_type":{"description":"Represents which action was performed on a resource:\n  - `map`: a resource was mapped to a service\n  - `unmap`: a resource was unmapped from a service\n  - `archive`: a resource was archived\n  - `restore`: a resource was restored\n","type":"string","enum":["map","unmap","archive","restore"]},"cause":{"description":"Represents what caused the resource action to occur:\n- `user-action`: user performed a resource action\n- `suggestion-rule`: resource action performed based on the configuration of a suggestion rule\n","type":"string","enum":["user-action","suggestion-rule"]},"service_id":{"description":"The service effected by the resource action","type":"string","format":"uuid","nullable":true,"example":"6567bdab-9a94-4763-a736-7638b777fc04"},"resource_id":{"description":"The resource effected by the resource action","type":"string","example":"R4bimspbBIFkYA1v"},"resource_name":{"type":"string","nullable":true,"maxLength":255,"description":"The name of the resource affected by the resource action","example":"Billing Service"},"integration":{"$ref":"#/components/schemas/IntegrationRef"},"created_at":{"$ref":"#/components/schemas/CreatedAt"}}},"ResourceActionFilterParameters":{"type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"user_id":{"$ref":"#/components/schemas/StringFieldFilter"},"service_id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"resource_id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"resource_name":{"$ref":"#/components/schemas/StringFieldFilter"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"action_type":{"$ref":"#/components/schemas/StringFieldFilterExact"},"cause":{"$ref":"#/components/schemas/StringFieldFilterExact"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"LabelsTemplate":{"title":"LabelsTemplate","type":"object","example":{"env":"test"},"description":"Labels to facilitate grouping and tagged search.\nResolved keys must be of length 1-63 characters, and cannot start with ''kong'', ''konnect'', ''mesh'', ''kic'', or ''_''.'\nLabel key and value supports JQ expression syntax on discovered entity's `integration_record` property.\n","additionalProperties":{"type":"string","minLength":1}},"LabelsSuggestion":{"title":"LabelsTemplate","type":"object","example":{"env":"test"},"description":"Labels to facilitate grouping and tagged search.\nResolved keys must be of length 1-63 characters, and cannot start with ''kong'', ''konnect'', ''mesh'', ''kic'', or ''_''.'\nLabel key and value supports JQ expression syntax on discovered entity's `integration_record` property.\n","additionalProperties":{"type":"string"}},"UrlMetadataValueBase":{"type":"object","nullable":true,"required":["name"],"properties":{"name":{"description":"The human-readable name for the url metadata value","type":"string","minLength":1,"example":"#public-slack-channel"}}},"UrlMetadataValueTemplate":{"type":"object","description":"Contains the name and link value associated with a URL Metadata Field. Supports JQ templates which resolves to a string.","allOf":[{"$ref":"#/components/schemas/UrlMetadataValueBase"},{"type":"object","required":["link"],"properties":{"link":{"description":"The url link associated with the metadata value.","type":"string","minLength":1,"example":"#public-slack-channel"}}}]},"MetadataTemplate":{"type":"object","description":"Contains key value pairs information about entity's metadata. Supports JQ templates on values which resolves to a string.","additionalProperties":{"anyOf":[{"type":"string","nullable":true},{"type":"number","nullable":true},{"type":"boolean","nullable":true},{"$ref":"#/components/schemas/UrlMetadataValueTemplate"}]}},"MapById":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"type":"string","description":"Exact match on service identifier based on suggestion rule scope.\nSupports JQ expression syntax on discovered entity's `integration_record` property.\n","example":"1ace6cb5-75ca-4488-a05d-9260628a37a8"}}},"MapByName":{"type":"object","additionalProperties":false,"required":["name"],"properties":{"name":{"type":"string","description":"Exact match on service name based on suggestion rule scope.\nSupports JQ expression syntax on discovered entity's `integration_record` property.\n","example":"{{ .gateway_service.name }}-{{ .runtime_group.labels.env }}"}}},"ArchiveActionPayload":{"title":"ArchiveActionPayload","type":"object","additionalProperties":false,"required":["type"],"properties":{"type":{"type":"string","enum":["archive"]}}},"MapServiceAction":{"title":"MapServiceAction","type":"object","additionalProperties":false,"required":["type","data"],"properties":{"type":{"type":"string","enum":["map"]},"data":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"type":"object","additionalProperties":false,"required":["id"],"properties":{"id":{"description":"The identifier of the service associated to this resource action.","type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"}}},"resource":{"type":"object","additionalProperties":false,"required":["labels"],"properties":{"labels":{"$ref":"#/components/schemas/LabelsSuggestion"}}}}}}},"CreateAndMapServiceActionPayload":{"title":"CreateAndMapServiceActionPayload","type":"object","additionalProperties":false,"required":["type","data"],"properties":{"type":{"type":"string","enum":["create"]},"data":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"$ref":"#/components/schemas/CreateCatalogService"},"resource":{"type":"object","additionalProperties":false,"required":["labels"],"properties":{"labels":{"$ref":"#/components/schemas/LabelsSuggestion"}}}}}}},"IgnoreActionPayload":{"title":"IgnoreAction","type":"object","additionalProperties":false,"required":["type"],"properties":{"type":{"type":"string","enum":["ignore"]}}},"MapActionPayload":{"title":"MapAction","description":"Must specify **at least one** of the following properties when `action_type` is `map`:\n- `id`\n- `name`\n","type":"object","additionalProperties":false,"required":["type","data"],"properties":{"type":{"type":"string","enum":["map"]},"data":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"oneOf":[{"$ref":"#/components/schemas/MapByName"},{"$ref":"#/components/schemas/MapById"}]},"resource":{"type":"object","additionalProperties":false,"required":["labels"],"properties":{"labels":{"$ref":"#/components/schemas/LabelsTemplate"}}}}}}},"CreateOrMapAction":{"title":"CreateOrMapAction","type":"object","required":["type","data"],"properties":{"type":{"type":"string","enum":["create-or-map"]},"data":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"type":"object","additionalProperties":false,"required":["name","display_name","description","labels","metadata"],"properties":{"name":{"description":"The name of the service to create or map to.\nSupports JQ expression syntax on discovered entity's `integration_record` property.\n","type":"string","minLength":1},"display_name":{"type":"string","nullable":true,"description":"The display name of the service on create. This property is ignored on map.\nSupports JQ expression syntax on discovered entity's `integration_record` property.\nIf value is set to null, display name will be set to name.\n","minLength":1},"description":{"type":"string","description":"The description of the service. This property is ignored on map.\nSupports JQ expression syntax on discovered entity's `integration_record` property.\n"},"labels":{"$ref":"#/components/schemas/LabelsTemplate"},"metadata":{"$ref":"#/components/schemas/MetadataTemplate"}}},"resource":{"type":"object","additionalProperties":false,"required":["labels"],"properties":{"labels":{"$ref":"#/components/schemas/LabelsTemplate"}}}}}}},"CreateActionEvaluated":{"title":"CreateActionEvaluated","type":"object","required":["type","data"],"properties":{"type":{"type":"string","enum":["create"]},"data":{"type":"object","additionalProperties":false,"required":["service","resource"],"properties":{"service":{"$ref":"#/components/schemas/CatalogServiceSuggestion"},"resource":{"type":"object","additionalProperties":false,"required":["labels"],"properties":{"labels":{"$ref":"#/components/schemas/LabelsTemplate"}}}}}}},"SuggestedRuleAction":{"oneOf":[{"$ref":"#/components/schemas/ArchiveActionPayload"},{"$ref":"#/components/schemas/IgnoreActionPayload"},{"$ref":"#/components/schemas/MapActionPayload"},{"$ref":"#/components/schemas/CreateOrMapAction"}]},"RankAfterPayload":{"writeOnly":true,"type":"object","description":"Determines how this suggestion rule ranks against existing suggestion rules for the integration.\nWhen rank is not specified, this suggestion rule will placed as the lowest priority rule.\n","additionalProperties":false,"required":["after_suggestion_rule_id"],"properties":{"after_suggestion_rule_id":{"type":"string","format":"uuid","nullable":true,"description":"When set to `null`, this rule is indicated to be the highest priority rule.\n"}}},"RankBeforePayload":{"writeOnly":true,"type":"object","description":"Determines how this suggestion rule ranks against existing suggestion rules for the integration.\nWhen rank is not specified, this suggestion rule will placed as the lowest priority rule.\n","additionalProperties":false,"required":["before_suggestion_rule_id"],"properties":{"before_suggestion_rule_id":{"type":"string","format":"uuid","nullable":true,"description":"When set to `null`, this rule is indicated to be the lowest priority rule.\n"}}},"SystemSuggestionRule":{"title":"SystemSuggestionRule","description":"Contains information about the system defined suggestion rule.","allOf":[{"type":"object","required":["id","name","description","binding","active","auto_accept","action"],"properties":{"id":{"type":"string","format":"uuid","example":"22f72bd1-2897-473e-9471-302de3ccf38b","description":"The suggestion rule ID.","readOnly":true},"name":{"type":"string","description":"The display name of the suggestion rule.","minLength":1,"maxLength":120},"description":{"type":"string","nullable":true,"default":null,"minLength":1,"maxLength":2048,"description":"The description of the suggestion rule","example":"Suggestion rule description"},"binding":{"type":"string","description":"The integration binding object name","example":"pagerduty_service"},"active":{"type":"boolean","description":"Determines if this suggestion rule should be evaluated when generating suggested actions."},"auto_accept":{"type":"boolean","description":"Determines if the suggested action should be applied automatically.\n- `true`: Suggested action will be applied automatically\n- `false`: Suggested action will not be automatically applied, user input required\n"},"action":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["archive","map","create-or-map"],"description":"The type of action this system suggestion rule performs"}},"description":"The action configuration for this system suggestion rule."}}}]},"SuggestionRulePayload":{"title":"SuggestionRulePayload","description":"Payload to create a suggestion rule for an integration.","type":"object","required":["name","binding","active","auto_accept","action","discovery_selector"],"additionalProperties":false,"properties":{"name":{"type":"string","description":"The display name of the suggestion rule","minLength":1,"maxLength":120},"description":{"type":"string","nullable":true,"default":null,"minLength":1,"maxLength":2048,"description":"The description of the suggestion rule","example":"Suggestion rule description"},"binding":{"type":"string","description":"The integration binding object name","example":"pagerduty_service"},"active":{"type":"boolean","description":"Determines if this suggestion rule should be evaluated when generating suggested actions."},"auto_accept":{"type":"boolean","description":"Determines if the suggested action should be applied automatically.\n- `true`: Suggested action will be applied automatically\n- `false`: Suggested action will not be automatically applied, user input required\n"},"discovery_selector":{"type":"string","description":"A boolean string or JQ expression that must evaluate to a boolean value.\nSupports JQ expressions syntax on discovered entity's `integration_record` property.\n","maxLength":2048,"example":".gateway_service.tags | contains([\"_KonnectDeployment:\"])"},"action":{"oneOf":[{"$ref":"#/components/schemas/ArchiveActionPayload"},{"$ref":"#/components/schemas/MapActionPayload"},{"$ref":"#/components/schemas/CreateOrMapAction"}]},"rank":{"oneOf":[{"$ref":"#/components/schemas/RankAfterPayload"},{"$ref":"#/components/schemas/RankBeforePayload"}]}}},"TestSuggestionRulePayload":{"title":"TestSuggestionRulePayload","description":"Payload to test suggestion rule configuration against an integration record.","type":"object","additionalProperties":false,"required":["binding","discovery_selector","action","integration_record"],"properties":{"binding":{"type":"string","description":"The integration binding object name","example":"pagerduty_service"},"discovery_selector":{"type":"string","description":"A boolean string or JQ expression that must evaluate to a boolean value.\nSupports JQ expressions syntax on discovered entity's `integration_record` property.\n","maxLength":2048,"example":".gateway_service.tags | contains([\"_KonnectDeployment:\"])"},"action":{"$ref":"#/components/schemas/SuggestedRuleAction"},"integration_record":{"type":"object","description":"JSON object that may contain additional context about the entity.","additionalProperties":true,"example":{"control_plane":{"id":"0a7647d1-483a-4817-a5ac-28937b511563","name":"control_plane_name"},"gateway_service":{"id":"3fd1bff6-b60d-4c22-bb74-e4cac63196fb","name":"gateway_service_name"}}}}},"SuggestionRule":{"title":"SuggestionRule","description":"Contains information about the suggestion rule.","allOf":[{"$ref":"#/components/schemas/SystemSuggestionRule"},{"type":"object","required":["created_at","updated_at","action","discovery_selector"],"properties":{"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"},"discovery_selector":{"type":"string","description":"A boolean string or JQ expression that must evaluate to a boolean value.\nSupports JQ expressions syntax on discovered entity's `integration_record` property.\n","example":".gateway_service.tags | contains([\"_KonnectDeployment:\"])"},"action":{"$ref":"#/components/schemas/SuggestedRuleAction"}}}]},"TestSuggestionRule":{"title":"TestSuggestionRule","description":"Contains evaluation results of a suggestion rule configuration against an integration record.","type":"object","additionalProperties":false,"required":["evaluation","errors"],"properties":{"evaluation":{"description":"Evaluation result of suggesetion rule configuration against given integration record.","type":"object","additionalProperties":false,"required":["matched","action","service_id"],"properties":{"matched":{"description":"Represents if the suggestion rule configuration matches the given integration record.","type":"boolean"},"service_id":{"description":"The identifier of a service the suggesiton rule configuration matches with the given integration record.","type":"string","format":"uuid","nullable":true,"example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"action":{"$ref":"#/components/schemas/SuggestedRuleActionEvaluated"}}},"errors":{"description":"List of errors that occured when evaluating suggestion rule configuration against given integration record.","type":"array","items":{"$ref":"#/components/schemas/SuggestionRuleErrorDetail"}}}},"SuggestionRuleError":{"title":"SuggestionRuleError","description":"Represents any errors which occured when evaluating a suggestion rule","allOf":[{"type":"object","nullable":true,"required":["suggestion_rule_id","details","created_at","updated_at"],"properties":{"id":{"description":"The id of the suggestion rule error\n","type":"string","example":"e4698717-7f0b-434d-aa16-a472089c2504"},"resource_id":{"description":"The id of the related resource which generated this error\n","type":"string","example":"qLgnGlFp4iveGUFl"},"suggestion_rule_id":{"description":"The id of the suggestion rule which generated this error\n","type":"string","example":"fd109d4a-e183-4488-98f2-10eab0964155"},"details":{"description":"Details of the error generated from the related suggested rule when evaluated\n","type":"array","items":{"$ref":"#/components/schemas/SuggestionRuleErrorDetail"}},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}}]},"SuggestedRuleActionEvaluated":{"oneOf":[{"$ref":"#/components/schemas/ArchiveActionPayload"},{"$ref":"#/components/schemas/IgnoreActionPayload"},{"$ref":"#/components/schemas/MapActionPayload"},{"$ref":"#/components/schemas/CreateActionEvaluated"}]},"SuggestionRuleErrorDetail":{"type":"object","required":["type","field","expression","message"],"properties":{"type":{"type":"string","description":"The type of error that occured when evaluating suggestion rule configuration against given integration record.\n  - `error`: represents a generic error.\n  - `timeout`: timeout occured when evaluating jq expression\n  - `invalid-expression`: jq expression could not be evaluated due to syntax error(s).\n  - `result-not-boolean`: jq expression was not evaluated to a boolean\n  - `result-not-string`: jq expression was not evaluated to a string\n  - `unexpected-result`: jq expression was not evaluated to a result that could not be determined\n  - `InvalidLabelKeyInputType`: Indicates the label key is of an invalid type (i.e. number or symbol)\n  - `InvalidEmptyLabelKey`: Indicates the label key is empty\n  - `InvalidLabelKeyFormat`: Indicates that the format of the label key is invalid, ex: \"-bad-format-\"\n  - `LabelKeyHasReservedPrefix`: Indicates that the label key starts with a Kong-reserved key prefix, ex: \"kong-test-key\"\n  - `MaxLabelKeyCharsExceeded`: Indicates that a label key exceeds the maximum number of allowed characters\n  - `InvalidLabelValueInputType`: Indicates the label value is of an invalid type (i.e. number or symbol)\n  - `InvalidEmptyLabelValue`: Indicates that the label value is empty\n  - `InvalidLabelValueFormat`: Indicates that the format of the label value is invalid, ex: \"-bad-format-\"\n  - `MaxLabelValueCharsExceeded`: Indicates that a label value exceeds the maximum number of allowed characters\n  - `InvalidLabelsInputType`: Indicates that a collection of labels is of an invalid type (i.e. array instead of key-value object)\n  - `MaxLabelsPerEntityExceeded`: Indicates that a collection of labels exceeds the maximum number of labels allowed for a given entity\n  - `ConflictingKeys`: Indicates that labels keys are not unique\n  - `InvalidName`: Indicates that the name is invalid\n  - `InvalidDisplayName`: Indicates that the display name is invalid\n  - `InvalidDescription`: Indicates that the description is invalid\n  - `InvalidLabels`: Indicates that the labels are invalid\n  - `InvalidMetadata`: Indicates that the metadata is invalid\n"},"field":{"type":"string","description":"The field from the payload given which is responsible for this error."},"expression":{"type":"string","description":"Represents the resolved or unresolved JQ expression which failed validation"},"message":{"type":"string","description":"Details of the error which occured when evaluating suggestion rule configuration against given integration record."}}},"EventsAttributesFieldFilter":{"title":"EventsAttributesFieldFilter","description":"Filters the events by values contained within the `attributes` field. Filters must use dot-notation to identify\nthe details property that will be used to filter the results.\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"BaseServiceEventsFilterParameters":{"title":"BaseServiceEventsFilterParameters","type":"object","properties":{"type":{"$ref":"#/components/schemas/StringFieldFilter"},"ts":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"binding":{"$ref":"#/components/schemas/StringFieldFilterExact"},"attributes":{"$ref":"#/components/schemas/EventsAttributesFieldFilter"},"detail":{"$ref":"#/components/schemas/StringFieldFilter"},"actor.type":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"actor.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"actor.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]}}},"IntegrationEventsFilterParameters":{"title":"IntegrationEventsFilterParameters","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/BaseServiceEventsFilterParameters"},{"type":"object","properties":{"service_id":{"$ref":"#/components/schemas/StringFieldFilter"}}}]},"CatalogServiceIntegrationEventsFilterParameters":{"title":"ServiceEventsFilterParameters","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/BaseServiceEventsFilterParameters"}]},"IntegrationEventActor":{"title":"Integration Event Actor","type":"object","description":"Information about the entity that triggered the integration event in the external system.\n","additionalProperties":false,"nullable":true,"properties":{"type":{"type":"string","nullable":true,"description":"Type of the entity that triggered the integration event in the external system.","example":"user"},"id":{"type":"string","description":"Identifier of the entity that triggered the integration event in the external system.","example":"PLH1HKV"},"name":{"type":"string","nullable":true,"description":"Name of the entity that triggered the integration event in the external system.","example":"John Doe"}},"required":["type","id"]},"IntegrationEvent":{"title":"IntegrationEvent","type":"object","description":"Event on a resource binding for an integration.","additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier of the integration event.","example":"a90c4c20-bbd3-4229-8340-8b18e38cb1e5","readOnly":true},"type":{"type":"string","description":"Type of the integration event.","example":"incident.triggered"},"ts":{"type":"string","format":"date-time","description":"Date the integration event occurred at.","example":"2024-01-01T00:00:00Z"},"service_id":{"type":"string","format":"uuid","description":"Identifier of the service the integration event corresponds to.","example":"b268ca70-9b75-4355-8726-63788463a66f","readOnly":true},"deduplication_id":{"type":"string","description":"Idempotent processing identifier of the integration event on ingestion.","example":"1d34191ebfe305a56bf4f3303d1a8dcf"},"resource_id":{"type":"string","description":"Identifier of the resource the integration event corresponds to.","example":"8_l-yZ8UQtc_e6Pp"},"actor":{"$ref":"#/components/schemas/IntegrationEventActor"},"attributes":{"type":"object","description":"Additional attributes of the integration event, specific to the binding resource and integration.","additionalProperties":true,"example":{"service_id":"PLK33TY","incident_id":"PGR0VU2","escalation_policy_id":"P005NFS","priority_id":"P9BO35Z","urgency":"low","title":"Example API Service Incident","html_url":"https://acme.pagerduty.com/incidents/PGR0VU2"}},"integration":{"$ref":"#/components/schemas/IntegrationRef"},"binding":{"type":"string","description":"Binding resource the integration event corresponds to.","example":"pagerduty_service"},"detail":{"type":"string","nullable":true,"description":"Additional detail about the integration event.","example":"Example API Service Incident"},"link_html":{"type":"string","nullable":true,"description":"URL to the web-page for the source of the integration event.","example":"https://acme.pagerduty.com/incidents/PGR0VU2"}},"required":["id","type","ts","service_id","deduplication_id","resource_id","actor","attributes","integration","binding","detail","link_html"]},"CreateIntegrationEvent":{"type":"object","description":"DTO object for creating an integration event for an integration. `type` and `binding` are parameters restricted by the\nintegration the event is being created for, found in the related integration manifest.\n","additionalProperties":false,"properties":{"type":{"type":"string","description":"Type of the event.","example":"incident.triggered"},"ts":{"type":"string","format":"date-time","description":"Date the event occurred at.","example":"2024-01-01T00:00:00Z"},"deduplication_id":{"type":"string","description":"Idempotent processing identifier of the event on ingestion.","example":"1d34191ebfe305a56bf4f3303d1a8dcf"},"actor":{"$ref":"#/components/schemas/IntegrationEventActor"},"attributes":{"type":"object","description":"Additional attributes of the event, specific to the binding resource and integration.","additionalProperties":true,"example":{"service_id":"PLK33TY","incident_id":"PGR0VU2","escalation_policy_id":"P005NFS","priority_id":"P9BO35Z","urgency":"low","title":"Example API Service Incident","html_url":"https://acme.pagerduty.com/incidents/PGR0VU2"}},"data":{"type":"object","description":"JSON object containing the data which binds the integration to a service. Must match the schema defined for\nthe integration binding, referenced by the `binding` parameter.\n","additionalProperties":true,"example":{"pagerduty_service_id":"PLK33TY"}},"binding":{"type":"string","description":"Binding resource the event corresponds to.","example":"pagerduty_service"},"detail":{"type":"string","nullable":true,"description":"Additional detail about the event.","example":"Example API Service Incident"},"link_html":{"type":"string","nullable":true,"description":"URL to the web-page for the source of the event.","example":"https://acme.pagerduty.com/incidents/PGR0VU2"}},"required":["type","binding","ts","deduplication_id","actor","attributes","data","detail","link_html"]},"DocumentContentTypeEnum":{"type":"string","description":"Determines if response should be in JSON format or a document tree","default":"application/json","enum":["application/json","application/vnd.konnect.document-tree+json"]},"DocumentFormatContentTypeEnum":{"type":"string","default":"application/json","enum":["application/json"]},"SuggestedResourceAction":{"oneOf":[{"$ref":"#/components/schemas/ArchiveActionPayload"},{"$ref":"#/components/schemas/IgnoreActionPayload"},{"$ref":"#/components/schemas/MapServiceAction"},{"$ref":"#/components/schemas/CreateAndMapServiceActionPayload"}]},"SuggestedResourceActionFilterParameters":{"title":"SuggestedResourceActionFilterParameters","type":"object","additionalProperties":false,"properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"suggestion_rule_id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"entity_name":{"$ref":"#/components/schemas/StringFieldFilter"},"service_id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"integration.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.display_name":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"integration.instance.id":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"ignored":{"$ref":"#/components/schemas/BooleanFieldFilter"},"action.type":{"oneOf":[{"$ref":"#/components/schemas/StringFieldFilterExact"}]},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"SuggestedResourceActionObject":{"title":"SuggestedResourceAction","description":"Contains information about a suggested resource action","allOf":[{"type":"object","required":["id","integration","suggestion_rule_id","entity_name","service_id","action","ignored"],"properties":{"id":{"description":"The suggested resource action rule ID.","type":"string","example":"76ca0689-f08e-4c04-b2a6-4c992d89d554"},"integration":{"$ref":"#/components/schemas/IntegrationRef"},"suggestion_rule_id":{"description":"The identifier of the suggestion rule that generated this suggested resource action.","type":"string","format":"uuid","nullable":true,"example":"22f72bd1-2897-473e-9471-302de3ccf38b"},"entity_name":{"type":"string","description":"The entity name of the discovered entity associated to this suggested action.","example":"My Service"},"service_id":{"description":"The identifier of the service this suggested resource action may act on.","type":"string","format":"uuid","nullable":true,"example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"ignored":{"description":"Determines if this suggested action has been ignored or not.\n- `true`: Suggested action has been ignored\n- `false`: Suggested action is ready to be accepted or ignored\n","type":"boolean","example":false},"action":{"$ref":"#/components/schemas/SuggestedResourceAction"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}}}]},"UpdateSuggestedResourceAction":{"title":"UpdateSuggestedResourceAction","description":"Payload to update a suggested resource action.","type":"object","additionalProperties":false,"required":["ignored"],"properties":{"ignored":{"description":"Determines if this suggested action has been ignored or not.\n- `true`: Suggested action has been ignored\n- `false`: Suggested action is ready to be accepted or ignored\n","type":"boolean","example":false}}},"VulnerabilityScanAttributesFieldFilter":{"title":"VulnerabilityScanAttributesFieldFilter","description":"Filters the vulnerability scans by values contained within the 'attributes' field. Filters must use dot-notation to identity the property that will be used to filter the results.\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"}]},"ServiceVulnerabilityScanFilterParameters":{"title":"ServiceVulnerabilityScanFilterParameters","type":"object","properties":{"scan_key":{"$ref":"#/components/schemas/StringFieldFilter"},"environment":{"$ref":"#/components/schemas/StringFieldFilter"},"region":{"$ref":"#/components/schemas/StringFieldFilter"},"source_correlation_key":{"$ref":"#/components/schemas/StringFieldFilter"},"attributes":{"$ref":"#/components/schemas/VulnerabilityScanAttributesFieldFilter"},"ts":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"VulnerabilityScanFilterParameters":{"title":"VulnerabilityScanFilterParameters","type":"object","allOf":[{"$ref":"#/components/schemas/ServiceVulnerabilityScanFilterParameters"},{"type":"object","properties":{"catalog_reference.service.id":{"$ref":"#/components/schemas/StringFieldFilterExact"}}}]},"VulnerabilityScan":{"title":"VulnerabilityScan","type":"object","properties":{"id":{"type":"string","format":"uuid","example":"0ca46543-e6a3-4a8b-8e2c-205935a1bb3a"},"scan_key":{"$ref":"#/components/schemas/VulnerabilityScanKey"},"tool":{"$ref":"#/components/schemas/VulnerabilityScanTool"},"tool_metadata":{"$ref":"#/components/schemas/VulnerabilityScanToolMetadata"},"description":{"type":"string","nullable":true},"catalog_reference":{"$ref":"#/components/schemas/VulnerabilityScanCatalogReference"},"environment":{"type":"string","nullable":true,"example":"prod"},"region":{"type":"string","nullable":true,"example":"us-east-2"},"source_correlation_key":{"type":"string","nullable":true,"example":"kong/repo-id"},"attributes":{"type":"object","additionalProperties":{"type":"string"},"example":{"org.kong.enterprise.source.version":"v1"}},"ts":{"type":"string","format":"date-time","description":"Date the vulnerability scan occurred at.","example":"2025-01-01T00:00:00Z"},"status":{"$ref":"#/components/schemas/VulnerabilityScanStatus"},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}},"required":["id","scan_key","tool","tool_metadata","description","catalog_reference","environment","region","source_correlation_key","attributes","ts","status","created_at","updated_at"]},"VulnerabilityScanKey":{"title":"VulnerabilityScanKey","type":"string","description":"Machine-usable value to correlate scans (and their vulnerabilities) on a given resource. This value is then\nused to determine vulnerabilities resolved/fixed between subsequent scans on the same resource.\n","example":"namespaces/foo:pods/bar-api"},"VulnerabilityScanTool":{"type":"string","enum":["grype","trivy"],"example":"trivy"},"VulnerabilityScanToolMetadata":{"type":"object","properties":{"name":{"type":"string","example":"Trivy"},"version":{"type":"string","nullable":true,"example":"1.0.0"}},"required":["name","version"]},"VulnerabilityScanCatalogReference":{"type":"object","oneOf":[{"$ref":"#/components/schemas/ServiceVulnerabilityScanCatalogReference"}]},"ServiceVulnerabilityScanCatalogReference":{"type":"object","additionalProperties":false,"properties":{"service":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string","format":"uuid","example":"b72008a7-1a8b-42d7-9691-ed88cbc1e61f"},"name":{"type":"string","example":"user-svc"},"display_name":{"type":"string","example":"User Service"}},"required":["id","name","display_name"]}},"required":["service"]},"VulnerabilityScanStatus":{"title":"VulnerabilityScanStatus","type":"string","enum":["in_progress","completed","failed"]},"ServiceVulnerabilityFilterParameters":{"title":"ServiceVulnerabilityFilterParameters","type":"object","properties":{"id":{"$ref":"#/components/schemas/StringFieldFilterExact"},"state":{"$ref":"#/components/schemas/StringFieldFilterExact"},"title":{"$ref":"#/components/schemas/StringFieldFilter"},"severity":{"$ref":"#/components/schemas/StringFieldFilterExact"},"opened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"reopened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"last_opened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"dismissed_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"fixed_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"instance_count":{"$ref":"#/components/schemas/NumericFieldFilter"}}},"VulnerabilityScanVulnerabilityFilterParameters":{"title":"VulnerabilityScanVulnerabilityFilterParameters","type":"object","allOf":[{"$ref":"#/components/schemas/ServiceVulnerabilityFilterParameters"},{"type":"object","properties":{"scan_state":{"$ref":"#/components/schemas/StringFieldFilterExact"}}}]},"CreateVulnerabilityScan":{"title":"UploadVulnerabilityScan","type":"object","additionalProperties":false,"properties":{"scan_key":{"$ref":"#/components/schemas/VulnerabilityScanKey"},"tool":{"$ref":"#/components/schemas/VulnerabilityScanTool"},"description":{"type":"string","nullable":true},"raw_scan_report":{"type":"object","additionalProperties":true},"catalog_reference":{"$ref":"#/components/schemas/CreateVulnerabilityScanCatalogReference"},"environment":{"type":"string","nullable":true,"example":"prod"},"region":{"type":"string","nullable":true,"example":"us-east-2"},"source_correlation_key":{"type":"string","example":"kong/repo-id","description":"Optional key used to correlate vulnerabilities found in this scan with the same vulnerabilities found across different sources.\nThis allows tracking the same vulnerability in two sources as one vulnerability instance.\nWhen omitted, this will inherit the value of `scan_key`.\n"},"attributes":{"type":"object","additionalProperties":{"type":"string"},"example":{"org.kong.enterprise.source.version":"v1"}},"ts":{"type":"string","format":"date-time","description":"Optional RFC-3339 timestamp indicating when the vulnerability scan was run.\nIf provided, this value will be used as the authoritative scan time.\nIf omitted, the system will attempt to extract a timestamp from the uploaded scan report.\nIf no timestamp can be extracted, the server's current time at ingestion will be used.\n","example":"2025-01-01T00:00:00Z"}},"required":["scan_key","tool","description","raw_scan_report","catalog_reference","environment","region","attributes"]},"CreateServiceVulnerabilityScanCatalogReference":{"type":"object","additionalProperties":false,"properties":{"service":{"type":"string","description":"Reference to the service to map the vulnerability scan to. Can be either the service name or ID.","example":"user-svc"}},"required":["service"]},"CreateVulnerabilityScanCatalogReference":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CreateServiceVulnerabilityScanCatalogReference"}]},"ScanVulnerabilityState":{"type":"string","enum":["created","open","fixed"],"example":"created"},"CatalogVulnerabilityState":{"type":"string","enum":["open","fixed","dismissed","closed"],"example":"open"},"VulnerabilityInstanceState":{"type":"string","enum":["open","fixed"],"example":"open"},"VulnerabilityPackage":{"type":"object","description":"Details about the package that is affected by vulnerability\n","additionalProperties":false,"nullable":true,"properties":{"name":{"type":"string","nullable":true,"description":"Name of the vulnerable package","example":"apt"},"version":{"type":"string","nullable":true,"description":"Version of the vulnerable package","example":"1.4.11"}}},"VulnerabilityType":{"type":"string","enum":["container_image","library"],"readOnly":true,"example":"container_image"},"VulnerabilitySeverity":{"type":"string","enum":["low","medium","high","critical"],"example":"low"},"VulnerabilityState":{"type":"string","enum":["open","fixed","dismissed"],"example":"dismissed"},"BaseVulnerability":{"title":"BaseVulnerability","type":"object","properties":{"id":{"type":"string","format":"uuid","example":"9932dcab-ec65-46a1-9871-df0aae8e1e8e"},"cve_id":{"type":"string","nullable":true,"example":"CVE-2025-1000"},"fixed_versions":{"type":"array","items":{"type":"string"},"nullable":true,"example":["1.0.1","2.0.0"]},"title":{"type":"string","example":"Summary of CVE finding."},"description":{"type":"string","nullable":true,"example":"Further description text of CVE finding."},"severity":{"$ref":"#/components/schemas/VulnerabilitySeverity"},"severity_score":{"type":"integer","example":1,"description":"numeric representation of severity"},"type":{"$ref":"#/components/schemas/VulnerabilityType"},"raw_finding":{"type":"object","additionalProperties":true},"opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-01T20:41:45.068Z"},"reopened_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"last_opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"dismissed_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-01T21:41:45.068Z"},"dismissed_reason":{"type":"string","nullable":true,"example":"no_bandwidth"},"fixed_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-01T22:41:45.068Z"},"instance_count":{"type":"integer","example":1,"readOnly":true},"package":{"$ref":"#/components/schemas/VulnerabilityPackage"},"sources":{"type":"array","items":{"type":"string"}},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}},"required":["id","cve_id","title","description","severity","severity_score","type","raw_finding","opened_at","reopened_at","last_opened_at","dismissed_at","dismissed_reason","fixed_at","fixed_versions","instance_count","package","sources","created_at","updated_at"]},"CatalogVulnerability":{"title":"Vulnerability","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/BaseVulnerability"},{"type":"object","properties":{"state":{"$ref":"#/components/schemas/CatalogVulnerabilityState"},"service_count":{"type":"integer","example":1}},"required":["state","service_count"]}]},"Vulnerability":{"title":"Vulnerability","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/BaseVulnerability"},{"type":"object","properties":{"state":{"$ref":"#/components/schemas/VulnerabilityState"},"service":{"$ref":"#/components/schemas/ServiceReference"}},"required":["state","service"]}]},"ScanVulnerability":{"title":"ScanVulnerability","type":"object","additionalProperties":false,"allOf":[{"$ref":"#/components/schemas/Vulnerability"},{"type":"object","properties":{"scan_state":{"$ref":"#/components/schemas/ScanVulnerabilityState"}},"required":["scan_state"]}]},"ServiceReference":{"title":"ServiceReference","type":"object","description":"Reference object containing information about a related service.","properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The service ID.","readOnly":true},"name":{"type":"string","description":"The name of the Service.","minLength":1,"maxLength":120,"pattern":"^[0-9a-z.-]+$","example":"user-svc"},"display_name":{"type":"string","description":"The display name of the Service.","minLength":1,"maxLength":120,"example":"User Service"}},"required":["id","name","display_name"]},"CatalogVulnerabilityFilterParameters":{"title":"CatalogVulnerabilityFilterParameters","type":"object","allOf":[{"$ref":"#/components/schemas/ServiceVulnerabilityFilterParameters"},{"type":"object","properties":{"service_count":{"$ref":"#/components/schemas/NumericFieldFilter"}}}]},"VulnerabilityServiceFilterParameters":{"title":"VulnerabilityServiceFilterParameters","type":"object","allOf":[{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"labels":{"$ref":"#/components/schemas/LabelsFieldFilter"},"vulnerability.state":{"$ref":"#/components/schemas/StringFieldFilterExact"},"vulnerability.opened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.reopened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.last_opened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.dismissed_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.fixed_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.instance_count":{"$ref":"#/components/schemas/NumericFieldFilter"},"custom_fields":{"description":"Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"},{"$ref":"#/components/schemas/BooleanFieldFilter"},{"$ref":"#/components/schemas/NumericFieldFilter"}]}}}]},"ServiceVulnerabilityAttributes":{"title":"ServiceVulnerabilityAttributes","description":"Service-specific attributes of a given vulnerability.","type":"object","additionalProperties":false,"properties":{"state":{"$ref":"#/components/schemas/VulnerabilityState"},"opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-01T20:41:45.068Z"},"reopened_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"last_opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"dismissed_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-01T21:41:45.068Z"},"dismissed_reason":{"type":"string","nullable":true,"readOnly":true,"example":"no_bandwidth"},"fixed_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-01T22:41:45.068Z"},"instance_count":{"type":"number","readOnly":true,"example":1}},"required":["state","opened_at","reopened_at","last_opened_at","dismissed_at","dismissed_reason","fixed_at","instance_count"]},"VulnerabilityService":{"title":"VulnerabilityService","description":"Service representation that includes attributes for the related vulnerability.","allOf":[{"$ref":"#/components/schemas/CatalogService"},{"type":"object","required":["vulnerability"],"properties":{"vulnerability":{"$ref":"#/components/schemas/ServiceVulnerabilityAttributes"}}}]},"VulnerabilityInstanceFilterParameters":{"title":"VulnerabilityInstanceFilterParameters","type":"object","allOf":[{"$ref":"#/components/schemas/ServiceVulnerabilityInstanceFilterParameters"},{"type":"object","properties":{"service.id":{"$ref":"#/components/schemas/StringFieldFilterExact"}}}]},"ServiceVulnerabilityInstanceFilterParameters":{"title":"ServiceVulnerabilityInstanceFilterParameters","type":"object","properties":{"state":{"$ref":"#/components/schemas/StringFieldFilter"},"environment":{"$ref":"#/components/schemas/StringFieldFilter"},"region":{"$ref":"#/components/schemas/StringFieldFilter"},"source_correlation_key":{"$ref":"#/components/schemas/StringFieldFilter"}}},"PutVulnerabilitySeverityOverride":{"title":"PutVulnerabilityOverride","type":"object","additionalProperties":false,"properties":{"comment":{"type":"string","description":"A human-readable comment associated with the vulnerability override, to add further context and description.\n","nullable":true,"example":"Severity bumped to high due to business impact."},"severity":{"$ref":"#/components/schemas/VulnerabilitySeverity"}},"required":["comment","severity"]},"PutVulnerabilityDismissal":{"title":"PutVulnerabilityDismissal","type":"object","additionalProperties":false,"properties":{"comment":{"type":"string","description":"A human-readable comment associated with the vulnerability dismissal, to add further context and description.\n","nullable":true,"example":"Acceptable risk."},"reason":{"type":"string","description":"The reason the vulnerability was dismissed.","nullable":true,"example":"acceptable_risk"}},"required":["comment","reason"]},"CatalogVulnerabilityServiceFilterParameters":{"title":"CatalogVulnerabilityServiceFilterParameters","type":"object","allOf":[{"type":"object","properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"display_name":{"$ref":"#/components/schemas/StringFieldFilter"},"labels":{"$ref":"#/components/schemas/LabelsFieldFilter"},"vulnerability.most_recent_vulnerability_opened_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"vulnerability.instance_count":{"$ref":"#/components/schemas/NumericFieldFilter"},"vulnerability.vulnerability_count":{"$ref":"#/components/schemas/NumericFieldFilter"},"custom_fields":{"description":"Filter by custom fields using dot-notation to specify the custom field.\nFilter operators are dictated by the custom field type. For example:\n  - `filter[custom_fields.owner]`\n  - `filter[custom_fields.owner][neq]=kong`\n  - `filter[custom_fields.dashboard.link][contains]=https`\n","oneOf":[{"$ref":"#/components/schemas/StringFieldFilter"},{"$ref":"#/components/schemas/BooleanFieldFilter"},{"$ref":"#/components/schemas/NumericFieldFilter"}]}}}]},"VulnerabilitiesMetricsQuery":{"type":"object","description":"A query against vulnerability metrics.","additionalProperties":false,"required":["metrics","dimensions","filters","time_range"],"properties":{"metrics":{"type":"array","minItems":1,"maxItems":1,"description":"List of aggregated metrics to collect across the requested time span.","items":{"type":"string","enum":["vulnerability_count"]}},"dimensions":{"type":"array","description":"The list of dimensions to group by.","maxItems":2,"example":["service","state"],"items":{"type":"string","enum":["time","service","severity","state","type","source","environment","region"]}},"filters":{"type":"array","description":"A list of filters to apply to the query.","items":{"oneOf":[{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByService"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterBySeverity"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByState"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByType"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterBySource"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByEnvironment"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByRegion"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByCVE"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByPackageName"},{"$ref":"#/components/schemas/VulnerabilitiesMetricsFilterByScanAttributes"}]}},"granularity":{"type":"string","description":"Force time grouping into buckets of the specified duration. Only has an effect if `time` is in the `dimensions` list.\n\nThe granularity of the result may be coarser than requested.\nThe exact result granularity will be reported in the response `meta.granularity_ms` field.\n\nIf granularity is not specified and `time` is in the `dimensions` list, a default will be chosen based on the time range requested.\n\nDifferent relative times support different granularities:\n  - 1d  => daily\n  - 7d  => daily, weekly\n  - 3w  => daily, weekly\n  - 30d => daily, weekly\n  - 3mo => daily, weekly\n  - 1y  => daily, weekly\n\nFor special time ranges:\n  - current_week, previous_week   => daily\n  - current_month, previous_month => daily, weekly\n\nFor absolute time ranges, daily will be used.\n","enum":["daily","weekly"]},"time_range":{"description":"The time range to query.","oneOf":[{"$ref":"#/components/schemas/VulnerabilityMetricsRelativeTimeRange"},{"$ref":"#/components/schemas/VulnerabilityMetricsAbsoluteTimeRange"}],"discriminator":{"propertyName":"type","mapping":{"relative":"#/components/schemas/VulnerabilityMetricsRelativeTimeRange","absolute":"#/components/schemas/VulnerabilityMetricsAbsoluteTimeRange"}}}}},"VulnerabilitiesMetricsFilterByService":{"type":"object","required":["operator","value","field"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","format":"uuid"}},"field":{"type":"string","enum":["service"]}},"description":"Filters a metrics query by `service`."},"VulnerabilitiesMetricsFilterBySeverity":{"type":"object","description":"Filters a metrics query by `severity`.","required":["field","operator","value"],"properties":{"field":{"type":"string","enum":["severity"]},"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilitySeverity"}}}},"VulnerabilitiesMetricsFilterByState":{"type":"object","description":"Filters a metrics query by `state`.","required":["field","operator","value"],"properties":{"field":{"type":"string","enum":["state"]},"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityState"}}}},"VulnerabilitiesMetricsFilterByType":{"type":"object","description":"Filters a metrics query by `type`.","required":["field","operator","value"],"properties":{"field":{"type":"string","enum":["type"]},"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilityType"}}}},"VulnerabilitiesMetricsFilterBySource":{"type":"object","description":"Filters a metrics query by `source`.","required":["field","operator","value"],"properties":{"field":{"type":"string","enum":["source"]},"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","example":"trivy"}}}},"VulnerabilitiesMetricsFilterByEnvironment":{"description":"Filters a metrics query by `environment`.","allOf":[{"type":"object","required":["field"],"properties":{"field":{"type":"string","enum":["environment"]}}},{"oneOf":[{"$ref":"#/components/schemas/EmptyValueMetricsFilter"},{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","example":"prod"}}}}]}]},"VulnerabilitiesMetricsFilterByRegion":{"description":"Filters a metrics query by `region`.","allOf":[{"type":"object","required":["field"],"properties":{"field":{"type":"string","enum":["region"]}}},{"oneOf":[{"$ref":"#/components/schemas/EmptyValueMetricsFilter"},{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","example":"us-east-1"}}}}]}]},"VulnerabilitiesMetricsFilterByCVE":{"description":"Filters a metrics query by `cve_id`.","allOf":[{"type":"object","required":["field"],"properties":{"field":{"type":"string","enum":["cve_id"]}}},{"oneOf":[{"$ref":"#/components/schemas/EmptyValueMetricsFilter"},{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","example":"CVE-2025-1000"}}}}]}]},"VulnerabilitiesMetricsFilterByPackageName":{"description":"Filters a metrics query by `package.name`.","allOf":[{"type":"object","required":["field"],"properties":{"field":{"type":"string","enum":["package.name"]}}},{"oneOf":[{"$ref":"#/components/schemas/EmptyValueMetricsFilter"},{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string","example":"log4j"}}}}]}]},"VulnerabilitiesMetricsFilterByScanAttributes":{"description":"Filters a metrics query by `scan_attributes` properties.\nDot-notation off of `scan_attributes` is used to specify the property to filter by.\n\nExample: `scan_attributes.image_tag`.\n","allOf":[{"type":"object","required":["field"],"properties":{"field":{"type":"string","pattern":"^scan_attributes\\.[^.\\s]+$"}}},{"oneOf":[{"$ref":"#/components/schemas/EmptyValueMetricsFilter"},{"$ref":"#/components/schemas/StringValueMetricsFilter"},{"$ref":"#/components/schemas/NumericValueMetricsFilter"}]}],"example":{"field":"scan_attributes.image_version","operator":"in","value":["2.0.7"]}},"VulnerabilitiesMetricsQueryResult":{"type":"object","description":"A query result with metrics grouped by the dimensions specified in the query, at a particular time.","required":["timestamp","event"],"properties":{"timestamp":{"type":"string","format":"date-time","example":"2025-04-01T07:20:50.000Z","description":"Timestamp corresponding to the aggregated metric data in the `event` object.\nRFC-3339 format with a \"T\" character separating date from time within the field value.\n"},"event":{"$ref":"#/components/schemas/VulnerabilitiesMetricsQueryResultEvent"}}},"VulnerabilitiesMetricsQueryResultEvent":{"oneOf":[{"$ref":"#/components/schemas/VulnerabilityCountMetricEvent"}],"description":"Payload containing the aggregated metric data and associated dimensions included in the query."},"VulnerabilityCountMetricEvent":{"type":"object","description":"Payload containing the aggregated vulnerability count metric data and associated dimensions included in the query.","properties":{"service":{"type":"string","format":"uuid"},"severity":{"$ref":"#/components/schemas/VulnerabilitySeverity"},"state":{"$ref":"#/components/schemas/VulnerabilityState"},"type":{"$ref":"#/components/schemas/VulnerabilityType"},"source":{"type":"string","example":"trivy"},"environment":{"type":"string","example":"prod"},"region":{"type":"string","example":"us-east-1"},"vulnerability_count":{"type":"number","format":"int32"}},"required":["vulnerability_count"],"example":{"vulnerability_count":58,"state":"open","service":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"}},"VulnerabilityMetricsAbsoluteTimeRange":{"type":"object","description":"A duration representing an exact start and end time.","additionalProperties":false,"required":["type","start","end"],"properties":{"tz":{"type":"string","description":"Time zone in IANA Time Zone Database format (e.g., 'America/New_York', 'Europe/London', 'Etc/UTC').\nOptional, defaults to UTC when unspecified.\n","default":"Etc/UTC","example":"America/Chicago"},"type":{"type":"string","enum":["absolute"]},"start":{"format":"date-time","type":"string","description":"Start of the query time range in RFC-3339 format.","example":"2025-03-30T07:20:50Z"},"end":{"format":"date-time","type":"string","description":"Start of the query time range in RFC-3339 format.","example":"2025-06-30T08:20:50Z"}}},"VulnerabilityMetricsRelativeTimeRange":{"type":"object","description":"A duration representing a relative-to-now span of time.\nThe start time is floored to the requested granularity.\nThe exact start and end timestamps are returned in the result query in the meta.start and meta.end fields.\nExample:\n  7d from now, with 1day granularity initiated at 2024-01-08T17:11:00+05:00 will query for the time range from 2024-01-01T00:00:00+05:00 to 2024-01-08T17:11:00+05:00.\n","additionalProperties":false,"required":["type","time_range"],"properties":{"tz":{"type":"string","description":"Time zone in IANA Time Zone Database format (e.g., 'America/New_York', 'Europe/London', 'Etc/UTC').\nOptional, defaults to UTC when unspecified.\n","default":"Etc/UTC","example":"America/Chicago"},"type":{"type":"string","enum":["relative"]},"time_range":{"oneOf":[{"title":"RelativeDayTimeRange","type":"string","pattern":"^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-9]{2}|3[0-5][0-9]|36[0-5])d$","default":"30d"},{"title":"RelativeWeekTimeRange","type":"string","pattern":"^([1-9]|[1-4][0-9]|5[0-2])w$"},{"title":"RelativeMonthTimeRange","type":"string","pattern":"^([1-9]|1[0-2])mo$"},{"title":"RelativeYearTimeRange","type":"string","enum":["1y"]},{"title":"RelativeReservedRange","type":"string","enum":["current_week","current_month","previous_week","previous_month"]}]}}},"VulnerabilitiesMetricsResponseMetadata":{"type":"object","description":"Metadata about the query response. This includes:\n  - The start and end times of the query\n  - The granularity of the result\n  - Whether the result was truncated\n  - The limit of the result\n  - The `query_id`\n","required":["start","start_ms","end","end_ms","display","metric_names","metric_units","granularity_ms","truncated","limit","query_id"],"properties":{"start":{"type":"string","format":"date-time","description":"Start of the query time range in RFC-3339 format.","example":"2025-03-30T07:20:50Z"},"start_ms":{"type":"number","description":"Start of the query time range in epoch format with millisecond precision.","example":1743319250000},"end":{"type":"string","format":"date-time","description":"End of the query time range in RFC-3339 format.","example":"2025-03-30T08:20:50Z"},"end_ms":{"type":"number","description":"End of the query time range in epoch format with millisecond precision.","example":1743322850000},"metric_names":{"type":"array","description":"List of vulnerability metric names included in the result.","items":{"type":"string","enum":["vulnerability_count"]}},"metric_units":{"type":"object","description":"A mapping of metric names to their associated human-friendly display unit.\nThe keys are the metric names, and the values are the units.\n","properties":{"vulnerability_count":{"type":"string","enum":["count"]}}},"granularity_ms":{"type":"number","description":"The number of milliseconds per interval in a time series.\n"},"truncated":{"type":"boolean","description":"Set to `true`` when the limit of cardinarlity is hit.\nFor queries with 2 dimensions, the limit truncates the first dimension, and then groups all other groupings for the second dimension.\n\nExample: limit of 2 for `service` and `region` would return 2 services maximum, and 2 regions + ____OTHER____.\nThe ____OTHER___ is representative of all other regions.\n"},"limit":{"type":"number","description":"The applied cardinality limit."},"query_id":{"type":"string","description":"An ID that can be used to reference the query.","example":"e2a6c0ce-3a90-4b6b-b9bf-cf6428d30ffe"},"display":{"type":"object","description":"Instructs how to interpret identifiers in the query result.\nThe structure consists of: dimension -> ID -> entity metadata.\nSince entity names within Konnect may overlap, ids are returned and used for exact grouping.\nThis blob may be used to join and display results in a more human-friendly manner.\nSince IDs represent entities in the system at all points in time, historical data will still exist even if an entity is deleted.\nThese such entities are marked with the `deleted: true` value.\nAnother special case is the `____OTHER____` entity.\nWhen the limit of cardinality is reached for a second dimension, the system will group all other entities into the ____OTHER____ grouping.\nThis prevents returning an overwhelming number of long tail entities.\n","properties":{"service":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"severity":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"state":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"type":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"source":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"environment":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}},"region":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/MetricDimensionDisplayEntry"}}},"example":{"service":{"3a564a6a-1952-4181-89f0-a1cadc70123d":{"id":"3a564a6a-1952-4181-89f0-a1cadc70123d","name":"Pricing Svc","deleted":false},"58620e4e-27f4-42eb-9776-402ec319c665":{"id":"58620e4e-27f4-42eb-9776-402ec319c665","name":"Billing Svc","deleted":true}},"state":{"open":{"id":"open","name":"Open","deleted":false},"fixed":{"id":"fixed","name":"Fixed","deleted":false},"dismissed":{"id":"dismissed","name":"Dismissed","deleted":false}}}}}},"StringValueMetricsFilter":{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterInOperator"},"value":{"type":"array","items":{"type":"string"}}}},"NumericValueMetricsFilter":{"type":"object","required":["operator","value"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterNumericOperator"},"value":{"type":"number"}}},"EmptyValueMetricsFilter":{"type":"object","required":["operator"],"properties":{"operator":{"$ref":"#/components/schemas/MetricsFilterEmptyOperator"}}},"MetricsFilterEmptyOperator":{"type":"string","description":"The type of filter to apply.\nEmpty values are `null` or undefined.\n","enum":["empty","not_empty"]},"MetricsFilterInOperator":{"type":"string","description":"The type of filter to apply.\n  - `in` filters will limit results to only the specified values\n  - `not_in` filters will exclude the specified values\n","enum":["in","not_in"]},"MetricsFilterNumericOperator":{"type":"string","description":"The type of filter to apply to numeric field values.","enum":["=","!=","<",">","<=",">="]},"MetricDimensionDisplayEntry":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"deleted":{"type":"boolean"},"is_other_group":{"type":"boolean"}}},"BaseVulnerabilitySource":{"type":"object","properties":{"type":{"type":"string","example":"grype"},"raw_finding":{"type":"object","nullable":true,"additionalProperties":true}},"required":["type","raw_finding"]},"ScanVulnerabilitySource":{"type":"object","allOf":[{"$ref":"#/components/schemas/BaseVulnerabilitySource"},{"type":"object","properties":{"scan_key":{"type":"string"},"scan_tool":{"$ref":"#/components/schemas/VulnerabilityScanToolMetadata"}},"required":["scan_key","scan_tool"]}]},"VulnerabilitySource":{"type":"object","oneOf":[{"$ref":"#/components/schemas/ScanVulnerabilitySource"}]},"VulnerabilityInstance":{"title":"VulnerabilityInstance","type":"object","additionalProperties":false,"properties":{"vulnerability_id":{"type":"string","format":"uuid","example":"5c3ddf1c-d34a-4860-83c1-180bc741e8d4"},"service":{"$ref":"#/components/schemas/ServiceReference"},"state":{"$ref":"#/components/schemas/VulnerabilityInstanceState"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/VulnerabilitySource"}},"opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-01T20:41:45.068Z"},"reopened_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"last_opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"fixed_at":{"type":"string","format":"date-time","nullable":true,"readOnly":true,"example":"2025-01-01T22:41:45.068Z"},"environment":{"type":"string","nullable":true,"example":"prod"},"region":{"type":"string","nullable":true,"example":"us-east-2"},"source_correlation_key":{"type":"string","nullable":true,"description":"Key used to correlate and group activity on this vulnerability instance across different sources (e.g. trivy, grype).\n","example":"kong/repo-id"}},"required":["vulnerability_id","service","state","sources","opened_at","reopened_at","last_opened_at","fixed_at","environment","region","source_correlation_key"]},"CatalogVulnerabilityService":{"title":"CatalogVulnerabilityService","description":"Service representation that includes cross-vulnerability context.","allOf":[{"$ref":"#/components/schemas/CatalogService"},{"type":"object","required":["vulnerability"],"properties":{"vulnerability":{"$ref":"#/components/schemas/CatalogServiceVulnerabilityAttributes"}}}]},"CatalogServiceVulnerabilityAttributes":{"title":"CatalogServiceVulnerabilityAttributes","description":"Service-specific attributes describing cross-vulnerability context.","additionalProperties":false,"properties":{"most_recent_vulnerability_opened_at":{"type":"string","format":"date-time","readOnly":true,"example":"2025-01-02T20:41:45.068Z"},"instance_count":{"type":"number","readOnly":true,"example":1},"vulnerability_count":{"type":"number","readOnly":true,"example":1}},"required":["most_recent_vulnerability_opened_at","instance_count","vulnerability_count"]},"CustomFieldSchemaFilterParameters":{"title":"CustomFieldSchemaFilterParameters","type":"object","additionalProperties":false,"properties":{"name":{"$ref":"#/components/schemas/StringFieldFilter"},"id":{"$ref":"#/components/schemas/StringFieldEqualsFilter"},"created_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"},"updated_at":{"$ref":"#/components/schemas/DateTimeFieldFilter"}}},"CustomFieldSchema":{"type":"object","description":"Contains information about a custom field schema.","properties":{"id":{"type":"string","format":"uuid","example":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","description":"The Custom Field ID.","readOnly":true},"name":{"type":"string","example":"slack-url","description":"The name of the custom field.","maxLength":120},"schema":{"type":"object","description":"JSON object containing the custom field schema definition.","additionalProperties":true,"default":{},"example":{"display_name":"slack url","description":"Slack URL metadata.","required":false,"type":"string"}},"created_at":{"$ref":"#/components/schemas/CreatedAt"},"updated_at":{"$ref":"#/components/schemas/UpdatedAt"}},"required":["id","name","schema","created_at","updated_at"]},"CatalogServiceApiMapping":{"type":"object","description":"Represents an API mapping associated with a service in the catalog.","required":["id","service_id","api_id","created_at","updated_at"],"properties":{"id":{"type":"string","format":"uuid","description":"The mapping ID."},"service_id":{"type":"string","format":"uuid","description":"The ID of the service."},"api_id":{"type":"string","format":"uuid","description":"The ID of the API."},"created_at":{"type":"string","format":"date-time","description":"Creation timestamp."},"updated_at":{"type":"string","format":"date-time","description":"Last update timestamp."}}},"CatalogServiceApiMappingFilterParameters":{"title":"CatalogServiceApiMappingFilterParameters","type":"object","additionalProperties":false,"properties":{"api_id":{"$ref":"#/components/schemas/UuidFieldFilter"},"id":{"$ref":"#/components/schemas/UuidFieldFilter"}}},"CatalogApiServiceMappingFilterParameters":{"title":"CatalogApiServiceMappingFilterParameters","type":"object","additionalProperties":false,"properties":{"service_id":{"$ref":"#/components/schemas/UuidFieldFilter"},"id":{"$ref":"#/components/schemas/UuidFieldFilter"}}},"StringFieldEqualsFilter":{"title":"StringFieldEqualsFilter","description":"Filters on the given string field value by exact match.","x-examples":{"example-1":"equals-some-value","example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string"}}},"UuidFieldFilter":{"description":"Filter using **one** of the following operators: `eq`, `oeq`, `neq`","x-examples":{"example-1":{"oeq":"some-value,some-other-value","neq":"not-this-value"},"example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.","example":"?filter[field_name_here][eq]=foo"},"oeq":{"type":"string","description":"The field matches any of the provided values.","example":"?filter[field_name_here][oeq]=foo,bar"},"neq":{"type":"string","description":"The field does not match the provided value.","example":"?filter[field_name_here][neq]=bar"}},"type":"object","additionalProperties":false},"StringFieldFilter":{"oneOf":[{"title":"Filter by operator","description":"Filter using **one** of the following operators: `eq`, `oeq`, `neq`, `contains`, `ocontains`","x-examples":{"example-1":{"contains":"some-value","ocontains":"this-value,or-that-value","oeq":"some-value,some-other-value","neq":"not-this-value"},"example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.","example":"?filter[field_name_here][eq]=foo"},"contains":{"type":"string","description":"The field contains the provided value.","example":"?filter[field_name_here][contains]=foo"},"ocontains":{"type":"string","description":"The field contains any of the provided values.","example":"?filter[field_name_here][ocontains]=foo,bar"},"oeq":{"type":"string","description":"The field matches any of the provided values.","example":"?filter[field_name_here][oeq]=foo,bar"},"neq":{"type":"string","description":"The field does not match the provided value.","example":"?filter[field_name_here][neq]=bar"}},"type":"object","additionalProperties":false},{"title":"Filter by exact string match","type":"string","description":"The field exactly matches the provided value.","example":"?filter[title]=foo"}]},"BooleanFieldFilter":{"title":"BooleanFieldFilter","description":"Filter by a boolean value (true/false).","type":"boolean","x-examples":{"example-1":true}},"NumericFieldFilter":{"description":"Filter by a numeric value.","oneOf":[{"type":"number","description":"Value strictly equals the given numeric value.","example":21},{"type":"object","title":"NumericFieldEqualsFilter","additionalProperties":false,"properties":{"eq":{"type":"number","description":"Value strictly equals the given numeric value.","example":3.14}},"required":["eq"]},{"type":"object","title":"NumericFieldLTFilter","additionalProperties":false,"properties":{"lt":{"type":"number","description":"Value is less than the given numeric value.","example":10}},"required":["lt"]},{"type":"object","title":"NumericFieldLTEFilter","additionalProperties":false,"properties":{"lte":{"type":"number","description":"Value is less than or equal to the given numeric value.","example":10}},"required":["lte"]},{"type":"object","title":"NumericFieldGTFilter","additionalProperties":false,"properties":{"gt":{"type":"number","description":"Value is greater than the given numeric value.","example":1.85}},"required":["gt"]},{"type":"object","title":"NumericFieldGTEFilter","additionalProperties":false,"properties":{"gte":{"type":"number","description":"Value is greater than or equal to the given numeric value.","example":1.85}},"required":["gte"]}],"x-examples":{"numeric_field_1":11,"numeric_field_2":{"eq":11},"numeric_field_3":{"lt":15.85},"numeric_field_4":{"lte":15.85},"numeric_field_5":{"gt":3.14},"numeric_field_6":{"gte":3.14}}},"LabelsFieldFilter":{"allOf":[{"title":"LabelsFieldFilter","description":"Filters on the resource's `labels` field. Filters must use dot-notation to identify\nthe label key that will be used to filter the results. For example:\n  - `filter[labels.owner]`\n  - `filter[labels.owner][neq]=kong`\n  - `filter[labels.env]=dev`\n  - `filter[labels.env][ocontains]=dev,test`\n"},{"$ref":"#/components/schemas/StringFieldFilter"}]},"DateTimeFieldFilter":{"title":"DateTimeFieldFilter","description":"Filters on the given datetime (RFC-3339) field value.","oneOf":[{"type":"string","title":"DateTimeFieldImplicitEqualsFilter","format":"date-time","description":"Value strictly equals given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"},{"type":"object","title":"DateTimeFieldEqualsFilter","additionalProperties":false,"properties":{"eq":{"type":"string","format":"date-time","description":"Value strictly equals given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"}},"required":["eq"]},{"type":"object","title":"DateTimeFieldLTFilter","additionalProperties":false,"properties":{"lt":{"type":"string","format":"date-time","description":"Value is less than the given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"}},"required":["lt"]},{"type":"object","title":"DateTimeFieldLTEFilter","additionalProperties":false,"properties":{"lte":{"type":"string","format":"date-time","description":"Value is less than or equal to the given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"}},"required":["lte"]},{"type":"object","title":"DateTimeFieldGTFilter","additionalProperties":false,"properties":{"lt":{"type":"string","format":"date-time","description":"Value is greater than the given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"}},"required":["gt"]},{"type":"object","title":"DateTimeFieldGTEFilter","additionalProperties":false,"properties":{"lte":{"type":"string","format":"date-time","description":"Value is greater than or equal to the given RFC-3339 formatted timestamp in UTC","example":"2022-03-30T07:20:50Z"}},"required":["gte"]}],"x-examples":{"datetime_field_1":"2022-03-30T07:20:50Z","datetime_field_2":{"eq":"2022-03-30T07:20:50Z"},"datetime_field_3":{"lt":"2022-03-30T07:20:50Z"},"datetime_field_4":{"lte":"2022-03-30T07:20:50Z"},"datetime_field_5":{"gt":"2022-03-30T07:20:50Z"},"datetime_field_6":{"gte":"2022-03-30T07:20:50Z"}}},"SortQuery":{"title":"SortQuery","type":"string","example":"created_at desc","description":"The `asc` suffix is optional as the default sort order is ascending.\nThe `desc` suffix is used to specify a descending order.\nMultiple sort attributes may be provided via a comma separated list.\nJSONPath notation may be used to specify a sub-attribute (eg: 'foo.bar desc').\n"},"PageMeta":{"type":"object","description":"Contains pagination query parameters and the total number of objects returned.","required":["number","size","total"],"properties":{"number":{"type":"number","example":1,"x-speakeasy-terraform-ignore":true},"size":{"type":"number","example":10,"x-speakeasy-terraform-ignore":true},"total":{"type":"number","example":100,"x-speakeasy-terraform-ignore":true}}},"PaginatedMeta":{"type":"object","title":"PaginatedMeta","x-speakeasy-terraform-ignore":true,"description":"returns the pagination information","properties":{"page":{"$ref":"#/components/schemas/PageMeta"}},"required":["page"]},"Labels":{"title":"Labels","type":"object","example":{"env":"test"},"maxProperties":50,"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n","additionalProperties":{"type":"string","pattern":"^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$","minLength":1,"maxLength":63}},"CreatedAt":{"type":"string","format":"date-time","example":"2022-11-04T20:10:06.927Z","description":"An ISO-8601 timestamp representation of entity creation date.","readOnly":true,"x-speakeasy-param-suppress-computed-diff":true},"UpdatedAt":{"type":"string","format":"date-time","example":"2022-11-04T20:10:06.927Z","description":"An ISO-8601 timestamp representation of entity update date.","readOnly":true,"x-speakeasy-param-suppress-computed-diff":true},"BaseError":{"type":"object","title":"Error","description":"standard error","required":["status","title","instance","detail"],"properties":{"status":{"type":"integer","description":"The HTTP status code of the error. Useful when passing the response\nbody to child properties in a frontend UI. Must be returned as an integer.\n","readOnly":true},"title":{"type":"string","description":"A short, human-readable summary of the problem. It should not\nchange between occurences of a problem, except for localization.\nShould be provided as \"Sentence case\" for direct use in the UI.\n","readOnly":true},"type":{"type":"string","description":"The error type.","readOnly":true},"instance":{"type":"string","description":"Used to return the correlation ID back to the user, in the format\nkong:trace:<correlation_id>. This helps us find the relevant logs\nwhen a customer reports an issue.\n","readOnly":true},"detail":{"type":"string","description":"A human readable explanation specific to this occurence of the problem.\nThis field may contain request/entity data to help the user understand\nwhat went wrong. Enclose variable values in square brackets. Should be\nprovided as \"Sentence case\" for direct use in the UI.\n","readOnly":true}}},"InvalidRules":{"description":"invalid parameters rules","type":"string","readOnly":true,"nullable":true,"enum":["required","is_array","is_base64","is_boolean","is_date_time","is_integer","is_null","is_number","is_object","is_string","is_uuid","is_fqdn","is_arn","unknown_property","missing_reference","is_label","matches_regex","invalid","is_supported_network_availability_zone_list","is_supported_network_cidr_block","is_supported_provider_region","type"]},"InvalidParameterStandard":{"type":"object","additionalProperties":false,"properties":{"field":{"type":"string","example":"name","readOnly":true},"rule":{"$ref":"#/components/schemas/InvalidRules"},"source":{"type":"string","example":"body"},"reason":{"type":"string","example":"is a required field","readOnly":true}},"required":["field","reason"]},"InvalidParameterMinimumLength":{"type":"object","additionalProperties":false,"properties":{"field":{"type":"string","example":"name","readOnly":true},"rule":{"description":"invalid parameters rules","type":"string","readOnly":true,"nullable":false,"enum":["min_length","min_digits","min_lowercase","min_uppercase","min_symbols","min_items","min"]},"minimum":{"type":"integer","example":8},"source":{"type":"string","example":"body"},"reason":{"type":"string","example":"must have at least 8 characters","readOnly":true}},"required":["field","reason","rule","minimum"]},"InvalidParameterMaximumLength":{"type":"object","additionalProperties":false,"properties":{"field":{"type":"string","example":"name","readOnly":true},"rule":{"description":"invalid parameters rules","type":"string","readOnly":true,"nullable":false,"enum":["max_length","max_items","max"]},"maximum":{"type":"integer","example":8},"source":{"type":"string","example":"body"},"reason":{"type":"string","example":"must not have more than 8 characters","readOnly":true}},"required":["field","reason","rule","maximum"]},"InvalidParameterChoiceItem":{"type":"object","additionalProperties":false,"properties":{"field":{"type":"string","example":"name","readOnly":true},"rule":{"description":"invalid parameters rules","type":"string","readOnly":true,"nullable":false,"enum":["enum"]},"reason":{"type":"string","example":"is a required field","readOnly":true},"choices":{"type":"array","uniqueItems":true,"readOnly":true,"nullable":false,"minItems":1,"items":{}},"source":{"type":"string","example":"body"}},"required":["field","reason","rule","choices"]},"InvalidParameterDependentItem":{"type":"object","additionalProperties":false,"properties":{"field":{"type":"string","example":"name","readOnly":true},"rule":{"description":"invalid parameters rules","type":"string","readOnly":true,"nullable":true,"enum":["dependent_fields"]},"reason":{"type":"string","example":"is a required field","readOnly":true},"dependents":{"type":"array","uniqueItems":true,"nullable":true,"items":{},"readOnly":true},"source":{"type":"string","example":"body"}},"required":["field","rule","reason","dependents"]},"InvalidParameters":{"type":"array","nullable":false,"uniqueItems":true,"minItems":1,"description":"invalid parameters","items":{"oneOf":[{"$ref":"#/components/schemas/InvalidParameterStandard"},{"$ref":"#/components/schemas/InvalidParameterMinimumLength"},{"$ref":"#/components/schemas/InvalidParameterMaximumLength"},{"$ref":"#/components/schemas/InvalidParameterChoiceItem"},{"$ref":"#/components/schemas/InvalidParameterDependentItem"}]}},"BadRequestError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","required":["invalid_parameters"],"properties":{"invalid_parameters":{"$ref":"#/components/schemas/InvalidParameters"}}}]},"UnauthorizedError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":401},"title":{"example":"Unauthorized"},"type":{"example":"https://httpstatuses.com/401"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"Invalid credentials"}}}]},"ForbiddenError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":403},"title":{"example":"Forbidden"},"type":{"example":"https://httpstatuses.com/403"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"Forbidden"}}}]},"NotFoundError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":404},"title":{"example":"Not Found"},"type":{"example":"https://httpstatuses.com/404"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"Not found"}}}]},"LabelsUpdate":{"type":"object","nullable":true,"description":"Labels store metadata of an entity that can be used for filtering an entity list or for searching across entity types. \n\nLabels are intended to store **INTERNAL** metadata.\n\nKeys must be of length 1-63 characters, and cannot start with \"kong\", \"konnect\", \"mesh\", \"kic\", or \"_\".\n","example":{"env":"test"},"maxProperties":50,"additionalProperties":{"type":"string","pattern":"^[a-z0-9A-Z]{1}([a-z0-9A-Z-._]*[a-z0-9A-Z]+)?$","minLength":1,"maxLength":63,"nullable":true},"writeOnly":true},"ConflictError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":409},"title":{"example":"Conflict"},"type":{"example":"https://httpstatuses.com/409"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"Conflict"}}}]},"CursorPageParameters":{"type":"object","properties":{"size":{"type":"integer","description":"The number of items included per page.","example":10},"after":{"type":"string","description":"Cursor param specifying the page (i.e. the next page) of data returned.","example":"ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ"},"before":{"type":"string","description":"Cursor param specifying the page (i.e. the previous page) of data returned.","example":"ewogICJpZCI6ICJoZWxsbyB3b3JsZCIKfQ"}}},"StringFieldFilterExact":{"description":"Filter using **one** of the following operators: `eq`, `oeq`, `neq`","x-examples":{"example-1":{"oeq":"some-value,some-other-value","neq":"not-this-value"},"example-2":{"eq":"some-value"}},"properties":{"eq":{"type":"string","description":"The field exactly matches the provided value.","example":"?filter[field_name_here][eq]=foo"},"oeq":{"type":"string","description":"The field matches any of the provided values.","example":"?filter[field_name_here][oeq]=foo,bar"},"neq":{"type":"string","description":"The field does not match the provided value.","example":"?filter[field_name_here][neq]=bar"}},"type":"object","additionalProperties":false},"CursorMetaPage":{"type":"object","required":["size","next","previous"],"properties":{"first":{"description":"URI to the first page","type":"string","format":"path"},"last":{"description":"URI to the last page","type":"string","format":"path"},"next":{"description":"URI to the next page","type":"string","format":"path","nullable":true},"previous":{"description":"URI to the previous page","type":"string","format":"path","nullable":true},"size":{"description":"Requested page size","type":"number","example":10}}},"CursorMeta":{"type":"object","description":"Pagination metadata.","required":["page"],"properties":{"page":{"$ref":"#/components/schemas/CursorMetaPage"}}},"Slug":{"type":"string","description":"document slug","pattern":"^[\\w\\/-]+$","maxLength":512,"example":"path-for-seo"},"MoveDocumentRequestPayload":{"type":"object","title":"Move document","description":"move document request payload","properties":{"parent_document_id":{"type":"string","format":"uuid","description":"parent document id","example":"dd4e1b98-3629-4dd3-acc0-759a726ffee2"},"index":{"type":"integer","description":"index of the document in the parent document's children","example":1}}},"UnsupportedMediaTypeError":{"allOf":[{"$ref":"#/components/schemas/BaseError"},{"type":"object","properties":{"status":{"example":415},"title":{"example":"UnsupportedMediaType"},"type":{"example":"https://httpstatuses.com/415"},"instance":{"example":"kong:trace:1234567890"},"detail":{"example":"UnsupportedMediaType"}}}]}},"securitySchemes":{"konnectAccessToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"The Konnect access token is meant to be used by the Konnect dashboard and the decK CLI authenticate with.\n"},"personalAccessToken":{"type":"http","scheme":"bearer","bearerFormat":"Token","description":"The personal access token is meant to be used as an alternative to basic-auth when accessing Konnect via APIs.\nYou can generate a Personal Access Token (PAT) from the [personal access token page](https://cloud.konghq.com/global/account/tokens/) in the Konnect dashboard.\nThe PAT token must be passed in the header of a request, for example:\n`curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer kpat_xgfT...'`\n"},"systemAccountAccessToken":{"type":"http","scheme":"bearer","bearerFormat":"Token","description":"The system account access token is meant for automations and integrations that are not directly associated with a human identity.\nYou can generate a system account Access Token by creating a system account and then obtaining a system account access token for that account.\nThe access token must be passed in the header of a request, for example:\n`curl -X GET 'https://global.api.konghq.com/v2/users/' --header 'Authorization: Bearer spat_i2Ej...'`\n"}},"examples":{"SampleServiceCreatePayload":{"value":{"name":"sample-service","display_name":"Sample Service","description":"This is a sample service","custom_fields":{"owner":"John Appleseed","cost_center":"Research and Development","product_manager":"Jane","jira_project":{"name":"Sample Jira Project","link":"https://my-company.atlassian.net/jira/software/c/projects/SAMPLE"},"dashboard":{"name":"Sample Dashboard","link":"https://my-company.dashboards.com/sample-dashboard"},"git_repo":{"name":"Sample Project","link":"https://github.com/MyCompany/SampleProject"},"slack_channel":{"name":"My Company Channel","link":"https://my-company.slack.com/archives/C000AAAAAAA"}},"labels":{"env":"test"}}},"SampleServicePatchDescriptionPayload":{"value":{"description":"This is a sample service"}},"SampleServiceResponse":{"value":{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","name":"sample-service","display_name":"Sample Service","description":"This is a sample service","custom_fields":{"owner":"John Appleseed","cost_center":"Research and Development","product_manager":"Jane","jira_project":{"name":"Sample Jira Project","link":"https://my-company.atlassian.net/jira/software/c/projects/SAMPLE"},"dashboard":{"name":"Sample Dashboard","link":"https://my-company.dashboards.com/sample-dashboard"},"git_repo":{"name":"Sample Project","link":"https://github.com/MyCompany/SampleProject"},"slack_channel":{"name":"My Company Channel","link":"https://my-company.slack.com/archives/C000AAAAAAA"}},"labels":{"env":"test"},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}},"SampleServiceListResponse":{"value":{"data":[{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","name":"sample-service","display_name":"Sample Service","description":"This is a sample service","custom_fields":{"owner":"John Appleseed","cost_center":"Research and Development","product_manager":"Jane","jira_project":{"name":"Sample Jira Project","link":"https://my-company.atlassian.net/jira/software/c/projects/SAMPLE"},"dashboard":{"name":"Sample Dashboard","link":"https://my-company.dashboards.com/sample-dashboard"},"git_repo":{"name":"Sample Project","link":"https://github.com/MyCompany/SampleProject"},"slack_channel":{"name":"My Company Channel","link":"https://my-company.slack.com/archives/C000AAAAAAA"}},"labels":{"env":"test"},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"CatalogIntegrationResponse":{"value":{"name":"catalog-integration","display_name":"Catalog Integration","description":"Example of catalog integration.","built_in":false,"version":"v1","authorization":null,"config_schema":{},"visibility":"public","resource_types":{"service":{"display_name":"Service","schema":{"type":"simple","definition":{"id":"string"}},"integration_data_schema":{"type":"json_schema","definition":{"type":"object","properties":{"id":{"type":"string","example":"456"}}}},"resource_id_template":"{{id}}"}},"discovery":{"resource_integration_data_examples":{"service":{"id":456}}},"api_spec_provider":null,"events":null}},"BuiltInIntegrationsListResponse":{"value":{"data":[{"name":"gateway-manager","display_name":"Gateway Manager","description":"Map Gateway Services from Konnect Gateway Manager to visualize services across multiple control planes.","built_in":true,"version":"v1","authorization":null,"config_schema":{},"visibility":"public","resource_types":{"gateway_svc":{"display_name":"Gateway Service","schema":{"type":"simple","definition":{"control_plane_id":"string","gateway_service_id":"string"}},"integration_data_schema":null,"resource_id_template":"{{control_plane_id}}:{{gateway_service_id}}"}},"discovery":{"resource_integration_data_examples":{"gateway_svc":{"control_plane":{"id":"00000000-0000-0000-0000-000000000000","name":"control-plane-name","labels":{"env":"development"}},"gateway_service":{"id":"11111111-1111-1111-1111-111111111111","host":"konghq.com","name":"gateway-service","path":"/example","port":443,"tags":["env:development"],"type":"service","enabled":true,"protocol":"https","cluster_id":"22222222-2222-2222-2222-222222222222","created_at":1577854800,"updated_at":1577854800}}},"ingestion":{"transport":{"type":"kafka"},"scheduler_opt_out":false}},"api_spec_provider":null,"events":{"gateway_svc":{"plugin.added":{"display_name":"Plugin Added","description":"Plugin affecting a gateway service has been added.","events_feed":{"enabled":true}},"plugin.removed":{"display_name":"Plugin Removed","description":"Plugin affecting a gateway service has been removed.","events_feed":{"enabled":true}},"plugin.updated":{"display_name":"Plugin Updated","description":"Plugin affecting a gateway service has been updated.","events_feed":{"enabled":true}}}}},{"name":"analytics","display_name":"Konnect Analytics","description":"Map Reports from Konnect Analytics to monitor the performance and health of your Konnect entities.","built_in":true,"version":"v1","authorization":null,"config_schema":{},"visibility":"public","resource_types":{"report":{"display_name":"Report","schema":{"type":"simple","definition":{"report_id":"string"}},"integration_data_schema":null,"resource_id_template":"{{report_id}}"}},"discovery":{"resource_integration_data_examples":{"report":{"id":"312b3c02-8bcc-4945-a4a0-0bed2a55febb","name":"API Responses by Status Code","created_at":"2024-01-01T17:00:00.000Z","created_by":"47b4b910-8c0b-4c20-a5e7-723d45aecbc9","updated_at":"2024-04-15T17:00:00.000Z","description":"API responses by status code"}}},"api_spec_provider":null,"events":null},{"name":"mesh-manager","display_name":"Mesh Manager","description":"Map Mesh Services from Konnect Mesh Manager to visualize how configuration and policies are distributed across mesh deployments in multiple zones.","built_in":true,"version":"v1","authorization":null,"config_schema":{},"visibility":"public","resource_types":{"service_insight":{"display_name":"Mesh Service Insight","schema":{"type":"simple","definition":{"mesh_name":"string","mesh_service_name":"string","global_control_plane_id":"string"}},"integration_data_schema":null,"resource_id_template":"{{global_control_plane_id}}:{{mesh_name}}"}},"discovery":{"resource_integration_data_examples":{"service_insight":{"global_control_plane":{"id":"00000000-0000-0000-0000-000000000000","name":"control-plane-name","labels":{"env":"development"}},"mesh_service_insight":{"mesh":"default","name":"service_insight_name","zones":["zone1","zone2"],"status":"online","dataplanes":{"total":2,"online":1,"offline":1}}}}},"api_spec_provider":null,"events":null}],"meta":{"page":{"total":3,"size":100,"number":1}}}},"SampleInstanceCreateAzureDevopsPayload":{"value":{"integration_name":"azure-devops","name":"azure-devops","display_name":"Azure DevOps","description":"Expand Konnect Service Catalog functionality by importing repositories from Azure DevOps.","config":{"organization":"organization_name"}}},"SampleInstanceCreateSonarQubePayload":{"value":{"integration_name":"sonarqube","name":"sonarqube","display_name":"SonarQube","description":"View SonarQube Projects directly in Catalog, giving teams a seamless view of code quality and security insights alongside their services.","config":{}}},"SampleInstanceCreateAzureApiManagementPayload":{"value":{"integration_name":"azure-api-management","name":"azure-api-management","display_name":"Azure API Management","description":"Expand Service Catalog functionality with Azure to visualize API Management services and their APIs.","config":{"subscription_id":"00000000-0000-0000-0000-000000000000"}}},"SampleInstanceCreateDynatracePayload":{"value":{"integration_name":"dynatrace","name":"dynatrace","display_name":"Dynatrace","description":"Ingest SLOs from your Dynatrace environment for a unified view of service health and reliability.","config":{"base_url":"https://id.live.dynatrace.com"}}},"SampleInstanceCreateTraceablePayload":{"value":{"integration_name":"traceable","name":"traceable","display_name":"Traceable","description":"Secure and manage services identified by Traceable through API traffic analysis across your application landscape.","config":{"include_inactive":false}}},"SampleInstanceCreateSlackPayload":{"value":{"integration_name":"slack","name":"slack","display_name":"Slack","description":"Expand Konnect Service Catalog functionality with features from Slack.","config":{}}},"SampleInstanceCreatePagerDutyPayload":{"value":{"integration_name":"pagerduty","name":"pagerduty","display_name":"PagerDuty","description":"Visualize incidents, responsible teams, and on-call engineers through PagerDuty services.","config":{"service_region":"us"}}},"SampleInstanceCreateGitlabPayload":{"value":{"integration_name":"gitlab","name":"gitlab-self-managed","display_name":"GitLab (Self Managed)","description":"Expand Service Catalog functionality with GitLab to view your repository's recent merge requests, contributors, and programming languages.","config":{"base_url":"https://gitlab.my-company.com/api/v4"}}},"SampleInstanceCreateGithubPayload":{"value":{"integration_name":"github","name":"github","display_name":"Github","description":"Sync with GitHub to view repository details, including recent pull requests, contributors, and programming languages.","config":{}}},"SampleInstanceCreateDatadogPayload":{"value":{"integration_name":"datadog","name":"datadog","display_name":"Datadog","description":"Gain visibility into your infrastructure with Datadog dashboards and monitors that are relevant to your services.","config":{"datadog_region":"US_1","datadog_webhook_name":"konnect-service-catalog"}}},"SampleInstanceCreateSwaggerHubPayload":{"value":{"integration_name":"swaggerhub","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)","description":"Swaggerhub account which hosts internal APIs only.","config":{}}},"SampleInstanceUpdateSwaggerHubPayload":{"value":{"name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)","description":"Swaggerhub account which hosts internal APIs only.","config":{}}},"SampleInstanceSwaggerHubResponse":{"value":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","integration":{"name":"swaggerhub","display_name":"SwaggerHub"},"name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)","description":"Swaggerhub account which hosts internal APIs only.","config":{},"authorized":false,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}},"SampleListInstancesResponse":{"value":{"data":[{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","integration":{"name":"swaggerhub","display_name":"SwaggerHub"},"name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)","description":"Swaggerhub account which hosts internal APIs only.","authorized":false,"config":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"da715411-0393-4dc7-b711-33250e7658f3","integration":{"name":"gateway-manager","display_name":"Gateway Manager"},"name":"gateway-manager","display_name":"Gateway Manager","description":"Map Gateway Services from Konnect Gateway Manager to visualize services across multiple control planes.","authorized":true,"config":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"5581996c-c350-4092-8c71-53f73677ea39","integration":{"name":"analytics","display_name":"Konnect Analytics"},"name":"analytics","display_name":"Konnect Analytics","description":"Map Reports from Konnect Analytics to monitor the performance and health of your Konnect entities.","authorized":true,"config":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"c48f3903-c27b-4ffb-aed7-422a911452de","integration":{"name":"mesh-manager","display_name":"Mesh Manager"},"name":"mesh-manager","display_name":"Mesh Manager","description":"Map Mesh Services from Konnect Mesh Manager to visualize how configuration and policies are distributed across mesh deployments in multiple zones.","authorized":true,"config":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"total":4,"size":100,"number":1}}}},"SampleCreateTraceableMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"authorization","key":"platform-api-token"}]}}},"SampleCreateDatadogMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"DD-API-KEY","key":"datadaog-api-key"},{"name":"DD-APPLICATION-KEY","key":"datadaog-application-key"}]}}},"SampleCreateSwaggerHubMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"authorization","key":"swaggerhub-api-key"}]}}},"SampleCreateSwaggerHubMultiKeyAuthResponse":{"value":{"id":"4f535923-ec24-456c-b4e5-e67f65c8c208","type":"multi_key_auth","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2022-11-04T20:10:06.927Z","integration_instance":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)"}}},"SampleCreateAWSRoleDelegationAuthPayload":{"value":{"type":"aws_role_delegation","config":{"role_arn":"arn:aws:iam::084735895545:role/KonnectServiceCatalogRole"}}},"SampleCreateAWSRoleDelegationAuthResponse":{"value":{"id":"4f535923-ec24-456c-b4e5-e67f65c8c208","type":"aws_role_delegation","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2022-11-04T20:10:06.927Z","integration_instance":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)"},"config":{"role_arn":"arn:aws:iam::084735895545:role/KonnectServiceCatalogRole"}}},"SampleCreateDynatraceMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"authorization","key":"dynatrace-api-key"}]}}},"SampleCreateDynatraceMultiKeyAuthResponse":{"value":{"id":"88c58c29-ff7d-4913-b3d7-8affc279dd56","type":"multi_key_auth","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2022-11-04T20:10:06.927Z","integration_instance":{"id":"70ecc595-4280-4872-8b80-87b2e57dba3f","name":"dynatrace","display_name":"Dynatrace"}}},"SampleCreateAzureDevopsMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"authorization","key":"azure-devops-personal-access-token"}]}}},"SampleCreateAzureDevopsMultiKeyAuthResponse":{"value":{"id":"7c91b6d3-8e2f-4e2a-9a53-f3b47eac912b","type":"multi_key_auth","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2024-07-18T15:42:29.314Z","integration_instance":{"id":"b4f3d2c9-7a25-43bb-8c47-d7bfa2f91a8e","name":"azure-devops","display_name":"Azure DevOps"}}},"SampleCreateSonarQubeMultiKeyAuthPayload":{"value":{"type":"multi_key_auth","config":{"headers":[{"name":"authorization","key":"sonarqube-api-key"}]}}},"SampleCreateSonarQubeMultiKeyAuthResponse":{"value":{"id":"1a048e2f-bb24-49b9-bcb3-8a4855cb4d44","type":"multi_key_auth","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2022-11-04T20:10:06.927Z","integration_instance":{"id":"f0f2725e-051d-48fd-a63f-e1e76d5fec34","name":"sonarqube","display_name":"SonarQube"}}},"AzureApiManagementAuthConfigPayload":{"value":{"type":"oauth","config":{"grant_type":"authorization_code","code":"Yzk5ZDczMzRlNDEwY","redirect_uri":"https://cloud.konghq.com/us/servicehub/integrations/azure-api-management/oauth"}}},"AzureApiManagementAuthConfigResponse":{"value":{"id":"2b7e1516-28ae-4d6c-8c2f-1e2b3c4d5e6f","type":"oauth","missing_permissions":[],"tainted":false,"expires_at":null,"created_at":"2022-11-04T20:10:06.927Z","integration_instance":{"id":"3c9e2f1a-4b5d-6e7f-8a9b-0c1d2e3f4a5b","name":"azure-api-management","display_name":"Azure API Management"}}},"GitLabSelfManagedAuthConfigPayload":{"value":{"type":"oauth","client_id":"767b05381bc6a4bbffb4473e06bec7ecf009d0c16afb7214acda33026b6af089","client_secret":"gloas-0bf0372129935e5f7cecbaba259336617c8fe9243f3adb0d6562775ebac21086","authorization_endpoint":"http://gitlab.my-company.com/oauth/authorize","token_endpoint":"http://gitlab.my-company.com/oauth/token"}},"GitLabSelfManagedAuthConfigResponse":{"value":{"type":"oauth","client_id":"767b05381bc6a4bbffb4473e06bec7ecf009d0c16afb7214acda33026b6af089","authorization_endpoint":"http://gitlab.my-company.com/oauth/authorize","token_endpoint":"http://gitlab.my-company.com/oauth/token"}},"ResourceInitializeResponse":{"value":{"id":"1Kff05PZlexINWmG","name":null,"integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"type":"gateway_svc","config":{"control_plane_id":"ea270fcd-afb4-4209-a3d0-d4151364816d","gateway_service_id":"f84b2edb-aef7-4486-af7d-8829a428e94c"},"integration_data":null,"archived":false,"service_associations":0,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}},"ResourceFetchGwsResponse":{"value":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"type":"gateway_svc","config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"},"integration_data":{"control_plane":{"id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","name":"serverless-default","config":{"auth_type":"pinned_client_certs","proxy_urls":[],"cluster_type":"CLUSTER_TYPE_SERVERLESS","cloud_gateway":false,"telemetry_endpoint":"https://26e2775daa.us.tp0.my-company.com","control_plane_endpoint":"https://26e2775daa.us.cp0.my-company.com"},"labels":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","description":"This is your serverless gateway control plane. It is the easiest way to get started with the Konnect Gateway."},"gateway_service":{"id":"dbba7bb2-eded-4668-b662-b8bb57684baf","url":"","host":"cloud.my-company.com","name":"my-gateway-service","path":"/us/gateway-manager/028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e/gateway-services/create","port":443,"tags":[],"enabled":true,"retries":5,"protocol":"https","created_at":1751465789148,"tls_verify":null,"updated_at":null,"read_timeout":60000,"write_timeout":60000,"connect_timeout":60000,"tls_verify_depth":null}},"archived":false,"service_associations":0,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}},"ResourcesListResponse":{"value":{"data":[{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"type":"gateway_svc","config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"},"integration_data":{"control_plane":{"id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","name":"serverless-default","config":{"auth_type":"pinned_client_certs","proxy_urls":[],"cluster_type":"CLUSTER_TYPE_SERVERLESS","cloud_gateway":false,"telemetry_endpoint":"https://26e2775daa.us.tp0.my-company.com","control_plane_endpoint":"https://26e2775daa.us.cp0.my-company.com"},"labels":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","description":"This is your serverless gateway control plane. It is the easiest way to get started with the Konnect Gateway."},"gateway_service":{"id":"dbba7bb2-eded-4668-b662-b8bb57684baf","url":"","host":"cloud.my-company.com","name":"my-gateway-service","path":"/us/gateway-manager/028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e/gateway-services/create","port":443,"tags":[],"enabled":true,"retries":5,"protocol":"https","created_at":1751465789148,"tls_verify":null,"updated_at":null,"read_timeout":60000,"write_timeout":60000,"connect_timeout":60000,"tls_verify_depth":null}},"archived":false,"service_associations":0,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"99cNJnEmixifUUpt","name":"Sample API 1.0.0","integration":{"name":"swaggerhub","display_name":"SwaggerHub","instance":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)"}},"binding":"swaggerhub_api_version","type":"swaggerhub_api_version","config":{"api":"Sample","owner":"api-owner","version":"1.0.0"},"integration_data":{"name":"Sample","tags":[],"owner":"api-owner","version":"1.0.0","properties":{"url":"https://api.swaggerhub.com/apis/api-owner/Sample/1.0.0","X-Private":"false","X-Version":"1.0.0","X-CreateBy":"","X-Modified":"2025-04-28T20:57:03Z","X-Versions":"1.0.0","X-Published":"false","X-OASVersion":"3.0.0","X-Notifications":"true"},"description":"The API for a sample project"},"archived":false,"service_associations":0,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"size":2,"next":"/servicehub/v1/resources?page[size]=2&page[after]=CChwKiIxLSBscUg9KisFRwtOBVVBQ1pTPh8kIhVWHGwmFkA1ERxaLlMuRSEDf3sBcBRmfmJ6ZmZyEH98UGpsdFQEQBhiDW9DC10qTyYuAhhCbHhRWjIRHFo3QCZVNgN_e1IzRXF_cDoqODQhbHFIbzl8M34tYBJrQCkCA2Y7DWUaKQ","previous":null,"first":"/servicehub/v1/resources?page[size]=2"}}}},"ResourceArchivePayload":{"value":{"archived":true}},"CreateMappingByResourceIDPayload":{"value":{"service":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","resource":"rQIGLHo1vhgy5VYb"}},"CreateMappingByResourceConfigPayload":{"value":{"service":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","resource":{"integration_instance":"da715411-0393-4dc7-b711-33250e7658f3","type":"gateway_svc","config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"}}}},"ResourceMappingResponse":{"value":{"id":"b1460dbc-1490-42ae-b9cf-b2fe479ebde5","resource":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service","type":"gateway_svc","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"}},"service":{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","name":"sample-service","display_name":"Sample Service"},"created_at":"2022-11-04T20:10:06.927Z"}},"ResourceMappingListResponse":{"value":{"data":[{"id":"b1460dbc-1490-42ae-b9cf-b2fe479ebde5","resource":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service","type":"gateway_svc","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"}},"service":{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","name":"sample-service","display_name":"Sample Service"},"created_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ServiceResourcesResponse":{"value":{"data":[{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"type":"gateway_svc","config":{"control_plane_id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","gateway_service_id":"dbba7bb2-eded-4668-b662-b8bb57684baf"},"integration_data":{"control_plane":{"id":"028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e","name":"serverless-default","config":{"auth_type":"pinned_client_certs","proxy_urls":[],"cluster_type":"CLUSTER_TYPE_SERVERLESS","cloud_gateway":false,"telemetry_endpoint":"https://26e2775daa.us.tp0.my-company.com","control_plane_endpoint":"https://26e2775daa.us.cp0.my-company.com"},"labels":{},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","description":"This is your serverless gateway control plane. It is the easiest way to get started with the Konnect Gateway."},"gateway_service":{"id":"dbba7bb2-eded-4668-b662-b8bb57684baf","url":"","host":"cloud.my-company.com","name":"my-gateway-service","path":"/us/gateway-manager/028bcd27-e0f7-46bd-ad9f-e7a6dd7d5a8e/gateway-services/create","port":443,"tags":[],"enabled":true,"retries":5,"protocol":"https","created_at":1751465789148,"tls_verify":null,"updated_at":null,"read_timeout":60000,"write_timeout":60000,"connect_timeout":60000,"tls_verify_depth":null}},"archived":false,"service_associations":0,"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"number":1,"size":100,"total":1}}}},"ListCriteriaTemplatesResponse":{"value":{"data":[{"name":"gateway_manager_error_rate","display_name":"Gateway Service Error Rate","category":"Observability","template_string":"Error rate is lower than {{ threshold }}% over {{ relative_window }}","installed":true,"integration_name":"gateway-manager","schema":{"type":"json_schema","definition":{"type":"object","required":["threshold","relative_window"],"properties":{"threshold":{"type":"number","maximum":100,"minimum":0},"relative_window":{"enum":["15m","1h","6h","12h","24h","7d","current_week","previous_week","30d","current_month","previous_month"],"type":"string"}}}},"required_integration_capability":null},{"name":"on_call_engineer_assigned","display_name":"On Call Engineer Assigned","category":"Incident Management","template_string":"Has an on call engineer assigned to the service","installed":true,"integration_name":null,"schema":null,"required_integration_capability":"on_call_provider"}],"meta":{"page":{"total":2,"size":100,"number":1}}}},"ListScorecardTemplatesResponse":{"value":{"data":[{"name":"kong_best_practices","display_name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","criteria":[{"template_name":"gateway_manager_error_rate","template_parameters":{"relative_window":"30d"},"integration":"gateway_manager","section_name":"Gateway Observability"},{"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","relative_window":"30d"},"integration":"gateway_manager","section_name":"Gateway Observability"},{"template_name":"gateway_manager_has_plugin","template_parameters":{},"integration":"gateway_manager","section_name":"Plugin Enforcement"}]},{"name":"service_documentation","display_name":"Service Documentation","description":"Ensures that your services are well-documented with ownership information, documentation files, and API specs.","criteria":[{"template_name":"has_service_docs","template_parameters":{"min_docs":1},"integration":null,"section_name":"Service Documentation"},{"template_name":"has_api_specs","template_parameters":{"min_specs":1},"integration":null,"section_name":"API Documentation"},{"template_name":"lint_api_specs","template_parameters":{"rulesets":["oas:recommended"],"include_warnings":false},"integration":null,"section_name":"API Documentation"}]}],"meta":{"page":{"total":2,"size":100,"number":1}}}},"CreateScorecardPayload":{"value":{"name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","scorecard_template":"kong_best_practices","criteria":[{"enabled":true,"template_name":"gateway_manager_error_rate","template_parameters":{"relative_window":"30d","threshold":10},"section_name":"Gateway Observability"},{"enabled":true,"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","relative_window":"30d","threshold":30},"section_name":"Gateway Observability"},{"enabled":true,"template_name":"gateway_manager_has_plugin","template_parameters":{"category":"Authentication"},"section_name":"Plugin Enforcement"}],"entity_selector":{"selector":"all","selector_parameters":null}}},"UpdateScorecardPayload":{"value":{"name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","scorecard_template":"kong_best_practices","criteria":[{"enabled":true,"template_name":"gateway_manager_error_rate","template_parameters":{"relative_window":"30d","threshold":10},"section_name":"Gateway Observability"},{"enabled":true,"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","relative_window":"30d","threshold":30},"section_name":"Gateway Observability"},{"enabled":true,"template_name":"gateway_manager_has_plugin","template_parameters":{"category":"Authentication"},"section_name":"Plugin Enforcement"}],"entity_selector":{"selector":"all","selector_parameters":null}}},"FetchScorecardResponse":{"value":{"id":"4e74159d-3d56-435a-920e-6ddb9ffce829","name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","score":null,"entity_selector":{"selector":"all","selector_parameters":null},"scorecard_template":"kong_best_practices","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","criteria":[{"id":"be228fb7-c492-4d5f-b933-6666a33373a8","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_error_rate","template_parameters":{"threshold":10,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"5ea2ec85-73a1-46ed-9c2c-6f2b7a66c716","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","threshold":30,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"},{"id":"ff262fb9-2493-4c8a-9288-211ce0802be6","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_has_plugin","template_parameters":{"category":"Authentication"},"section_name":"Plugin Enforcement","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}]}},"ListScorecardResponse":{"value":{"data":[{"id":"4e74159d-3d56-435a-920e-6ddb9ffce829","name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","score":{"value":"67%","raw_value":66.667},"entity_selector":{"selector":"all","selector_parameters":null},"scorecard_template":"kong_best_practices","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ListScorecardServicesResponse":{"value":{"data":[{"id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","name":"sample-service","description":"This is a sample service","display_name":"Sample Service","labels":{"env":"test"},"resources":[{"integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"id":"rQIGLHo1vhgy5VYb"}],"custom_fields":{"owner":"John Appleseed","cost_center":"Research and Development","product_manager":"Jane","jira_project":{"name":"Sample Jira Project","link":"https://my-company.atlassian.net/jira/software/c/projects/SAMPLE"},"dashboard":{"name":"Sample Dashboard","link":"https://my-company.dashboards.com/sample-dashboard"},"git_repo":{"name":"Sample Project","link":"https://github.com/MyCompany/SampleProject"},"slack_channel":{"name":"My Company Channel","link":"https://my-company.slack.com/archives/C000AAAAAAA"}},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","score":{"value":"67%","raw_value":66.667}}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ListScorecardCriteriaResponse":{"value":{"data":[{"id":"be228fb7-c492-4d5f-b933-6666a33373a8","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_error_rate","template_parameters":{"threshold":10,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"num_services_passing":1,"passing_services_count":1}},{"id":"5ea2ec85-73a1-46ed-9c2c-6f2b7a66c716","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","threshold":30,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"num_services_passing":1,"passing_services_count":1}},{"id":"ff262fb9-2493-4c8a-9288-211ce0802be6","name":null,"scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_has_plugin","template_parameters":{"category":"Authentication"},"section_name":"Plugin Enforcement","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"num_services_passing":0,"passing_services_count":0}}],"meta":{"page":{"total":3,"size":100,"number":1}}}},"ListScorecardCriteriaServicesResponse":{"value":{"data":[{"id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","name":"sample-service","description":"This is a sample service","display_name":"Sample Service","labels":{"env":"test"},"resources":[{"integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"da715411-0393-4dc7-b711-33250e7658f3","name":"gateway-manager","display_name":"Gateway Manager"}},"id":"rQIGLHo1vhgy5VYb"}],"custom_fields":{"owner":"John Appleseed","cost_center":"Research and Development","product_manager":"Jane","jira_project":{"name":"Sample Jira Project","link":"https://my-company.atlassian.net/jira/software/c/projects/SAMPLE"},"dashboard":{"name":"Sample Dashboard","link":"https://my-company.dashboards.com/sample-dashboard"},"git_repo":{"name":"Sample Project","link":"https://github.com/MyCompany/SampleProject"},"slack_channel":{"name":"My Company Channel","link":"https://my-company.slack.com/archives/C000AAAAAAA"}},"created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"is_passing":true,"evaluation_context":{"raw_value":{"map":{"rQIGLHo1vhgy5VYb":{"details":{"raw_value":0,"display_text":"0%"},"relation":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service"},"is_passing":true}},"instance":"criteria_result_relation_map","relation":"resource"},"display_text":"1 out of 1 gateway services passing error rate check"},"evaluation_error":null,"successfully_evaluated_at":"2025-07-02T15:48:07.665Z","attempted_at":"2025-07-02T15:48:07.663Z","created_at":"2025-07-02T15:20:07.262Z"}}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ListServiceScorecardsResponse":{"value":{"data":[{"id":"4e74159d-3d56-435a-920e-6ddb9ffce829","name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","score":{"value":"67%","raw_value":66.667},"entity_selector":{"selector":"all","selector_parameters":null},"scorecard_template":"kong_best_practices","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"FetchServiceScorecardResponse":{"value":{"id":"4e74159d-3d56-435a-920e-6ddb9ffce829","name":"Kong Best Practices","description":"Best practices that we encourage users to follow when using other Konnect applications.","score":{"value":"67%","raw_value":66.667},"entity_selector":{"selector":"all","selector_parameters":null},"scorecard_template":"kong_best_practices","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","criteria":[{"id":"be228fb7-c492-4d5f-b933-6666a33373a8","scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_error_rate","template_parameters":{"threshold":10,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"is_passing":true,"evaluation_context":{"raw_value":{"map":{"rQIGLHo1vhgy5VYb":{"details":{"raw_value":0,"display_text":"0%"},"relation":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service"},"is_passing":true}},"instance":"criteria_result_relation_map","relation":"resource"},"display_text":"1 out of 1 gateway services passing error rate check"},"evaluation_error":null,"successfully_evaluated_at":"2025-07-02T16:02:04.894Z","attempted_at":"2025-07-02T16:02:04.892Z","created_at":"2025-07-02T15:20:07.262Z"}},{"id":"5ea2ec85-73a1-46ed-9c2c-6f2b7a66c716","scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_response_latency","template_parameters":{"metric":"response_latency_p95","threshold":30,"relative_window":"30d"},"section_name":"Gateway Observability","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"is_passing":true,"evaluation_context":{"raw_value":{"map":{"rQIGLHo1vhgy5VYb":{"details":{"raw_value":null,"display_text":"No data"},"relation":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service"},"is_passing":true}},"instance":"criteria_result_relation_map","relation":"resource"},"display_text":"1 out of 1 gateway services passing latency check"},"evaluation_error":null,"successfully_evaluated_at":"2025-07-02T16:02:04.780Z","attempted_at":"2025-07-02T16:02:04.779Z","created_at":"2025-07-02T15:20:05.965Z"}},{"id":"ff262fb9-2493-4c8a-9288-211ce0802be6","scorecard_id":"4e74159d-3d56-435a-920e-6ddb9ffce829","integration":"gateway-manager","enabled":true,"template_name":"gateway_manager_has_plugin","template_parameters":{"category":"Authentication"},"section_name":"Plugin Enforcement","created_at":"2022-11-04T20:10:06.927Z","updated_at":"2022-11-04T20:10:06.927Z","evaluation":{"is_passing":false,"evaluation_context":{"raw_value":{"map":{"rQIGLHo1vhgy5VYb":{"details":{"raw_value":0,"display_text":"0 plugins installed"},"relation":{"id":"rQIGLHo1vhgy5VYb","name":"my-gateway-service"},"is_passing":false}},"instance":"criteria_result_relation_map","relation":"resource"},"display_text":"0 out of 1 gateway services passing plugin check"},"evaluation_error":null,"successfully_evaluated_at":"2025-07-02T16:02:04.839Z","attempted_at":"2025-07-02T16:02:04.839Z","created_at":"2025-07-02T15:20:05.786Z"}}]}},"CreatePrivateCatalogIntegrationPayload":{"value":{"visibility":"private","description":"description of integration","display_name":"Catalog Integration","resource_types":{"service":{"display_name":"Service","scope":"service","schema":{"type":"simple","definition":{"id":"string"}},"integration_data_schema":{"type":"json_schema","definition":{"type":"object","properties":{"id":{"type":"string","example":"456"}}}},"resource_id_template":"{{id}}"}}}},"UpdateCatalogIntegrationPayload":{"value":{"description":"Updated description","display_name":"Updated Integration"}},"CreateServiceApiUrlPayload":{"value":{"name":"spec-from-url","description":"API Spec from URL","provider":{"type":"url","config":{"url":"https://my-company.com/api-specs/openapi.yaml"}}}},"ServiceApiUrlResponse":{"value":{"id":"8e3882ff-ad0f-4690-a5a7-c69323084109","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":null,"name":"spec-from-url","description":"API Spec from URL","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"url","config":{"url":"https://my-company.com/api-specs/openapi.yaml"}}}},"CreateServiceApiRawPayload":{"value":{"name":"spec-from-raw","description":"API Spec from Raw","provider":{"type":"raw","config":{"contents":"openapi: 3.0.0\ninfo:\n  version: 1.0.0\n  title: Swagger Petstore\n  license:\n    name: MIT\nservers:\n  - url: http://petstore.swagger.io/v1\npaths:\n  /pets:\n    get:\n      summary: List all pets\n      operationId: listPets\n      tags:\n        - pets\n      parameters:\n        - name: limit\n          in: query\n          description: How many items to return at one time (max 100)\n          required: false\n          schema:\n            type: integer\n            maximum: 100\n            format: int32\n      responses:\n        '200':\n          description: A paged array of pets\n          headers:\n            x-next:\n              description: A link to the next page of responses\n              schema:\n                type: string\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Pets'\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\n    post:\n      summary: Create a pet\n      operationId: createPets\n      tags:\n        - pets\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/Pet'\n        required: true\n      responses:\n        '201':\n          description: Null response\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\n  /pets/{petId}:\n    get:\n      summary: Info for a specific pet\n      operationId: showPetById\n      tags:\n        - pets\n      parameters:\n        - name: petId\n          in: path\n          required: true\n          description: The id of the pet to retrieve\n          schema:\n            type: string\n      responses:\n        '200':\n          description: Expected response to a valid request\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Pet'\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\ncomponents:\n  schemas:\n    Pet:\n      type: object\n      required:\n        - id\n        - name\n      properties:\n        id:\n          type: integer\n          format: int64\n        name:\n          type: string\n        tag:\n          type: string\n    Pets:\n      type: array\n      maxItems: 100\n      items:\n        $ref: '#/components/schemas/Pet'\n    Error:\n      type: object\n      required:\n        - code\n        - message\n      properties:\n        code:\n          type: integer\n          format: int32\n        message:\n          type: string\n"}}}},"ServiceApiRawResponse":{"value":{"id":"a237f806-e9ea-4c56-89f5-ab92b5e19913","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":null,"name":"spec-from-raw","description":"API Spec from Raw","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"raw","config":{}}}},"CreateServiceApiIntegrationPayload":{"value":{"name":"spec-from-integration","description":"API Spec from Integration","provider":{"type":"github_repo","integration_instance":"bd24cfdd-619e-4696-b58d-a9ea49e5ea39","config":{"owner":"MyOrganization","repo":"MyService","spec_path":"openapi.yaml"}}}},"CreateServiceApiIntegrationResponse":{"value":{"id":"3a276c30-f209-44dc-9814-df291bc94950","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","name":"spec-from-integration","description":"API Spec from Integration","resource_id":null,"created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"github_repo","config":{"repo":"MyOrganization","owner":"MyService","spec_path":"openapi.yaml"},"integration":{"name":"github","display_name":"GitHub","instance":{"id":"bd24cfdd-619e-4696-b58d-a9ea49e5ea39","name":"github","display_name":"GitHub"}}}}},"CreateServiceApiResourcePayload":{"value":{"name":"spec-from-resource","description":"API Spec from Resource","provider":{"type":"swaggerhub_api_version","config":{"resource_id":"ok-qTDpuiQp7DWK0"}}}},"CreateServiceApiResourceResponse":{"value":{"id":"e0928050-20d0-448f-947d-624d9901947e","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":"ok-qTDpuiQp7DWK0","name":"spec-from-resource","description":"API Spec from Resource","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"swaggerhub_api_version","config":{"resource_id":"ok-qTDpuiQp7DWK0"},"integration":{"name":"swaggerhub","display_name":"SwaggerHub","instance":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)"}}}}},"UpdateServiceApiPayload":{"value":{"name":"api-spec-name","description":"API Spec Description"}},"ListServiceApiResponse":{"value":{"data":[{"id":"8e3882ff-ad0f-4690-a5a7-c69323084109","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":null,"name":"spec-from-url","description":"API Spec from URL","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"url","config":{"url":"https://my-company.com/api-specs/openapi.yaml"}}},{"id":"a237f806-e9ea-4c56-89f5-ab92b5e19913","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":null,"name":"spec-from-raw","description":"API Spec from Raw","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"raw","config":{}}},{"id":"3a276c30-f209-44dc-9814-df291bc94950","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","name":"spec-from-integration","description":"API Spec from Integration","resource_id":null,"created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"github_repo","config":{"repo":"MyOrganization","owner":"MyService","spec_path":"openapi.yaml"},"integration":{"name":"github","display_name":"GitHub","instance":{"id":"bd24cfdd-619e-4696-b58d-a9ea49e5ea39","name":"github","display_name":"GitHub"}}}},{"id":"e0928050-20d0-448f-947d-624d9901947e","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":"ok-qTDpuiQp7DWK0","name":"spec-from-resource","description":"API Spec from Resource","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","provider":{"type":"swaggerhub_api_version","config":{"resource_id":"ok-qTDpuiQp7DWK0"},"integration":{"name":"swaggerhub","display_name":"SwaggerHub","instance":{"id":"e0f2388b-2efe-42a3-a9e4-86f12d3e8c77","name":"swaggerhub-internal","display_name":"SwaggerHub (Internal)"}}}}],"meta":{"page":{"total":4,"size":100,"number":1}}}},"PreviewServiceApiUrlPayload":{"value":{"provider":{"type":"url","config":{"url":"https://my-company.com/api-specs/openapi.yaml"}}}},"PreviewServiceApiRawPayload":{"value":{"provider":{"type":"raw","config":{"contents":"openapi: 3.0.0\ninfo:\n  version: 1.0.0\n  title: Swagger Petstore\n  license:\n    name: MIT\nservers:\n  - url: http://petstore.swagger.io/v1\npaths:\n  /pets:\n    get:\n      summary: List all pets\n      operationId: listPets\n      tags:\n        - pets\n      parameters:\n        - name: limit\n          in: query\n          description: How many items to return at one time (max 100)\n          required: false\n          schema:\n            type: integer\n            maximum: 100\n            format: int32\n      responses:\n        '200':\n          description: A paged array of pets\n          headers:\n            x-next:\n              description: A link to the next page of responses\n              schema:\n                type: string\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Pets'\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\n    post:\n      summary: Create a pet\n      operationId: createPets\n      tags:\n        - pets\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: '#/components/schemas/Pet'\n        required: true\n      responses:\n        '201':\n          description: Null response\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\n  /pets/{petId}:\n    get:\n      summary: Info for a specific pet\n      operationId: showPetById\n      tags:\n        - pets\n      parameters:\n        - name: petId\n          in: path\n          required: true\n          description: The id of the pet to retrieve\n          schema:\n            type: string\n      responses:\n        '200':\n          description: Expected response to a valid request\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Pet'\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: '#/components/schemas/Error'\ncomponents:\n  schemas:\n    Pet:\n      type: object\n      required:\n        - id\n        - name\n      properties:\n        id:\n          type: integer\n          format: int64\n        name:\n          type: string\n        tag:\n          type: string\n    Pets:\n      type: array\n      maxItems: 100\n      items:\n        $ref: '#/components/schemas/Pet'\n    Error:\n      type: object\n      required:\n        - code\n        - message\n      properties:\n        code:\n          type: integer\n          format: int32\n        message:\n          type: string\n"}}}},"PreviewServiceApiIntegrationPayload":{"value":{"provider":{"type":"github_repo","integration_instance":"bd24cfdd-619e-4696-b58d-a9ea49e5ea39","config":{"owner":"MyOrganization","repo":"MyService","spec_path":"openapi.yaml"}}}},"PreviewServiceApiResourcePayload":{"value":{"provider":{"type":"swaggerhub_api_version","config":{"resource_id":"ok-qTDpuiQp7DWK0"}}}},"PreviewServiceApiResponseJson":{"value":{"openapi":"3.0.0","info":{"version":"1.0.0","title":"Swagger Petstore","license":{"name":"MIT"}},"servers":[{"url":"http://petstore.swagger.io/v1"}],"paths":{"/pets":{"get":{"summary":"List all pets","operationId":"listPets","tags":["pets"],"parameters":[{"name":"limit","in":"query","description":"How many items to return at one time (max 100)","required":false,"schema":{"type":"integer","maximum":100,"format":"int32"}}],"responses":{"200":{"description":"A paged array of pets","headers":{"x-next":{"description":"A link to the next page of responses","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"ref":"#/components/schemas/Pets"}}}},"default":{"description":"unexpected error","content":{"application/json":{"schema":{"ref":"#/components/schemas/Error"}}}}}},"post":{"summary":"Create a pet","operationId":"createPets","tags":["pets"],"requestBody":{"content":{"application/json":{"schema":{"ref":"#/components/schemas/Pet"}}},"required":true},"responses":{"201":{"description":"Null response"},"default":{"description":"unexpected error","content":{"application/json":{"schema":{"ref":"#/components/schemas/Error"}}}}}}},"/pets/{petId}":{"get":{"summary":"Info for a specific pet","operationId":"showPetById","tags":["pets"],"parameters":[{"name":"petId","in":"path","required":true,"description":"The id of the pet to retrieve","schema":{"type":"string"}}],"responses":{"200":{"description":"Expected response to a valid request","content":{"application/json":{"schema":{"ref":"#/components/schemas/Pet"}}}},"default":{"description":"unexpected error","content":{"application/json":{"schema":{"ref":"#/components/schemas/Error"}}}}}}}},"components":{"schemas":{"Pet":{"type":"object","required":["id","name"],"properties":{"id":{"type":"integer","format":"int64"},"name":{"type":"string"},"tag":{"type":"string"}}},"Pets":{"type":"array","maxItems":100,"items":{"ref":"#/components/schemas/Pet"}},"Error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"integer","format":"int32"},"message":{"type":"string"}}}}}}},"PreviewServiceApiResponseYaml":{"value":"openapi: 3.0.0\ninfo:\n  version: 1.0.0\n  title: Swagger Petstore\n  license:\n    name: MIT\nservers:\n  - url: http://petstore.swagger.io/v1\npaths:\n  /pets:\n    get:\n      summary: List all pets\n      operationId: listPets\n      tags:\n        - pets\n      parameters:\n        - name: limit\n          in: query\n          description: How many items to return at one time (max 100)\n          required: false\n          schema:\n            type: integer\n            maximum: 100\n            format: int32\n      responses:\n        \"200\":\n          description: A paged array of pets\n          headers:\n            x-next:\n              description: A link to the next page of responses\n              schema:\n                type: string\n          content:\n            application/json:\n              schema:\n                $ref: \"#/components/schemas/Pets\"\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: \"#/components/schemas/Error\"\n    post:\n      summary: Create a pet\n      operationId: createPets\n      tags:\n        - pets\n      requestBody:\n        content:\n          application/json:\n            schema:\n              $ref: \"#/components/schemas/Pet\"\n        required: true\n      responses:\n        \"201\":\n          description: Null response\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: \"#/components/schemas/Error\"\n  /pets/{petId}:\n    get:\n      summary: Info for a specific pet\n      operationId: showPetById\n      tags:\n        - pets\n      parameters:\n        - name: petId\n          in: path\n          required: true\n          description: The id of the pet to retrieve\n          schema:\n            type: string\n      responses:\n        \"200\":\n          description: Expected response to a valid request\n          content:\n            application/json:\n              schema:\n                $ref: \"#/components/schemas/Pet\"\n        default:\n          description: unexpected error\n          content:\n            application/json:\n              schema:\n                $ref: \"#/components/schemas/Error\"\ncomponents:\n  schemas:\n    Pet:\n      type: object\n      required:\n        - id\n        - name\n      properties:\n        id:\n          type: integer\n          format: int64\n        name:\n          type: string\n        tag:\n          type: string\n    Pets:\n      type: array\n      maxItems: 100\n      items:\n        $ref: \"#/components/schemas/Pet\"\n    Error:\n      type: object\n      required:\n        - code\n        - message\n      properties:\n        code:\n          type: integer\n          format: int32\n        message:\n          type: string\n"},"ResourceIngestionPayload":{"value":{"ingest_from":"2025-07-01T00:00:00Z"}},"ResourceIngestionStatus":{"value":{"last_scheduled":"2025-07-01T00:00:00Z"}},"ListResourceActionsResponse":{"value":{"data":[{"id":"93b411db-6f68-47d2-8959-de2d91914f2f","user_id":"12345678-1234-5678-1234-123456789012","action_type":"map","cause":"user-action","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":"rQIGLHo1vhgy5VYb","resource_name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"created_at":"2025-07-01T00:00:00Z"},{"id":"123e4567-e89b-12d3-a456-426614174000","user_id":"12345678-1234-5678-1234-123456789012","action_type":"unmap","cause":"user-action","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","resource_id":"rQIGLHo1vhgy5VYb","resource_name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"created_at":"2025-07-01T00:00:00Z"},{"id":"456e7890-e12b-34d5-a678-426614174000","user_id":"12345678-1234-5678-1234-123456789012","action_type":"archive","cause":"user-action","service_id":null,"resource_id":"rQIGLHo1vhgy5VYb","resource_name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"created_at":"2025-07-01T00:00:00Z"},{"id":"789e0123-e45b-67d8-a901-426614174000","user_id":null,"action_type":"restore","cause":"suggestion-rule","service_id":null,"resource_id":"rQIGLHo1vhgy5VYb","resource_name":"my-gateway-service","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"created_at":"2025-07-01T00:00:00Z"}],"meta":{"page":{"size":4,"next":"/servicehub/v1/resource-actions?page[size]=2&page[after]=CChwKiIxLSBscUg9KisFRwtOBVVBQ1pTPh8kIhVWHGwmFkA1ERxaLlMuRSEDf3sBcBRmfmJ6ZmZyEH98UGpsdFQEQBhiDW9DC10qTyYuAhhCbHhRWjIRHFo3QCZVNgN_e1IzRXF_cDoqODQhbHFIbzl8M34tYBJrQCkCA2Y7DWUaKQ","previous":null,"first":"/servicehub/v1/resource-actions?page[size]=2"}}}},"IntegrationNotInstalledError":{"value":{"status":404,"type":"service_catalog_integration_not_installed","title":"Not Found","instance":"kong:trace:6816496025408232265","detail":"Not Found"}},"IntegrationNotAuthorizedError":{"value":{"status":400,"type":"service_catalog_integration_unauthorized","title":"Invalid Request","instance":"kong:trace:6816496025408232265","detail":"The integration instance \"cc461d8c-dade-4ce0-ad86-290f3ff8de1a\" is unauthorized","invalid_parameters":[{"field":"integration_instance","rule":"invalid","source":"path","reason":"The integration instance \"cc461d8c-dade-4ce0-ad86-290f3ff8de1a\" is unauthorized"}]}},"BadRequestError":{"value":{"status":400,"title":"Invalid Request","instance":"kong:trace:6816496025408232265","detail":"Invalid Parameters","invalid_parameters":[{"field":"method","rule":"required","source":"body","reason":"must have required property 'method'"}]}},"ListSystemSuggestionRulesResponse":{"value":{"data":[{"id":"00000000-0000-0000-0000-000000000000","name":"Gateway Manager System Rule","description":"This rule is triggered when a gateway service resource has a tag of the form \"KonnectService:<my-service-name>\".\nIt will map the resource to a service with the name <my-service-name>.\nIf there is no existing service with the name <my-service-name> a service will be created before mapping the resource.\nNote that service name will be transformed with the following rules:\n- all letters in <my-service-name> will be coverted to lower case letters\n- trailing and leading spaces in <my-service-name> will be removed\n- all consecutive spaces in <my-service-name> be converted to a hyphen\n- all underscores in <my-service-name> will be converted to a hyphen","auto_accept":true,"active":true,"binding":"gateway_svc","action":{"type":"create-or-map"}}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ListSuggestionRulesResponse":{"value":{"data":[{"id":"fa4d3c44-a6f9-4077-b75f-66760ed3dc19","name":"sample-datadog-monitors","description":"Rule to map all sample monitors to the sample service. Matches any monitor that satisfies one of the following:\n- monitor is tagged with a value with the prefix \"service:sample\" (ex:\"service:sample\", \"service:sample-gateway-manager-app\")","auto_accept":true,"active":true,"binding":"datadog_monitor","discovery_selector":"| any(.tags[];  startswith(\"service:sample\"))","action":{"type":"map","data":{"service":{"name":"servicehub"},"resource":{"labels":{}}}},"created_at":"2024-10-23T15:55:32.985Z","updated_at":"2024-10-23T16:02:53.751Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"SuggestionRule":{"value":{"id":"fa4d3c44-a6f9-4077-b75f-66760ed3dc19","name":"sample-datadog-monitors","description":"Rule to map all sample monitors to the sample service. Matches any monitor that satisfies one of the following:\n- monitor is tagged with a value with the prefix \"service:sample\" (ex:\"service:sample\", \"service:sample-gateway-manager-app\")","auto_accept":true,"active":true,"binding":"datadog_monitor","discovery_selector":"| any(.tags[];  startswith(\"service:sample\"))","action":{"type":"map","data":{"service":{"name":"sample"},"resource":{"labels":{}}}},"created_at":"2024-10-23T15:55:32.985Z","updated_at":"2024-10-23T16:02:53.751Z"}},"CreateSuggestionRule":{"value":{"name":"sample-datadog-monitors","description":"Rule to map all sample monitors to the sample service. Matches any monitor that satisfies one of the following:\n- monitor is tagged with a value with the prefix \"service:sample\" (ex:\"service:sample\", \"service:sample-gateway-manager-app\")","auto_accept":true,"active":true,"binding":"datadog_monitor","discovery_selector":"| any(.tags[];  startswith(\"service:sample\"))","action":{"type":"map","data":{"service":{"name":"sample"},"resource":{"labels":{}}}}}},"TestSuggestionRule":{"value":{"binding":"datadog_monitor","discovery_selector":"| any(.tags[];  startswith(\"service:sample\"))","action":{"type":"map","data":{"service":{"name":"sample"},"resource":{"labels":{}}}},"integration_record":{"name":"sample-monitor","description":"A sample monitor","tags":["service:sample"]}}},"TestSuggestionRuleArchiveResponse":{"value":{"evaluation":{"matched":true,"service_id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","action":{"type":"archive"}},"errors":[]}},"ListSuggestionRuleErrorsResponse":{"value":{"data":[{"id":"e4698717-7f0b-434d-aa16-a472089c2504","resource_id":"qLgnGlFp4iveGUFl","suggestion_rule_id":"fd109d4a-e183-4488-98f2-10eab0964155","details":[{"type":"invalid-expression","message":"JQ expression is invalid","expression":"invalid-jq-expression","field":"discovery_selector"}],"created_at":"2025-07-01T00:00:00Z","updated_at":"2025-07-01T00:00:00Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"ListIntegrationEventsResponse":{"value":{"data":[{"id":"123e4567-e89b-12d3-a456-426614174000","type":"incident.triggered","ts":"2024-01-01T00:00:00Z","service_id":"b268ca70-9b75-4355-8726-63788463a66f","deduplication_id":"1d34191ebfe305a56bf4f3303d1a8dcf","resource_id":"8_l-yZ8UQtc_e6Pp","actor":{"type":"user","id":"PLH1HKV","name":"John Doe"},"attributes":{"service_id":"PLK33TY","incident_id":"PGR0VU2","escalation_policy_id":"P005NFS","priority_id":"P9BO35Z","urgency":"low","title":"Example API Service Incident","html_url":"https://acme.pagerduty.com/incidents/PGR0VU2"},"integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"binding":"pagerduty_service","detail":"Example API Service Incident","link_html":"https://acme.pagerduty.com/incidents/PGR0VU2"}],"meta":{"page":{"size":1,"next":"/v1/integration-events?page[size]=2&page[after]=CChwKiIxLSBscUg9KisFRwtOBVVBQ1pTPh8kIhVWHGwmFkA1ERxaLlMuRSEDf3sBcBRmfmJ6ZmZyEH98UGpsdFQEQBhiDW9DC10qTyYuAhhCbHhRWjIRHFo3QCZVNgN_e1IzRXF_cDoqODQhbHFIbzl8M34tYBJrQCkCA2Y7DWUaKQ","previous":null,"first":"/v1/integration-events?page[size]=2"}}}},"ServiceDocumentPayload":{"value":{"slug":"readme","title":"README","content":"My Documentation"}},"ServiceDocumentChildPayload":{"value":{"slug":"readme","title":"README","content":"My Documentation","parent_document_id":"11155a77-c87b-453e-93fd-5d517a68a211"}},"MoveServiceDocumentPayload":{"value":{"parent_document_id":"71a10e4f-8def-44db-b9b2-88823f41b5e8","index":0}},"ListServiceDocumentsResponseJSON":{"value":{"data":[{"id":"71a10e4f-8def-44db-b9b2-88823f41b5e8","slug":"readme","title":"README","parent_document_id":null,"created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z"},{"id":"238e1720-44d8-462d-a147-ed1d1c2a6412","slug":"architecture","title":"Architecture","parent_document_id":"7b453ae4-66f5-4530-88b0-0b6e34072325","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z"}],"meta":{"page":{"number":1,"size":100,"total":2}}}},"ListServiceDocumentsResponseJSONTree":{"value":{"data":[{"id":"7b453ae4-66f5-4530-88b0-0b6e34072325","slug":"readme","title":"README","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z","children":{"id":"238e1720-44d8-462d-a147-ed1d1c2a6412","slug":"architecture","title":"Architecture","parent_document_id":"7b453ae4-66f5-4530-88b0-0b6e34072325","children":[],"created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z"}}],"meta":{"page":{"number":1,"size":1,"total":1}}}},"ServiceDocumentResponseJSON":{"value":{"id":"7b453ae4-66f5-4530-88b0-0b6e34072325","slug":"readme","title":"README","content":"My Documentation","parent_document_id":null,"created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z"}},"ListSuggestedResourceActionsResponse":{"value":{"data":[{"id":"123e4567-e89b-12d3-a456-426614174000","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"suggestion_rule_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","entity_name":"My Service","service_id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","ignored":false,"action":{"type":"map","data":{"service":{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"resource":{"labels":{"env":"test"}}}},"created_at":"2025-07-01T00:00:00Z","updated_at":"2025-07-01T00:00:00Z"}],"meta":{"page":{"total":1,"size":100,"number":1}}}},"SuggestedResourceActionResponse":{"value":{"id":"123e4567-e89b-12d3-a456-426614174000","integration":{"name":"gateway-manager","display_name":"Gateway Manager","instance":{"id":"9de3f4dd-41bc-4844-a38b-de74eb6ed002","name":"gateway-manager","display_name":"Gateway Manager"}},"suggestion_rule_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","entity_name":"My Service","service_id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7","ignored":false,"action":{"type":"map","data":{"service":{"id":"7f9fd312-a987-4628-b4c5-bb4f4fddd5f7"},"resource":{"labels":{"env":"test"}}}},"created_at":"2025-07-01T00:00:00Z","updated_at":"2025-07-01T00:00:00Z"}},"SampleServiceApiMappingResponse":{"value":{"id":"3fa85f64-5717-4562-b3fc-2c963f66afa6","service_id":"204d85d2-1bb9-4864-842f-6d97a7cbca2c","api_id":"e0928050-20d0-448f-947d-624d9901947e","created_at":"2025-05-01T00:00:00.000000Z","updated_at":"2025-05-01T00:00:00.000000Z"}},"UnauthorizedExample":{"value":{"status":401,"title":"Unauthorized","instance":"kong:trace:8347343766220159418","detail":"Unauthorized"}},"ForbiddenExample":{"value":{"status":403,"title":"Forbidden","instance":"kong:trace:2723154947768991354","detail":"You do not have permission to perform this action"}},"NotFoundExample":{"value":{"status":404,"title":"Not Found","instance":"kong:trace:6816496025408232265","detail":"Not Found"}},"UnsupportedMediaTypeExample":{"value":{"status":415,"title":"Unsupported Media Type","instance":"kong:trace:8347343766220159418","detail":"This API only supports requests with `Content-Type: application/json`"}}}}}
```
