Skip to main content
Glama

Cortex MCP

Official
by cortexapps
swagger.json868 kB
{ "openapi": "3.0.1", "info": { "description": "The Cortex REST API provides programmatic access to the data in the catalog, Scorecards, and more.", "title": "Cortex API", "version": "v1" }, "servers": [ { "url": "https://api.getcortexapp.com", "description": "Cortex Cloud API host" } ], "security": [ { "bearerAuth": [] } ], "tags": [ { "name": "API Keys" }, { "name": "Audit Logs" }, { "name": "Catalog Entities" }, { "name": "Custom Data" }, { "name": "Custom Data [Advanced]" }, { "name": "Custom Events" }, { "name": "Custom Metrics" }, { "name": "Dependencies" }, { "name": "Deploys" }, { "name": "Discovery Audit" }, { "name": "Docs" }, { "name": "Eng Intel: Metrics" }, { "name": "Eng Intel: Registry" }, { "name": "Eng Intel: User Labels" }, { "name": "Entity Relationship Types [Beta]" }, { "name": "Entity Relationships [Beta]" }, { "name": "Entity Types" }, { "name": "GitOps Logs" }, { "name": "Groups" }, { "name": "IP Allowlist" }, { "name": "Initiatives" }, { "name": "Notification Logs" }, { "name": "On-call" }, { "name": "Packages" }, { "name": "Plugins" }, { "name": "Queries" }, { "name": "SCIM" }, { "name": "Scorecards" }, { "name": "Secrets" }, { "name": "Teams" }, { "name": "Teams Hierarchies" }, { "name": "Teams [Advanced]" }, { "name": "Teams [Departments] (legacy)" }, { "name": "Workflows" }, { "name": "[Integrations] AWS" }, { "name": "[Integrations] Azure Active Directory" }, { "name": "[Integrations] Azure Devops" }, { "name": "[Integrations] Azure Resources" }, { "name": "[Integrations] CircleCI" }, { "name": "[Integrations] Coralogix" }, { "name": "[Integrations] Datadog" }, { "name": "[Integrations] GitHub" }, { "name": "[Integrations] GitLab" }, { "name": "[Integrations] Incident.io" }, { "name": "[Integrations] LaunchDarkly" }, { "name": "[Integrations] New Relic" }, { "name": "[Integrations] PagerDuty" }, { "name": "[Integrations] Prometheus" }, { "name": "[Integrations] SonarQube" } ], "paths": { "/api/v1/active-directory/configuration": { "post": { "operationId": "AzureActiveDirectorySaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActiveDirectoryConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseActiveDirectoryConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a configuration", "tags": [ "[Integrations] Azure Active Directory" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "AzureActiveDirectoryReplaceConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActiveDirectoryConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseActiveDirectoryConfiguration" } } }, "description": "Successfully replaces configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Replace the existing configuration", "tags": [ "[Integrations] Azure Active Directory" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/active-directory/configuration/validate": { "post": { "operationId": "AzureActiveDirectoryValidateConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Azure Active Directory" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/active-directory/configurations": { "delete": { "operationId": "AzureActiveDirectoryDeleteConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseActiveDirectoryConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Azure Active Directory" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/active-directory/default-configuration": { "get": { "operationId": "AzureActiveDirectoryGetConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ActiveDirectoryConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Azure Active Directory" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/audit-logs": { "get": { "description": "Note: To see the complete list of possible values, please reference the available filter options for [audit logs under Settings in the app](https://app.getcortexapp.com/admin/settings/audit-logs). API key must have the `View audit logs` permission.", "operationId": "getAuditLogs", "parameters": [ { "in": "query", "name": "startTime", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "in": "query", "name": "endTime", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "in": "query", "name": "actions", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "CREATE", "READ", "UPDATE", "DELETE" ] } } }, { "in": "query", "name": "objectIdentifiers", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Filter by Cortex object types (CATALOG, SERVICE, TEAM, SCORECARD, etc), integration configurations (AWS_CONFIGURATION, BITBUCKET_CONFIGURATION, etc), and more.", "in": "query", "name": "objectTypes", "required": false, "schema": { "type": "string", "enum": [ "CATALOG", "TEAM", "AWS_CONFIGURATION", "BITBUCKET_CONFIGURATION" ] } }, { "in": "query", "name": "actorTypes", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "API_KEY", "PERSONAL_API_KEY", "OAUTH2", "BACKSTAGE", "ANONYMOUS" ] } } }, { "in": "query", "name": "actorApiKeyIdentifiers", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "in": "query", "name": "actorEmails", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "in": "query", "name": "actorIpAddresses", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "in": "query", "name": "actorRequestTypes", "required": false, "schema": { "type": "string", "enum": [ "API_KEY_ENTITY", "ATLASSIAN_WEBHOOK", "SCORECARD_BADGES", "SLACK_COMMAND" ] } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AuditLogsResponse" } } }, "description": "Successfully retrieved audit logs" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve audit logs", "tags": [ "Audit Logs" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/auth/key": { "get": { "description": "List API keys\n\nThe API key used to make the request must have the `Edit API keys` permission", "operationId": "listApiKey", "parameters": [ { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListApiKeyResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ListApiKeyResponse" } } }, "description": "Successfully found API keys" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List API keys", "tags": [ "API Keys" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "Create new API key.\n\nThe API key used to make the request must have the `Edit API keys` permission", "operationId": "createApiKey", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateApiRequest" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/CreateApiRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateApiResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/CreateApiResponse" } } }, "description": "Successfully created API key" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create API key", "tags": [ "API Keys" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/auth/key/{cid}": { "delete": { "description": "Delete API key\n\nThe API key used to make the request must have the `Edit API keys` permission", "operationId": "deleteApiKey", "parameters": [ { "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef", "in": "path", "name": "cid", "required": true, "schema": { "type": "string", "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef" } } ], "responses": { "200": { "description": "Successfully deleted API key" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "API key not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete API key", "tags": [ "API Keys" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "Get API key", "operationId": "getApiKey", "parameters": [ { "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef", "in": "path", "name": "cid", "required": true, "schema": { "type": "string", "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApiKeyDefinition" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ApiKeyDefinition" } } }, "description": "Successfully found API key" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "API key not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get API key", "tags": [ "API Keys" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Update API key\n\nThe API key used to make the request must have the `Edit API keys` permission", "operationId": "updateApiKey", "parameters": [ { "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef", "in": "path", "name": "cid", "required": true, "schema": { "type": "string", "description": "The unique, auto-generated identifier for the API key", "example": "ak1234567890abcdef" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateApiRequest" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/UpdateApiRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApiKeyDefinition" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ApiKeyDefinition" } } }, "description": "Successfully updated API key" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "API key not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update API key", "tags": [ "API Keys" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/aws/configurations": { "delete": { "operationId": "AWSRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AWSGetAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkAwsConfigurationsResponse" } } }, "description": "Successfully found configurations" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "AWSAddSingleConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SingleAwsConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SingleAwsConfigurationResponse" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "AWSReplaceAllConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkAwsConfigurationsRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkAwsConfigurationsResponse" } } }, "description": "Successfully replaced configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update configurations", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/aws/configurations/all/validate": { "post": { "operationId": "AWSValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/aws/configurations/validate/{accountId}": { "post": { "operationId": "AWSValidateConfiguration", "parameters": [ { "in": "path", "name": "accountId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/aws/configurations/{accountId}": { "delete": { "operationId": "AWSRemoveSingleConfiguration", "parameters": [ { "in": "path", "name": "accountId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted configuration" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AWSGetConfiguration", "parameters": [ { "in": "path", "name": "accountId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SingleAwsConfigurationResponse" } } }, "description": "Successfully found configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/aws/types": { "get": { "operationId": "AWSGetAwsCloudControlTypes", "parameters": [ { "description": "When true, includes all AWS types supported", "in": "query", "name": "includeDisabled", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AwsCloudControlTypeResponse" } } }, "description": "Successfully found AWS types" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "AWS types not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List AWS types", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "AWSSetConfiguredAwsCloudControlTypes", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AwsCloudControlTypesConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AwsCloudControlTypesResponse" } } }, "description": "Successfully replaced AWS types" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update configured AWS types", "tags": [ "[Integrations] AWS" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/configuration": { "post": { "operationId": "AzureDevopsSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureDevopsConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureDevopsConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/configuration/validate": { "post": { "operationId": "AzureDevopsValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/configuration/validate/{alias}": { "post": { "operationId": "AzureDevopsValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/configuration/{alias}": { "delete": { "operationId": "AzureDevopsRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureDevopsConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AzureDevopsGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureDevopsConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "AzureDevopsUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureDevopsUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureDevopsConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/configurations": { "delete": { "operationId": "AzureDevopsRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AzureDevopsListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureDevopsConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "AzureDevopsSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestAzureDevopsConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseAzureDevopsConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-devops/default-configuration": { "get": { "operationId": "AzureDevopsGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureDevopsConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Azure Devops" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/configuration": { "post": { "operationId": "AzureResourcesSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourcesConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureResourcesConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/configuration/validate": { "post": { "operationId": "AzureResourcesValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/configuration/validate/{alias}": { "post": { "operationId": "AzureResourcesValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/configuration/{alias}": { "delete": { "operationId": "AzureResourcesRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureResourcesConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AzureResourcesGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourcesConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "AzureResourcesUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourcesUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureResourcesConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/configurations": { "delete": { "operationId": "AzureResourcesRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "AzureResourcesListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseAzureResourcesConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "AzureResourcesSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestAzureResourcesConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseAzureResourcesConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/default-configuration": { "get": { "operationId": "AzureResourcesGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourcesConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/azure-resources/types": { "get": { "operationId": "AzureResourcesListAzureResourceTypes", "parameters": [ { "description": "Whether to include disabled Azure Resources types", "in": "query", "name": "includeDisabled", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourceTypesResponse" } } }, "description": "Successfully found Azure Resources types" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Azure Resources types not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List Azure Resources types", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "AzureResourcesReplaceAzureResourceTypes", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateConfiguredAzureResourcesTypesRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureResourceTypesResponse" } } }, "description": "Successfully replaced Azure Resources types" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Azure Resources types not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update configured Azure Resources types", "tags": [ "[Integrations] Azure Resources" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog": { "delete": { "description": "Note: Dangerous operation that will delete all entities that are of the given type", "operationId": "deleteEntitiesByType", "parameters": [ { "description": "A list of entity types or IDs delete", "in": "query", "name": "types", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "in": "query", "name": "ids", "required": false, "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "description": "Successfully deleted entities" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "405": { "description": "Entity delete is not allowed" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete entities by type", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Delete all entities of specific types. If the client is trying to fetch data for teams, use \u0027type\u0027: \u0027team\u0027 in these APIs. Disabled for MCP access due to the destructive nature of bulk operations that could remove critical infrastructure components.", "x-cortex-mcp-enabled": "false" }, "get": { "description": "List all entities across the Service, Resource and Domain Catalogs.\n\nThis API returns summary data for each entity, so refer to the retrieve entity method to lookup more details for a single entity.", "operationId": "listAllEntities", "parameters": [ { "description": "Filter based on groups, which correspond to the `x-cortex-groups` field in the Catalog Descriptor. Accepts a comma-delimited list of groups", "in": "query", "name": "groups", "required": false, "schema": { "type": "array", "items": { "type": "string" }, "default": [] } }, { "description": "Filter based on owner group names, which correspond to the `x-cortex-owners` field in the Catalog Descriptor. Accepts a comma-delimited list of owner group names", "in": "query", "name": "owners", "required": false, "schema": { "type": "array", "items": { "type": "string" }, "default": [] } }, { "description": "Depth of the parent / children hierarchy nodes. Can be \u0027full\u0027 or a valid integer", "in": "query", "name": "hierarchyDepth", "required": false, "schema": { "type": "string", "default": "full" } }, { "description": "Supports only GitHub repositories in the `org/repo` format", "example": "cortexapps%2Fbackend,cortexapps%2Ffrontend", "in": "query", "name": "gitRepositories", "required": false, "schema": { "type": "array", "items": { "type": "string" }, "default": [] } }, { "description": "List of sub fields to include for hierarchies. Only supports \u0027groups\u0027", "example": "groups", "in": "query", "name": "includeHierarchyFields", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Filter the response to specific types of entities. By default, this includes services, resources, and domains. Corresponds to the `x-cortex-type` field in the entity descriptor.", "example": "service,rds,s3,domain", "in": "query", "name": "types", "required": false, "schema": { "type": "array", "items": { "type": "string" }, "default": [] } }, { "description": "Filter based on a [search query](https://docs.cortex.io/settings/search). This will search across entity properties. If provided, results will be sorted by relevance.", "in": "query", "name": "query", "required": false, "schema": { "type": "string", "default": "" } }, { "description": "Whether to include archived entities in the response", "in": "query", "name": "includeArchived", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Whether to include custom data for each entity in the response", "in": "query", "name": "includeMetadata", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Whether to include links for each entity in the response", "in": "query", "name": "includeLinks", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Whether to include Slack channels for each entity in the response", "in": "query", "name": "includeSlackChannels", "required": false, "schema": { "type": "boolean" } }, { "description": "Whether to include ownership information for each entity in the response", "in": "query", "name": "includeOwners", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "List of sub fields to include for different types", "example": "team:members", "in": "query", "name": "includeNestedFields", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListCatalogEntities" } } }, "description": "Successfully found entities" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entities", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "List and filter catalog entities with support for pagination, search, and various filters including groups, types, owners, and git repositories. If the client is trying to fetch data for teams, use \u0027type\u0027: \u0027team\u0027 in these APIs.", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/batch/{type}": { "get": { "description": "Gets a list of entities based on type and batch key plus identifier", "operationId": "getEntitiesByBatchIdentifier", "parameters": [ { "description": "The type name of the batches to retrieve. This corresponds to the `x-cortex-type` field in the entity descriptor.", "in": "path", "name": "type", "required": true, "schema": { "type": "string" } }, { "description": "The batch key to filter entities by. This is a custom field set as entity metadata `__cortex_batch.key`", "in": "query", "name": "key", "required": true, "schema": { "type": "string" } }, { "description": "The batch version. This is a custom field set as entity metadata `__cortex_batch.identifier`, required if `compare` is specified", "in": "query", "name": "version", "required": false, "schema": { "type": "string" } }, { "description": "The type over comparison to perform. Ignored unless `version` parameter must also be provided. Values can be `eq`, `ne`.", "in": "query", "name": "compare", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "includeArchived", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityCIDListResponse" } } }, "description": "List of entity identifiers matching the batch key and type, based on the specified compare parameter." }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get entities by batch identifier", "tags": [ "Catalog Entities" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/custom-data": { "delete": { "description": "Use this endpoint when attempting to delete custom data where the key contains non-alphanumeric characters. Otherwise, use the standard API under `Custom Data`.", "operationId": "getCustomDataForEntityByKeyAdvanced", "parameters": [ { "in": "query", "name": "tag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "key", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Successfully deleted custom data" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete custom data by key for entity", "tags": [ "Custom Data [Advanced]" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "Use this endpoint when attempting to delete custom data where the key contains non-alphanumeric characters. Otherwise, use the standard API under `Custom Data`.", "operationId": "retrieveCustomDataForEntityAdvanced", "parameters": [ { "description": "Entity tag (x-cortex-tag), supports non-alphanumeric characters", "in": "query", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "When set, returns the entity\u0027s value at this key. Otherwise, returns all custom data key/values for the entity.", "in": "query", "name": "key", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CustomData" } } } }, "description": "Successfully retrieved custom data" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve custom data for entity", "tags": [ "Custom Data [Advanced]" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "addCustomDataForEntityAdvanced", "parameters": [ { "in": "query", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataCreateRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomData" } } }, "description": "Successfully created data" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid custom data request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom data for entity", "tags": [ "Custom Data [Advanced]" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Add multiple key/values of custom data to multiple entities", "operationId": "createOrUpdateCustomDataInBulk", "parameters": [ { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkCustomDataRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkCustomDataResponse" } } }, "description": "Successfully created/updated custom data" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid custom data request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom data in bulk", "tags": [ "Custom Data" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/definitions": { "get": { "description": "List entity types\n\nResponse excludes Cortex default types of service, domain, and team.", "operationId": "listDefinitions", "parameters": [ { "description": "When true, returns the built-in entity types that Cortex provides, such as `rds` and `s3`. Defaults to false.", "in": "query", "name": "includeBuiltIn", "required": false, "schema": { "type": "boolean" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CatalogDefinitionsListResponse" } } }, "description": "Successfully found entity types" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entity types", "tags": [ "Entity Types" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "createDefinition", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCatalogDefinitionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CatalogDefinitionResponse" } } }, "description": "Successfully created entity type" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Failed to create entity type" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create entity type", "tags": [ "Entity Types" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/definitions/{type}": { "delete": { "operationId": "deleteDefinition", "parameters": [ { "in": "path", "name": "type", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted entity type" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete entity type", "tags": [ "Entity Types" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getDefinition", "parameters": [ { "in": "path", "name": "type", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CatalogDefinitionResponse" } } }, "description": "Successfully found entity types" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve entity type", "tags": [ "Entity Types" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "updateDefinition", "parameters": [ { "in": "path", "name": "type", "required": true, "schema": { "type": "string" } }, { "description": "When true, schema will be updated even if it results in broken schemas for existing entities. Defaults to false.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateCatalogDefinitionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CatalogDefinitionResponse" } } }, "description": "Successfully updated entity type" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Failed to update entity type" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update entity type", "tags": [ "Entity Types" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/dependencies": { "delete": { "operationId": "deleteDependenciesInBulk", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkDependencyRequest" } } }, "required": true }, "responses": { "204": { "description": "Successfully deleted dependencies" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Cannot modify dependency that is defined in cortex.yaml" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete dependencies in bulk", "tags": [ "Dependencies" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "This API allows you to create multiple dependencies for multiple entities at once.", "operationId": "createOrUpdateDependenciesInBulk", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkDependencyRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkDependencyResponse" } } }, "description": "Successfully created / updated dependencies" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Cannot modify dependency that is defined in cortex.yaml" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create or update dependencies in bulk", "tags": [ "Dependencies" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/deploys": { "delete": { "description": "Filter and delete deploys by SHA hash, environment, or type. Note that at least one of the filters need to be set.\nIf looking to delete all deployments for an entity, use the `Delete all deploys for entity` endpoint instead.", "operationId": "deleteDeploysByFilter", "parameters": [ { "in": "query", "name": "environment", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sha", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string", "enum": [ "DEPLOY", "SCALE", "ROLLBACK", "RESTART" ] } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeploysResponse" } } }, "description": "Successfully deleted deployment" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Trying to delete deploys without any filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete deploys by filter", "tags": [ "Deploys" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/deploys/all": { "delete": { "description": "Dangerous endpoint that blows away deploys for all entities", "operationId": "deleteAllDeploys", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeploysResponse" } } }, "description": "Successfully deleted all deployments" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all deployments for all entities", "tags": [ "Deploys" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/descriptors": { "get": { "description": "List entity descriptors\n\nThe descriptors do not include objects (e.g. custom data, dependencies, etc) defined via the API", "operationId": "listEntityDescriptors", "parameters": [ { "description": "When true, returns the YAML representation of the descriptors", "in": "query", "name": "yaml", "schema": { "type": "boolean" } }, { "description": "Filter the response to specific types of entities. By default, this includes services, resources, and domains. Corresponds to the `x-cortex-type` field in the entity descriptor.", "example": "service,rds,s3,domain", "in": "query", "name": "types", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Number of entities to return per page", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32" } }, { "description": "Page number to return, 0 indexed", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/YamlDescriptorsListResponse" }, { "$ref": "#/components/schemas/JsonDescriptorsListResponse" } ] } } }, "description": "Successfully retrieved entity descriptors" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entity descriptors", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Cortex Catalog API - Access and manage your service catalog, teams, domains, and resources", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{callerTag}/dependencies": { "delete": { "description": "Deletes any outgoing dependencies from the entity. Note: this only deletes dependencies that were created via the API.", "operationId": "deleteDependenciesFromEntity", "parameters": [ { "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully deleted dependencies" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Caller not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete dependencies from entity", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "Delete all dependencies for an entity. Disabled for MCP access to protect dependency graph integrity and prevent accidental removal of critical relationship data", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "listDependenciesForEntity", "parameters": [ { "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "includeOutgoing", "required": false, "schema": { "type": "boolean", "default": true } }, { "in": "query", "name": "includeIncoming", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully found entity dependencies" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity dependencies not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve all dependencies for an entity", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "List all dependencies for an entity including both incoming (who depends on this service) and outgoing (what this service depends on) relationships. Essential for understanding service interactions, planning changes, and assessing blast radius", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{callerTag}/dependencies/{calleeTag}": { "delete": { "description": "Deletes a single dependency edge between the `caller` and the `callee`. \nNote: This is only supported for edges created via the API.", "operationId": "deleteDependency", "parameters": [ { "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "calleeTag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "method", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } } ], "responses": { "204": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully deleted dependency" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid endpoint" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Dependency not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete dependency", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "Delete a specific dependency between two entities. Disabled for MCP access as removing dependencies can mask critical system relationships", "x-cortex-mcp-enabled": "false" }, "get": { "description": "If a dependency exists between the `callee` and the `caller`, returns metadata about the edge.", "operationId": "getDependency", "parameters": [ { "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "calleeTag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "method", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully found dependency" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid endpoint" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Dependency not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve dependency between entities", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "Get specific dependency details between two entities including method, path, and metadata. Useful for understanding the nature of the relationship, API contracts, and communication patterns between services", "x-cortex-mcp-enabled": "true" }, "post": { "operationId": "createDependency", "parameters": [ { "description": "The entity tag (x-cortex-tag) for the callee entity (\"from\" entity)", "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (x-cortex-tag) for the caller entity (\"to\" entity)", "in": "path", "name": "calleeTag", "required": true, "schema": { "type": "string" } }, { "description": "HTTP Method", "example": "POST", "in": "query", "name": "method", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyCreateRequest" } } }, "required": true }, "responses": { "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully created dependency" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid endpoint" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create dependency from entity", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "Create a dependency between entities. Disabled for MCP access to prevent unauthorized architecture modifications that could impact system understanding", "x-cortex-mcp-enabled": "false" }, "put": { "description": "If a dependency exists between two entities, replace the metadata with the payload. \nNote: This only supports dependencies created via the API.", "operationId": "updateDependency", "parameters": [ { "in": "path", "name": "callerTag", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "calleeTag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "method", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "path", "required": false, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyUpdateRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DependencyResponse" } } }, "description": "Successfully updated dependency" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid endpoint" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update dependency between entities", "tags": [ "Dependencies" ], "x-cortex-mcp-description": "Update dependency between entities. Disabled for MCP access as modifying dependencies requires careful validation to maintain accurate system topology", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}": { "delete": { "operationId": "deleteEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted entity" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "405": { "description": "Entity delete is not allowed" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Delete an entity from the catalog. This operation is disabled for MCP access due to its destructive nature.", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getEntityDetails", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Depth of the parent / children hierarchy nodes. Can be \u0027full\u0027 or a valid integer", "in": "query", "name": "hierarchyDepth", "required": false, "schema": { "type": "string", "default": "full" } }, { "description": "List of sub fields to include for hierarchies. Only supports \u0027groups\u0027", "example": "groups", "in": "query", "name": "includeHierarchyFields", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Include ownership information, default is true", "in": "query", "name": "includeOwners", "required": false, "schema": { "type": "boolean" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DetailsResponse" } } }, "description": "Successfully found entity" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve entity details", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Retrieve comprehensive details about a specific entity including its metadata, ownership, hierarchies, and relationships. This is the primary method for getting complete information about services, teams, or domains.", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{tagOrId}/archive": { "put": { "operationId": "archiveEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DetailsResponse" } } }, "description": "Successfully archived entity" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Archive an entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Archive an entity. Disabled for MCP access to prevent accidental archival of critical services that could impact system visibility", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/custom-data": { "delete": { "operationId": "deleteCustomDataForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "key", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Successfully deleted custom data" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete custom data for entity", "tags": [ "Custom Data" ], "x-cortex-mcp-description": "Delete custom data from an entity. Disabled for MCP access to protect data integrity and prevent accidental removal of critical metadata", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getCustomDataForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CustomData" } } } }, "description": "Successfully retrieved custom data. If using pagination, we do not return page, total, or totalPages in the response. An empty array is returned once you reach the end." }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List custom data for entity", "tags": [ "Custom Data" ], "x-cortex-mcp-description": "List all custom data key-value pairs associated with an entity. Retrieve metadata, configuration settings, and custom attributes stored for services, resources, or domains. Supports pagination for entities with large amounts of custom data", "x-cortex-mcp-enabled": "true" }, "post": { "operationId": "addCustomDataForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DataCreateRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomData" } } }, "description": "Successfully created data" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid custom data request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom data for entity", "tags": [ "Custom Data" ], "x-cortex-mcp-description": "Add custom data to an entity. Disabled for MCP access to prevent uncontrolled metadata modifications that could affect integrations and reporting", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/custom-data/{key}": { "get": { "operationId": "getCustomDataForEntityByKey", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "key", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomData" } } }, "description": "Successfully retrieved custom data for key" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Custom data not found for given entity and key" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve custom data for entity by key", "tags": [ "Custom Data" ], "x-cortex-mcp-description": "Retrieve a specific custom data value by key for an entity. Efficiently access individual metadata attributes, configuration values, or custom properties without fetching all custom data", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{tagOrId}/custom-events": { "delete": { "operationId": "deleteCustomEventsForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string" } }, { "deprecated": true, "description": "Use \u0027startTime\u0027 instead", "in": "query", "name": "timestamp", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "If provided, events with greater than or equal to timestamp will be deleted (a date-time without a time-zone in the ISO-8601 calendar system)", "in": "query", "name": "startTime", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "If provided, events with less than or equal to timestamp will be deleted (a date-time without a time-zone in the ISO-8601 calendar system)", "in": "query", "name": "endTime", "required": false, "schema": { "type": "string", "format": "date-time" } } ], "responses": { "200": { "description": "Successfully deleted custom events" }, "204": { "description": "No Content" }, "400": { "description": "Bad Request" }, "404": { "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete ALL custom events for an entity", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "Delete multiple custom events with filters. Disabled for MCP access to preserve event history", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "listCustomEventsForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string" } }, { "deprecated": true, "description": "Use \u0027startTime\u0027 instead", "in": "query", "name": "timestamp", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "If provided, events with greater than or equal to timestamp will be returned (a date-time without a time-zone in the ISO-8601 calendar system)", "in": "query", "name": "startTime", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "If provided, events with less than or equal to timestamp will be returned (a date-time without a time-zone in the ISO-8601 calendar system)", "in": "query", "name": "endTime", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventListResponse" } } }, "description": "Successfully retrieved custom events" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventListResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventListResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List custom events for entity", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "List custom events for an entity with optional filtering by type and time range. Supports pagination and filtering by event type, start time, and end time to retrieve historical event data", "x-cortex-mcp-enabled": "true" }, "post": { "operationId": "createCustomEventForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SaveCustomEventRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Successfully created custom event" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create custom event for entity", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "Create a new custom event. Disabled for MCP access to prevent external systems from creating events that could affect operational tracking", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/custom-events/{uuid}": { "delete": { "operationId": "deleteCustomEventForEntityByUuid", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "description": "Successfully deleted custom event" }, "204": { "description": "No Content" }, "400": { "description": "Bad Request" }, "404": { "description": "Entity or custom event not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete custom events by UUID", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "Delete a specific custom event by UUID. Disabled for MCP access to preserve event history", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getCustomEventForEntityByUuid", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Successfully retrieved custom event" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Entity or custom event not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve custom event by UUID", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "Retrieve a specific custom event by its UUID. Returns event details including title, description, timestamp, type, and any custom data associated with the event", "x-cortex-mcp-enabled": "true" }, "put": { "operationId": "replaceCustomEventForEntityByUuid", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SaveCustomEventRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Successfully updated custom event" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomEventResponse" } } }, "description": "Entity or custom event not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update custom event by UUID", "tags": [ "Custom Events" ], "x-cortex-mcp-description": "Update an existing custom event. Disabled for MCP access to maintain event history integrity", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/deploys": { "delete": { "operationId": "deleteDeploysForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "environment", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sha", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "type", "required": false, "schema": { "type": "string", "enum": [ "DEPLOY", "SCALE", "ROLLBACK", "RESTART" ] } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomDeploy" } } }, "description": "Successfully deleted deployments" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete deployments for entity", "tags": [ "Deploys" ], "x-cortex-mcp-description": "Delete multiple deployments. Disabled for MCP access to preserve deployment history", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getDeploysForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomDeployListPaginatedResponse" } } }, "description": "Successfully retrieved deployments" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List deployments for entity", "tags": [ "Deploys" ], "x-cortex-mcp-description": "List all deployments for a specific catalog entity. Returns deployment history including timestamps, environments, SHAs, and deployment types in paginated format", "x-cortex-mcp-enabled": "true" }, "post": { "operationId": "addDeployForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SaveDeployRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomDeploy" } } }, "description": "Successfully created deployment" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add deployment for entity", "tags": [ "Deploys" ], "x-cortex-mcp-description": "Create a new deployment record. Disabled for MCP access to prevent external systems from modifying deployment history", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/deploys/{uuid}": { "delete": { "operationId": "deleteDeployByUuid", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomDeploy" } } }, "description": "Successfully deleted deployment" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or deployment not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete deployment by UUID", "tags": [ "Deploys" ], "x-cortex-mcp-description": "Delete a specific deployment. Disabled for MCP access to preserve deployment history", "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "updateDeployByUuid", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string", "format": "uuid" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SaveDeployRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomDeploy" } } }, "description": "Successfully updated deployment" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or deployment not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update deployment by UUID", "tags": [ "Deploys" ], "x-cortex-mcp-description": "Update an existing deployment. Disabled for MCP access to maintain deployment history integrity", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/documentation/openapi": { "delete": { "operationId": "deleteOpenApiDocForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "Successfully deleted documentation" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete OpenAPI docs for entity", "tags": [ "Docs" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getOpenApiDocForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Name of the OpenAPI spec to return. If you have multiple OpenAPI specs configured for your entity as `x-cortex-links`, use this parameter to ensure the correct spec is returned. If this parameter is not specified, we will return the first OpenAPI spec found.", "in": "query", "name": "name", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenAPISpecification" } } }, "description": "Successfully found documentation" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Documentation not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve OpenAPI docs for entity", "tags": [ "Docs" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "updateOpenApiDocForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenAPISpecification" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenAPISpecification" } } }, "description": "Successfully updated documentation" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update OpenAPI docs for entity", "tags": [ "Docs" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/gitops-logs": { "get": { "operationId": "latestGitOpsLogForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/GitOpsLogEntityResponse" } } } }, "description": "Retrieve most recent GitOps log for entity" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity GitOps log not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve most recent GitOps log for entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/groups": { "delete": { "operationId": "deleteGroupsFromEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupMembershipsRequest" } } }, "required": true }, "responses": { "200": { "description": "Successfully deleted group memberships" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete groups from entity", "tags": [ "Groups" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "listGroupsForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupMembershipsResponse" } } }, "description": "Successfully retrieved groups" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve groups for entity", "tags": [ "Groups" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "addGroupsToEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupMembershipsRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GroupMembershipsResponse" } } }, "description": "Successfully created group memberships" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add groups to entity", "tags": [ "Groups" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/integrations/oncall/current": { "get": { "operationId": "getCurrentOncallForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/CurrentOncallDetails" } } } }, "description": "Successfully retrieved current on-call" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve current on-call for entity", "tags": [ "On-call" ], "x-cortex-mcp-description": "Retrieve the current on-call personnel for an entity in real-time. Shows who is actively responsible for incident response, including primary and secondary on-call, contact information, and rotation schedules", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{tagOrId}/integrations/oncall/registration": { "get": { "operationId": "getOncallRegistrationForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/OncallRegistration" } } } }, "description": "Successfully retrieved on-call registration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or registration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve on-call registration for entity", "tags": [ "On-call" ], "x-cortex-mcp-description": "Get the on-call registration details for an entity, including the escalation policy, service mapping, and provider information. Disabled for MCP access to protect sensitive on-call information", "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/openapi": { "get": { "description": "Retrieve entity descriptor\n\nThe descriptor does not include objects (e.g. custom data, dependencies, etc) defined via the API", "operationId": "getEntityDescriptor", "parameters": [ { "description": "When true, returns the YAML representation of the descriptor", "in": "query", "name": "yaml", "schema": { "type": "boolean" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "oneOf": [ { "type": "string" }, { "$ref": "#/components/schemas/JsonNode" } ] } } }, "description": "Successfully found entity descriptor" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve entity descriptor", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Cortex Catalog API - Access and manage your service catalog, teams, domains, and resources", "x-cortex-mcp-enabled": "true" } }, "/api/v1/catalog/{tagOrId}/packages": { "get": { "operationId": "listPackages", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "All packages. If using pagination, we do not return page, total, or totalPages in the response. An empty array is returned once you reach the end." }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List packages", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/dotnet/nuget": { "delete": { "operationId": "deleteNugetPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[csharp] Delete Nuget package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/dotnet/nuget/csproj": { "post": { "operationId": "uploadNugetCsproj", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } }, "application/xml": {} }, "description": "Stringified version of your *.csproj file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NUGET", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[csharp] Upload Nuget csproj", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/dotnet/nuget/packages-lock": { "post": { "operationId": "uploadNugetPackagesLock", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your nuget package.lock.json file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NUGET", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[csharp] Upload Nuget packages.lock.json", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/go": { "delete": { "operationId": "deleteGoPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[go] Delete Go package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/go/gosum": { "post": { "operationId": "uploadGoSumPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your go.sum file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "GO", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[golang] Upload go.sum", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/java": { "delete": { "operationId": "deleteJavaPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[java] Delete Java package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "uploadJavaPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PackageVersionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "example": { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "JAVA", "version": "string" }, "schema": { "$ref": "#/components/schemas/Package" } } }, "description": "Successfully saved package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[java] Upload single Java package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/java/bulk": { "post": { "operationId": "uploadJavaPackages", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PackageVersionRequest" } } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "JAVA", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[java] Upload multiple Java packages", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/java/maven-pom": { "post": { "operationId": "uploadMavenPom", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your pom.xml file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "JAVA", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[java] Upload maven pom.xml", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/node": { "delete": { "operationId": "deleteNodePackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[node] Delete Node package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/node/package-json": { "post": { "operationId": "uploadNpmPackageJson", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your package.json", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NODE", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[js] Upload NPM/Yarn/PNPM package.json", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/node/package-lock": { "post": { "operationId": "uploadNpmPackageLockJson", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your NPM package-lock.json", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NODE", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[js] Upload NPM package-lock.json", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/node/pnpm-lock": { "post": { "operationId": "uploadPnpmLock", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your pnpm-lock.yaml file; supported version 6 or higher", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NODE", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[js] Upload pnpm-lock.yaml", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/node/yarn-lock": { "post": { "operationId": "uploadYarnLock", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your yarn.lock file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "NODE", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[js] Upload yarn.lock", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/python": { "delete": { "operationId": "deletePythonPackage", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "name", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted package" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[python] Delete Python package", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/python/pipfile": { "post": { "operationId": "uploadPipfileLock", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your Pipfile.lock file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "PYTHON", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[python] Upload pipfile.lock", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/packages/python/requirements": { "post": { "operationId": "uploadRequirementsTxt", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Stringified version of your requirements.txt file", "required": true }, "responses": { "200": { "content": { "application/json": { "example": [ { "dateCreated": "2023-01-01T01:01:01.000Z", "id": 0, "name": "string", "packageType": "PYTHON", "version": "string" } ], "schema": { "type": "array", "items": { "$ref": "#/components/schemas/Package" } } } }, "description": "Successfully saved packages" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[python] Upload requirements.txt", "tags": [ "Packages" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/relationships/{relationshipTypeTag}/destinations": { "get": { "description": "List all entity destinations for a certain relationship type. Optional depth parameter to limit the depth of the relationship tree.", "operationId": "listEntityDestinationsForRelationshipType", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "Maximum depth to traverse in the relationship hierarchy. Defaults to 1 (i.e., direct relationships only).", "example": 2, "in": "query", "name": "depth", "required": false, "schema": { "type": "string" } }, { "description": "If true will include relationships that traverse archived entities", "example": false, "in": "query", "name": "includeArchived", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityDestinationsResponse" } } }, "description": "Successfully retrieved entity sources" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entity destinations for a relationship type", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-description": "List all destinations for a certain relationship type \u0026 entity. Use the listRelationshipTypes tool to find the relevant relationshipTypeTag.", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Add direct destinations for a given entity and entity relationship type", "operationId": "addEntityDestinations", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationshipDestinations" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityDestinationsResponse" } } }, "description": "Successfully added entity destinations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship validation error" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add direct entity destinations for a given entity", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Update all direct destinations for a given entity and entity relationship type", "operationId": "updateEntityDestinations", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationshipDestinations" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityDestinationsResponse" } } }, "description": "Successfully updated entity destinations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship validation error" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update direct entity destinations for a given entity", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/relationships/{relationshipTypeTag}/sources": { "get": { "description": "List all entity sources for a certain relationship type. Optional depth parameter to limit the depth of the relationship tree.", "operationId": "listEntitySourcesForRelationshipType", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "Maximum depth to traverse in the relationship hierarchy. Defaults to 1 (i.e., direct relationships only).", "example": 2, "in": "query", "name": "depth", "required": false, "schema": { "type": "string" } }, { "description": "If true will include relationships that traverse archived entities", "example": false, "in": "query", "name": "includeArchived", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntitySourcesResponse" } } }, "description": "Successfully retrieved entity sources" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entity sources for a relationship type", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-description": "List all sources for a certain relationship type \u0026 entity. Use the listRelationshipTypes tool to find the relevant relationshipTypeTag.", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Add direct sources for a given entity and entity relationship type", "operationId": "addEntitySources", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationshipSources" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntitySourcesResponse" } } }, "description": "Successfully added entity sources" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship validation error" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add direct entity sources for a given entity", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Update all direct sources for a given entity and entity relationship type", "operationId": "updateEntitySources", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationshipSources" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntitySourcesResponse" } } }, "description": "Successfully updated entity sources" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship validation error" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update direct entity sources for a given entity", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/scorecards": { "get": { "operationId": "listScorecardScoresForEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "array", "items": { "$ref": "#/components/schemas/ScorecardScore" } } } }, "description": "All entity Scorecard scores" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve entity Scorecard scores", "tags": [ "Catalog Entities" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/catalog/{tagOrId}/unarchive": { "put": { "operationId": "unarchiveEntity", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DetailsResponse" } } }, "description": "Successfully unarchived entity" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Unarchive an entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-description": "Unarchive an entity. Disabled for MCP access to maintain consistent entity lifecycle management", "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/configuration": { "post": { "operationId": "CircleCISaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CircleCiConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCircleCiConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/configuration/validate": { "post": { "operationId": "CircleCIValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/configuration/validate/{alias}": { "post": { "operationId": "CircleCIValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/configuration/{alias}": { "delete": { "operationId": "CircleCIRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCircleCiConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "CircleCIGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CircleCiConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "CircleCIUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CircleCiUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCircleCiConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/configurations": { "delete": { "operationId": "CircleCIRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "CircleCIListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCircleCiConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "CircleCISaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestCircleCiConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseCircleCiConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/circleci/default-configuration": { "get": { "operationId": "CircleCIGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CircleCiConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] CircleCI" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/configuration": { "post": { "operationId": "CoralogixSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CoralogixConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCoralogixConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/configuration/validate": { "post": { "operationId": "CoralogixValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/configuration/validate/{alias}": { "post": { "operationId": "CoralogixValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/configuration/{alias}": { "delete": { "operationId": "CoralogixRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCoralogixConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "CoralogixGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CoralogixConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "CoralogixUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CoralogixUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCoralogixConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/configurations": { "delete": { "operationId": "CoralogixRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "CoralogixListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseCoralogixConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "CoralogixSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestCoralogixConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseCoralogixConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/coralogix/default-configuration": { "get": { "operationId": "CoralogixGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CoralogixConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Coralogix" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/custom-integrations/data/{uuid}": { "post": { "description": "Refer to the [Webhook section](/docs/reference/basics/custom-data#webhook) of the Custom Data docs for more information. This API is preconfigured in your workspace settings under Custom Integrations. The UUID corresponds to a custom data key, as well as a `jq` command that maps the data in this payload to an entity in your workspace.", "operationId": "addCustomDataViaWebhook", "parameters": [ { "in": "path", "name": "uuid", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JsonNode" } } }, "description": "A JSON object that contains a valid entity tag in the payload, queryable with the `jq` command defined for this webhook in your workspace.", "required": true }, "responses": { "200": { "description": "OK" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom data via webhook", "tags": [ "Custom Data" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/configuration": { "post": { "operationId": "DatadogSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DatadogConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseDatadogConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/configuration/validate": { "post": { "operationId": "DatadogValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/configuration/validate/{alias}": { "post": { "operationId": "DatadogValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/configuration/{alias}": { "delete": { "operationId": "DatadogRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseDatadogConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "DatadogGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DatadogConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "DatadogUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DatadogUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseDatadogConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/configurations": { "delete": { "operationId": "DatadogRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "DatadogListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseDatadogConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "DatadogSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestDatadogConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseDatadogConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/datadog/default-configuration": { "get": { "operationId": "DatadogGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DatadogConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Datadog" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/discovery-audit": { "get": { "description": "This report shows you recent changes in your environment that aren\u0027t reflected in Cortex, including newly created repositories, services, and resources that we discover from your integrations or which were deleted in the environment but corresponding Cortex entities are still present.", "operationId": "getDiscoveryAudit", "parameters": [ { "description": "Filter based on type of the event", "in": "query", "name": "type", "required": false, "schema": { "type": "string", "enum": [ "NEW_REPOSITORY", "REPOSITORY_DELETED", "REPOSITORY_ARCHIVED", "NEW_K8S_RESOURCE", "NEW_APM_RESOURCE", "APM_RESOURCE_NOT_DETECTED", "NEW_ECS_RESOURCE", "ECS_RESOURCE_NOT_DETECTED", "NEW_AWS_RESOURCE", "AWS_RESOURCE_NOT_DETECTED", "NEW_GOOGLE_CLOUD_RESOURCE", "GOOGLE_CLOUD_RESOURCE_NOT_DETECTED", "NEW_AZURE_RESOURCE", "AZURE_RESOURCE_NOT_DETECTED" ] } }, { "description": "Filter based on integration source", "in": "query", "name": "source", "required": false, "schema": { "type": "string", "enum": [ "AWS", "AZURE_DEVOPS", "AZURE_RESOURCES", "BITBUCKET", "DATADOG", "DYNATRACE", "ECS", "GCP", "GITHUB", "GITLAB", "INSTANA", "K8S", "LIGHTSTEP", "LAMBDA", "LAMBDA_CLOUD_CONTROL", "NEWRELIC", "SERVICENOW", "SERVICENOW_DOMAIN" ] } }, { "description": "Flag to include ignored events in result", "in": "query", "name": "includeIgnored", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DiscoveryAuditReportResponse" } } }, "description": "Successfully retrieved discovery audit report" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve discovery audit report", "tags": [ "Discovery Audit" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/custom-metrics/{customMetricKey}/entity/{tagOrId}": { "delete": { "description": "Deletes custom metric data points for entity.", "operationId": "deleteByTimeRange", "parameters": [ { "description": "Key for the custom metric filter", "in": "path", "name": "customMetricKey", "required": true, "schema": { "type": "string" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Start date for the deletion (inclusive)", "in": "query", "name": "startDate", "required": true, "schema": { "type": "string", "format": "date-time" } }, { "description": "End date for the deletion (inclusive)", "in": "query", "name": "endDate", "required": true, "schema": { "type": "string", "format": "date-time" } } ], "responses": { "204": { "description": "Successfully deleted data points" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete custom metrics data points", "tags": [ "Custom Metrics" ], "x-cortex-mcp-description": "Delete custom metric data points within a time range. Disabled for MCP access to preserve metric history", "x-cortex-mcp-enabled": "false" }, "get": { "description": "Lists all custom metrics data points for an entity", "operationId": "getCustomMetricData", "parameters": [ { "description": "Key for the custom metric filter", "in": "path", "name": "customMetricKey", "required": true, "schema": { "type": "string" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Start date for the filter (inclusive). Default: 6 months", "in": "query", "name": "startDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "End date for the filter (inclusive)", "in": "query", "name": "endDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CustomMetricDataResponse" } } }, "description": "Successfully retrieved custom metrics data points" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve custom metrics data points", "tags": [ "Custom Metrics" ], "x-cortex-mcp-description": "Retrieve custom metric data points for an entity. Returns paginated time-series data for a specific custom metric, with optional filtering by date range to analyze trends and patterns", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Adds a single custom metric data point for entity.", "operationId": "createCustomMetricData", "parameters": [ { "description": "Key for the custom metric filter", "in": "path", "name": "customMetricKey", "required": true, "schema": { "type": "string" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCustomDataRequest" } } }, "required": true }, "responses": { "200": { "description": "Successfully added data point" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom metrics data point", "tags": [ "Custom Metrics" ], "x-cortex-mcp-description": "Add a single custom metric data point. Disabled for MCP access to prevent external systems from modifying metric data", "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/custom-metrics/{customMetricKey}/entity/{tagOrId}/bulk": { "post": { "description": "Adds multiple custom metric data points for entity.", "operationId": "createBulkCustomMetricData", "parameters": [ { "description": "Key for the custom metric filter", "in": "path", "name": "customMetricKey", "required": true, "schema": { "type": "string" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCustomDataBulkRequest" } } }, "required": true }, "responses": { "200": { "description": "Successfully added data points" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid filters" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add custom metrics data points in bulk", "tags": [ "Custom Metrics" ], "x-cortex-mcp-description": "Add multiple custom metric data points in bulk. Disabled for MCP access to prevent external systems from modifying metric data", "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/labels": { "get": { "description": "Retrieves a list of all available user labels.\n\nAPI key must have the `View Eng Intelligence` permission.", "operationId": "listUserLabels", "parameters": [ { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserLabelListResponse" } } }, "description": "Successfully retrieved user labels" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List user labels", "tags": [ "Eng Intel: User Labels" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/labels/users": { "post": { "description": "Assign user label values to user emails in bulk.\n\nAPI key must have the `Edit user labels` permission.", "operationId": "updateUserLabelAssignments", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkUserLabelAssignmentRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkUserLabelAssignmentResponse" } } }, "description": "Successfully updated user label assignments" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update user label assignments", "tags": [ "Eng Intel: User Labels" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/labels/{id}": { "get": { "description": "Get user label.\n\nAPI key must have the `View Eng Intelligence` permission.", "operationId": "getUserLabel", "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UserLabel" } } }, "description": "Successfully retrieved user label" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "User label not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve user label", "tags": [ "Eng Intel: User Labels" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/eng-intel/metrics/point-in-time": { "post": { "description": "Query current metric values with optional period comparisons and flexible grouping. Supports batch queries for multiple metrics efficiently.", "operationId": "queryPointInTimeMetrics", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BatchPointInTimeRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointInTimeResponse" } } }, "description": "Successfully executed metrics query" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointInTimeResponse" } } }, "description": "Invalid metric names, date range exceeds 6 months, validation errors, or unsupported orderBy attributes" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PointInTimeResponse" } } }, "description": "Feature not enabled - contact help@cortex.io" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Execute point-in-time engineering metrics queries", "tags": [ "Eng Intel: Metrics" ], "x-cortex-mcp-description": "Execute point-in-time queries for one or more engineering metrics in a single request.\n\n Returns current metric values for specified time periods, with support for batch queries\n and optional period-over-period comparisons.\n\n Request body supports:\n - Multiple metrics: Query several metrics efficiently in one call\n - Time range (startTime/endTime): Range cannot exceed 6 months (180 days)\n - Flexible filtering: Use filters available for each metric (varies by source)\n - Grouping options: Group results by available attributes or dimensions detailed from Registry API (author, repo, team, etc.)\n - Aggregation methods: COUNT, SUM, AVG, MIN, MAX per metric requirements - check individual metric definitions\n - Period comparisons: Optional comparison to previous time windows\n - Nested queries: Advanced nested metric calculations\n\n TIP: Always call Registry API first to discover available metrics and their supported operations.\n\n Response includes:\n - Lightweight metadata: Column definitions optimized for programmatic use\n - Row data: Actual metric values and dimensional data\n - No heavy schemas: Source definitions excluded (get from Registry API instead)\n\n Error responses:\n - 400: Invalid metric names, date range, validation errors, or unsupported metric combinations\n - 403: Feature not enabled (contact help@cortex.io)", "x-cortex-mcp-enabled": "true", "x-internal": true } }, "/api/v1/eng-intel/registry/metrics/definitions": { "get": { "description": "Discover all available engineering metrics and their metadata. Use this before querying metrics to understand what data is available and how to query it effectively.", "operationId": "listMetricDefinitions", "parameters": [ { "in": "query", "name": "view", "required": false, "schema": { "type": "string", "default": "basic" } }, { "in": "query", "name": "key", "required": false, "schema": { "type": "array", "items": { "type": "string" } } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MetricDefinitionsResponse" } } }, "description": "Successfully retrieved metric definitions" }, "400": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/BasicMetricDefinitionsResponse" }, { "$ref": "#/components/schemas/FullMetricDefinitionsResponse" } ] } } }, "description": "Invalid query parameters or filters" }, "403": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/BasicMetricDefinitionsResponse" }, { "$ref": "#/components/schemas/FullMetricDefinitionsResponse" } ] } } }, "description": "Feature not enabled - contact help@cortex.io" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List available engineering metric definitions", "tags": [ "Eng Intel: Registry" ], "x-cortex-mcp-description": "List all available engineering metric definitions.\n\n Query parameters:\n - view: \u0027basic\u0027 (default) returns minimal info, \u0027full\u0027 includes sources and query metadata\n - key: Filter metrics by key (supports multiple values and comma-separated lists)\n\n Error responses:\n - 400: Invalid view parameter (must be \u0027basic\u0027 or \u0027full\u0027)\n - 403: Restricted Feature (contact help@cortex.io)\n\n Filter operators by type (for constructing queries):\n - STRING: EQUAL, NOT_EQUAL, IS_NULL, IS_NOT_NULL, LIKE, NOT_LIKE, IN, NOT_IN, ANY\n - INTEGER/DECIMAL/DOUBLE: EQUAL, NOT_EQUAL, IS_NULL, IS_NOT_NULL, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, IN, NOT_IN, BETWEEN, ANY\n - DATETIME/DATE: EQUAL, NOT_EQUAL, IS_NULL, IS_NOT_NULL, GREATER_THAN, LESS_THAN, GREATER_THAN_OR_EQUAL, LESS_THAN_OR_EQUAL, BETWEEN\n - BOOLEAN: EQUAL, NOT_EQUAL, IS_NULL, IS_NOT_NULL, IN, NOT_IN\n - ARRAY: EQUAL, CONTAINS, IN", "x-cortex-mcp-enabled": "true", "x-internal": true } }, "/api/v1/github/configurations": { "delete": { "operationId": "GitHubDeleteConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "GitHubListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AllGithubConfigurationResponse" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/app": { "post": { "operationId": "GitHubSaveGithubApp", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubAppRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.APP" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single app configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/app/{alias}": { "delete": { "operationId": "GitHubRemoveGithubApp", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a single app configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "GitHubGetGithubApp", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.APP" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a single app configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "GitHubEditGithubApp", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditPersonalConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.APP" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a single app configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/personal": { "post": { "operationId": "GitHubSavePersonalConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DecryptedPersonalAccessToken" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.PERSONAL_ACCESS_TOKEN" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single personal configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/personal/{alias}": { "delete": { "operationId": "GitHubRemovePersonalConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a personal configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "GitHubGetPersonalConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.PERSONAL_ACCESS_TOKEN" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a single personal configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "GitHubEditPersonalConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EditPersonalConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse.PERSONAL_ACCESS_TOKEN" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a single personal configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/validate": { "post": { "operationId": "GitHubValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/configurations/validate/{alias}": { "post": { "operationId": "GitHubValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/github/default-configuration": { "get": { "operationId": "GitHubGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GithubConfigurationResponse" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] GitHub" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/configuration": { "post": { "operationId": "GitLabSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GitlabConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseGitlabConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/configuration/validate": { "post": { "operationId": "GitLabValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/configuration/validate/{alias}": { "post": { "operationId": "GitLabValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/configuration/{alias}": { "delete": { "operationId": "GitLabRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseGitlabConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "GitLabGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GitlabConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "GitLabUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GitlabUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseGitlabConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/configurations": { "delete": { "operationId": "GitLabRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "GitLabListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseGitlabConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "GitLabSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestGitlabConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseGitlabConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitlab/default-configuration": { "get": { "operationId": "GitLabGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GitlabConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] GitLab" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/gitops-logs": { "get": { "description": "API key must have the `View GitOps logs` permission.", "operationId": "listGitOpsLogs", "parameters": [ { "description": "File name the within repository", "in": "query", "name": "file", "schema": { "type": "string" } }, { "description": "Repository name as defined in your Git provider", "in": "query", "name": "repository", "required": false, "schema": { "type": "string" } }, { "description": "Commit SHA", "in": "query", "name": "sha", "required": false, "schema": { "type": "string" } }, { "description": "Filter by error only", "in": "query", "name": "errorOnly", "required": false, "schema": { "type": "boolean" } }, { "description": "Filter by operation", "in": "query", "name": "operation", "required": false, "schema": { "type": "string", "enum": [ "CREATED", "UPDATED", "ARCHIVED", "NO_CHANGE" ] } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "in": "query", "name": "fileName", "required": false, "schema": { "type": "string" } }, { "description": "Unique tag for the Scorecard.", "in": "query", "name": "scorecardTag", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "workflowTag", "required": false, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "query", "name": "tag", "required": true, "schema": { "type": "string", "description": "The entity tag (`x-cortex-tag`) that identifies the entity." } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GitOpsLogPaginatedResponse" } } }, "description": "Retrieve GitOps logs based on given criteria" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve GitOps logs", "tags": [ "GitOps Logs" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/configuration": { "post": { "operationId": "IncidentIoSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncidentIoConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseIncidentIoConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/configuration/validate": { "post": { "operationId": "IncidentIoValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/configuration/validate/{alias}": { "post": { "operationId": "IncidentIoValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/configuration/{alias}": { "delete": { "operationId": "IncidentIoRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseIncidentIoConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "IncidentIoGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncidentIoConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "IncidentIoUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncidentIoUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseIncidentIoConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/configurations": { "delete": { "operationId": "IncidentIoRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "IncidentIoListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseIncidentIoConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "IncidentIoSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestIncidentIoConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseIncidentIoConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/incidentio/default-configuration": { "get": { "operationId": "IncidentIoGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IncidentIoConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Incident.io" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/initiatives": { "get": { "description": "Retrieves a list of Initiatives.\n\nAPI key must have the `View Initiatives` permission.", "operationId": "listInitiatives", "parameters": [ { "description": "Whether or not to include draft Initiatives in the response", "in": "query", "name": "includeDrafts", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Whether or not to include expired Initiatives in the response", "in": "query", "name": "includeExpired", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitiativeListResponse" } } }, "description": "Successfully retrieved Initiatives" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List Initiatives", "tags": [ "Initiatives" ], "x-cortex-mcp-description": "List all initiatives in the organization with optional filters for draft and expired initiatives. View active improvement programs, strategic projects, and their current status to understand organizational priorities and track progress", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Create an Initiative.\n\nAPI key must have the `Edit Initiative` permission.", "operationId": "createInitiative", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitiativeRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Initiative" } } }, "description": "Successfully created Initiative" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create an Initiative", "tags": [ "Initiatives" ], "x-cortex-mcp-description": "Create a new initiative. Disabled for MCP access as initiative creation requires careful planning and governance approval", "x-cortex-mcp-enabled": "false" } }, "/api/v1/initiatives/{cid}": { "delete": { "operationId": "deleteInitiative", "parameters": [ { "in": "path", "name": "cid", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted Initiative" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Initiative not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete Initiative", "tags": [ "Initiatives" ], "x-cortex-mcp-description": "Delete an initiative. Disabled for MCP access to preserve historical tracking and prevent loss of progress data", "x-cortex-mcp-enabled": "false" }, "get": { "description": "Get Initiative.\n\nAPI key must have the `View Initiatives` permission.", "operationId": "getInitiative", "parameters": [ { "in": "path", "name": "cid", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Initiative" } } }, "description": "Successfully retrieved Initiative" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Initiative not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get Initiative", "tags": [ "Initiatives" ], "x-cortex-mcp-description": "Retrieve detailed information about a specific initiative including its goals, timeline, affected entities, scorecard targets, and current progress. Essential for understanding initiative scope and tracking achievement of objectives", "x-cortex-mcp-enabled": "true" }, "put": { "description": "Update an Initiative.\n\nAPI key must have the `Edit Initiative` permission.", "operationId": "updateInitiative", "parameters": [ { "in": "path", "name": "cid", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitiativeRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Initiative" } } }, "description": "Successfully updated Initiative" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Initiative not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update an Initiative", "tags": [ "Initiatives" ], "x-cortex-mcp-description": "Update an existing initiative. Disabled for MCP access as modifying initiatives can impact organizational priorities and resource allocation", "x-cortex-mcp-enabled": "false" } }, "/api/v1/ip-allowlist": { "get": { "operationId": "listAllowedIpAddresses", "parameters": [ { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IpAllowlistResponse" } } }, "description": "Successfully retrieved IP allowlist" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Gets allowlist of IP addresses \u0026 ranges", "tags": [ "IP Allowlist" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "upsertAllowedIpAddresses", "parameters": [ { "description": "When true, entries will be updated even if the list doesn\u0027t contain the requestor\u0027s IP address", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IpAllowlistRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IpAllowlistResponse" } } }, "description": "Successfully replaced allowlist" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Replace existing allowlist with provided list of IP addresses \u0026 ranges", "tags": [ "IP Allowlist" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/ip-allowlist/validate": { "post": { "operationId": "validateAllowedIpAddresses", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IpAllowlistRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/ValidIpAllowlistEntry" }, { "$ref": "#/components/schemas/InvalidIpAllowlistEntry" } ] } } }, "description": "Successfully validated allowlist" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validates allowlist of IP addresses \u0026 ranges", "tags": [ "IP Allowlist" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/configuration": { "post": { "operationId": "LaunchDarklySaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LaunchDarklyConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseLaunchDarklyConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/configuration/validate": { "post": { "operationId": "LaunchDarklyValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/configuration/validate/{alias}": { "post": { "operationId": "LaunchDarklyValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/configuration/{alias}": { "delete": { "operationId": "LaunchDarklyRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseLaunchDarklyConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "LaunchDarklyGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LaunchDarklyConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "LaunchDarklyUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LaunchDarklyUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseLaunchDarklyConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/configurations": { "delete": { "operationId": "LaunchDarklyRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "LaunchDarklyListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseLaunchDarklyConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "LaunchDarklySaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestLaunchDarklyConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseLaunchDarklyConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/launchdarkly/default-configuration": { "get": { "operationId": "LaunchDarklyGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LaunchDarklyConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] LaunchDarkly" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/configuration": { "post": { "operationId": "NewRelicSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NewrelicConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseNewrelicConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/configuration/validate": { "post": { "operationId": "NewRelicValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/configuration/validate/{alias}": { "post": { "operationId": "NewRelicValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/configuration/{alias}": { "delete": { "operationId": "NewRelicRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseNewrelicConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "NewRelicGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NewrelicConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "NewRelicUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NewrelicUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseNewrelicConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/configurations": { "delete": { "operationId": "NewRelicRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "NewRelicListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseNewrelicConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "NewRelicSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestNewrelicConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseNewrelicConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/newrelic/default-configuration": { "get": { "operationId": "NewRelicGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NewrelicConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] New Relic" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/notifications/logs": { "get": { "description": "Retrieve notification logs based on the provided filters. API key must have the `View Notification logs` permission.", "operationId": "listNotificationLogs", "parameters": [ { "description": "The unique identifier of the notification run that this log is associated with.", "in": "query", "name": "notificationRunIds", "required": false, "schema": { "type": "array", "items": { "type": "integer", "format": "int64" } } }, { "description": "The type of notification.", "in": "query", "name": "notificationTypes", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "INITIATIVE_CREATION", "INITIATIVE_CUSTOM_SCHEDULE", "INITIATIVE_N_DAYS_LEFT", "SERVICE_REEVALUATED", "WEEKLY_REPORT", "BROKEN_OPEN_API_SPEC", "ENTITLEMENT_EXPIRATION", "ONCALL_ASSISTANT", "ONBOARDING_MESSAGE", "NOTIFY_INVALID_INTEGRATION", "ONCALL_PERSON_CHANGED", "ONCALL_STARTS_IN_N_DAYS", "TEAM_MEMBER_INVITATION", "PENDING_RULE_EXEMPTION", "TOKEN_EXPIRES_IN_N_DAYS", "SCHEDULED_SCORECARD_RULE_CREATION", "SCORECARD_RULE_ACTIVATES_IN_N_DAYS", "WORKFLOW_STATUS_UPDATE", "WORKFLOW_APPROVAL_PENDING", "VERIFICATION_PERIOD_STARTED", "VERIFICATION_PERIOD_REMINDER", "AI_ASSISTANT_WELCOME_MESSAGE", "ENTITY_SCORE_DROPPED" ] } } }, { "description": "The status of the notification.", "in": "query", "name": "statuses", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "READY", "IGNORED", "FAILED", "DELIVERED" ] } } }, { "description": "The type of the notification recipient.", "in": "query", "name": "recipientTypes", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "USER", "TEAM", "ENTITY" ] } } }, { "description": "The email address that this notification was sent to.", "in": "query", "name": "recipientEmails", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "The unique identifiers of the entities that the notifications were sent to.", "in": "query", "name": "recipientEntityIds", "required": false, "schema": { "type": "array", "items": { "type": "integer", "format": "int64" } } }, { "description": "The channel in Slack or MS Teams where the notification was sent.", "in": "query", "name": "recipientChannels", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "The medium used to send the notification.", "in": "query", "name": "mediums", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "SLACK", "MICROSOFT_TEAMS", "EMAIL", "WEBHOOK" ] } } }, { "description": "The reason why a notification was ignored.", "in": "query", "name": "ignoredReasons", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "USER_UNSUBSCRIBED", "WORKSPACE_DISABLED", "TEAM_MEMBER_DISABLED", "CHANNEL_DISABLED", "SCORECARD_DISABLED", "DUPLICATE", "CORTEX_EMPLOYEE", "NON_CORTEX_USERS_DISABLED", "UNSUPPORTED" ] } } }, { "description": "The reason why a notification failed to send.", "in": "query", "name": "failedReasons", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "CHANNEL_NOT_FOUND", "MEMBER_EMAILS_NOT_FOUND", "MISSING_CONTENT", "CLIENT_ERROR", "UNEXPECTED_ERROR", "BACKSTAGE_BASE_URL_MISSING", "NO_SEATS_LEFT" ] } } }, { "description": "The ISO date and time to start the search from.", "example": "2021-01-01T00:00:00", "in": "query", "name": "fromDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "The ISO date and time to end the search at.", "example": "2021-01-01T00:00:00", "in": "query", "name": "untilDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "description": "Sort the results ascending or descending.", "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string", "default": "DESC", "enum": [ "ASC", "DESC" ] } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotificationLogResponse" } } }, "description": "Successfully retrieved notification logs" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve notification logs", "tags": [ "Notification Logs" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/notifications/logs/run": { "get": { "description": "Retrieve notification runs based on the provided filters. API key must have the `View Notification logs` permission.", "operationId": "listNotificationRuns", "parameters": [ { "description": "The type of notification.", "in": "query", "name": "notificationTypes", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "INITIATIVE_CREATION", "INITIATIVE_CUSTOM_SCHEDULE", "INITIATIVE_N_DAYS_LEFT", "SERVICE_REEVALUATED", "WEEKLY_REPORT", "BROKEN_OPEN_API_SPEC", "ENTITLEMENT_EXPIRATION", "ONCALL_ASSISTANT", "ONBOARDING_MESSAGE", "NOTIFY_INVALID_INTEGRATION", "ONCALL_PERSON_CHANGED", "ONCALL_STARTS_IN_N_DAYS", "TEAM_MEMBER_INVITATION", "PENDING_RULE_EXEMPTION", "TOKEN_EXPIRES_IN_N_DAYS", "SCHEDULED_SCORECARD_RULE_CREATION", "SCORECARD_RULE_ACTIVATES_IN_N_DAYS", "WORKFLOW_STATUS_UPDATE", "WORKFLOW_APPROVAL_PENDING", "VERIFICATION_PERIOD_STARTED", "VERIFICATION_PERIOD_REMINDER", "AI_ASSISTANT_WELCOME_MESSAGE", "ENTITY_SCORE_DROPPED" ] } } }, { "description": "The status of the notification.", "in": "query", "name": "statuses", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "CREATED", "FAILED", "IGNORED", "COMPLETED", "COMPLETED_WITH_ERRORS" ] } } }, { "description": "The medium used to send the notification.", "in": "query", "name": "mediums", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "SLACK", "MICROSOFT_TEAMS", "EMAIL", "WEBHOOK" ] } } }, { "description": "The reason why a notification run was ignored.", "in": "query", "name": "ignoredReasons", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "SCORECARD_DISABLED", "WORKSPACE_DISABLED", "NO_RECIPIENTS" ] } } }, { "description": "The reason why a notification run failed.", "in": "query", "name": "failedReasons", "required": false, "schema": { "type": "array", "items": { "type": "string", "enum": [ "PACKET_GENERATOR_ERROR", "CONTEXT_RESOLUTION_ERROR", "MISSING_RECIPIENTS", "INTERNAL_ERROR" ] } } }, { "description": "A search query to filter the results.", "in": "query", "name": "searchQuery", "required": false, "schema": { "type": "string" } }, { "description": "Whether to include the objects associated with the notification run.", "in": "query", "name": "includeObjects", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "The ISO date and time to start the search from.", "example": "2021-01-01T00:00:00", "in": "query", "name": "fromDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "The ISO date and time to end the search at.", "example": "2021-01-01T00:00:00", "in": "query", "name": "untilDate", "required": false, "schema": { "type": "string", "format": "date-time" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "description": "Sort the results ascending or descending.", "in": "query", "name": "orderBy", "required": false, "schema": { "type": "string", "default": "DESC", "enum": [ "ASC", "DESC" ] } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NotificationRunResponse" } } }, "description": "Successfully retrieved notification runs" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve notification runs", "tags": [ "Notification Logs" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/open-api": { "patch": { "description": "Creates or updates an entity using OpenAPI. If the YAML refers to an entity that already exists (as referenced by the `x-cortex-tag`), this API will merge the specified changes into the existing entity.", "operationId": "createOrPatchEntity", "parameters": [ { "description": "When true, this endpoint only validates the descriptor contents and returns any errors or warnings.", "in": "query", "name": "dryRun", "required": false, "schema": { "type": "boolean" } }, { "description": "Delete keys with this value from the merged yaml, e.g. `__delete__`, if any values match this, they will not be included in merged YAML. For example `my_value: __delete__` will remove `my_value` from the merged YAML.", "in": "query", "name": "deleteMarkerValue", "required": false, "schema": { "type": "string" } }, { "description": "Default merge behavior is to replace arrays, set this to true to append arrays instead. For simple types, duplicate values will be removed from the merged array.", "in": "query", "name": "appendArrays", "required": false, "schema": { "type": "boolean" } }, { "description": "Default behavior is to upsert the entity, set `failIfEntityDoesNotExist\u003dtrue` to fail (404) if the entity specified in `x-cortex-tag` does not exist.", "in": "query", "name": "failIfEntityDoesNotExist", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/openapi;charset\u003dUTF-8": {} }, "description": "Raw text of the YAML \n See examples of cortex.yaml files for each entity type [here](https://docs.cortex.io/docs/reference/basics/entities#example-cortexyaml-for-service-entity)" }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Indicates that the entity body was accepted, and the referenced `x-cortex-tag` existed and patched successfully" }, "201": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Indicates that the entity body was accepted, and the referenced `x-cortex-tag` did not exist and was created successfully" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Invalid YAML (major errors or incorrectly formatted YAML)" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Specified entity does not exist (when failIfDoesNotExist is set to true)" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create or patch entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "Create a catalog entity using a descriptor YAML. If the YAML refers to an entity that already exists (as referenced by the `x-cortex-tag`), this API will update the existing entity. Note: This overwrites the entity entirely.", "operationId": "createOrUpdateEntity", "parameters": [ { "description": "When true, this endpoint only validates the descriptor contents and returns any errors or warnings.", "in": "query", "name": "dryRun", "required": false, "schema": { "type": "boolean" } }, { "description": "Add a comment with validation errors on the pull request with the given ID", "in": "query", "name": "githubPullRequest", "required": false, "schema": { "type": "integer", "format": "int32" } } ], "requestBody": { "content": { "application/openapi;charset\u003dUTF-8": {} }, "description": "Raw text of the YAML \n See examples of cortex.yaml files for each entity type [here](https://docs.cortex.io/docs/reference/basics/entities#example-cortexyaml-for-service-entity)" }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Indicates that the entity was accepted and processed successfully" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Invalid YAML (major errors or incorrectly formatted YAML)" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create or update entity", "tags": [ "Catalog Entities" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/pagerduty/configuration": { "post": { "operationId": "PagerDutySaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PagerdutyConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePagerdutyConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a configuration", "tags": [ "[Integrations] PagerDuty" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "PagerDutyReplaceConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PagerdutyConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePagerdutyConfiguration" } } }, "description": "Successfully replaces configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Replace the existing configuration", "tags": [ "[Integrations] PagerDuty" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/pagerduty/configuration/validate": { "post": { "operationId": "PagerDutyValidateConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] PagerDuty" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/pagerduty/configurations": { "delete": { "operationId": "PagerDutyDeleteConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePagerdutyConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] PagerDuty" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/pagerduty/default-configuration": { "get": { "operationId": "PagerDutyGetConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PagerdutyConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] PagerDuty" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/plugins": { "get": { "description": "Retrieve a list of all plugins, excluding drafts", "operationId": "listAllPlugins", "parameters": [ { "in": "query", "name": "includeDrafts", "required": false, "schema": { "type": "boolean" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PluginsMetadataResponse" } } }, "description": "List of plugins" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get all plugins", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "Create a new plugin", "operationId": "createPlugin", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreatePluginRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PluginMetadata" } } }, "description": "Metadata of the created plugin" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create a plugin", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/plugins/{tag}": { "delete": { "description": "Delete a plugin by tag", "operationId": "deletePlugin", "parameters": [ { "description": "Unique identifier for the plugin", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "description": "Plugin deleted" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Plugin not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a plugin", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "Retrieve the metadata of a plugin by tag", "operationId": "getPluginByTag", "parameters": [ { "description": "Unique identifier for the plugin", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "When true, returns the plugin blob. Defaults to false.", "in": "query", "name": "includeBlob", "required": false, "schema": { "type": "boolean", "default": false } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PluginMetadataWithBlob" } } }, "description": "Metadata of the plugin" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Plugin not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get plugin by tag", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" }, "patch": { "description": "Partially update plugin by tag", "operationId": "patchPlugin", "parameters": [ { "description": "Unique identifier for the plugin", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PatchPluginRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PluginMetadataWithBlob" } } }, "description": "Plugin updated successfully" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid input, such as malformed tag or invalid metadata" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Plugin with the specified tag not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Patch a plugin", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Replace an existing plugin by tag", "operationId": "updatePlugin", "parameters": [ { "description": "Unique identifier for the plugin", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdatePluginRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PluginMetadata" } } }, "description": "Metadata of the replaced plugin" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Invalid request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Plugin not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Replace a plugin", "tags": [ "Plugins" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/configuration": { "post": { "operationId": "PrometheusSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePrometheusConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/configuration/validate": { "post": { "operationId": "PrometheusValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/configuration/validate/{alias}": { "post": { "operationId": "PrometheusValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/configuration/{alias}": { "delete": { "operationId": "PrometheusRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePrometheusConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "PrometheusGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "PrometheusUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePrometheusConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/configurations": { "delete": { "operationId": "PrometheusRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "PrometheusListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponsePrometheusConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "PrometheusSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestPrometheusConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponsePrometheusConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/prometheus/default-configuration": { "get": { "operationId": "PrometheusGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PrometheusConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] Prometheus" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/queries": { "post": { "description": "Run a CQL query. For more information about the types of queries you can run, take a look at our CQL Explorer in the app.", "operationId": "createQuery", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryResponse" } } }, "description": "Successfully submitted query" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "409": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Conflict" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Run query", "tags": [ "Queries" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/queries/{jobId}": { "get": { "description": "Retrieve the status and results of a CQL query", "operationId": "getQueryResults", "parameters": [ { "description": "jobId of the query to retrieve", "in": "path", "name": "jobId", "required": true, "schema": { "type": "string", "description": "jobId of the query to retrieve" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/QueryBuilderResult" } } }, "description": "Successfully found query" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Query not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve query results", "tags": [ "Queries" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/relationship-types": { "get": { "description": "List paginated relationship types", "operationId": "listRelationshipTypes", "parameters": [ { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedEntityRelationshipTypeResponse" } } }, "description": "Successfully found entity relationship types" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List relationship types", "tags": [ "Entity Relationship Types [Beta]" ], "x-cortex-mcp-description": "List all available relationship types with pagination. View relationship type configurations to understand what kinds of relationships can be created between entities like services, resources, domains, and teams", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Create a relationship type", "operationId": "createRelationshipType", "requestBody": { "content": { "application/json": { "examples": { "Entity Relationship Type Example": { "description": "Entity Relationship Type Example", "summary": "Creates a relationship type that groups services into components", "value": "{\n \"name\": \"Component Hierarchy\",\n \"tag\": \"component-hierarchy\",\n \"description\": \"Defines the component hierarchy.\",\n \"definitionLocation\": \"BOTH\",\n \"isSingleSource\": true,\n \"sourcesFilter\": {\n \"include\": true,\n \"types\": [\"component\"]\n },\n \"isSingleDestination\": false,\n \"destinationsFilter\": {\n \"include\": true,\n \"types\": [\"service\", \"component]\n },\n \"inheritances\": [\n {\n \"parameterTag\": \"x-cortex-owners\",\n \"inheritanceType\": \"FALLBACK\"\n }\n ],\n \"allowCycles\": false,\n \"sourceLabelSingular\": \"Component\",\n \"sourceLabelPlural\": \"Components\",\n \"destinationLabelSingular\": \"Part\",\n \"destinationLabelPlural\": \"Parts\",\n \"createCatalog\": false\n }" } }, "schema": { "$ref": "#/components/schemas/EntityRelationshipTypeRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityRelationshipTypeResponse" } } }, "description": "Successfully created relationship type" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Validation error creating relationship type" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create relationship type", "tags": [ "Entity Relationship Types [Beta]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/relationship-types/{relationshipTypeTag}": { "delete": { "description": "Delete a relationship type", "operationId": "deleteRelationshipType", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted relationship type" }, "204": { "description": "No Content" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Validation error deleting relationship type" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a relationship type", "tags": [ "Entity Relationship Types [Beta]" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "List details for a relationship type", "operationId": "getRelationshipTypeDetails", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityRelationshipTypeResponse" } } }, "description": "Successfully found relationship type" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Get a relationship type", "tags": [ "Entity Relationship Types [Beta]" ], "x-cortex-mcp-description": "Get complete details of a specific relationship type including its configuration, rules, source/destination filters, and inheritance settings. Essential for understanding how entities can be connected and what validation rules apply", "x-cortex-mcp-enabled": "true" }, "put": { "description": "Update relationship type", "operationId": "updateRelationshipType", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityRelationshipTypeRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/EntityRelationshipTypeResponse" } } }, "description": "Successfully updated relationship type" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Validation error updating relationship type" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update relationship type", "tags": [ "Entity Relationship Types [Beta]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/relationships/{relationshipTypeTag}": { "get": { "description": "List all entity relationships for a certain relationship type.", "operationId": "listEntityRelationships", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListRelationships" } } }, "description": "Successfully retrieved entity relationships" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List entity relationships for a relationship type", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-description": "List all entity relationships/full graph for a specific relationship type across the entire organization. Returns paginated results showing all source-destination pairs, useful for understanding the complete relationship graph and finding all connections of a particular type", "x-cortex-mcp-enabled": "true" }, "post": { "description": "Add all entity relationships for a certain relationship type.", "operationId": "addEntityRelationships", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationships" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkUpdateEntityRelationshipsResponse" } } }, "description": "Successfully added entity relationships" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add entity relationships for a relationship type", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Update all entity relationships for a certain relationship type.", "operationId": "updateEntityRelationships", "parameters": [ { "in": "path", "name": "relationshipTypeTag", "required": true, "schema": { "type": "string" } }, { "description": "When true, overrides values that were defined in the catalog descriptor. Will be overwritten the next time the catalog descriptor is processed.", "in": "query", "name": "force", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateEntityRelationships" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/BulkUpdateEntityRelationshipsResponse" } } }, "description": "Successfully updated entity relationships" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Relationship type not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update entity relationships for a relationship type", "tags": [ "Entity Relationships [Beta]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards": { "get": { "description": "Returns scorecards matching optional search criteria. If search criteria is specified we will use search logic, which will not find Scorecards that have yet to be evaluated", "operationId": "listScorecards", "parameters": [ { "in": "query", "name": "showDrafts", "required": false, "schema": { "type": "boolean" } }, { "description": "Filter based on groups, which correspond to the `x-cortex-groups` field in the Catalog Descriptor. Accepts a comma-delimited list of groups", "in": "query", "name": "groups", "required": false, "schema": { "type": "array", "items": { "type": "string" } } }, { "description": "Filter based on entity (either tags or CIDs). Accepts a comma-delimited list of entity tag or CIDs, please use only one type of identifier", "in": "query", "name": "entities", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PublicIdentifier" } } }, { "description": "Filter based on team (either tags or CIDs). Accepts a comma-delimited list of team tag or CIDs, please use only one type of identifier", "in": "query", "name": "teams", "required": false, "schema": { "type": "array", "items": { "$ref": "#/components/schemas/PublicIdentifier" } } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PaginatedScorecardsResponse" } } }, "description": "OK" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List Scorecards", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "List all scorecards in the organization with optional filtering. View scorecard configurations to understand quality standards, compliance requirements, and maturity models. Supports filtering by groups, entities, and teams to find relevant scorecards", "x-cortex-mcp-enabled": "true" } }, "/api/v1/scorecards/descriptor": { "post": { "description": "Create or update a Scorecard using the descriptor YAML. The operation is determined by the existence of a Scorecard with the same `tag` as passed in the descriptor.", "operationId": "createOrUpdateScorecard", "parameters": [ { "description": "When true, this endpoint only validates the descriptor contents and returns any errors or warnings.", "in": "query", "name": "dryRun", "required": false, "schema": { "type": "boolean" } } ], "requestBody": { "content": { "application/yaml;charset\u003dUTF-8": {} }, "description": "Raw text of the YAML \n See an example of a yaml file for scorecards [here](https://docs.cortex.io/docs/reference/basics/scorecards#descriptor)" }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScorecardDescriptorResponse" } } }, "description": "Created Scorecard" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create or update Scorecard", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Create a new scorecard. Disabled for MCP access as scorecard creation should be carefully managed through proper governance processes", "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{scorecardTag}/entity/{tagOrId}/badge": { "get": { "operationId": "getBadgeMarkdown", "parameters": [ { "description": "Unique tag for the Scorecard.", "in": "path", "name": "scorecardTag", "required": true, "schema": { "type": "string" } }, { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScorecardShieldsBadgeMarkdown" } } }, "description": "Shields.io badge" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Entity or Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve Scorecard shields.io badge", "tags": [ "Scorecards" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}": { "delete": { "operationId": "deleteScorecard", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successfully deleted Scorecard" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete Scorecard", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Delete a scorecard. Disabled for MCP access as removing scorecards affects historical tracking and compliance reporting", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getScorecard", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScorecardDescriptorResponse" } } }, "description": "Successfully retrieved Scorecard" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve Scorecard", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Get complete details of a scorecard including its configuration, rules, levels, weights, exemption settings, and evaluation criteria. Essential for understanding how services are evaluated and what standards they must meet", "x-cortex-mcp-enabled": "true" } }, "/api/v1/scorecards/{tag}/descriptor": { "get": { "operationId": "getScorecardDescriptor", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } } }, "description": "Successfully retrieved Scorecard descriptor" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve Scorecard descriptor", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Cortex Scorecards API - Measure and track service quality, compliance, and maturity levels across your organization with customizable scorecards and rules", "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/entity/{entityTag}/exemption": { "post": { "description": "Request Scorecard rule exemption", "operationId": "requestScorecardRuleExemption", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "path", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RuleExemptionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RuleExemptionDefinition" } } }, "description": "Successfully requested Scorecard rule exemption" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found, entity not found, or rule with given identifier not found within the Scorecard" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Request Scorecard rule exemption", "tags": [ "Scorecards" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/entity/{entityTag}/exemption/approve": { "put": { "description": "Approve Scorecard rule exemption", "operationId": "approveScorecardRuleExemption", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "path", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ApproveRuleExemptionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModifiedRuleExemptionsResponse" } } }, "description": "Successfully approved Scorecard rule exemptions" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "No pending exemptions to approve found" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found, entity not found, or rule with given identifier not found within the Scorecard" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Approve Scorecard rule exemption", "tags": [ "Scorecards" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/entity/{entityTag}/exemption/deny": { "put": { "description": "Deny Scorecard rule exemption", "operationId": "denyScorecardRuleExemption", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "path", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RejectRuleExemptionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModifiedRuleExemptionsResponse" } } }, "description": "Denied Scorecard rule exemptions" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "No pending exemptions to approve found" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found, entity not found, or rule with given identifier not found within the Scorecard" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Deny Scorecard rule exemption", "tags": [ "Scorecards" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/entity/{entityTag}/exemption/revoke": { "put": { "description": "Revoke Scorecard rule exemption", "operationId": "revokeScorecardRuleExemption", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "path", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RejectRuleExemptionRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModifiedRuleExemptionsResponse" } } }, "description": "Revoked Scorecard rule exemptions" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "No approved exemptions to revoke found" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found, entity not found, or rule with given identifier not found within the Scorecard" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Revoke Scorecard rule exemption", "tags": [ "Scorecards" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/entity/{entityTag}/scores": { "post": { "description": "Triggers score evaluation for entity scorecard", "operationId": "refreshScorecardScoreForEntity", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "path", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Scorecard score evaluation triggered successfully" }, "403": { "description": "Unauthorized" }, "404": { "description": "Scorecard not found" }, "409": { "description": "Already evaluating scorecard" }, "429": { "$ref": "#/components/responses/TooManyRequests" }, "500": { "description": "Scorecard evaluation failed" } }, "summary": "Evaluate entity scorecard score", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Cortex Scorecards API - Measure and track service quality, compliance, and maturity levels across your organization with customizable scorecards and rules", "x-cortex-mcp-enabled": "false" } }, "/api/v1/scorecards/{tag}/next-steps": { "get": { "operationId": "getScorecardNextStepsForEntity", "parameters": [ { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "The entity tag (`x-cortex-tag`) that identifies the entity.", "in": "query", "name": "entityTag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/NextSteps1" } } }, "description": "Any rules remaining for the entity to reach the next level in the Scorecard." }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve next steps for entity in Scorecard", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Get actionable next steps for an entity to improve its scorecard performance. Shows which rules need to be satisfied to reach the next maturity level, helping teams prioritize improvements and track progress toward compliance goals", "x-cortex-mcp-enabled": "true" } }, "/api/v1/scorecards/{tag}/scores": { "get": { "description": "Returns latest scores for all entities in the Scorecard", "operationId": "listScorecardScores", "parameters": [ { "description": "Entity tag (x-cortex-tag)", "in": "query", "name": "entityTag", "schema": { "type": "string" } }, { "description": "Unique tag for the Scorecard", "example": "my-production-readiness-checklist", "in": "path", "name": "tag", "required": true, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ScorecardServiceScore" } } }, "description": "Scorecard scores" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Scorecard not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve Scorecard scores", "tags": [ "Scorecards" ], "x-cortex-mcp-description": "Retrieve scores for all entities evaluated by a specific scorecard. Returns paginated results showing how each service, resource, or domain performs against the scorecard\u0027s rules, including individual rule scores and overall scorecard scores", "x-cortex-mcp-enabled": "true" } }, "/api/v1/secrets": { "get": { "description": "API key must have the `Create secrets` permission.", "operationId": "listAllSecrets", "parameters": [ { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AllSecretsResponse" } } }, "description": "Successfully retrieved secrets" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List secrets", "tags": [ "Secrets" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "API key must have the `Create secrets` permission.", "operationId": "createSecret", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSecretRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecretResponse" } } }, "description": "Successfully created secret" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create secret", "tags": [ "Secrets" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/secrets/{tagOrId}": { "delete": { "description": "API key must have the `Create secrets` permission.", "operationId": "deleteSecret", "parameters": [ { "description": "The specified secret tag or unique, auto-generated identifier for the secret.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Secret successfully deleted" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Secret not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete secret", "tags": [ "Secrets" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "API key must have the `Create secrets` permission.", "operationId": "getSecret", "parameters": [ { "description": "The specified secret tag or unique, auto-generated identifier for the secret.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecretResponse" } } }, "description": "Successfully retrieved secret" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Secret not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve secret", "tags": [ "Secrets" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "API key must have the `Create secrets` permission.", "operationId": "updateSecret", "parameters": [ { "description": "The specified secret tag or unique, auto-generated identifier for the secret.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateSecretRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SecretResponse" } } }, "description": "Successfully updated secret" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Secret not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update secret", "tags": [ "Secrets" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/configuration": { "post": { "operationId": "SonarQubeSaveConfiguration", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SonarqubeConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseSonarqubeConfiguration" } } }, "description": "Successfully added configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add a single configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/configuration/validate": { "post": { "operationId": "SonarQubeValidateAllConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleIntegrationConfigValidation" } } }, "description": "Successfully validated all configurations" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate all configurations", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/configuration/validate/{alias}": { "post": { "operationId": "SonarQubeValidateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } }, "description": "Successfully validated configuration" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validate a configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/configuration/{alias}": { "delete": { "operationId": "SonarQubeRemoveConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseSonarqubeConfiguration" } } }, "description": "Successfully deleted configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete a configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "SonarQubeGetConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SonarqubeConfiguration" } } }, "description": "Successfully found configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve a configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "WARNING: Updating aliases for configurations or changing the default configuration could cause entity YAMLs that use this integration to break.", "operationId": "SonarQubeUpdateConfiguration", "parameters": [ { "in": "path", "name": "alias", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SonarqubeUpdateConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseSonarqubeConfiguration" } } }, "description": "Successfully updated configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Configuration not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update a configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/configurations": { "delete": { "operationId": "SonarQubeRemoveAllConfigurations", "responses": { "200": { "description": "Successfully deleted all configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete all configurations", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "SonarQubeListConfigurations", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsResponseSonarqubeConfiguration" } } }, "description": "Successfully found configurations" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve configurations", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "SonarQubeSaveConfigurations", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ConfigurationsRequestSonarqubeConfigurationRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MultipleConfigurationsResponseSonarqubeConfiguration" } } }, "description": "Successfully added configurations" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Add multiple configurations", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/sonarqube/default-configuration": { "get": { "operationId": "SonarQubeGetDefaultConfiguration", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SonarqubeConfiguration" } } }, "description": "Successfully found default configuration" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve default configuration", "tags": [ "[Integrations] SonarQube" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams": { "delete": { "operationId": "deleteTeam", "parameters": [ { "in": "query", "name": "teamTag", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Unit" } } }, "description": "Successfully deleted team" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "405": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Unit" } } }, "description": "Team delete is not allowed" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete team", "tags": [ "Teams" ], "x-cortex-mcp-description": "Delete a team by tag. Disabled for MCP access to prevent removal of organizational units", "x-cortex-mcp-enabled": "false" }, "get": { "description": "*Warning:* This API can return team details if you pass in a teamTag query parameter. However, this should only be used to retrieve team details if your team identifier contains non-alphanumeric characters. Otherwise, use the standard API under `Teams` -\u003e `Retrieve team details`. When retrieving team details, the response will be a single team entity instead of a list.\n\nNote: the response objects can also include an `idpGroup` or `cortexTeam` field depending on whether the team contains a `group` or only consists of individually defined `members`.", "operationId": "getTeamDetailsAdvanced", "parameters": [ { "description": "Include teams without members", "example": false, "in": "query", "name": "includeTeamsWithoutMembers", "required": false, "schema": { "type": "boolean" } }, { "description": "Team identifier", "example": "my-team", "in": "query", "name": "teamTag", "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AllTeamsResponse" } } }, "description": "Object containing a list of teams" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve list of teams or team details", "tags": [ "Teams" ], "x-cortex-mcp-description": "Retrieve a list of all teams in the organization. Disabled for MCP access - use the catalog API with type\u003dteam filter instead to retrieve team information", "x-cortex-mcp-enabled": "false" }, "post": { "description": "Team memberships can be backed by an IdP group (from Okta, Azure AD, Google Groups, etc), or can be managed directly through Cortex. Each has a separate request shape, so make sure to select the correct example.", "operationId": "createTeam", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateTeamRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully created a team" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create a team", "tags": [ "Teams" ], "x-cortex-mcp-description": "Create a new team. Disabled for MCP access to prevent external systems from modifying organizational structure", "x-cortex-mcp-enabled": "false" }, "put": { "description": "*Warning:* This API should only be used if your team identifier contains non-alphanumeric characters. Otherwise, use the standard API under `Teams`.", "operationId": "updateTeamAdvanced", "parameters": [ { "in": "query", "name": "teamTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTeamRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully updated team" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update team metadata", "tags": [ "Teams [Advanced]" ], "x-cortex-mcp-description": "Update team metadata for teams with special characters. Disabled for MCP access to prevent external modifications", "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/departments": { "delete": { "operationId": "deleteDepartment", "parameters": [ { "in": "query", "name": "departmentTag", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Unit" } } }, "description": "Successfully deleted department" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Department not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete department", "tags": [ "Teams [Departments] (legacy)" ], "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "listDepartments", "parameters": [ { "in": "query", "name": "departmentTag", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "oneOf": [ { "$ref": "#/components/schemas/DepartmentResponse" }, { "$ref": "#/components/schemas/AllDepartmentsResponse" } ] } } }, "description": "Successfully found department" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Department not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve department details", "tags": [ "Teams [Departments] (legacy)" ], "x-cortex-mcp-enabled": "false" }, "post": { "operationId": "createDepartment", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateDepartmentRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DepartmentResponse" } } }, "description": "Successfully created a department" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create department", "tags": [ "Teams [Departments] (legacy)" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "updateDepartment", "parameters": [ { "in": "query", "name": "departmentTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateDepartmentRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DepartmentResponse" } } }, "description": "Successfully updated department" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Department not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update department", "tags": [ "Teams [Departments] (legacy)" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/members": { "put": { "description": "For teams whose members are not backed by an IdP, use this API to update the team members. Note that it will replace the members in the team with the members defined in this request. \n*Warning:* This API should only be used if your team identifier contains non-alphanumeric characters. Otherwise, use the standard API under `Teams`.", "operationId": "updateCortexTeamMembersAdvanced", "parameters": [ { "in": "query", "name": "teamTag", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CortexManagedTeamMembersRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully updated team members" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[Cortex managed teams] Update members in team", "tags": [ "Teams [Advanced]" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/relationships": { "get": { "operationId": "getTeamHierarchyRelationships", "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamsRelationshipsResponse" } } }, "description": "Successfully found team relationships" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve team relationships", "tags": [ "Teams Hierarchies" ], "x-cortex-mcp-enabled": "false" }, "put": { "operationId": "replaceAllTeamHierarchyRelationships", "parameters": [ { "description": "Supports only replace\u003dtrue right now", "example": true, "in": "query", "name": "replace", "required": true, "schema": { "type": "boolean", "default": false } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamsRelationshipsRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamsRelationshipsResponse" } } }, "description": "Successfully created team relationships" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Replace all relationships", "tags": [ "Teams Hierarchies" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/{tagOrId}": { "delete": { "operationId": "deleteTeamByTagOrId", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "204": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Unit" } } }, "description": "Successfully deleted team" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "405": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Unit" } } }, "description": "Team delete is not allowed" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete team by tag or ID", "tags": [ "Teams" ], "x-cortex-mcp-description": "Delete a team by tag or ID. Disabled for MCP access to prevent removal of organizational units", "x-cortex-mcp-enabled": "false" }, "get": { "operationId": "getTeamDetails", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully found team\n\nNote: the response objects can also include an `idpGroup` or `cortexTeam` field depending on whether the team contains a `group` or only consists of individually defined `members`." }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve team details", "tags": [ "Teams" ], "x-cortex-mcp-description": "Retrieve detailed information about a specific team by its tag or ID. Returns complete team data including members, slack channels, metadata, and whether it\u0027s backed by an identity provider group", "x-cortex-mcp-enabled": "true" }, "put": { "operationId": "updateTeamMetadata", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateTeamRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully updated team" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update team metadata", "tags": [ "Teams" ], "x-cortex-mcp-description": "Update team metadata. Disabled for MCP access to prevent external modifications to team structure", "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/{tagOrId}/archive": { "put": { "operationId": "archiveTeam", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully archived team" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Archive team", "tags": [ "Teams" ], "x-cortex-mcp-description": "Archive a team. Disabled for MCP access to prevent modification of team status", "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/{tagOrId}/members": { "put": { "description": "For teams whose members are not backed by an IdP, use this API to update the team members. Note that it will replace the members in the team with the members defined in this request.", "operationId": "updateCortexTeamMembers", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CortexManagedTeamMembersRequest" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully updated team members" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad Request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Forbidden" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "[Cortex managed teams] Update members in team", "tags": [ "Teams" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/teams/{tagOrId}/unarchive": { "put": { "operationId": "unarchiveTeam", "parameters": [ { "description": "The tag (`x-cortex-tag`) or unique, auto-generated identifier for the entity.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TeamResponse" } } }, "description": "Successfully unarchived team" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Team not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Unarchive team", "tags": [ "Teams" ], "x-cortex-mcp-description": "Unarchive a team. Disabled for MCP access to prevent modification of team status", "x-cortex-mcp-enabled": "false" } }, "/api/v1/workflows": { "get": { "description": "List workflows.\n\nAPI key must have the `View workflows` permission.", "operationId": "listWorkflows", "parameters": [ { "description": "When true, returns the list of actions for each workflow. Defaults to false.", "in": "query", "name": "includeActions", "required": false, "schema": { "type": "boolean", "default": false } }, { "description": "When set, only returns workflows with the given substring in the name or description.", "in": "query", "name": "searchQuery", "required": false, "schema": { "type": "string" } }, { "description": "Number of results to return per page, between 1 and 1000. Default 250.", "in": "query", "name": "pageSize", "required": true, "schema": { "type": "integer", "format": "int32", "default": 250 } }, { "description": "Page number to return, 0-indexed. Default 0.", "in": "query", "name": "page", "required": true, "schema": { "type": "integer", "format": "int32", "default": 0 } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowListResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/WorkflowListResponse" } } }, "description": "Successfully found workflows" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "List workflows", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "Create or update new workflow.\n\nAPI key must have the `Edit workflows` permission.\n\n**Note:** If a workflow with the same tag already exists, it will be updated.", "operationId": "createOrUpdateWorkflow", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } } }, "required": true }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } } }, "description": "Workflow created successfully" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Create or update workflow", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/workflows/validate": { "post": { "description": "Validates YAML descriptor.", "operationId": "validateWorkflowDescriptor", "requestBody": { "content": { "application/json": {}, "application/yaml": {} }, "description": "Raw text of the YAML" }, "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OpenApiResponse" } } }, "description": "Validation result" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Validates YAML descriptor", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/workflows/{tagOrId}": { "delete": { "description": "Delete workflow by tag or ID.\n\nAPI key must have the `Edit workflows` permission.", "operationId": "deleteWorkflow", "parameters": [ { "description": "The tag or unique, auto-generated identifier for the workflow.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Workflow deleted successfully" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Workflow not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Delete workflow", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "Retrieve workflow by tag or ID.\n\nAPI key must have the `View workflows` permission.", "operationId": "getWorkflow", "parameters": [ { "description": "The tag or unique, auto-generated identifier for the workflow.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/WorkflowDefinition" } } }, "description": "Successfully found workflow" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Workflow not found" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Retrieve workflow", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" } }, "/api/v1/workflows/{tagOrId}/callback/{callbackId}": { "post": { "description": "Updates an asynchronous HTTP request Workflow block.\n\nAPI key must have the `Edit workflow runs` permission.", "operationId": "workflowsAsyncHttpCallback", "parameters": [ { "description": "The tag or unique, auto-generated identifier for the workflow.", "in": "path", "name": "tagOrId", "required": true, "schema": { "type": "string" } }, { "description": "Callback ID; Provided by the Workflow block when it runs", "in": "path", "name": "callbackId", "required": true, "schema": { "type": "string", "description": "Callback ID; Provided by the Workflow block when it runs" } } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallbackRequest" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/CallbackRequest" } } }, "required": true }, "responses": { "200": { "description": "Successfully received Workflow callback" }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Bad request" }, "403": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Access denied" }, "404": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Workflow run or block not found" }, "406": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } }, "application/yaml": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } }, "description": "Workflow block is not waiting for callback" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Update asynchronous HTTP request Workflow block", "tags": [ "Workflows" ], "x-cortex-mcp-enabled": "false" } }, "/scim/v2/Users": { "get": { "description": "Fetches users based on provided criteria", "operationId": "findUsers", "parameters": [ { "in": "query", "name": "attributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludedAttributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "filter", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "startIndex", "required": false, "schema": { "type": "integer", "format": "int32" } }, { "in": "query", "name": "count", "required": false, "schema": { "type": "integer", "format": "int32" } }, { "in": "query", "name": "sortBy", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "sortOrder", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "domain", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns list of requested users" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Find users", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" }, "post": { "description": "Creates a user based on provided data.", "operationId": "createUser", "parameters": [ { "in": "query", "name": "attributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludedAttributes", "required": false, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns created user data" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Creates a user", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" } }, "/scim/v2/Users/{id}": { "delete": { "description": "Deletes a user based on provided id", "operationId": "deleteUser", "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns deleted user data" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Deletes a user", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" }, "get": { "description": "Gets a user based on provided id", "operationId": "getUser", "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "attributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludedAttributes", "required": false, "schema": { "type": "string" } } ], "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns requested user data" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Gets a user by id", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" }, "patch": { "description": "Replaces user details based on provided id and data", "operationId": "patchUser", "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "attributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludedAttributes", "required": false, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns patched user data" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Patches a user", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" }, "put": { "description": "Updates a user based on provided id and data", "operationId": "updateUser", "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "attributes", "required": false, "schema": { "type": "string" } }, { "in": "query", "name": "excludedAttributes", "required": false, "schema": { "type": "string" } } ], "requestBody": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } } }, "responses": { "200": { "content": { "application/json": { "schema": { "type": "string" } }, "application/scim+json": { "schema": { "type": "string" } } }, "description": "Returns updated user data" }, "429": { "$ref": "#/components/responses/TooManyRequests" } }, "summary": "Updates a user", "tags": [ "SCIM" ], "x-cortex-mcp-enabled": "false" } } }, "components": { "responses": { "TooManyRequests": { "content": { "application/problem+json": { "schema": { "$ref": "#/components/schemas/TooManyRequestsProblemDetail" } } }, "description": "The client has exceeded the rate limit by performing too many requests in a short period. Retry the request after a delay.", "headers": { "Retry-After": { "description": "The number of seconds until the rate limiting resets.", "schema": { "minimum": 0, "type": "integer", "format": "int32" } } } } }, "schemas": { "AWS": { "required": [ "type" ], "type": "object", "discriminator": { "propertyName": "type" }, "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "type": { "type": "string" } } } ] }, "AZURE_DEVOPS": { "required": [ "projectName", "repoName" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "basePath": { "type": "string" }, "projectName": { "type": "string" }, "repoName": { "type": "string" } } } ] }, "AZURE_RESOURCES": { "required": [ "identifier" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "alias": { "type": "string" }, "identifier": { "type": "string" } } } ] }, "ActiveDirectoryConfiguration": { "required": [ "clientId", "clientSecretLastFour", "tenantId" ], "type": "object", "properties": { "clientId": { "type": "string" }, "clientSecretLastFour": { "type": "string" }, "groupsFilter": { "type": "string" }, "tenantId": { "type": "string" } } }, "ActiveDirectoryConfigurationRequest": { "required": [ "clientId", "clientSecret", "tenantId" ], "type": "object", "properties": { "clientId": { "type": "string" }, "clientSecret": { "type": "string" }, "groupsFilter": { "type": "string" }, "tenantId": { "type": "string" } } }, "AllDepartmentsResponse": { "required": [ "departments" ], "type": "object", "properties": { "departments": { "type": "array", "items": { "$ref": "#/components/schemas/DepartmentResponse" } } } }, "AllGithubConfigurationResponse": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/GithubConfigurationResponse" } } } }, "AllSecretsResponse": { "required": [ "page", "secrets", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "secrets": { "type": "array", "description": "List of secrets", "items": { "$ref": "#/components/schemas/SecretResponse" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "AllTeamsResponse": { "required": [ "teams" ], "type": "object", "properties": { "teams": { "type": "array", "items": { "$ref": "#/components/schemas/TeamResponse" } } } }, "ApiKeyDefinition": { "required": [ "cid", "createdDate", "last4", "roles" ], "type": "object", "properties": { "cid": { "type": "string", "description": "ID of the API key", "example": "ak1234567890abcdef" }, "createdDate": { "type": "string", "description": "Creation date of the API key", "format": "date-time", "example": "2025-01-15T22:47:30Z" }, "description": { "type": "string", "description": "Description of the API key", "example": "API Key used for entities scanner script" }, "expirationDate": { "type": "string", "description": "Expiration date of the API key", "format": "date-time" }, "last4": { "type": "string", "description": "Last 4 characters of the API key", "example": "0kAg" }, "name": { "type": "string", "description": "Name of the API key", "example": "Entities scanner" }, "roles": { "type": "array", "description": "Roles assigned to the API key", "items": { "$ref": "#/components/schemas/ApiKeyRole" } } } }, "ApiKeyRole": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the role", "enum": [ "DEFAULT", "CUSTOM" ] } }, "description": "Roles assigned to the API key", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/DEFAULT" }, { "$ref": "#/components/schemas/CUSTOM" } ] }, "ApproveRuleExemptionRequest": { "required": [ "ruleIdentifier" ], "type": "object", "properties": { "ruleIdentifier": { "type": "string", "description": "Identifier of the Scorecard rule" } } }, "Attribute": { "required": [ "name", "type" ], "type": "object", "properties": { "description": { "type": "string", "description": "Human-readable description of what this field contains" }, "name": { "type": "string", "description": "Field name for use in queries" }, "type": { "type": "string", "description": "Data type - determines which filter operators are supported (see endpoint description)", "enum": [ "STRING", "BOOLEAN", "INTEGER", "DECIMAL", "DOUBLE", "DATE", "TREE", "DATETIME", "JSON", "ARRAY", "UNSUPPORTED" ] } }, "description": "Queryable fields available on this dimension" }, "AttributeFilterObject": { "required": [ "attribute", "operator", "predicate" ], "type": "object", "properties": { "attribute": { "type": "string" }, "operator": { "type": "string", "enum": [ "ANY", "BETWEEN", "CONTAINS", "EQUAL", "GREATER_THAN", "GREATER_THAN_OR_EQUAL", "IN", "IS_NOT_NULL", "IS_NULL", "LESS_THAN", "LESS_THAN_OR_EQUAL", "LIKE", "NOT_EQUAL", "NOT_IN", "NOT_LIKE" ] }, "predicate": { "type": "object" } }, "description": "Filters to apply to the data" }, "AuditLogResponse": { "required": [ "action", "objectIdentifier", "objectType", "timestamp" ], "type": "object", "properties": { "action": { "type": "string", "description": "Type of action performed", "enum": [ "CREATE", "UPDATE", "DELETE" ] }, "actorIdentifier": { "type": "string", "description": "Readable identifier of the authenticated actor. This could an be OAuth user email, API key identifier, attributed webhook, etc." }, "ipAddress": { "type": "string", "description": "IP address of the actor" }, "objectIdentifier": { "type": "string", "description": "Readable identifier of the object acted upon" }, "objectType": { "type": "string", "description": "Type of object acted upon" }, "timestamp": { "type": "string", "format": "date-time" } } }, "AuditLogsResponse": { "required": [ "logs", "page", "total", "totalPages" ], "type": "object", "properties": { "logs": { "type": "array", "items": { "$ref": "#/components/schemas/AuditLogResponse" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "AvailableCloudControlTypeResponse": { "required": [ "enabled", "type" ], "type": "object", "properties": { "enabled": { "type": "boolean", "description": "Whether AWS type is configured to be discovered and imported into the catalogs" }, "type": { "type": "string", "description": "AWS type", "example": "AWS::S3::Bucket" } }, "description": "List of AWS types and whether they\u0027re configured to be discovered and imported into the catalogs" }, "AwsCloudControlTypeConfigurationRequest": { "required": [ "enabled", "type" ], "type": "object", "properties": { "enabled": { "type": "boolean", "description": "Whether AWS type is configured to be discovered and imported into the catalogs" }, "type": { "type": "string", "description": "AWS type", "example": "AWS::S3::Bucket" } }, "description": "List of AWS types and whether they\u0027re configured to be discovered and imported into the catalogs" }, "AwsCloudControlTypeResponse": { "required": [ "hasMore", "page", "total", "totalPages", "types" ], "type": "object", "properties": { "hasMore": { "type": "boolean", "description": "If there are more pages" }, "page": { "type": "integer", "description": "Number of page", "format": "int32" }, "total": { "type": "integer", "description": "Total number of AWS Resources types", "format": "int64" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" }, "types": { "type": "array", "description": "List of AWS types types and whether they\u0027re configured to be discovered and imported into the catalogs", "items": { "$ref": "#/components/schemas/AvailableCloudControlTypeResponse" } } } }, "AwsCloudControlTypesConfigurationRequest": { "required": [ "types" ], "type": "object", "properties": { "types": { "type": "array", "description": "List of AWS types and whether they\u0027re configured to be discovered and imported into the catalogs", "items": { "$ref": "#/components/schemas/AwsCloudControlTypeConfigurationRequest" } } } }, "AwsCloudControlTypesResponse": { "required": [ "types" ], "type": "object", "properties": { "types": { "type": "array", "description": "List of AWS types and whether they\u0027re configured to be discovered and imported into the catalogs", "items": { "$ref": "#/components/schemas/AvailableCloudControlTypeResponse" } } } }, "AzureDevopsConfiguration": { "required": [ "alias", "isDefault", "lastFour", "organizationSlug", "username" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" }, "organizationSlug": { "type": "string" }, "username": { "type": "string" } } }, "AzureDevopsConfigurationRequest": { "required": [ "alias", "isDefault", "organizationSlug", "personalAccessToken", "username" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "organizationSlug": { "type": "string" }, "personalAccessToken": { "type": "string" }, "username": { "type": "string" } } }, "AzureDevopsUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "AzureResourceType": { "required": [ "enabled", "type" ], "type": "object", "properties": { "enabled": { "type": "boolean", "description": "Whether Azure Resources type is configured to be discovered and imported into the catalogs" }, "type": { "type": "string", "description": "Azure Resources type", "example": "microsoft.policyinsights/policyevents" } }, "description": "List of Azure Resources types and whether they\u0027re configured to be discovered and imported into the catalogs" }, "AzureResourceTypesResponse": { "required": [ "hasMore", "page", "total", "totalPages", "types" ], "type": "object", "properties": { "hasMore": { "type": "boolean", "description": "If there are more pages" }, "page": { "type": "integer", "description": "Number of page", "format": "int32" }, "total": { "type": "integer", "description": "Total number of Azure Resources types", "format": "int64" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" }, "types": { "type": "array", "description": "List of Azure Resources types and whether they\u0027re configured to be discovered and imported into the catalogs", "items": { "$ref": "#/components/schemas/AzureResourceType" } } } }, "AzureResourcesConfiguration": { "required": [ "alias", "azureTenantId", "clientId", "isDefault", "lastFour", "subscriptionId" ], "type": "object", "properties": { "alias": { "type": "string" }, "azureTenantId": { "type": "string" }, "clientId": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" }, "subscriptionId": { "type": "string" } } }, "AzureResourcesConfigurationRequest": { "required": [ "alias", "azureTenantId", "clientId", "clientSecret", "isDefault", "subscriptionId" ], "type": "object", "properties": { "alias": { "type": "string" }, "azureTenantId": { "type": "string" }, "clientId": { "type": "string" }, "clientSecret": { "type": "string" }, "isDefault": { "type": "boolean" }, "subscriptionId": { "type": "string" } } }, "AzureResourcesUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "BITBUCKET": { "required": [ "repoName" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "alias": { "type": "string" }, "basePath": { "type": "string" }, "repoName": { "type": "string" } } } ] }, "BaseRole": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/DepartmentResponse.BaseRole.MISCONFIGURED" }, { "$ref": "#/components/schemas/DepartmentResponse.BaseRole.TEAM_ROLE" } ] }, "BasicMetricDefinition": { "required": [ "displayName", "key", "readiness" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of what this metric measures" }, "displayName": { "type": "string", "description": "Human-readable name" }, "key": { "type": "string", "description": "Unique identifier for the metric (used in queries)" }, "readiness": { "$ref": "#/components/schemas/Readiness" } }, "description": "List of available metric definitions with basic metadata" }, "BasicMetricDefinitionsResponse": { "required": [ "metrics" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/MetricDefinitionsResponse" }, { "type": "object", "properties": { "metrics": { "type": "array", "description": "List of available metric definitions with basic metadata", "items": { "$ref": "#/components/schemas/BasicMetricDefinition" } } } } ] }, "BatchPointInTimeRequest": { "required": [ "endTime", "filters", "groupBy", "limit", "metrics", "orderBy", "startTime" ], "type": "object", "properties": { "comparison": { "oneOf": [ { "$ref": "#/components/schemas/TimeWindow" } ] }, "endTime": { "type": "string", "description": "End time for the query period", "format": "date-time" }, "filters": { "type": "array", "description": "Filters to apply to the data", "items": { "$ref": "#/components/schemas/AttributeFilterObject" } }, "groupBy": { "type": "array", "description": "Fields to group results by", "items": { "type": "string", "description": "Fields to group results by" } }, "limit": { "type": "integer", "description": "Maximum number of results to return", "format": "int32" }, "metrics": { "type": "array", "description": "List of metrics to query with their aggregation functions", "items": { "$ref": "#/components/schemas/MetricAggregation" } }, "nestedGroupBy": { "type": "array", "description": "Fields to group nested results by", "items": { "type": "string", "description": "Fields to group nested results by" } }, "nestedMetrics": { "type": "array", "description": "Optional nested metrics for advanced queries", "items": { "$ref": "#/components/schemas/MetricAggregation" } }, "nestedTimeAttribute": { "type": "string", "description": "Time attribute for nested queries" }, "nextPage": { "type": "string", "description": "Pagination token for next page of results" }, "orderBy": { "type": "array", "description": "Sort order for results", "items": { "$ref": "#/components/schemas/OrderBy" } }, "startTime": { "type": "string", "description": "Start time for the query period", "format": "date-time" }, "timeAttribute": { "type": "string", "description": "Time attribute to use for queries" } }, "description": "Point-in-time metrics query request for batch processing" }, "BulkAwsConfigurationsRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/SingleAwsConfigurationRequest" } } } }, "BulkAwsConfigurationsResponse": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/SingleAwsConfigurationResponse" } } } }, "BulkCustomDataRequest": { "required": [ "values" ], "type": "object", "properties": { "values": { "type": "object", "additionalProperties": { "type": "array", "description": "Map of entity tag -\u003e custom data key/values", "example": { "another-service-tag": [ { "key": "different-key", "value": { "nested": "object" } }, { "key": "my-cool-key", "value": "Hello again" } ], "service-x": [ { "key": "my-key", "value": 100 }, { "key": "my-second-key", "value": "Hello" } ] }, "items": { "$ref": "#/components/schemas/DataCreateRequest" } }, "description": "Map of entity tag -\u003e custom data key/values", "example": { "another-service-tag": [ { "key": "different-key", "value": { "nested": "object" } }, { "key": "my-cool-key", "value": "Hello again" } ], "service-x": [ { "key": "my-key", "value": 100 }, { "key": "my-second-key", "value": "Hello" } ] } } } }, "BulkCustomDataResponse": { "required": [ "values" ], "type": "object", "properties": { "errors": { "type": "object", "additionalProperties": { "type": "string", "enum": [ "NOT_FOUND" ] } }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/CustomData" } } } }, "BulkDependencyInnerRequest": { "required": [ "tag" ], "type": "object", "properties": { "description": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/JsonNode" }, "method": { "type": "string" }, "path": { "type": "string" }, "tag": { "type": "string", "description": "Entity tag (`x-cortex-tag`) for the `callee`" } }, "description": "Map of `caller` service to dependencies" }, "BulkDependencyInnerResponse": { "required": [ "tag" ], "type": "object", "properties": { "description": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/JsonNode" }, "method": { "$ref": "#/components/schemas/HttpMethod" }, "path": { "type": "string" }, "tag": { "type": "string", "description": "Entity tag (`x-cortex-tag`) for the `callee`" } }, "description": "Map of `caller` service to dependencies" }, "BulkDependencyRequest": { "required": [ "values" ], "type": "object", "properties": { "values": { "type": "object", "additionalProperties": { "type": "array", "description": "Map of `caller` service to dependencies", "items": { "$ref": "#/components/schemas/BulkDependencyInnerRequest" } }, "description": "Map of `caller` service to dependencies" } } }, "BulkDependencyResponse": { "required": [ "values" ], "type": "object", "properties": { "values": { "type": "object", "additionalProperties": { "type": "array", "description": "Map of `caller` service to dependencies", "items": { "$ref": "#/components/schemas/BulkDependencyInnerResponse" } }, "description": "Map of `caller` service to dependencies" } } }, "BulkUpdateEntityRelationshipsResponse": { "required": [ "errors", "relationships" ], "type": "object", "properties": { "errors": { "type": "array", "description": "Errors encountered during the operation", "items": { "$ref": "#/components/schemas/EntityRelationshipError" } }, "relationships": { "type": "array", "description": "Successfully created or updated relationships", "items": { "$ref": "#/components/schemas/EntityRelationship" } } }, "description": "Response from bulk entity relationship operations" }, "BulkUserLabelAssignmentRequest": { "required": [ "userLabelAssignments" ], "type": "object", "properties": { "userLabelAssignments": { "type": "object", "additionalProperties": { "type": "array", "description": "Map of user email to the list of user label values that should be assigned to the user", "example": "\n {\n \"user@email.com\": [\n {\"id\": \"ul2da8159dbeefb974\", \"name\": \"Coding Language\", \"value\": \"Java\"},\n {\"id\": \"ul2da8159234bsdfas\", \"name\": \"Engineering Level\", \"value\": \"Senior\"}\n ],\n \"another_user@email.com\": [\n {\"id\": \"ul2da8159dbeefb974\", \"name\": \"Coding Language\", \"value\": \"Typescript\"},\n ]\n }\n ", "items": { "$ref": "#/components/schemas/UserLabelValue" } }, "description": "Map of user email to the list of user label values that should be assigned to the user", "example": "\n {\n \"user@email.com\": [\n {\"id\": \"ul2da8159dbeefb974\", \"name\": \"Coding Language\", \"value\": \"Java\"},\n {\"id\": \"ul2da8159234bsdfas\", \"name\": \"Engineering Level\", \"value\": \"Senior\"}\n ],\n \"another_user@email.com\": [\n {\"id\": \"ul2da8159dbeefb974\", \"name\": \"Coding Language\", \"value\": \"Typescript\"},\n ]\n }\n " } } }, "BulkUserLabelAssignmentResponse": { "required": [ "userLabelAssignments" ], "type": "object", "properties": { "userLabelAssignments": { "type": "object", "additionalProperties": { "type": "array", "description": "Map of user email to the list of assigned user label values", "items": { "$ref": "#/components/schemas/UserLabelValue" } }, "description": "Map of user email to the list of assigned user label values" } } }, "COMPOUND_FILTER": { "required": [ "type" ], "type": "object", "properties": { "cqlFilter": { "$ref": "#/components/schemas/CQL_FILTER" }, "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] }, "typeFilter": { "$ref": "#/components/schemas/EntityTypeFilter" } } }, "CQL_FILTER": { "required": [ "category", "query", "type" ], "type": "object", "properties": { "category": { "type": "string", "enum": [ "Service", "Resource", "Domain", "Team", "Generic" ] }, "cqlVersion": { "type": "string", "enum": [ "V1", "V2" ] }, "query": { "type": "string" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } } }, "CUSTOM": { "required": [ "tag", "type" ], "type": "object", "properties": { "tag": { "type": "string", "description": "Tag of the [custom role](https://docs.cortex.io/docs/walkthroughs/workspace-settings/permissioning/custom-roles)" }, "type": { "type": "string" } } }, "CallbackRequest": { "required": [ "message", "status" ], "type": "object", "properties": { "message": { "type": "string", "description": "Human readable message to be shown to the user" }, "response": { "type": "object", "additionalProperties": { "type": "object", "description": "Response from the callback request. If set, must be a JSON object" }, "description": "Response from the callback request. If set, must be a JSON object" }, "status": { "type": "string", "description": "Status of the callback request. `UPDATE` keeps the workflow paused", "enum": [ "SUCCESS", "FAILURE", "UPDATE" ] } } }, "CatalogDefinitionResponse": { "required": [ "schema", "source", "type" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "schema": { "$ref": "#/components/schemas/JsonNode" }, "source": { "type": "string", "enum": [ "CORTEX", "CUSTOM" ] }, "type": { "type": "string" } } }, "CatalogDefinitionsListResponse": { "required": [ "definitions", "page", "total", "totalPages" ], "type": "object", "properties": { "definitions": { "type": "array", "items": { "$ref": "#/components/schemas/CatalogDefinitionResponse" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "CircleCiConfiguration": { "required": [ "alias", "isDefault", "lastFour" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "CircleCiConfigurationRequest": { "required": [ "alias", "apiKey", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiKey": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "CircleCiUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "Column": { "required": [ "alias", "name", "ordinal", "type" ], "type": "object", "properties": { "alias": { "type": "string" }, "category": { "type": "string" }, "description": { "type": "string" }, "name": { "type": "string" }, "ordinal": { "type": "integer", "format": "int32" }, "type": { "type": "string" } }, "description": "List of column definitions describing each field in the result rows", "discriminator": { "propertyName": "type" } }, "CompoundFilter": { "type": "object", "properties": { "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO1" }, "typeFilter": { "$ref": "#/components/schemas/EntityTypeFilter1" } }, "description": "The entity filter for the workflow" }, "Conditional": { "required": [ "expression", "name", "slug" ], "type": "object", "properties": { "expression": { "type": "string", "description": "The conditional expression for the branch" }, "name": { "type": "string", "description": "The name of the branch" }, "outgoingAction": { "type": "string", "description": "The first action to execute in this branch path" }, "slug": { "type": "string", "description": "The slug of the branch" } }, "description": "The list of conditional branches that will be evaluated in order" }, "ConfigurationsRequestAzureDevopsConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureDevopsConfigurationRequest" } } } }, "ConfigurationsRequestAzureResourcesConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureResourcesConfigurationRequest" } } } }, "ConfigurationsRequestCircleCiConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CircleCiConfigurationRequest" } } } }, "ConfigurationsRequestCoralogixConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CoralogixConfigurationRequest" } } } }, "ConfigurationsRequestDatadogConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/DatadogConfigurationRequest" } } } }, "ConfigurationsRequestGitlabConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/GitlabConfigurationRequest" } } } }, "ConfigurationsRequestIncidentIoConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/IncidentIoConfigurationRequest" } } } }, "ConfigurationsRequestLaunchDarklyConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/LaunchDarklyConfigurationRequest" } } } }, "ConfigurationsRequestNewrelicConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/NewrelicConfigurationRequest" } } } }, "ConfigurationsRequestPrometheusConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/PrometheusConfigurationRequest" } } } }, "ConfigurationsRequestSonarqubeConfigurationRequest": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/SonarqubeConfigurationRequest" } } } }, "ConfigurationsResponseActiveDirectoryConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/ActiveDirectoryConfiguration" } } } }, "ConfigurationsResponseAzureDevopsConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureDevopsConfiguration" } } } }, "ConfigurationsResponseAzureResourcesConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureResourcesConfiguration" } } } }, "ConfigurationsResponseCircleCiConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CircleCiConfiguration" } } } }, "ConfigurationsResponseCoralogixConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CoralogixConfiguration" } } } }, "ConfigurationsResponseDatadogConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/DatadogConfiguration" } } } }, "ConfigurationsResponseGitlabConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/GitlabConfiguration" } } } }, "ConfigurationsResponseIncidentIoConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/IncidentIoConfiguration" } } } }, "ConfigurationsResponseLaunchDarklyConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/LaunchDarklyConfiguration" } } } }, "ConfigurationsResponseNewrelicConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/NewrelicConfiguration" } } } }, "ConfigurationsResponsePagerdutyConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/PagerdutyConfiguration" } } } }, "ConfigurationsResponsePrometheusConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/PrometheusConfiguration" } } } }, "ConfigurationsResponseSonarqubeConfiguration": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/SonarqubeConfiguration" } } } }, "CoralogixConfiguration": { "required": [ "alias", "isDefault", "lastFour", "region" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" }, "region": { "type": "string", "enum": [ "US1", "US2", "EU1", "EU2", "AP1", "AP2" ] } } }, "CoralogixConfigurationRequest": { "required": [ "alias", "apiKey", "isDefault", "region" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiKey": { "type": "string" }, "isDefault": { "type": "boolean" }, "region": { "type": "string", "enum": [ "US1", "US2", "EU1", "EU2", "AP1", "AP2" ] } } }, "CoralogixUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "CortexEntity": { "required": [ "name", "tag", "type" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the entity visible in the catalog. This may contain markdown." }, "name": { "type": "string", "description": "Human-readable name for the entity", "example": "My Favorite Entity" }, "tag": { "type": "string", "description": "Unique identifier for the entity. Corresponds to the x-cortex-tag field in the entity descriptor.", "example": "my-favorite-entity" }, "type": { "type": "string", "description": "Type of the entity. Corresponds to the x-cortex-type field in the entity descriptor or \u0027service\u0027 for services.", "example": "service" } }, "description": "Related Cortex entity" }, "CortexManagedTeamMembersRequest": { "required": [ "members", "type" ], "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/CortexTeamMember" } }, "type": { "type": "string" } } }, "CortexPluginContext": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/ENTITY" }, { "$ref": "#/components/schemas/GLOBAL" } ] }, "CortexTeamDetails": { "required": [ "members" ], "type": "object", "properties": { "members": { "type": "array", "items": { "$ref": "#/components/schemas/CortexTeamMemberDetails" } } } }, "CortexTeamMember": { "required": [ "email", "name", "notificationsEnabled", "roleTags" ], "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" }, "name": { "type": "string" }, "notificationsEnabled": { "type": "boolean" }, "roleTags": { "type": "array", "items": { "type": "string" } } } }, "CortexTeamMemberDetails": { "required": [ "email", "name", "notificationsEnabled", "roles" ], "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" }, "name": { "type": "string" }, "notificationsEnabled": { "type": "boolean" }, "role": { "$ref": "#/components/schemas/CortexTeamMemberRole" }, "roles": { "type": "array", "items": { "$ref": "#/components/schemas/CortexTeamMemberRole" } } } }, "CortexTeamMemberRole": { "required": [ "tag", "type" ], "type": "object", "properties": { "source": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/CortexTeamMemberRole.MISCONFIGURED" }, { "$ref": "#/components/schemas/CortexTeamMemberRole.TEAM_ROLE" } ] }, "CortexTeamMemberRole.MISCONFIGURED": { "title": "MISCONFIGURED", "required": [ "tag", "type" ], "type": "object", "properties": { "source": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } } }, "CortexTeamMemberRole.TEAM_ROLE": { "title": "TEAM_ROLE", "required": [ "name", "tag", "type" ], "type": "object", "properties": { "name": { "type": "string" }, "source": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } } }, "CortexUserDefinition": { "required": [ "dateCreated", "email", "name", "oauthUserId", "tenantId" ], "type": "object", "properties": { "dateCreated": { "type": "string", "format": "date-time" }, "email": { "type": "string" }, "id": { "type": "integer", "format": "int64" }, "lastLogin": { "type": "string", "format": "date-time" }, "name": { "type": "string" }, "oauthUserId": { "type": "string" }, "tenantId": { "type": "integer", "format": "int64" }, "timezone": { "type": "string" } }, "description": "The creator of the plugin. Null if created via API." }, "CortexUserIdentity": { "required": [ "email", "name" ], "type": "object", "properties": { "email": { "type": "string", "description": "The email of the user" }, "name": { "type": "string", "description": "The name of the user" } }, "description": "The default value for the input" }, "CreateApiRequest": { "required": [ "name", "roles" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the API key", "example": "API Key used for entities scanner script" }, "expirationDate": { "type": "string", "description": "Expiration date of the API key. Format: ISO8601 with timezone offset", "format": "date-time" }, "name": { "type": "string", "description": "Name of the API key", "example": "Entities scanner" }, "roles": { "type": "array", "description": "Roles assigned to the API key", "items": { "$ref": "#/components/schemas/ApiKeyRole" } } } }, "CreateApiResponse": { "required": [ "apiKey", "roles" ], "type": "object", "properties": { "apiKey": { "type": "string", "description": "Value of the API key created. **You will not be able to see this key again**", "example": "3WpQ3WpQ3WpQ3WpQ" }, "description": { "type": "string", "description": "Description of the API key", "example": "API Key used for entities scanner script" }, "expirationDate": { "type": "string", "description": "Expiration date of the API key", "format": "date-time" }, "name": { "type": "string", "description": "Name of the API key", "example": "Entities scanner" }, "roles": { "type": "array", "description": "Roles assigned to the API key", "items": { "$ref": "#/components/schemas/ApiKeyRole" } } } }, "CreateCatalogDefinitionRequest": { "required": [ "schema", "type" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "schema": { "$ref": "#/components/schemas/JsonNode" }, "type": { "type": "string" } } }, "CreateCustomDataBulkDef": { "maxLength": 100, "minLength": 1, "required": [ "timestamp", "value" ], "type": "object", "properties": { "timestamp": { "type": "string", "description": "Timestamp for the data point. Note: It can\u0027t be earlier than 6 months", "format": "date-time" }, "value": { "type": "number", "description": "Value for the data point", "format": "double" } }, "description": "List of data points" }, "CreateCustomDataBulkRequest": { "required": [ "series" ], "type": "object", "properties": { "series": { "maxLength": 100, "minLength": 1, "type": "array", "description": "List of data points", "items": { "$ref": "#/components/schemas/CreateCustomDataBulkDef" } } }, "description": "Data points to be added" }, "CreateCustomDataRequest": { "required": [ "value" ], "type": "object", "properties": { "timestamp": { "type": "string", "description": "Timestamp for the data point. Note: It can\u0027t be earlier than 6 months", "format": "date-time" }, "value": { "type": "number", "description": "Value for the data point", "format": "double" } }, "description": "Data point to be added" }, "CreateDepartmentRequest": { "required": [ "departmentTag", "members", "name" ], "type": "object", "properties": { "departmentTag": { "type": "string", "description": "Unique identifier for the department, which is used for API operations" }, "description": { "type": "string" }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/DepartmentMemberRequest" } }, "name": { "type": "string" } } }, "CreatePluginRequest": { "required": [ "blob", "contexts", "isDraft", "minimumRoleRequired", "name", "tag" ], "type": "object", "properties": { "blob": { "type": "string", "description": "The raw source code of the plugin. This should be an HTML file" }, "contexts": { "type": "array", "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "items": { "$ref": "#/components/schemas/CortexPluginContext" } }, "description": { "type": "string", "description": "Description of the plugin" }, "iconTag": { "type": "string", "description": "Icon tag for the plugin" }, "isDraft": { "type": "boolean", "description": "Whether the plugin is generally available or not" }, "minimumRoleRequired": { "type": "string", "description": "The minimum role required to view the plugin, e.g. `VIEWER`, `USER`, `MANAGER`, `OWNER`, or the tag for a custom role. Learn more about each permission in our [docs](https://docs.cortex.io/docs/walkthroughs/workspace-settings/permissioning#roles-in-cortex)." }, "name": { "type": "string", "description": "Display name of the plugin" }, "proxyTag": { "type": "string", "description": "The identifier of the proxy to use for requests from this plugin" }, "tag": { "type": "string", "description": "Unique identifier for the plugin" }, "version": { "type": "string", "description": "The version of the plugin" } } }, "CreateSecretRequest": { "required": [ "name", "secret", "tag" ], "type": "object", "properties": { "name": { "type": "string", "description": "Human-readable name for the secret", "example": "My Secret" }, "secret": { "type": "string", "description": "Value of the secret", "example": "my-secret-password" }, "tag": { "type": "string", "description": "Unique identifier for the secret", "example": "my-secret" } } }, "CreateTeamRequest": { "required": [ "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string" }, "type": { "type": "string", "description": "Use \"IDP\" for IdentityProviderBackedTeam and \"CORTEX\" for ManagedTeam" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/CreateTeamRequest.CORTEX" }, { "$ref": "#/components/schemas/CreateTeamRequest.IDP" } ] }, "CreateTeamRequest.CORTEX": { "title": "CORTEX", "required": [ "cortexTeam", "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "cortexTeam": { "$ref": "#/components/schemas/CortexTeamDetails" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string", "description": "A unique identifier for the team, which is used for programmatic access as well as in Catalog Descriptors to define ownership of an entity." }, "type": { "type": "string" } }, "description": "Use this request shape when creating a team entry whose memberships are manually maintained via API or the UI." }, "CreateTeamRequest.IDP": { "title": "IDP", "required": [ "idpGroup", "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "idpGroup": { "$ref": "#/components/schemas/IdpGroupDetailsRequest" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string", "description": "A unique identifier for the team to be used for API/programmatic access" }, "type": { "type": "string" } }, "description": "Use this request shape when creating a team entry whose memberships are synced with an Idp group, such as from Okta, Google Groups, Github Teams, Azure AD, etc." }, "CurrentLevel": { "required": [ "name", "number" ], "type": "object", "properties": { "name": { "type": "string", "description": "Name of the level", "example": "Bronze" }, "number": { "type": "integer", "description": "Rank of the level where 1 is the highest", "format": "int32" } } }, "CurrentOncallDetails": { "required": [ "current" ], "type": "object", "properties": { "current": { "type": "array", "items": { "$ref": "#/components/schemas/OncallDetails" } } } }, "CustomData": { "required": [ "dateUpdated", "key", "source", "value" ], "type": "object", "properties": { "dateUpdated": { "type": "string", "format": "date-time" }, "description": { "type": "string" }, "id": { "type": "integer", "format": "int64" }, "key": { "type": "string" }, "source": { "type": "string", "enum": [ "YAML", "API", "INTEGRATION" ] }, "value": { "$ref": "#/components/schemas/JsonNode" } } }, "CustomDataType": { "type": "object", "properties": { "value": { "type": "object", "writeOnly": true } }, "description": "Value for the key; can be any valid JSON type", "example": { "nested": { "objects": "are ok" } } }, "CustomDeploy": { "required": [ "serviceId", "timestamp", "title", "type", "uuid" ], "type": "object", "properties": { "customData": { "type": "object", "additionalProperties": { "type": "object" } }, "deployerEmail": { "type": "string" }, "deployerName": { "type": "string" }, "environment": { "type": "string" }, "id": { "type": "integer", "format": "int64" }, "serviceId": { "type": "integer", "format": "int64" }, "sha": { "type": "string" }, "timestamp": { "type": "string", "format": "date-time" }, "title": { "type": "string" }, "type": { "type": "string", "enum": [ "DEPLOY", "SCALE", "ROLLBACK", "RESTART" ] }, "url": { "type": "string" }, "uuid": { "type": "string", "format": "uuid" } } }, "CustomDeploy1": { "required": [ "timestamp", "title", "type", "uuid" ], "type": "object", "properties": { "customData": { "type": "object", "additionalProperties": { "type": "object", "description": "Arbitrary string-to-any map of custom data about the deploy event" }, "description": "Arbitrary string-to-any map of custom data about the deploy event" }, "deployer": { "$ref": "#/components/schemas/Deployer" }, "deployerEmail": { "type": "string", "description": "Replaced with Deployer object", "deprecated": true }, "deployerName": { "type": "string", "description": "Replaced with Deployer object", "deprecated": true }, "environment": { "type": "string" }, "sha": { "type": "string", "description": "Optional commit SHA hash that this deploy corresponds to" }, "timestamp": { "type": "string", "description": "ISO8601 timestamp string in UTC", "format": "date-time" }, "title": { "type": "string", "description": "Human readable title for the deploy. This is usually the commit message or PR title." }, "type": { "type": "string", "enum": [ "DEPLOY", "SCALE", "ROLLBACK", "RESTART" ] }, "url": { "type": "string", "description": "Optional URL associated with deployment", "example": "https://cortex.io" }, "uuid": { "type": "string", "format": "uuid" } } }, "CustomDeployListPaginatedResponse": { "required": [ "deployments", "page", "total", "totalPages" ], "type": "object", "properties": { "deployments": { "type": "array", "items": { "$ref": "#/components/schemas/CustomDeploy1" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "CustomEventListResponse": { "required": [ "events", "page", "total", "totalPages" ], "type": "object", "properties": { "events": { "type": "array", "items": { "$ref": "#/components/schemas/CustomEventResponse" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "CustomEventResponse": { "required": [ "timestamp", "title", "type", "uuid" ], "type": "object", "properties": { "customData": { "type": "object", "additionalProperties": { "type": "object", "description": "Optional property to store additional data" }, "description": "Optional property to store additional data" }, "description": { "type": "string", "description": "Optional description of custom event" }, "timestamp": { "type": "string", "description": "Time when event occurred", "format": "date-time" }, "title": { "type": "string", "description": "Name for custom event", "example": "Created K8s pod" }, "type": { "type": "string", "description": "Type of custom event", "example": "POD_CREATION" }, "url": { "type": "string", "description": "Optional URL associated with custom event", "example": "https://cortex.io" }, "uuid": { "type": "string", "description": "Automatically generated identifier", "format": "uuid", "example": "d853c6e0-1bca-40bf-a264-db5d4ee38d77" } } }, "CustomMetricData": { "required": [ "timestamp", "value" ], "type": "object", "properties": { "timestamp": { "type": "string", "format": "date-time" }, "value": { "type": "number", "format": "double" } }, "description": "Data points" }, "CustomMetricDataResponse": { "required": [ "data", "page", "total", "totalPages" ], "type": "object", "properties": { "data": { "type": "array", "description": "Data points", "items": { "$ref": "#/components/schemas/CustomMetricData" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "DATADOG": { "required": [ "serviceName" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "serviceName": { "type": "string" } } } ] }, "DEFAULT": { "required": [ "role", "type" ], "type": "object", "properties": { "role": { "type": "string", "description": "The role of the API key", "enum": [ "READ_ONLY", "USER", "ADMIN" ] }, "type": { "type": "string" } } }, "DOMAIN_FILTER": { "required": [ "type" ], "type": "object", "properties": { "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } } }, "DYNATRACE": { "required": [ "entityId" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "entityId": { "type": "string" } } } ] }, "DataCreateRequest": { "required": [ "key", "value" ], "type": "object", "properties": { "description": { "type": "string" }, "key": { "type": "string", "description": "Custom data key for the entity", "example": "my-key" }, "value": { "$ref": "#/components/schemas/CustomDataType" } } }, "DatadogConfiguration": { "required": [ "alias", "environments", "isDefault", "lastFourApiKey", "lastFourAppKey", "region" ], "type": "object", "properties": { "alias": { "type": "string" }, "customSubdomain": { "type": "string" }, "environments": { "type": "array", "items": { "type": "string" } }, "isDefault": { "type": "boolean" }, "lastFourApiKey": { "type": "string" }, "lastFourAppKey": { "type": "string" }, "region": { "type": "string", "enum": [ "EU1", "US1", "US3", "US5", "US1_FED" ] } } }, "DatadogConfigurationRequest": { "required": [ "alias", "apiKey", "appKey", "environments", "isDefault", "region" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiKey": { "type": "string" }, "appKey": { "type": "string" }, "customSubdomain": { "type": "string" }, "environments": { "type": "array", "items": { "type": "string" } }, "isDefault": { "type": "boolean" }, "region": { "type": "string", "enum": [ "EU1", "US1", "US3", "US5", "US1_FED" ] } } }, "DatadogUpdateConfigurationRequest": { "required": [ "alias", "environments", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "environments": { "type": "array", "items": { "type": "string" } }, "isDefault": { "type": "boolean" } } }, "DecryptedPersonalAccessToken": { "required": [ "accessToken", "alias", "isDefault" ], "type": "object", "properties": { "accessToken": { "type": "string" }, "alias": { "type": "string" }, "apiHost": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "DepartmentMemberRequest": { "required": [ "email", "name" ], "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" }, "name": { "type": "string" }, "notificationsEnabled": { "type": "boolean" }, "role": { "type": "string" } } }, "DepartmentMemberResponse": { "required": [ "email", "name" ], "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" }, "name": { "type": "string" }, "role": { "$ref": "#/components/schemas/BaseRole" } } }, "DepartmentResponse": { "required": [ "catalogEntityTag", "departmentTag", "id", "members", "name" ], "type": "object", "properties": { "catalogEntityTag": { "type": "string" }, "departmentTag": { "type": "string" }, "description": { "type": "string" }, "id": { "type": "string" }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/DepartmentMemberResponse" } }, "name": { "type": "string" } } }, "DepartmentResponse.BaseRole.MISCONFIGURED": { "title": "MISCONFIGURED", "required": [ "tag", "type" ], "type": "object", "properties": { "tag": { "type": "string" }, "type": { "type": "string" } } }, "DepartmentResponse.BaseRole.TEAM_ROLE": { "title": "TEAM_ROLE", "required": [ "name", "tag", "type" ], "type": "object", "properties": { "name": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } } }, "DependencyCreateRequest": { "type": "object", "properties": { "description": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/JsonNode" } } }, "DependencyResponse": { "required": [ "calleeTag", "calleeType", "callerTag", "callerType" ], "type": "object", "properties": { "calleeTag": { "type": "string", "description": "Entity tag (x-cortex-tag) for the callee entity" }, "calleeType": { "type": "string", "description": "Type of the callee entity. Corresponds to the x-cortex-type field in the entity descriptor or ‘service’ for services." }, "callerTag": { "type": "string", "description": "Entity tag (x-cortex-tag) for the caller entity" }, "callerType": { "type": "string", "description": "Type of the caller entity. Corresponds to the x-cortex-type field in the entity descriptor or ‘service’ for services." }, "description": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/JsonNode" }, "method": { "type": "string", "description": "Possible values: [GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE]" }, "path": { "type": "string" } } }, "DependencyUpdateRequest": { "required": [ "description", "metadata" ], "type": "object", "properties": { "description": { "type": "string" }, "metadata": { "$ref": "#/components/schemas/JsonNode" } } }, "Deployer": { "type": "object", "properties": { "email": { "type": "string" }, "name": { "type": "string" } } }, "DeploysResponse": { "required": [ "deploys" ], "type": "object", "properties": { "deploys": { "type": "array", "items": { "$ref": "#/components/schemas/CustomDeploy1" } } } }, "DetailsResponse": { "required": [ "groups", "hierarchy", "id", "isArchived", "lastUpdated", "links", "metadata", "name", "ownership", "slackChannels", "tag", "type" ], "type": "object", "properties": { "definition": { "$ref": "#/components/schemas/JsonNode" }, "description": { "type": "string", "description": "Description of the entity visible in the Service, Resource, or Domain Catalog. Markdown is supported." }, "git": { "$ref": "#/components/schemas/GitDetails" }, "groups": { "type": "array", "description": "Corresponds to the x-cortex-groups field in the Catalog Descriptor", "items": { "type": "string", "description": "Corresponds to the x-cortex-groups field in the Catalog Descriptor" } }, "hierarchy": { "$ref": "#/components/schemas/EntityHierarchyDetails" }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974" }, "isArchived": { "type": "boolean" }, "lastUpdated": { "type": "string", "description": "Last updated ISO timestamp", "format": "date-time" }, "links": { "type": "array", "description": "Relevant links for the entity. Corresponds to the x-cortex-links field in the entity descriptor", "items": { "$ref": "#/components/schemas/Link" } }, "metadata": { "type": "array", "description": "Custom data key/values associated with the entity", "items": { "$ref": "#/components/schemas/Metadata" } }, "name": { "type": "string", "description": "Human-readable name for the entity", "example": "My Favorite Entity" }, "ownersV2": { "$ref": "#/components/schemas/OwnersDetails" }, "ownership": { "$ref": "#/components/schemas/Owners" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannelDetails" } }, "tag": { "type": "string", "description": "Unique identifier for the entity. Corresponds to the x-cortex-tag field in the entity descriptor.", "example": "my-favorite-entity" }, "type": { "type": "string", "description": "Type of the entity. Corresponds to the x-cortex-type field in the entity descriptor or \u0027service\u0027 for services.", "example": "service" } } }, "Dimension": { "required": [ "attributes", "description", "name" ], "type": "object", "properties": { "attributes": { "type": "array", "description": "Queryable fields available on this dimension", "items": { "$ref": "#/components/schemas/Attribute" } }, "description": { "type": "string", "description": "Description of the relationship this dimension represents" }, "name": { "type": "string", "description": "Dimension identifier for use in queries" } }, "description": "Related entities that can be joined for additional context" }, "DiscoveryAuditEvent": { "required": [ "isIgnored", "mappingKey", "source", "type" ], "type": "object", "properties": { "entity": { "$ref": "#/components/schemas/CortexEntity" }, "isIgnored": { "type": "boolean", "description": "Specifies whether discovered event is marked as ignored", "example": true }, "mappingKey": { "$ref": "#/components/schemas/EntityDiscoveryKey" }, "source": { "type": "string", "description": "Integration source", "example": "AWS", "enum": [ "AWS", "AZURE_DEVOPS", "AZURE_RESOURCES", "BITBUCKET", "DATADOG", "DYNATRACE", "ECS", "GCP", "GITHUB", "GITLAB", "INSTANA", "K8S", "LIGHTSTEP", "LAMBDA", "LAMBDA_CLOUD_CONTROL", "NEWRELIC", "SERVICENOW", "SERVICENOW_DOMAIN" ] }, "type": { "type": "string", "description": "Type of the event", "example": "NEW_REPOSITORY", "enum": [ "NEW_REPOSITORY", "REPOSITORY_DELETED", "REPOSITORY_ARCHIVED", "NEW_K8S_RESOURCE", "NEW_APM_RESOURCE", "APM_RESOURCE_NOT_DETECTED", "NEW_ECS_RESOURCE", "ECS_RESOURCE_NOT_DETECTED", "NEW_AWS_RESOURCE", "AWS_RESOURCE_NOT_DETECTED", "NEW_GOOGLE_CLOUD_RESOURCE", "GOOGLE_CLOUD_RESOURCE_NOT_DETECTED", "NEW_AZURE_RESOURCE", "AZURE_RESOURCE_NOT_DETECTED" ] } } }, "DiscoveryAuditReportResponse": { "required": [ "events", "page", "total", "totalPages" ], "type": "object", "properties": { "events": { "type": "array", "items": { "$ref": "#/components/schemas/DiscoveryAuditEvent" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "ECS": { "required": [ "clusterArn", "serviceArn" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "clusterArn": { "type": "string" }, "serviceArn": { "type": "string" } } } ] }, "ENTITY": { "required": [ "type" ], "type": "object", "properties": { "entityFilter": { "$ref": "#/components/schemas/EntityFilter" }, "type": { "type": "string" } } }, "EditPersonalConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "Email": { "required": [ "email" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of this owner defined in the Catalog Descriptor, not to be confused with the description of the team in the Team pages" }, "email": { "type": "string" }, "inheritance": { "type": "string", "description": "Inheritance type, only defined for domain entities", "enum": [ "APPEND", "FALLBACK", "NONE" ] } } }, "EmphasizedLadderLevelRequest": { "required": [ "rank" ], "type": "object", "properties": { "rank": { "type": "integer", "description": "Rank of the level where 1 is the highest", "format": "int32" } }, "description": "Emphasized levels for the Initiative. Either emphasized levels or rules must be provided" }, "EmphasizedLevel": { "required": [ "color", "name", "rank" ], "type": "object", "properties": { "color": { "type": "string", "description": "Color associated with the emphasized level" }, "name": { "type": "string", "description": "Name of the emphasized level" }, "rank": { "type": "integer", "description": "Rank of the level where 1 is the highest", "format": "int32" } }, "description": "Emphasized levels for the Initiative" }, "EmphasizedRule": { "required": [ "expression" ], "type": "object", "properties": { "description": { "type": "string", "description": "Optional description of the emphasized rule" }, "expression": { "type": "string", "description": "CQL expression for the emphasized rule" }, "title": { "type": "string", "description": "Optional title of the emphasized rule" } }, "description": "Emphasized rules for the Initiative" }, "EmphasizedRuleRequest": { "required": [ "expression" ], "type": "object", "properties": { "expression": { "type": "string", "description": "CQL expression for the emphasized rule" } }, "description": "Emphasized rules for the Initiative. Either emphasized levels or rules must be provided" }, "EntityCIDListResponse": { "required": [ "ids", "page", "total", "totalPages" ], "type": "object", "properties": { "ids": { "type": "array", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974", "items": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974" } }, "page": { "type": "integer", "format": "int32" }, "total": { "type": "integer", "format": "int32" }, "totalPages": { "type": "integer", "format": "int32" } } }, "EntityDestinationsResponse": { "required": [ "destinations" ], "type": "object", "properties": { "destinations": { "type": "array", "items": { "$ref": "#/components/schemas/RelatedEntityDetails" } } } }, "EntityDetailsSummary": { "required": [ "groups", "hierarchy", "id", "isArchived", "lastUpdated", "links", "name", "slackChannels", "tag", "type" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the entity visible in the Service, Resource, or Domain Catalog. This may contain markdown." }, "git": { "$ref": "#/components/schemas/GitDetails" }, "groups": { "type": "array", "description": "Corresponds to the x-cortex-groups field in the Catalog Descriptor", "items": { "type": "string", "description": "Corresponds to the x-cortex-groups field in the Catalog Descriptor" } }, "hierarchy": { "$ref": "#/components/schemas/EntityHierarchyDetails" }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974" }, "isArchived": { "type": "boolean" }, "lastUpdated": { "type": "string", "description": "Last updated ISO timestamp", "format": "date-time" }, "links": { "type": "array", "description": "Relevant links for the entity. Corresponds to the x-cortex-links field in the entity descriptor", "items": { "$ref": "#/components/schemas/Link" } }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/TeamMember" } }, "metadata": { "type": "array", "description": "Custom data key/values associated with the entity.", "items": { "$ref": "#/components/schemas/Metadata" } }, "name": { "type": "string", "description": "Human-readable name for the entity", "example": "My Favorite Entity" }, "owners": { "$ref": "#/components/schemas/OwnersDetails" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannelDetails" } }, "tag": { "type": "string", "description": "Unique identifier for the entity. Corresponds to the x-cortex-tag field in the entity descriptor.", "example": "my-favorite-entity" }, "type": { "type": "string", "description": "Type of the entity. Corresponds to the x-cortex-type field in the entity descriptor or \u0027service\u0027 for services.", "example": "service" } } }, "EntityDiscoveryKey": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "description": "Mapping key of the event. Its schema is dependent on the source", "example": { "type": "AWS", "arn": "arn" }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/AWS" }, { "$ref": "#/components/schemas/AZURE_DEVOPS" }, { "$ref": "#/components/schemas/AZURE_RESOURCES" }, { "$ref": "#/components/schemas/BITBUCKET" }, { "$ref": "#/components/schemas/DATADOG" }, { "$ref": "#/components/schemas/DYNATRACE" }, { "$ref": "#/components/schemas/ECS" }, { "$ref": "#/components/schemas/GCP" }, { "$ref": "#/components/schemas/GITHUB" }, { "$ref": "#/components/schemas/GITLAB" }, { "$ref": "#/components/schemas/INSTANA" }, { "$ref": "#/components/schemas/K8S" }, { "$ref": "#/components/schemas/LAMBDA" }, { "$ref": "#/components/schemas/LIGHTSTEP" }, { "$ref": "#/components/schemas/NEWRELIC" }, { "$ref": "#/components/schemas/SERVICENOW" } ] }, "EntityFilter": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/CQL_FILTER" }, { "$ref": "#/components/schemas/SERVICE_FILTER" }, { "$ref": "#/components/schemas/RESOURCE_FILTER" }, { "$ref": "#/components/schemas/DOMAIN_FILTER" }, { "$ref": "#/components/schemas/TEAM_FILTER" }, { "$ref": "#/components/schemas/COMPOUND_FILTER" } ] }, "EntityGroupFilterDTO": { "required": [ "entityGroups", "excludedEntityGroups" ], "type": "object", "properties": { "entityGroups": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "excludedEntityGroups": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } } }, "EntityGroupFilterDTO1": { "required": [ "entityGroups", "excludedEntityGroups" ], "type": "object", "properties": { "entityGroups": { "uniqueItems": true, "type": "array", "description": "The entity groups to include", "items": { "type": "string", "description": "The entity groups to include" } }, "excludedEntityGroups": { "uniqueItems": true, "type": "array", "description": "The entity groups to exclude", "items": { "type": "string", "description": "The entity groups to exclude" } } }, "description": "The entity group filter for the entity" }, "EntityHierarchyDetails": { "required": [ "children", "parents" ], "type": "object", "properties": { "children": { "uniqueItems": true, "type": "array", "description": "Nested children chain for the specific entity.", "items": { "$ref": "#/components/schemas/HierarchyChildNode" } }, "parents": { "uniqueItems": true, "type": "array", "description": "Nested parent chain for the specific entity.", "items": { "$ref": "#/components/schemas/HierarchyParentNode" } } }, "description": "Hierarchy details for the entity. Includes both the parent \u0026 the children chains." }, "EntityRelationship": { "required": [ "destinationEntityTag", "relationshipTypeTag", "sourceEntityTag" ], "type": "object", "properties": { "destinationEntityTag": { "type": "string", "description": "Code tag of the destination entity", "example": "service-b" }, "providerType": { "type": "string", "description": "Provider that created or manages this relationship", "example": "WORKDAY", "enum": [ "WORKDAY" ] }, "relationshipTypeTag": { "type": "string", "description": "Tag of the relationship type", "example": "depends-on" }, "sourceEntityTag": { "type": "string", "description": "Code tag of the source entity", "example": "service-a" } }, "description": "A relationship between two entities" }, "EntityRelationshipDetails": { "required": [ "destinationEntity", "relationshipTypeTag", "sourceEntity" ], "type": "object", "properties": { "destinationEntity": { "$ref": "#/components/schemas/RelatedEntityDetails" }, "providerType": { "type": "string", "description": "Provider that created or manages this relationship", "example": "WORKDAY", "enum": [ "WORKDAY" ] }, "relationshipTypeTag": { "type": "string", "description": "Tag of the relationship type", "example": "depends-on" }, "sourceEntity": { "$ref": "#/components/schemas/RelatedEntityDetails" } }, "description": "Describes a specific entity relationship" }, "EntityRelationshipError": { "required": [ "destinationEntityTag", "errorMessage", "relationshipTypeTag", "sourceEntityTag" ], "type": "object", "properties": { "destinationEntityTag": { "type": "string", "description": "Code tag of the destination entity", "example": "service-b" }, "errorMessage": { "type": "string", "description": "Human-readable error message", "example": "Source entity not found" }, "relationshipTypeTag": { "type": "string", "description": "Tag of the relationship type", "example": "depends-on" }, "sourceEntityTag": { "type": "string", "description": "Code tag of the source entity", "example": "service-a" } }, "description": "Error details for a failed relationship operation" }, "EntityRelationshipRequest": { "required": [ "destination", "source" ], "type": "object", "properties": { "destination": { "type": "string", "description": "Code Tag for the destination entity", "example": "service-b" }, "source": { "type": "string", "description": "Code Tag for the source entity", "example": "service-a" } }, "description": "Request to create a relationship between two entities" }, "EntityRelationshipTypeInheritanceView": { "required": [ "inheritanceType", "parameterTag" ], "type": "object", "properties": { "inheritanceType": { "type": "string", "description": "How relationship inheritance should be handled for this parameter", "enum": [ "NONE", "FALLBACK", "APPEND", "CONFIGURE_AT_SOURCE" ] }, "parameterTag": { "type": "string" } }, "description": "Inheritance configuration for Cortex parameters. Currently supports ownership inheritance via x-cortex-owners." }, "EntityRelationshipTypeRequest": { "required": [ "allowCycles", "createCatalog", "definitionLocation", "destinationsFilter", "inheritances", "isSingleDestination", "isSingleSource", "name", "sourcesFilter", "tag" ], "type": "object", "properties": { "allowCycles": { "type": "boolean", "description": "Whether cyclical relationships are allowed", "example": false }, "createCatalog": { "type": "boolean", "description": "Whether to create a catalog page for this relationship type", "example": false }, "definitionLocation": { "type": "string", "description": "Defines where a relationship can be configured in entity descriptors", "example": "BOTH", "enum": [ "SOURCE", "DESTINATION", "BOTH" ] }, "description": { "type": "string", "description": "Optional description explaining the relationship type", "example": "Defines the component hierarchy" }, "destinationLabelPlural": { "type": "string", "description": "Plural label for destinations in the relationship", "example": "Parts" }, "destinationLabelSingular": { "type": "string", "description": "Singular label for destinations in the relationship", "example": "Part" }, "destinationsFilter": { "$ref": "#/components/schemas/EntityTypeFilter" }, "inheritances": { "type": "array", "description": "Inheritance configuration for Cortex parameters. Currently supports ownership inheritance via x-cortex-owners.", "items": { "$ref": "#/components/schemas/EntityRelationshipTypeInheritanceView" } }, "isSingleDestination": { "type": "boolean", "description": "Whether an entity can have only one destination for this relationship type", "example": false }, "isSingleSource": { "type": "boolean", "description": "Whether an entity can have only one source for this relationship type", "example": false }, "name": { "type": "string", "description": "Human-readable name for the relationship type", "example": "Component Hierarchy" }, "sourceLabelPlural": { "type": "string", "description": "Plural label for sources in the relationship", "example": "Components" }, "sourceLabelSingular": { "type": "string", "description": "Singular label for sources in the relationship", "example": "Component" }, "sourcesFilter": { "$ref": "#/components/schemas/EntityTypeFilter" }, "tag": { "type": "string", "description": "Unique identifier tag for the relationship type", "example": "component-hierarchy" } }, "description": "Request to create or update a relationship type" }, "EntityRelationshipTypeResponse": { "required": [ "allowCycles", "definitionLocation", "destinationsFilter", "inheritances", "isCortexManaged", "isSingleDestination", "isSingleSource", "name", "sourcesFilter", "tag" ], "type": "object", "properties": { "allowCycles": { "type": "boolean", "description": "Whether cyclical relationships are allowed", "example": false }, "definitionLocation": { "type": "string", "description": "Defines where a relationship can be configured in entity descriptors", "example": "BOTH", "enum": [ "SOURCE", "DESTINATION", "BOTH" ] }, "description": { "type": "string", "description": "Optional description explaining the relationship type", "example": "Defines the component hierarchy" }, "destinationLabelPlural": { "type": "string", "description": "Plural label for destinations in the relationship", "example": "Parts" }, "destinationLabelSingular": { "type": "string", "description": "Singular label for destinations in the relationship", "example": "Part" }, "destinationNamePlural": { "type": "string" }, "destinationNameSingular": { "type": "string" }, "destinationsFilter": { "$ref": "#/components/schemas/EntityTypeFilter" }, "inheritances": { "type": "array", "description": "Inheritance configuration for Cortex parameters. Currently supports ownership inheritance via x-cortex-owners.", "items": { "$ref": "#/components/schemas/EntityRelationshipTypeInheritanceView" } }, "isCortexManaged": { "type": "boolean", "description": "Whether this relationship type is managed by Cortex", "example": false }, "isSingleDestination": { "type": "boolean", "description": "Whether an entity can have only one destination for this relationship type", "example": false }, "isSingleSource": { "type": "boolean", "description": "Whether an entity can have only one source for this relationship type", "example": false }, "name": { "type": "string", "description": "Human-readable name for the relationship type", "example": "Component Hierarchy" }, "sourceLabelPlural": { "type": "string", "description": "Plural label for sources in the relationship", "example": "Components" }, "sourceLabelSingular": { "type": "string", "description": "Singular label for sources in the relationship", "example": "Component" }, "sourceNamePlural": { "type": "string" }, "sourceNameSingular": { "type": "string" }, "sourcesFilter": { "$ref": "#/components/schemas/EntityTypeFilter" }, "tag": { "type": "string", "description": "Unique identifier tag for the relationship type", "example": "component-hierarchy" } }, "description": "Response containing relationship type details" }, "EntitySourcesResponse": { "required": [ "sources" ], "type": "object", "properties": { "sources": { "type": "array", "items": { "$ref": "#/components/schemas/RelatedEntityDetails" } } } }, "EntityTypeFilter": { "required": [ "include", "types" ], "type": "object", "properties": { "include": { "type": "boolean" }, "types": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } } }, "EntityTypeFilter1": { "required": [ "types" ], "type": "object", "properties": { "types": { "uniqueItems": true, "type": "array", "description": "The entity types to include. Can be found on https://app.getcortexapp.com/admin/entities", "items": { "type": "string", "description": "The entity types to include. Can be found on https://app.getcortexapp.com/admin/entities" } } }, "description": "The type filter for the entity" }, "ErrorResponse": { "required": [ "message", "type" ], "type": "object", "properties": { "details": { "type": "string" }, "gatewayHttpStatus": { "type": "integer", "format": "int32" }, "httpStatus": { "type": "integer", "format": "int32" }, "message": { "type": "string" }, "requestId": { "type": "string" }, "type": { "type": "string", "enum": [ "INTEGRATION_MISSING", "INTEGRATION_UNREGISTERED", "INTEGRATION_UNSUPPORTED", "INTEGRATION_GRAPHQL_ERROR", "INTEGRATION_BAD_REQUEST", "INTEGRATION_UNAUTHORIZED", "INTEGRATION_FORBIDDEN", "INTEGRATION_NOT_FOUND", "INTEGRATION_UNPROCESSABLE_CONTENT", "INTEGRATION_RATE_LIMITED", "INTEGRATION_INTERNAL_ERROR", "INTEGRATION_NOT_IMPLEMENTED", "INTEGRATION_BAD_GATEWAY", "INTEGRATION_UNAVAILABLE", "INTEGRATION_GATEWAY_TIMEOUT", "INTEGRATION_TIMED_OUT", "INTEGRATION_CACHE_ERROR", "INTEGRATION_UNHANDLED_HTTP_ERROR", "INTEGRATION_UNHANDLED_EXCEPTION", "INTEGRATION_UNEXPECTED_ERROR", "ILLEGAL_ARGUMENT_ERROR", "BAD_REQUEST", "FORBIDDEN", "NOT_FOUND", "REQUEST_TIMEOUT", "CONFLICT", "UNHANDLED_EXCEPTION", "UNCATEGORIZED", "SERVICE_CREATOR", "UNKNOWN_HOST" ] } } }, "Escalation": { "required": [ "escalationLevel", "schedules" ], "type": "object", "properties": { "escalationLevel": { "type": "integer", "format": "int32" }, "schedules": { "type": "array", "items": { "$ref": "#/components/schemas/UserSchedule" } } }, "description": "List of escalations" }, "EvaluationDetails": { "type": "object", "properties": { "window": { "type": "integer", "description": "Number of hours between Scorecard evaluations. If the evaluation window is not set, the Scorecard is evaluated every 4 hours", "format": "int64", "example": 4 } }, "description": "Evaluation window for how often the Scorecard is run" }, "ExemptionActor": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "discriminator": { "propertyName": "type", "mapping": { "API": "#/components/schemas/RuleExemptionApiActor", "USER": "#/components/schemas/RuleExemptionUserActor" } }, "oneOf": [ { "$ref": "#/components/schemas/RuleExemptionUserActor" }, { "$ref": "#/components/schemas/RuleExemptionApiActor" } ] }, "ExemptionStatus": { "required": [ "status" ], "type": "object", "properties": { "date": { "type": "string", "description": "Date on which the exemption was approved or rejected. Null if the status is pending", "format": "date-time" }, "handledBy": { "$ref": "#/components/schemas/ExemptionActor" }, "status": { "type": "string", "description": "Status of the exemption. Possible values are APPROVED, REJECTED, and PENDING" } } }, "ExemptionsSettings": { "required": [ "autoApprove", "enabled" ], "type": "object", "properties": { "autoApprove": { "type": "boolean", "description": "This will enable auto-approving of Scorecard rule exemptions. If not set, it defaults to false.", "example": false }, "enabled": { "type": "boolean", "description": "This will enable Scorecard rule exemptions. If not set, it defaults to true.", "example": true } }, "description": "Exemptions settings for the Scorecard" }, "Fallback": { "required": [ "name", "slug" ], "type": "object", "properties": { "name": { "type": "string", "description": "The name of the branch" }, "outgoingAction": { "type": "string", "description": "The first action to execute in this branch path" }, "slug": { "type": "string", "description": "The slug of the branch" } }, "description": "The fallback branch that will be taken if no other branches evaluate to `true`" }, "Filter": { "type": "object", "properties": { "groups": { "$ref": "#/components/schemas/GroupFilter" }, "query": { "type": "string", "description": "CQL expression to apply as a filter" }, "types": { "$ref": "#/components/schemas/TypeFilter" } }, "description": "Filter applied to the Initiative" }, "FilterOption": { "required": [ "displayName", "filter", "key" ], "type": "object", "properties": { "displayName": { "type": "string", "description": "Human-readable label for this filter" }, "filter": { "type": "string", "description": "Specific attribute to filter on" }, "key": { "type": "string", "description": "Field key to reference in queries" } }, "description": "Available filtering options for querying metrics" }, "FullMetricDefinition": { "required": [ "displayName", "key", "readiness" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of what this metric measures" }, "displayName": { "type": "string", "description": "Human-readable name" }, "key": { "type": "string", "description": "Unique identifier for the metric (used in queries)" }, "readiness": { "$ref": "#/components/schemas/Readiness" }, "sourceRef": { "type": "string", "description": "Reference to the data source in the sources map - indicates which integration provides this metric" }, "timeAttribute": { "$ref": "#/components/schemas/Attribute" }, "type": { "type": "string", "description": "Type of metric: COUNT (discrete values), DURATION (time-based), RATIO/RATE (percentages), VALUE (continuous)", "enum": [ "DURATION", "COUNT", "VALUE", "RATE" ] }, "units": { "type": "string", "description": "Units of measurement (e.g., \u0027seconds\u0027, \u0027count\u0027, \u0027percentage\u0027)" }, "valence": { "type": "string", "description": "Whether higher values are better (POSITIVE) or worse (NEGATIVE) for this metric", "enum": [ "POSITIVE", "NEGATIVE" ] } }, "description": "List of available metric definitions with full metadata" }, "FullMetricDefinitionsResponse": { "required": [ "metrics", "sources" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/MetricDefinitionsResponse" }, { "type": "object", "properties": { "metrics": { "type": "array", "description": "List of available metric definitions with full metadata", "items": { "$ref": "#/components/schemas/FullMetricDefinition" } }, "sources": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/Source" }, "description": "Map of source names to source metadata for query construction" } } } ] }, "GCP": { "required": [ "projectId", "resourceName", "resourceType" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "projectId": { "type": "string" }, "resourceName": { "type": "string" }, "resourceType": { "type": "string", "enum": [ "AI_DATASET", "AI_ENDPOINT", "AI_FEATURESTORE", "AI_PLATFORM_INDEX_ENDPOINT", "AI_INDEX", "AI_BATCH_PREDICTION_JOB", "AI_MODEL_DEPLOYMENT_MONITORING_JOB", "AI_MODEL", "AI_TRAINING_PIPELINE", "AI_PIPELINE_JOB", "AI_SPECIALIST_POOL", "AI_TENSORBOARD", "AI_STUDY", "AI_NOTEBOOK_INSTANCE", "AI_VISION_APPLICATION", "AI_VISION_PROCESSOR", "AI_VISION_OPERATOR", "AI_VISION_CLUSTER", "APP_ENGINE_SERVICE", "ARTIFACT_REGISTRY_REPOSITORY", "BIGQUERY_CONNECTION", "BIGQUERY_DATASET", "FUNCTION", "GKE_CLUSTER", "GKE_OPERATION", "INSTANCE_GROUP", "LOAD_BALANCER", "SQL", "STORAGE", "TOPIC", "VM_INSTANCE", "MEMORYSTORE_REDIS", "MEMORYSTORE_MEMCACHED", "RUN_SERVICE", "RUN_JOB", "COMPOSER_ENVIRONMENT", "IAM_SERVICE_ACCOUNT", "SPANNER_INSTANCE_CONFIG", "SPANNER_INSTANCE", "VPC_SERVERLESS_CONNECTOR", "APIGEE_INSTANCE", "APIGEE_API", "PROJECT" ] } } } ] }, "GITHUB": { "required": [ "repoName" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "alias": { "type": "string" }, "basePath": { "type": "string" }, "repoName": { "type": "string" } } } ] }, "GITLAB": { "required": [ "projectId" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "alias": { "type": "string" }, "basePath": { "type": "string" }, "projectId": { "type": "string" } } } ] }, "GLOBAL": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } } }, "GitDetails": { "required": [ "provider", "repository", "repositoryUrl" ], "type": "object", "properties": { "alias": { "type": "string", "description": "Custom defined alias (this is only relevant if you have opted into multi account support)" }, "basepath": { "type": "string", "description": "If the entity is in a monorepo (e.g. in a subdirectory), this field defines the subdirectory" }, "provider": { "type": "string", "description": "Name of the Git provider", "example": "github" }, "repository": { "type": "string", "description": "Repository name as defined in your Git provider" }, "repositoryUrl": { "type": "string", "description": "URL of the Git repository" } }, "description": "Metadata about the entity\u0027s git repository" }, "GitOpsLogEntityChange": { "required": [ "name", "operation", "tag", "type" ], "type": "object", "properties": { "name": { "type": "string" }, "operation": { "type": "string", "enum": [ "CREATED", "UPDATED", "ARCHIVED", "NO_CHANGE" ] }, "tag": { "type": "string" }, "type": { "type": "string" } } }, "GitOpsLogEntityResponse": { "required": [ "commit", "dateCreated", "fileName", "repository" ], "type": "object", "properties": { "commit": { "type": "string" }, "dateCreated": { "type": "string", "description": "Date when the GitOps log was created", "format": "date-time" }, "fileName": { "type": "string", "description": "Relative path of the cortex.yaml file", "example": ".cortex/catalog/brain-backend.yaml" }, "repository": { "$ref": "#/components/schemas/GitOpsLogRepositoryResponse" } } }, "GitOpsLogFileErrorResponse": { "required": [ "errorType", "message" ], "type": "object", "properties": { "errorType": { "type": "string" }, "message": { "type": "string" } } }, "GitOpsLogFileResponse": { "required": [ "fileName", "isPackageFile" ], "type": "object", "properties": { "entity": { "$ref": "#/components/schemas/GitOpsLogEntityChange" }, "error": { "$ref": "#/components/schemas/GitOpsLogFileErrorResponse" }, "fileName": { "type": "string" }, "isPackageFile": { "type": "boolean" }, "scorecard": { "$ref": "#/components/schemas/GitOpsLogScorecardChange" }, "workflow": { "$ref": "#/components/schemas/GitOpsLogWorkflowChange" } } }, "GitOpsLogPaginatedResponse": { "required": [ "logs", "page", "total", "totalPages" ], "type": "object", "properties": { "logs": { "type": "array", "items": { "$ref": "#/components/schemas/GitOpsLogResponse" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "GitOpsLogRepositoryResponse": { "required": [ "provider", "repositoryName" ], "type": "object", "properties": { "provider": { "type": "string", "enum": [ "AZURE_DEVOPS", "BITBUCKET", "GITHUB", "GITLAB" ] }, "repositoryName": { "type": "string", "description": "Repository name as defined in your Git provider", "example": "cortexapps/catalog" } } }, "GitOpsLogResponse": { "required": [ "commit", "dateCreated", "files", "repository" ], "type": "object", "properties": { "commit": { "type": "string" }, "dateCreated": { "type": "string", "format": "date-time" }, "files": { "type": "array", "items": { "$ref": "#/components/schemas/GitOpsLogFileResponse" } }, "repository": { "$ref": "#/components/schemas/GitOpsLogRepositoryResponse" } } }, "GitOpsLogScorecardChange": { "required": [ "name", "operation", "tag" ], "type": "object", "properties": { "name": { "type": "string" }, "operation": { "type": "string", "enum": [ "CREATED", "UPDATED", "ARCHIVED", "NO_CHANGE" ] }, "tag": { "type": "string" } } }, "GitOpsLogWorkflowChange": { "required": [ "name", "operation", "tag" ], "type": "object", "properties": { "name": { "type": "string" }, "operation": { "type": "string", "enum": [ "CREATED", "UPDATED", "ARCHIVED", "NO_CHANGE" ] }, "tag": { "type": "string" } } }, "GithubAppRequest": { "required": [ "alias", "appUrl", "applicationId", "clientId", "clientSecret", "isDefault", "privateKey" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiHost": { "type": "string" }, "appUrl": { "type": "string" }, "applicationId": { "type": "string" }, "clientId": { "type": "string" }, "clientSecret": { "type": "string" }, "isDefault": { "type": "boolean" }, "privateKey": { "type": "string" } } }, "GithubAuthor": { "required": [ "email", "name" ], "type": "object", "properties": { "email": { "type": "string" }, "name": { "type": "string" } }, "description": "The details of the original author of the changes being committed (optional)" }, "GithubCommitter": { "required": [ "email", "name" ], "type": "object", "properties": { "email": { "type": "string" }, "name": { "type": "string" } }, "description": "The details of the person or system making the commit, such as name and email (optional)" }, "GithubConfigurationResponse": { "required": [ "alias", "isDefault", "type" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "type": { "type": "string" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/GithubConfigurationResponse.APP" }, { "$ref": "#/components/schemas/GithubConfigurationResponse.PERSONAL_ACCESS_TOKEN" } ] }, "GithubConfigurationResponse.APP": { "title": "APP", "required": [ "alias", "isDefault", "type" ], "type": "object", "properties": { "alias": { "type": "string" }, "appUrl": { "type": "string" }, "host": { "type": "string" }, "installation": { "$ref": "#/components/schemas/Installation" }, "isDefault": { "type": "boolean" }, "type": { "type": "string" } } }, "GithubConfigurationResponse.PERSONAL_ACCESS_TOKEN": { "title": "PERSONAL_ACCESS_TOKEN", "required": [ "alias", "isDefault", "type" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "type": { "type": "string" } } }, "GitlabConfiguration": { "required": [ "alias", "groupNames", "hidePersonalProjects", "isDefault", "lastFour" ], "type": "object", "properties": { "alias": { "type": "string" }, "groupNames": { "type": "array", "items": { "type": "string" } }, "hidePersonalProjects": { "type": "boolean" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "GitlabConfigurationRequest": { "required": [ "alias", "groupNames", "hidePersonalProjects", "isDefault", "personalAccessToken" ], "type": "object", "properties": { "alias": { "type": "string" }, "groupNames": { "type": "array", "items": { "type": "string" } }, "hidePersonalProjects": { "type": "boolean" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "personalAccessToken": { "type": "string" } } }, "GitlabUpdateConfigurationRequest": { "required": [ "alias", "groupNames", "hidePersonalProjects", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "groupNames": { "type": "array", "items": { "type": "string" } }, "hidePersonalProjects": { "type": "boolean" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "GroupByOption": { "required": [ "displayName", "key" ], "type": "object", "properties": { "displayName": { "type": "string", "description": "Human-readable label for this grouping" }, "key": { "type": "string", "description": "Field key to use in GROUP BY clause" } }, "description": "Available grouping options for aggregating metrics" }, "GroupFilter": { "type": "object", "properties": { "exclude": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "include": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } }, "description": "Entity groups to include or exclude" }, "GroupMembership": { "required": [ "tag" ], "type": "object", "properties": { "tag": { "type": "string" } } }, "GroupMembershipsRequest": { "required": [ "groups" ], "type": "object", "properties": { "groups": { "type": "array", "items": { "$ref": "#/components/schemas/GroupMembership" } } } }, "GroupMembershipsResponse": { "required": [ "groups", "page", "total", "totalPages" ], "type": "object", "properties": { "groups": { "type": "array", "items": { "$ref": "#/components/schemas/GroupMembership" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "HierarchyChildNode": { "required": [ "children", "id", "name", "tag", "type" ], "type": "object", "properties": { "children": { "required": [ "id", "name", "tag", "type" ], "type": "object", "properties": { "definition": { "$ref": "#/components/schemas/JsonNode" }, "description": { "type": "string" }, "groups": { "type": "array", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups", "items": { "type": "string", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups" } }, "id": { "type": "string" }, "name": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } }, "description": "Child at the current depth, and its children." }, "definition": { "$ref": "#/components/schemas/JsonNode" }, "description": { "type": "string" }, "groups": { "type": "array", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups", "items": { "type": "string", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups" } }, "id": { "type": "string" }, "name": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } }, "description": "Child at the current depth, and its children." }, "HierarchyParentNode": { "required": [ "id", "name", "parents", "tag", "type" ], "type": "object", "properties": { "definition": { "$ref": "#/components/schemas/JsonNode" }, "description": { "type": "string" }, "groups": { "type": "array", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups", "items": { "type": "string", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups" } }, "id": { "type": "string" }, "name": { "type": "string" }, "parents": { "required": [ "id", "name", "tag", "type" ], "type": "object", "properties": { "definition": { "$ref": "#/components/schemas/JsonNode" }, "description": { "type": "string" }, "groups": { "type": "array", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups", "items": { "type": "string", "description": "List of groups for this node. Only included if includeHierarchyFields contains groups" } }, "id": { "type": "string" }, "name": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } }, "description": "Parent at the current depth, and its parents." }, "tag": { "type": "string" }, "type": { "type": "string" } }, "description": "Parent at the current depth, and its parents." }, "HttpMethod": { "type": "object" }, "INSTANA": { "required": [ "label" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "label": { "type": "string" } } } ] }, "Identifier": { "type": "object" }, "IdpGroupDetailsRequest": { "required": [ "group", "provider" ], "type": "object", "properties": { "group": { "type": "string" }, "provider": { "type": "string", "enum": [ "ACTIVE_DIRECTORY", "AZURE_DEVOPS", "BAMBOOHR", "GIT", "GITLAB", "GOOGLE", "OKTA", "OPSGENIE", "SERVICE_NOW", "SLACK", "WORKDAY" ] } } }, "IdpGroupDetailsResponse": { "required": [ "group", "members", "provider" ], "type": "object", "properties": { "group": { "type": "string" }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/Member" } }, "provider": { "type": "string", "enum": [ "ACTIVE_DIRECTORY", "AZURE_DEVOPS", "BAMBOOHR", "GIT", "GITLAB", "GOOGLE", "OKTA", "OPSGENIE", "SERVICE_NOW", "SLACK", "WORKDAY" ] } } }, "IncidentIoConfiguration": { "required": [ "alias", "isDefault", "lastFour" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "IncidentIoConfigurationRequest": { "required": [ "alias", "apiKey", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiKey": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "IncidentIoUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "IndividualOwnerDetails": { "required": [ "email" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the email owner", "example": "Product manager" }, "email": { "type": "string" } } }, "IndividualServiceOwner": { "required": [ "email" ], "type": "object", "properties": { "description": { "type": "string" }, "email": { "type": "string" } } }, "Initiative": { "required": [ "emphasizedLevels", "emphasizedRules", "isDraft", "name", "scorecardName", "scorecardTag", "targetDate" ], "type": "object", "properties": { "cid": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the Initiative.", "example": "in2da8159dbeefb974" }, "description": { "type": "string", "description": "Optional description of the Initiative" }, "emphasizedLevels": { "uniqueItems": true, "type": "array", "description": "Emphasized levels for the Initiative", "items": { "$ref": "#/components/schemas/EmphasizedLevel" } }, "emphasizedRules": { "uniqueItems": true, "type": "array", "description": "Emphasized rules for the Initiative", "items": { "$ref": "#/components/schemas/EmphasizedRule" } }, "filter": { "$ref": "#/components/schemas/Filter" }, "isDraft": { "type": "boolean", "description": "Whether or not the Initiative is a draft" }, "name": { "type": "string", "description": "Name of the Initiative" }, "notificationSchedule": { "$ref": "#/components/schemas/NotificationSchedule" }, "scorecardName": { "type": "string", "description": "Name of the scorecard associated with the Initiative" }, "scorecardTag": { "type": "string", "description": "Tag of the scorecard associated with the Initiative" }, "targetDate": { "type": "string", "description": "Target date for the Initiative to be completed", "format": "date" } } }, "InitiativeListResponse": { "required": [ "initiatives", "page", "total", "totalPages" ], "type": "object", "properties": { "initiatives": { "type": "array", "items": { "$ref": "#/components/schemas/Initiative" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "InitiativeRequest": { "required": [ "emphasizedLevels", "emphasizedRules", "isDraft", "name", "scorecardTag", "targetDate" ], "type": "object", "properties": { "description": { "type": "string", "description": "Optional description of the Initiative" }, "emphasizedLevels": { "type": "array", "description": "Emphasized levels for the Initiative. Either emphasized levels or rules must be provided", "items": { "$ref": "#/components/schemas/EmphasizedLadderLevelRequest" } }, "emphasizedRules": { "type": "array", "description": "Emphasized rules for the Initiative. Either emphasized levels or rules must be provided", "items": { "$ref": "#/components/schemas/EmphasizedRuleRequest" } }, "filter": { "$ref": "#/components/schemas/Filter" }, "isDraft": { "type": "boolean", "description": "Whether or not the Initiative is a draft" }, "name": { "type": "string", "description": "Name of the Initiative" }, "notificationSchedule": { "$ref": "#/components/schemas/NotificationSchedule" }, "scorecardTag": { "type": "string", "description": "Tag of the scorecard associated with the Initiative" }, "targetDate": { "type": "string", "description": "Target date for the Initiative to be completed. Must be in the future", "format": "date" } } }, "InputOverride": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the input override", "enum": [ "OPTION", "VALUE" ] } }, "description": "The list of overrides for the action inputs", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/Option" }, { "$ref": "#/components/schemas/Value" } ] }, "Installation": { "required": [ "installationId" ], "type": "object", "properties": { "installationId": { "type": "integer", "format": "int64" } } }, "IntegrationConfigValidation": { "required": [ "isValid" ], "type": "object", "properties": { "alias": { "type": "string" }, "isValid": { "type": "boolean" }, "message": { "type": "string" } } }, "InvalidIpAllowlistEntry": { "required": [ "address", "message", "valid" ], "type": "object", "properties": { "address": { "type": "string", "description": "IP address or range", "example": "10.0.0.1" }, "description": { "type": "string", "description": "Description of an entry" }, "message": { "type": "string", "description": "Validation error message" }, "valid": { "type": "boolean" } } }, "IpAllowlistEntry": { "required": [ "address" ], "type": "object", "properties": { "address": { "type": "string", "description": "IP address or range", "example": "10.0.0.1" }, "description": { "type": "string", "description": "Description of an entry" } }, "description": "Allowlist entries" }, "IpAllowlistRequest": { "required": [ "entries" ], "type": "object", "properties": { "entries": { "type": "array", "description": "Allowlist entries", "items": { "$ref": "#/components/schemas/IpAllowlistEntry" } } } }, "IpAllowlistResponse": { "required": [ "entries", "page", "total", "totalPages" ], "type": "object", "properties": { "entries": { "type": "array", "description": "Allowlist entries", "items": { "$ref": "#/components/schemas/IpAllowlistEntry" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "JsonDescriptorsListResponse": { "required": [ "descriptors", "page", "total", "totalPages" ], "type": "object", "properties": { "descriptors": { "type": "array", "items": { "$ref": "#/components/schemas/JsonNode" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "JsonNode": { "type": "object" }, "K8S": { "required": [ "identifier", "k8sType" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "identifier": { "type": "string" }, "k8sType": { "type": "string", "enum": [ "DEPLOYMENT", "STATEFUL_SET", "ARGO_ROLLOUT", "CRON_JOB" ] } } } ] }, "LAMBDA": { "required": [ "arn" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "arn": { "type": "string" } } } ] }, "LIGHTSTEP": { "required": [ "name" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "name": { "type": "string" } } } ] }, "LadderLevel": { "type": "object", "properties": { "level": { "$ref": "#/components/schemas/CurrentLevel" } } }, "LaunchDarklyConfiguration": { "required": [ "alias", "environment", "isDefault", "lastFour" ], "type": "object", "properties": { "alias": { "type": "string" }, "environment": { "type": "string", "enum": [ "DEFAULT", "FEDERAL" ] }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "LaunchDarklyConfigurationRequest": { "required": [ "alias", "apiKey", "environment", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "apiKey": { "type": "string" }, "environment": { "type": "string", "enum": [ "DEFAULT", "FEDERAL" ] }, "isDefault": { "type": "boolean" } } }, "LaunchDarklyUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "Link": { "required": [ "name", "type", "url" ], "type": "object", "properties": { "description": { "type": "string", "description": "An optional description of the link" }, "name": { "type": "string", "description": "Human-readable name for the link visible in the Catalog" }, "type": { "type": "string", "description": "Corresponds to the type field in a link definition provided in the Catalog Descriptor" }, "url": { "type": "string" } }, "description": "Relevant links for the entity. Corresponds to the x-cortex-links field in the entity descriptor" }, "ListApiKeyResponse": { "required": [ "apiKeys", "page", "total", "totalPages" ], "type": "object", "properties": { "apiKeys": { "type": "array", "description": "List of API keys", "items": { "$ref": "#/components/schemas/ApiKeyDefinition" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "ListCatalogEntities": { "required": [ "entities", "page", "total", "totalPages" ], "type": "object", "properties": { "entities": { "type": "array", "items": { "$ref": "#/components/schemas/EntityDetailsSummary" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } }, "description": "List of all catalog entities, including services, resources, and domains. Use the \\\"type\\\" field to determine what type each entity is." }, "ListRelationships": { "required": [ "page", "relationships", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "relationships": { "type": "array", "items": { "$ref": "#/components/schemas/EntityRelationshipDetails" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } }, "description": "List of related entities." }, "Member": { "required": [ "id", "roles" ], "type": "object", "properties": { "email": { "type": "string" }, "id": { "type": "string" }, "name": { "type": "string" }, "role": { "$ref": "#/components/schemas/Role" }, "roles": { "type": "array", "items": { "$ref": "#/components/schemas/Role" } } } }, "Metadata": { "required": [ "key", "value" ], "type": "object", "properties": { "key": { "type": "string", "description": "The custom data key, referred to in CQL as custom(\"key\")" }, "value": { "$ref": "#/components/schemas/JsonNode" } }, "description": "Custom data key/values associated with the entity." }, "MetricAggregation": { "required": [ "aggregation", "metric" ], "type": "object", "properties": { "aggregation": { "type": "string", "enum": [ "SUM", "AVG", "COUNT", "RATIO", "MIN", "MAX", "P50", "P95", "RANKING" ] }, "metric": { "type": "string" } }, "description": "Optional nested metrics for advanced queries" }, "MetricDefinition": { "required": [ "displayName", "key", "readiness" ], "type": "object", "properties": { "description": { "type": "string" }, "displayName": { "type": "string" }, "key": { "type": "string" }, "readiness": { "$ref": "#/components/schemas/Readiness" } } }, "MetricDefinitionsResponse": { "required": [ "metrics", "view" ], "type": "object", "properties": { "metrics": { "type": "array", "items": { "$ref": "#/components/schemas/MetricDefinition" } }, "view": { "type": "string" } }, "discriminator": { "propertyName": "view" } }, "ModifiedRuleExemptionsResponse": { "required": [ "exemptions" ], "type": "object", "properties": { "exemptions": { "type": "array", "items": { "$ref": "#/components/schemas/RuleExemptionDefinition" } } } }, "MultipleConfigurationsResponseAzureDevopsConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureDevopsConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseAzureResourcesConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/AzureResourcesConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseCircleCiConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CircleCiConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseCoralogixConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/CoralogixConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseDatadogConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/DatadogConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseGitlabConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/GitlabConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseIncidentIoConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/IncidentIoConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseLaunchDarklyConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/LaunchDarklyConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseNewrelicConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/NewrelicConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponsePrometheusConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/PrometheusConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleConfigurationsResponseSonarqubeConfiguration": { "required": [ "configurations", "skippedConfigurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/SonarqubeConfiguration" } }, "skippedConfigurations": { "type": "object", "additionalProperties": { "type": "string" } } } }, "MultipleIntegrationConfigValidation": { "required": [ "configurations" ], "type": "object", "properties": { "configurations": { "type": "array", "items": { "$ref": "#/components/schemas/IntegrationConfigValidation" } } } }, "NEWRELIC": { "required": [ "id" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "id": { "type": "string" } } } ] }, "NewrelicConfiguration": { "required": [ "alias", "isDefault", "lastFour", "region" ], "type": "object", "properties": { "accountId": { "type": "integer", "format": "int32" }, "alias": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" }, "region": { "type": "string", "enum": [ "US", "EU" ] } } }, "NewrelicConfigurationRequest": { "required": [ "accountId", "alias", "isDefault", "personalKey", "region" ], "type": "object", "properties": { "accountId": { "type": "integer", "format": "int32" }, "alias": { "type": "string" }, "isDefault": { "type": "boolean" }, "personalKey": { "type": "string" }, "region": { "type": "string", "enum": [ "US", "EU" ] } } }, "NewrelicUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "NextSteps": { "required": [ "rulesToComplete" ], "type": "object", "properties": { "currentLevel": { "$ref": "#/components/schemas/LadderLevel" }, "nextLevel": { "$ref": "#/components/schemas/LadderLevel" }, "rulesToComplete": { "type": "array", "items": { "$ref": "#/components/schemas/Rule" } } } }, "NextSteps1": { "required": [ "nextSteps" ], "type": "object", "properties": { "nextSteps": { "type": "array", "items": { "$ref": "#/components/schemas/NextSteps" } } } }, "NotificationLog": { "required": [ "id", "medium", "recipientType", "runId", "status", "type" ], "type": "object", "properties": { "dateCreated": { "type": "string", "description": "The date and time that this notification was created.", "format": "date-time" }, "dateDelivered": { "type": "string", "description": "The date and time that this notification was delivered.", "format": "date-time" }, "dateUpdated": { "type": "string", "description": "The date and time that this notification was updated.", "format": "date-time" }, "errorMessage": { "type": "string", "description": "An additional error message." }, "failedReason": { "type": "string", "enum": [ "CHANNEL_NOT_FOUND", "MEMBER_EMAILS_NOT_FOUND", "MISSING_CONTENT", "CLIENT_ERROR", "UNEXPECTED_ERROR", "BACKSTAGE_BASE_URL_MISSING", "NO_SEATS_LEFT" ] }, "id": { "type": "integer", "description": "The unique identifier of the notification log.", "format": "int64" }, "ignoredReason": { "type": "string", "enum": [ "USER_UNSUBSCRIBED", "WORKSPACE_DISABLED", "TEAM_MEMBER_DISABLED", "CHANNEL_DISABLED", "SCORECARD_DISABLED", "DUPLICATE", "CORTEX_EMPLOYEE", "NON_CORTEX_USERS_DISABLED", "UNSUPPORTED" ] }, "medium": { "type": "string", "enum": [ "SLACK", "MICROSOFT_TEAMS", "EMAIL", "WEBHOOK" ] }, "recipientChannel": { "type": "string", "description": "The channel in Slack or MS Teams that this notification was sent to.", "example": "#general" }, "recipientEmail": { "type": "string", "description": "The email address that this notification was sent to." }, "recipientEntityId": { "type": "integer", "description": "The unique identifier of the entity that this notification was sent to.", "format": "int64" }, "recipientType": { "type": "string", "enum": [ "USER", "TEAM", "ENTITY" ] }, "recipientUserId": { "type": "integer", "description": "The unique identifier of the Cortex user that this notification was sent to.", "format": "int64" }, "runId": { "type": "integer", "description": "The unique identifier of the notification run that this log is associated with.", "format": "int64" }, "status": { "type": "string", "enum": [ "READY", "IGNORED", "FAILED", "DELIVERED" ] }, "type": { "type": "string", "enum": [ "INITIATIVE_CREATION", "INITIATIVE_CUSTOM_SCHEDULE", "INITIATIVE_N_DAYS_LEFT", "SERVICE_REEVALUATED", "WEEKLY_REPORT", "BROKEN_OPEN_API_SPEC", "ENTITLEMENT_EXPIRATION", "ONCALL_ASSISTANT", "ONBOARDING_MESSAGE", "NOTIFY_INVALID_INTEGRATION", "ONCALL_PERSON_CHANGED", "ONCALL_STARTS_IN_N_DAYS", "TEAM_MEMBER_INVITATION", "PENDING_RULE_EXEMPTION", "TOKEN_EXPIRES_IN_N_DAYS", "SCHEDULED_SCORECARD_RULE_CREATION", "SCORECARD_RULE_ACTIVATES_IN_N_DAYS", "WORKFLOW_STATUS_UPDATE", "WORKFLOW_APPROVAL_PENDING", "VERIFICATION_PERIOD_STARTED", "VERIFICATION_PERIOD_REMINDER", "AI_ASSISTANT_WELCOME_MESSAGE", "ENTITY_SCORE_DROPPED" ] } } }, "NotificationLogResponse": { "required": [ "logs", "page", "total", "totalPages" ], "type": "object", "properties": { "logs": { "type": "array", "items": { "$ref": "#/components/schemas/NotificationLog" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "NotificationObject": { "required": [ "id", "name", "type" ], "type": "object", "properties": { "cid": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier. Applicable only for entities.", "example": "en2da8159dbeefb974" }, "id": { "type": "integer", "description": "The unique internal identifier of the notification object.", "format": "int64" }, "name": { "type": "string", "description": "The name of the notification object." }, "tag": { "type": "string", "description": "Unique identifier, found in the UI. Applicable for entities and scorecards.", "example": "production-readiness-scorecard" }, "type": { "type": "string", "enum": [ "ENTITY", "SCORECARD", "INITIATIVE" ] }, "url": { "type": "string", "description": "The URL of the notification object\u0027s home page in Cortex." } }, "description": "The objects (Entities, Scorecards and Initiatives) associated with this run." }, "NotificationRun": { "required": [ "deliveredCount", "id", "medium", "notificationType", "seqNo", "status", "summary" ], "type": "object", "properties": { "dateCreated": { "type": "string", "description": "The date and time that this notification run was created.", "format": "date-time" }, "dateUpdated": { "type": "string", "description": "The date and time that this notification run was updated.", "format": "date-time" }, "deliveredCount": { "type": "integer", "description": "The number of notifications that were delivered during this run.", "format": "int64" }, "errorMessage": { "type": "string", "description": "An additional error message." }, "failedReason": { "type": "string", "enum": [ "PACKET_GENERATOR_ERROR", "CONTEXT_RESOLUTION_ERROR", "MISSING_RECIPIENTS", "INTERNAL_ERROR" ] }, "id": { "type": "integer", "description": "The unique identifier of the notification run.", "format": "int64", "example": 1 }, "ignoredReason": { "type": "string", "enum": [ "SCORECARD_DISABLED", "WORKSPACE_DISABLED", "NO_RECIPIENTS" ] }, "medium": { "type": "string", "enum": [ "SLACK", "MICROSOFT_TEAMS", "EMAIL", "WEBHOOK" ] }, "notificationObjects": { "type": "array", "description": "The objects (Entities, Scorecards and Initiatives) associated with this run.", "items": { "$ref": "#/components/schemas/NotificationObject" } }, "notificationType": { "type": "string", "enum": [ "INITIATIVE_CREATION", "INITIATIVE_CUSTOM_SCHEDULE", "INITIATIVE_N_DAYS_LEFT", "SERVICE_REEVALUATED", "WEEKLY_REPORT", "BROKEN_OPEN_API_SPEC", "ENTITLEMENT_EXPIRATION", "ONCALL_ASSISTANT", "ONBOARDING_MESSAGE", "NOTIFY_INVALID_INTEGRATION", "ONCALL_PERSON_CHANGED", "ONCALL_STARTS_IN_N_DAYS", "TEAM_MEMBER_INVITATION", "PENDING_RULE_EXEMPTION", "TOKEN_EXPIRES_IN_N_DAYS", "SCHEDULED_SCORECARD_RULE_CREATION", "SCORECARD_RULE_ACTIVATES_IN_N_DAYS", "WORKFLOW_STATUS_UPDATE", "WORKFLOW_APPROVAL_PENDING", "VERIFICATION_PERIOD_STARTED", "VERIFICATION_PERIOD_REMINDER", "AI_ASSISTANT_WELCOME_MESSAGE", "ENTITY_SCORE_DROPPED" ] }, "originalRunId": { "type": "integer", "description": "The unique identifier of the original run that this run was re-run from.", "format": "int64" }, "seqNo": { "type": "integer", "description": "The order of the run in the sequence of re-runs. 0 if it\u0027s the original run.", "format": "int32" }, "status": { "type": "string", "enum": [ "CREATED", "FAILED", "IGNORED", "COMPLETED", "COMPLETED_WITH_ERRORS" ] }, "summary": { "type": "string", "description": "The summary of the notification run." } } }, "NotificationRunResponse": { "required": [ "page", "runs", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "runs": { "type": "array", "items": { "$ref": "#/components/schemas/NotificationRun" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "NotificationSchedule": { "required": [ "isDisabled", "timeInterval", "timeUnit" ], "type": "object", "properties": { "isDisabled": { "type": "boolean", "description": "Whether or not notifications are disabled for this Initiative" }, "replyToEmails": { "type": "array", "description": "Optional list of reply-to emails", "items": { "type": "string", "description": "Optional list of reply-to emails" } }, "timeInterval": { "type": "integer", "description": "Time interval for the notification schedule cadence", "format": "int32" }, "timeUnit": { "type": "string", "description": "Time unit for the notification schedule. Must be one of DAY, WEEK, MONTH" } }, "description": "Notification schedule for the Initiative" }, "Notifications": { "required": [ "enabled", "scoreDropNotificationsEnabled" ], "type": "object", "properties": { "enabled": { "type": "boolean", "description": "Whether this Scorecard should be included in notifications. If not set, it defaults to true for non-draft Scorecards and to false for draft Scorecards", "example": true }, "scoreDropNotificationsEnabled": { "type": "boolean", "description": "Whether to notify when an entities\u0027 score drops after a Scorecard evaluation. If not set, it defaults to false", "example": true } }, "description": "Notification settings for the Scorecard" }, "OncallDetails": { "required": [ "escalations", "provider" ], "type": "object", "properties": { "escalations": { "type": "array", "description": "List of escalations", "items": { "$ref": "#/components/schemas/Escalation" } }, "provider": { "type": "string", "description": "Integration", "example": "OPSGENIE, PAGERDUTY, VICTOROPS", "enum": [ "OPSGENIE", "PAGERDUTY", "VICTOROPS", "XMATTERS" ] } } }, "OncallRegistration": { "required": [ "id", "provider", "source", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "Registration ID", "example": "ASDF1234" }, "provider": { "type": "string", "description": "Integration", "example": "OPSGENIE, PAGERDUTY, VICTOROPS", "enum": [ "OPSGENIE", "PAGERDUTY", "VICTOROPS", "XMATTERS" ] }, "source": { "type": "string", "description": "Source", "example": "AUTO_MAPPED, DEFINED", "enum": [ "AUTO_MAPPED", "DEFINED" ] }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } } }, "OpenAPISpecification": { "required": [ "spec" ], "type": "object", "properties": { "spec": { "type": "string", "description": "Stringified JSON representation of the OpenAPI spec" } } }, "OpenApiResponse": { "required": [ "ok", "violations" ], "type": "object", "properties": { "ok": { "type": "boolean" }, "violations": { "type": "array", "items": { "$ref": "#/components/schemas/ViolationDTO" } } } }, "Option": { "required": [ "inputKey", "outputVariable", "type" ], "type": "object", "properties": { "inputKey": { "type": "string", "description": "The input key to override" }, "outputVariable": { "type": "string", "description": "The path to the override value in the workflow context" }, "type": { "type": "string" } } }, "OrderBy": { "required": [ "attribute", "direction" ], "type": "object", "properties": { "attribute": { "type": "string" }, "direction": { "type": "string", "enum": [ "ASC", "DESC" ] } }, "description": "Sort order for results" }, "OwnerGroup": { "required": [ "groupName" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of this owner defined in the Catalog Descriptor. Not to be confused with the description of the team in the Team pages." }, "groupName": { "type": "string", "description": "The slug for the group as defined in the ownership provider. For example, the org/team for GitHub teams or the team tag for Cortex Teams", "example": "cortexapps/engineering" }, "inheritance": { "type": "string", "description": "Inheritance type, only defined for domain entities", "enum": [ "APPEND", "FALLBACK", "NONE" ] }, "provider": { "type": "string", "description": "If defined, indicates the ownership provider the team slug references", "enum": [ "ACTIVE_DIRECTORY", "BAMBOO_HR", "CORTEX", "GITHUB", "GITLAB", "GOOGLE", "OKTA", "OPSGENIE", "WORKDAY", "SERVICE_NOW" ] } }, "description": "List of IdP or Cortex Teams (not to be confused with the x-cortex-groups)." }, "Owners": { "required": [ "emails", "groups", "slackChannels" ], "type": "object", "properties": { "emails": { "type": "array", "items": { "$ref": "#/components/schemas/Email" } }, "groups": { "type": "array", "description": "List of IdP or Cortex Teams (not to be confused with the x-cortex-groups).", "items": { "$ref": "#/components/schemas/OwnerGroup" } }, "slackChannels": { "type": "array", "description": "Use the top-level `slackChannels` field instead of the one nested inside `ownership`", "deprecated": true, "items": { "$ref": "#/components/schemas/SlackChannel" } } } }, "OwnersDetails": { "required": [ "individuals", "teams" ], "type": "object", "properties": { "individuals": { "type": "array", "items": { "$ref": "#/components/schemas/IndividualOwnerDetails" } }, "teams": { "type": "array", "items": { "$ref": "#/components/schemas/TeamDetails" } } }, "description": "Entity owners information" }, "Package": { "required": [ "dateCreated", "id", "name", "packageType", "version" ], "type": "object", "properties": { "dateCreated": { "type": "string", "format": "date-time" }, "id": { "type": "integer", "format": "int64" }, "name": { "type": "string" }, "packageType": { "type": "string", "enum": [ "NODE", "JAVA", "PYTHON", "GO", "NUGET" ] }, "version": { "type": "string" } } }, "PackageVersionRequest": { "required": [ "name", "version" ], "type": "object", "properties": { "name": { "type": "string", "description": "Package name, like io.cortex.scorecards", "example": "io.cortex.scorecards" }, "version": { "type": "string", "description": "Semver package version", "example": "1.2.3" } } }, "PagerdutyConfiguration": { "required": [ "isTokenReadonly", "lastFour" ], "type": "object", "properties": { "isTokenReadonly": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "PagerdutyConfigurationRequest": { "required": [ "isTokenReadonly", "token" ], "type": "object", "properties": { "isTokenReadonly": { "type": "boolean" }, "token": { "type": "string" } } }, "PaginatedEntityRelationshipTypeResponse": { "required": [ "page", "relationshipTypes", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "relationshipTypes": { "type": "array", "items": { "$ref": "#/components/schemas/EntityRelationshipTypeResponse" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "PaginatedScorecardsResponse": { "required": [ "page", "scorecards", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "scorecards": { "type": "array", "items": { "$ref": "#/components/schemas/ScorecardResponse" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "PatchPluginRequest": { "type": "object", "properties": { "blob": { "type": "string", "description": "The raw source code of the plugin. This should be an HTML file", "nullable": true }, "contexts": { "type": "array", "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "nullable": true, "items": { "$ref": "#/components/schemas/CortexPluginContext" } }, "description": { "type": "string", "description": "Description of the plugin", "nullable": true }, "iconTag": { "type": "string", "description": "Icon tag for the plugin", "nullable": true }, "isDraft": { "type": "boolean", "description": "Whether the plugin is generally available or not", "nullable": true }, "minimumRoleRequired": { "type": "string", "description": "The minimum role required to view the plugin, e.g. `VIEWER`, `USER`, `MANAGER`, `OWNER`, or custom role tags.", "nullable": true }, "name": { "type": "string", "description": "Display name of the plugin", "nullable": true }, "proxyTag": { "type": "string", "description": "The identifier of the proxy to use for requests from this plugin", "nullable": true }, "version": { "type": "string", "description": "The version of the plugin" } } }, "PluginMetadata": { "required": [ "contexts", "isDraft", "lastUpdated", "minimumRoleRequired", "name", "tag" ], "type": "object", "properties": { "contexts": { "type": "array", "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "items": { "$ref": "#/components/schemas/CortexPluginContext" } }, "createdBy": { "$ref": "#/components/schemas/CortexUserDefinition" }, "description": { "type": "string", "description": "Description of the plugin" }, "iconTag": { "type": "string", "description": "Icon tag for the plugin" }, "isDraft": { "type": "boolean", "description": "Whether the plugin is generally available or not" }, "lastUpdated": { "type": "string", "description": "When the plugin was last updated" }, "minimumRoleRequired": { "type": "string", "description": "The minimum role required to view the plugin, e.g. `VIEWER`, `USER`, `MANAGER`, `OWNER`, or the tag for a custom role. Learn more about each permission in our [docs](https://docs.cortex.io/docs/walkthroughs/workspace-settings/permissioning#roles-in-cortex)." }, "name": { "type": "string", "description": "Display name of the plugin" }, "proxyTag": { "type": "string", "description": "The identifier of the proxy to use for requests from this plugin" }, "tag": { "type": "string", "description": "Unique identifier for the plugin" }, "version": { "type": "string", "description": "The version of the plugin" } } }, "PluginMetadataWithBlob": { "required": [ "contexts", "isDraft", "lastUpdated", "minimumRoleRequired", "name", "tag" ], "type": "object", "properties": { "blob": { "type": "string", "description": "The raw source code of the plugin; only returned if the blob is updated as part of the request." }, "contexts": { "type": "array", "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "items": { "$ref": "#/components/schemas/CortexPluginContext" } }, "createdBy": { "$ref": "#/components/schemas/CortexUserDefinition" }, "description": { "type": "string", "description": "Description of the plugin" }, "iconTag": { "type": "string", "description": "Icon tag for the plugin" }, "isDraft": { "type": "boolean", "description": "Whether the plugin is generally available or not" }, "lastUpdated": { "type": "string", "description": "When the plugin was last updated" }, "minimumRoleRequired": { "type": "string", "description": "The minimum role required to view the plugin, e.g. `VIEWER`, `USER`, `MANAGER`, `OWNER`, or the tag for a custom role. Learn more about each permission in our [docs](https://docs.cortex.io/docs/walkthroughs/workspace-settings/permissioning#roles-in-cortex)." }, "name": { "type": "string", "description": "Display name of the plugin" }, "proxyTag": { "type": "string", "description": "The identifier of the proxy to use for requests from this plugin" }, "tag": { "type": "string", "description": "Unique identifier for the plugin" }, "version": { "type": "string", "description": "The version of the plugin" } } }, "PluginsMetadataResponse": { "required": [ "page", "plugins", "total", "totalPages" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "plugins": { "type": "array", "items": { "$ref": "#/components/schemas/PluginMetadata" } }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "PointInTimeResponse": { "required": [ "metadata", "rows" ], "type": "object", "properties": { "metadata": { "$ref": "#/components/schemas/QueryMetadata" }, "rows": { "type": "array", "description": "Result rows containing metric values and dimensions - each row corresponds to the columns in metadata", "items": { "type": "object", "description": "Result rows containing metric values and dimensions - each row corresponds to the columns in metadata" } } } }, "PrometheusConfiguration": { "required": [ "alias", "host", "isDefault", "lastFour", "username" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" }, "prometheusTenantId": { "type": "string" }, "username": { "type": "string" } } }, "PrometheusConfigurationRequest": { "required": [ "alias", "host", "isDefault", "password", "username" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "password": { "type": "string" }, "prometheusTenantId": { "type": "string" }, "username": { "type": "string" } } }, "PrometheusUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "QueryBuilderResult": { "required": [ "queryDetails", "status" ], "type": "object", "properties": { "progress": { "type": "number" }, "queryDetails": { "$ref": "#/components/schemas/QueryResponse" }, "result": { "type": "array", "items": { "$ref": "#/components/schemas/QueryResult" } }, "status": { "type": "string", "enum": [ "IN_PROGRESS", "DONE", "CANCELLED", "FAILURE", "TIMED_OUT" ] } } }, "QueryMetadata": { "required": [ "columns" ], "type": "object", "properties": { "columns": { "type": "array", "description": "List of column definitions describing each field in the result rows", "items": { "$ref": "#/components/schemas/Column" } } }, "description": "Query metadata describing the structure of returned columns" }, "QueryRequest": { "required": [ "query" ], "type": "object", "properties": { "query": { "type": "string" } } }, "QueryResponse": { "required": [ "initiatedAt", "jobId", "query" ], "type": "object", "properties": { "initiatedAt": { "type": "string", "format": "date-time" }, "jobId": { "type": "string", "description": "Id that can be used to request the status of the query. If you would like to re-run the query, you must re-run the query in the UI. See [retrieve query results](/docs/api/get-query-results)" }, "query": { "type": "string" } } }, "QueryResult": { "required": [ "name", "tag", "type" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "tag": { "type": "string" }, "type": { "type": "string" } } }, "RESOURCE_FILTER": { "required": [ "type" ], "type": "object", "properties": { "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] }, "typeFilter": { "$ref": "#/components/schemas/EntityTypeFilter" } } }, "Readiness": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "description": "Whether this metric is ready to use - includes hints if configuration is needed", "discriminator": { "propertyName": "type" } }, "RejectRuleExemptionRequest": { "required": [ "reason", "ruleIdentifier" ], "type": "object", "properties": { "reason": { "type": "string" }, "ruleIdentifier": { "type": "string", "description": "Identifier of the Scorecard rule" } } }, "RelatedEntityDetails": { "required": [ "id", "name", "tag", "type" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the entity visible in the Service, Resource, or Domain Catalog. This may contain markdown." }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974" }, "name": { "type": "string", "description": "Human-readable name for the entity", "example": "My Favorite Entity" }, "tag": { "type": "string", "description": "Unique identifier for the entity. Corresponds to the x-cortex-tag field in the entity descriptor.", "example": "my-favorite-entity" }, "type": { "type": "string", "description": "Type of the entity. Corresponds to the x-cortex-type field in the entity descriptor or \u0027service\u0027 for services.", "example": "service" } } }, "RestrictionPolicyRelationship": { "required": [ "id", "type" ], "type": "object", "properties": { "id": { "type": "string", "description": "ID of the principal allowed to run the workflow" }, "type": { "type": "string", "description": "Type of the principal allowed to run the workflow", "enum": [ "USER", "TEAM", "CUSTOM_ROLE" ] } }, "description": "List of restriction policies for the workflow" }, "Role": { "required": [ "name" ], "type": "object", "properties": { "name": { "type": "string", "description": "Name of the role", "example": "Team Leader" }, "source": { "type": "string", "description": "Source of the role if pulled in through integration. This will be blank if manually defined in Cortex.", "example": "WORKDAY" } } }, "Rule": { "required": [ "expression" ], "type": "object", "properties": { "description": { "type": "string" }, "expression": { "type": "string" }, "identifier": { "type": "string" }, "title": { "type": "string" } } }, "RuleExemptionApiActor": { "required": [ "apiKeyLast4", "type" ], "type": "object", "description": "Api key used to request, approve or reject the exemption", "allOf": [ { "$ref": "#/components/schemas/ExemptionActor" }, { "type": "object", "properties": { "apiKeyLast4": { "type": "string", "description": "Last 4 digits of the API key used to approve or reject the exemption" } } } ] }, "RuleExemptionDefinition": { "required": [ "exemptionStatus", "requestedBy", "requestedDate", "requestingReason" ], "type": "object", "properties": { "endDate": { "type": "string", "format": "date-time" }, "exemptionStatus": { "$ref": "#/components/schemas/ExemptionStatus" }, "requestedBy": { "$ref": "#/components/schemas/ExemptionActor" }, "requestedDate": { "type": "string", "format": "date-time" }, "requestingReason": { "type": "string" } } }, "RuleExemptionDefinitionWithRule": { "required": [ "exemptionStatus", "requestedBy", "requestedDate", "requestingReason", "ruleExpression", "ruleIdentifier" ], "type": "object", "properties": { "endDate": { "type": "string", "format": "date-time" }, "exemptionStatus": { "$ref": "#/components/schemas/ExemptionStatus" }, "requestedBy": { "$ref": "#/components/schemas/ExemptionActor" }, "requestedDate": { "type": "string", "format": "date-time" }, "requestingReason": { "type": "string" }, "ruleExpression": { "type": "string", "description": "CQL representation of the rule" }, "ruleIdentifier": { "type": "string", "description": "Identifier of the rule" } } }, "RuleExemptionRequest": { "required": [ "reason", "ruleIdentifier" ], "type": "object", "properties": { "days": { "type": "integer", "description": "Number of days how long rule should be exempt. If not set, rule will be exempt until exempt until revoked.", "format": "int64", "nullable": true }, "reason": { "type": "string", "description": "Reason for creating exemption" }, "ruleIdentifier": { "type": "string", "description": "Identifier of the Scorecard rule to request exemption for" } } }, "RuleExemptionUserActor": { "required": [ "email", "name", "type" ], "type": "object", "description": "Person who requested, approved or rejected the exemption", "allOf": [ { "$ref": "#/components/schemas/ExemptionActor" }, { "type": "object", "properties": { "email": { "type": "string", "description": "Email of the person who requested, approved or rejected the exemption" }, "name": { "type": "string", "description": "Name of the person who requested, approved or rejected the exemption" } } } ] }, "RuleOutcome": { "required": [ "expression", "score" ], "type": "object", "properties": { "error": { "type": "string" }, "expression": { "type": "string" }, "identifier": { "type": "string" }, "score": { "type": "number" } } }, "SERVICENOW": { "required": [ "id", "tableName" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/EntityDiscoveryKey" }, { "type": "object", "properties": { "id": { "type": "string" }, "tableName": { "type": "string" } } } ] }, "SERVICE_FILTER": { "required": [ "type" ], "type": "object", "properties": { "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } } }, "SaveCustomEventRequest": { "required": [ "timestamp", "title", "type" ], "type": "object", "properties": { "customData": { "type": "object", "additionalProperties": { "type": "object", "description": "Optional property to store additional data" }, "description": "Optional property to store additional data" }, "description": { "type": "string", "description": "Optional description of custom event" }, "timestamp": { "type": "string", "description": "Time when event occurred", "format": "date-time" }, "title": { "type": "string", "description": "Name for custom event", "example": "Created K8s pod" }, "type": { "type": "string", "description": "Type of custom event", "example": "POD_CREATION" }, "url": { "type": "string", "description": "Optional URL associated with custom event", "example": "https://cortex.io" } } }, "SaveDeployRequest": { "required": [ "timestamp", "title", "type" ], "type": "object", "properties": { "customData": { "type": "object", "additionalProperties": { "type": "object" } }, "deployer": { "$ref": "#/components/schemas/Deployer" }, "environment": { "type": "string" }, "sha": { "type": "string" }, "timestamp": { "type": "string", "format": "date-time" }, "title": { "type": "string" }, "type": { "type": "string", "enum": [ "DEPLOY", "SCALE", "ROLLBACK", "RESTART" ] }, "url": { "type": "string" } } }, "ScoreDetails": { "required": [ "ladderLevels", "rules", "summary" ], "type": "object", "properties": { "ladderLevels": { "type": "array", "items": { "$ref": "#/components/schemas/LadderLevel" } }, "rules": { "type": "array", "items": { "$ref": "#/components/schemas/RuleOutcome" } }, "summary": { "$ref": "#/components/schemas/ScoreSummary" } } }, "ScoreSummary": { "required": [ "percentage", "score", "totalPossibleScore" ], "type": "object", "properties": { "percentage": { "type": "number" }, "score": { "type": "number" }, "totalPossibleScore": { "type": "number" } } }, "ScorecardDescriptorResponse": { "required": [ "scorecard" ], "type": "object", "properties": { "scorecard": { "$ref": "#/components/schemas/ScorecardResponse" } } }, "ScorecardResponse": { "required": [ "exemptions", "isDraft", "lastUpdated", "name", "notifications", "rules", "tag" ], "type": "object", "properties": { "description": { "type": "string", "description": "Human-readable description of the Scorecard" }, "evaluation": { "$ref": "#/components/schemas/EvaluationDetails" }, "exemptions": { "$ref": "#/components/schemas/ExemptionsSettings" }, "filter": { "$ref": "#/components/schemas/Filter" }, "isDraft": { "type": "boolean", "description": "Whether or not the Scorecard is in draft" }, "lastUpdated": { "type": "string", "description": "Time the Scorecard was last updated, which includes setting the next evaluation time", "format": "date-time" }, "levels": { "type": "array", "description": "List of levels associated with the Scorecard", "items": { "$ref": "#/components/schemas/LadderLevel" } }, "name": { "type": "string", "description": "Human-readable name", "example": "Production Readiness Scorecard" }, "notifications": { "$ref": "#/components/schemas/Notifications" }, "rules": { "type": "array", "description": "List of rules that are evaluated each time the Scorecard is evaluated", "items": { "$ref": "#/components/schemas/ScorecardRule" } }, "tag": { "type": "string", "description": "Unique identifier, found in the UI", "example": "production-readiness-scorecard" } } }, "ScorecardRule": { "required": [ "expression" ], "type": "object", "properties": { "description": { "type": "string", "example": "This rule is very important because you must pass it" }, "effectiveFrom": { "type": "string", "description": "Date when the rule starts being evaluated", "format": "date-time", "example": "2024-01-01T00:00:00Z" }, "expression": { "type": "string", "description": "CQL representation of the rule", "example": "custom(\"key\") \u003d \"value\"" }, "failureMessage": { "type": "string", "example": "To fix this rule, visit [our internal doc][docs.cortex.io]" }, "filter": { "$ref": "#/components/schemas/Filter" }, "identifier": { "type": "string", "description": "Unique identifier of the rule", "example": "96db03f1-2529-3fc3-9f13-7fb4dd28f427" }, "levelName": { "type": "string", "description": "Name of the level this rule is associated with, if applicable" }, "title": { "type": "string", "example": "Key value must be correct" }, "weight": { "type": "number", "description": "Numerical weight of the rule. When using levels, this defaults to 1" } }, "description": "List of rules that are evaluated each time the Scorecard is evaluated" }, "ScorecardScore": { "required": [ "ladderLevels", "score", "scorePercentage", "scorecardName", "totalPossibleScore" ], "type": "object", "properties": { "ladderLevels": { "type": "array", "items": { "$ref": "#/components/schemas/LadderLevel" } }, "score": { "type": "number" }, "scorePercentage": { "type": "number" }, "scorecardName": { "type": "string" }, "totalPossibleScore": { "type": "number" } } }, "ScorecardServiceScore": { "required": [ "scorecardName", "scorecardTag", "serviceScores" ], "type": "object", "properties": { "scorecardFilter": { "$ref": "#/components/schemas/Filter" }, "scorecardName": { "type": "string" }, "scorecardTag": { "type": "string" }, "serviceScores": { "type": "array", "items": { "$ref": "#/components/schemas/ServiceScore" } } } }, "ScorecardShieldsBadgeMarkdown": { "required": [ "value" ], "type": "object", "properties": { "value": { "type": "string" } } }, "SecretResponse": { "required": [ "id", "tag" ], "type": "object", "properties": { "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the secret", "example": "se2da8159dbeefb974" }, "name": { "type": "string", "description": "Human-readable name for the secret", "example": "My Secret" }, "tag": { "type": "string", "description": "Unique identifier for the secret", "example": "my-secret" } } }, "ServiceDetails": { "required": [ "groups", "id", "name", "owners", "tag" ], "type": "object", "properties": { "groups": { "type": "array", "description": "Not to be confused with owners. This refers to the x-cortex-groups field of the entity.", "items": { "type": "string", "description": "Not to be confused with owners. This refers to the x-cortex-groups field of the entity." } }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the entity.", "example": "en2da8159dbeefb974" }, "name": { "type": "string", "description": "Human-readable name for the entity.", "example": "My Favorite Entity" }, "owners": { "$ref": "#/components/schemas/ServiceOwners" }, "tag": { "type": "string", "description": "Unique identifier for the entity. Corresponds to the x-cortex-tag field in the entity descriptor.", "example": "my-favorite-entity" } } }, "ServiceOwners": { "required": [ "groups", "individuals" ], "type": "object", "properties": { "groups": { "type": "array", "description": "Not to be confused with x-cortex-groups. These are the slugs of IdP or Cortex Managed Teams", "items": { "type": "string", "description": "Not to be confused with x-cortex-groups. These are the slugs of IdP or Cortex Managed Teams" } }, "individuals": { "type": "array", "items": { "$ref": "#/components/schemas/IndividualServiceOwner" } } } }, "ServiceScore": { "required": [ "lastEvaluated", "ruleExemptions", "score", "service" ], "type": "object", "properties": { "lastEvaluated": { "type": "string", "format": "date-time" }, "ruleExemptions": { "type": "array", "items": { "$ref": "#/components/schemas/RuleExemptionDefinitionWithRule" } }, "score": { "$ref": "#/components/schemas/ScoreDetails" }, "service": { "$ref": "#/components/schemas/ServiceDetails" } } }, "SingleAwsConfigurationRequest": { "required": [ "accountId", "role" ], "type": "object", "properties": { "accountId": { "type": "string", "description": "The account ID for the AWS account" }, "role": { "type": "string", "description": "The IAM role Cortex would be assuming" } } }, "SingleAwsConfigurationResponse": { "required": [ "accountId", "role" ], "type": "object", "properties": { "accountId": { "type": "string", "description": "The account ID for the AWS account" }, "accountName": { "type": "string", "description": "The account alias for the AWS account" }, "role": { "type": "string", "description": "The IAM role Cortex would be assuming" } } }, "SlackChannel": { "required": [ "channel" ], "type": "object", "properties": { "channel": { "type": "string", "description": "The Slack channel identifier without the preceding #" }, "description": { "type": "string", "description": "Description of this owner defined in the Catalog Descriptor. Not to be confused with the description of the team in the Team pages." }, "inheritance": { "type": "string", "description": "Inheritance type, only defined for domain entities", "enum": [ "APPEND", "FALLBACK", "NONE" ] }, "notificationsEnabled": { "type": "boolean", "description": "Refers to the corresponding field in the Catalog Descriptor. This is meant to be used for your automation purposes and does not actually impact the notification behavior in Cortex." } }, "description": "Use the top-level `slackChannels` field instead of the one nested inside `ownership`", "deprecated": true }, "SlackChannel1": { "required": [ "name", "notificationsEnabled" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "notificationsEnabled": { "type": "boolean" } } }, "SlackChannelDetails": { "required": [ "name", "notificationsEnabled" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the Slack channel", "example": "This is the engineering channel" }, "name": { "type": "string", "description": "Name of the Slack channel", "example": "engineering" }, "notificationsEnabled": { "type": "boolean", "description": "Whether notifications are enabled for this channel" } }, "description": "Slack channel information" }, "SonarqubeConfiguration": { "required": [ "alias", "host", "isDefault", "lastFour" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "lastFour": { "type": "string" } } }, "SonarqubeConfigurationRequest": { "required": [ "alias", "host", "isDefault", "token" ], "type": "object", "properties": { "alias": { "type": "string" }, "host": { "type": "string" }, "isDefault": { "type": "boolean" }, "token": { "type": "string" } } }, "SonarqubeUpdateConfigurationRequest": { "required": [ "alias", "isDefault" ], "type": "object", "properties": { "alias": { "type": "string" }, "isDefault": { "type": "boolean" } } }, "Source": { "required": [ "attributes", "description", "dimensions", "filterOptions", "groupByOptions", "name" ], "type": "object", "properties": { "attributes": { "type": "array", "description": "Queryable fields available directly on this source", "items": { "$ref": "#/components/schemas/Attribute" } }, "description": { "type": "string", "description": "Human-readable description of what data this source provides" }, "dimensions": { "type": "array", "description": "Related entities that can be joined for additional context", "items": { "$ref": "#/components/schemas/Dimension" } }, "filterOptions": { "type": "array", "description": "Available filtering options for querying metrics", "items": { "$ref": "#/components/schemas/FilterOption" } }, "groupByOptions": { "type": "array", "description": "Available grouping options for aggregating metrics", "items": { "$ref": "#/components/schemas/GroupByOption" } }, "name": { "type": "string", "description": "Unique identifier for the source" } }, "description": "Map of source names to source metadata for query construction" }, "TEAM_FILTER": { "required": [ "type" ], "type": "object", "properties": { "entityGroupFilter": { "$ref": "#/components/schemas/EntityGroupFilterDTO" }, "type": { "type": "string", "enum": [ "CQL_FILTER", "SERVICE_FILTER", "RESOURCE_FILTER", "DOMAIN_FILTER", "TEAM_FILTER", "COMPOUND_FILTER" ] } } }, "TeamDetails": { "required": [ "id", "isArchived", "name", "tag" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the team entity", "example": "This is my team" }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the team entity", "example": "en2da8159dbeefb974" }, "inheritance": { "type": "string", "description": "Inheritance type, only defined for domain entities", "enum": [ "APPEND", "FALLBACK", "NONE" ] }, "isArchived": { "type": "boolean" }, "name": { "type": "string", "description": "Human-readable name for the team entity", "example": "My Favorite Team" }, "provider": { "type": "string", "description": "If defined, indicates the ownership provider the team slug references", "enum": [ "ACTIVE_DIRECTORY", "BAMBOO_HR", "CORTEX", "GITHUB", "GITLAB", "GOOGLE", "OKTA", "OPSGENIE", "WORKDAY", "SERVICE_NOW" ] }, "tag": { "type": "string", "description": "Unique identifier for the team entity. Corresponds to the x-cortex-tag field in the entity descriptor", "example": "my-favorite-team-entity" } } }, "TeamEdgeRequest": { "required": [ "childTeamTag", "parentTeamTag" ], "type": "object", "properties": { "childTeamTag": { "type": "string" }, "parentTeamTag": { "type": "string" } } }, "TeamEdgeResponse": { "required": [ "childTeamTag", "parentTeamTag" ], "type": "object", "properties": { "childTeamTag": { "type": "string" }, "parentTeamTag": { "type": "string" }, "provider": { "type": "string", "enum": [ "WORKDAY" ] } } }, "TeamMember": { "required": [ "roles", "sources" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the team member", "example": "Product manager" }, "email": { "type": "string", "description": "Email of the team member", "example": "aditya.bansal@cortex.io" }, "name": { "type": "string", "description": "Name of the team member", "example": "Aditya Bansal" }, "roles": { "type": "array", "items": { "$ref": "#/components/schemas/Role" } }, "sources": { "type": "array", "items": { "$ref": "#/components/schemas/TeamMemberSource" } } }, "description": "Team member information" }, "TeamMemberSource": { "required": [ "type" ], "type": "object", "properties": { "externalGroupId": { "type": "string" }, "externalId": { "type": "string" }, "provider": { "type": "string", "enum": [ "ACTIVE_DIRECTORY", "BAMBOO_HR", "GITHUB", "GITLAB", "GOOGLE", "OKTA", "OPSGENIE", "WORKDAY", "SERVICE_NOW" ] }, "type": { "type": "string", "enum": [ "ENTITY_DEFINED", "IDP_GROUP" ] } } }, "TeamMetadata": { "required": [ "name" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "summary": { "type": "string" } } }, "TeamResponse": { "required": [ "catalogEntityTag", "id", "isArchived", "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "catalogEntityTag": { "type": "string" }, "id": { "type": "string" }, "isArchived": { "type": "boolean" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string" }, "type": { "type": "string" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/TeamResponse.CORTEX" }, { "$ref": "#/components/schemas/TeamResponse.IDP" } ] }, "TeamResponse.CORTEX": { "title": "CORTEX", "required": [ "catalogEntityTag", "cortexTeam", "id", "isArchived", "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "catalogEntityTag": { "type": "string" }, "cortexTeam": { "$ref": "#/components/schemas/CortexTeamDetails" }, "id": { "type": "string" }, "isArchived": { "type": "boolean" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string" }, "type": { "type": "string" } } }, "TeamResponse.IDP": { "title": "IDP", "required": [ "catalogEntityTag", "id", "idpGroup", "isArchived", "links", "metadata", "slackChannels", "teamTag", "type" ], "type": "object", "properties": { "catalogEntityTag": { "type": "string" }, "id": { "type": "string" }, "idpGroup": { "$ref": "#/components/schemas/IdpGroupDetailsResponse" }, "isArchived": { "type": "boolean" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "teamTag": { "type": "string" }, "type": { "type": "string" } } }, "TeamsLink": { "required": [ "name", "type", "url" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "type": { "type": "string" }, "url": { "type": "string" } } }, "TeamsRelationshipsRequest": { "required": [ "edges" ], "type": "object", "properties": { "edges": { "type": "array", "items": { "$ref": "#/components/schemas/TeamEdgeRequest" } } } }, "TeamsRelationshipsResponse": { "required": [ "edges" ], "type": "object", "properties": { "edges": { "type": "array", "items": { "$ref": "#/components/schemas/TeamEdgeResponse" } } } }, "TimeWindow": { "required": [ "alias", "name", "ordinal", "windowSize" ], "type": "object", "allOf": [ { "$ref": "#/components/schemas/Column" }, { "type": "object", "properties": { "ordinal": { "type": "integer", "description": "Zero-based column position in the result data rows - use this to map column metadata to actual row data values", "format": "int32" }, "windowSize": { "type": "object", "properties": { "nano": { "type": "integer", "format": "int32" }, "negative": { "type": "boolean" }, "seconds": { "type": "integer", "format": "int64" }, "units": { "type": "array", "items": { "type": "object", "properties": { "dateBased": { "type": "boolean" }, "duration": { "type": "object", "properties": { "nano": { "type": "integer", "format": "int32" }, "negative": { "type": "boolean" }, "seconds": { "type": "integer", "format": "int64" }, "zero": { "type": "boolean" } } }, "durationEstimated": { "type": "boolean" }, "timeBased": { "type": "boolean" } } } }, "zero": { "type": "boolean" } }, "description": "Duration of the time window represented by this column" } } } ] }, "TooManyRequestsProblemDetail": { "required": [ "type", "title", "status" ], "type": "object", "properties": { "detail": { "type": "string" }, "instance": { "type": "string", "format": "uri-reference" }, "retryAfter": { "minimum": 0, "type": "integer", "description": "The number of seconds until the rate limiting resets.", "format": "int32" }, "status": { "maximum": 599, "minimum": 100, "type": "integer", "format": "int32", "enum": [ 429 ] }, "title": { "type": "string" }, "type": { "type": "string", "format": "uri-reference" } } }, "TypeFilter": { "type": "object", "properties": { "exclude": { "uniqueItems": true, "type": "array", "items": { "type": "string" } }, "include": { "uniqueItems": true, "type": "array", "items": { "type": "string" } } }, "description": "Entity types (e.g. service, domain, team) to include or exclude. Only one of `include` or `exclude` can be set" }, "Unit": { "type": "object" }, "UpdateApiRequest": { "required": [ "name" ], "type": "object", "properties": { "description": { "type": "string", "description": "Description of the API key", "example": "API Key used for entities scanner script" }, "name": { "type": "string", "description": "Name of the API key", "example": "Entities scanner" } } }, "UpdateCatalogDefinitionRequest": { "required": [ "schema" ], "type": "object", "properties": { "description": { "type": "string" }, "name": { "type": "string" }, "schema": { "$ref": "#/components/schemas/JsonNode" } } }, "UpdateConfiguredAzureResourcesTypesRequest": { "required": [ "types" ], "type": "object", "properties": { "types": { "type": "array", "description": "List of Azure Resources types and whether they\u0027re configured to be discovered and imported into the catalogs", "items": { "$ref": "#/components/schemas/AzureResourceType" } } } }, "UpdateDepartmentRequest": { "required": [ "members", "name" ], "type": "object", "properties": { "description": { "type": "string" }, "members": { "type": "array", "items": { "$ref": "#/components/schemas/DepartmentMemberRequest" } }, "name": { "type": "string" } } }, "UpdateEntityRelationshipDestinations": { "required": [ "destinations" ], "type": "object", "properties": { "destinations": { "type": "array", "description": "List of code tags for the entities to add as sources", "example": [ "entity-1", "entity-2" ], "items": { "type": "string", "description": "List of code tags for the entities to add as sources", "example": "[\"entity-1\",\"entity-2\"]" } } }, "description": "Updates to entity relationship destinations" }, "UpdateEntityRelationshipSources": { "required": [ "sources" ], "type": "object", "properties": { "sources": { "type": "array", "description": "List of code tags for the entities to add as sources", "example": [ "entity-1", "entity-2" ], "items": { "type": "string", "description": "List of code tags for the entities to add as sources", "example": "[\"entity-1\",\"entity-2\"]" } } }, "description": "Updates to entity relationship sources" }, "UpdateEntityRelationships": { "required": [ "relationships" ], "type": "object", "properties": { "relationships": { "type": "array", "description": "List of code tags for the entities to add as sources", "items": { "$ref": "#/components/schemas/EntityRelationshipRequest" } } }, "description": "Updates to entity relationships" }, "UpdatePluginRequest": { "required": [ "blob", "contexts", "isDraft", "minimumRoleRequired", "name" ], "type": "object", "properties": { "blob": { "type": "string", "description": "The raw source code of the plugin. This should be an HTML file" }, "contexts": { "type": "array", "description": "Which contexts the plugin should execute/show up in, e.g. `{ \"type\": \"GLOBAL\" }`", "items": { "$ref": "#/components/schemas/CortexPluginContext" } }, "description": { "type": "string", "description": "Description of the plugin" }, "iconTag": { "type": "string", "description": "Icon tag for the plugin" }, "isDraft": { "type": "boolean", "description": "Whether the plugin is generally available or not" }, "minimumRoleRequired": { "type": "string", "description": "The minimum role required to view the plugin, e.g. `VIEWER`, `USER`, `MANAGER`, `OWNER`, or the tag for a custom role. Learn more about each permission in our [docs](https://docs.cortex.io/docs/walkthroughs/workspace-settings/permissioning#roles-in-cortex)." }, "name": { "type": "string", "description": "Display name of the plugin" }, "proxyTag": { "type": "string", "description": "The identifier of the proxy to use for requests from this plugin" }, "version": { "type": "string", "description": "The version of the plugin" } } }, "UpdateSecretRequest": { "type": "object", "properties": { "name": { "type": "string", "description": "Human-readable name for the secret", "example": "My Secret" }, "secret": { "type": "string", "description": "Value of the secret", "example": "my-secret-password" } } }, "UpdateTeamRequest": { "required": [ "links", "metadata", "slackChannels", "type" ], "type": "object", "properties": { "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "type": { "type": "string", "description": "Use \"IDP\" for IdentityProviderBackedTeam and \"CORTEX\" for ManagedTeam" } }, "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/UpdateTeamRequest.CORTEX" }, { "$ref": "#/components/schemas/UpdateTeamRequest.IDP" } ] }, "UpdateTeamRequest.CORTEX": { "title": "CORTEX", "required": [ "cortexTeam", "links", "metadata", "slackChannels", "type" ], "type": "object", "properties": { "cortexTeam": { "$ref": "#/components/schemas/CortexTeamDetails" }, "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "type": { "type": "string" } }, "description": "Use this request shape when updating a team entry whose memberships are manually maintained via API or the UI." }, "UpdateTeamRequest.IDP": { "title": "IDP", "required": [ "links", "metadata", "slackChannels", "type" ], "type": "object", "properties": { "links": { "type": "array", "items": { "$ref": "#/components/schemas/TeamsLink" } }, "metadata": { "$ref": "#/components/schemas/TeamMetadata" }, "slackChannels": { "type": "array", "items": { "$ref": "#/components/schemas/SlackChannel1" } }, "type": { "type": "string" } }, "description": "Use this request shape when updating a team entry whose memberships are synced with an Idp group, such as from Okta, Google Groups, Github Teams, Azure AD, etc." }, "User": { "required": [ "name" ], "type": "object", "properties": { "email": { "type": "string", "description": "Contact email", "example": "cristina@cortex.io" }, "name": { "type": "string", "description": "Name", "example": "Cristina Buenahora" } } }, "UserLabel": { "required": [ "id", "name", "values" ], "type": "object", "properties": { "description": { "type": "string", "description": "Optional description of the user label" }, "id": { "type": "string", "description": "Unique, immutable, 18-character auto-generated identifier for the user label.", "example": "ul2da8159dbeefb974" }, "name": { "type": "string", "description": "Unique name for the user label" }, "values": { "type": "array", "description": "Possible values for the user label", "items": { "type": "string", "description": "Possible values for the user label" } } } }, "UserLabelListResponse": { "required": [ "labels", "page", "total", "totalPages" ], "type": "object", "properties": { "labels": { "type": "array", "items": { "$ref": "#/components/schemas/UserLabel" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } }, "UserLabelValue": { "required": [ "id", "name", "value" ], "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "value": { "type": "string" } }, "description": "Map of user email to the list of assigned user label values" }, "UserSchedule": { "required": [ "user" ], "type": "object", "properties": { "user": { "$ref": "#/components/schemas/User" } }, "description": "User details" }, "ValidIpAllowlistEntry": { "required": [ "address", "valid" ], "type": "object", "properties": { "address": { "type": "string", "description": "IP address or range", "example": "10.0.0.1" }, "description": { "type": "string", "description": "Description of an entry" }, "valid": { "type": "boolean" } } }, "Value": { "required": [ "editable", "inputKey", "outputVariable", "type" ], "type": "object", "properties": { "editable": { "type": "boolean", "description": "Whether the override is editable by the user. Defaults to `false`. If set to `true` it\u0027ll pause the execution of the workflow and wait for the user to provide the value" }, "inputKey": { "type": "string", "description": "The input key to override" }, "outputVariable": { "type": "string", "description": "The path to the override value in the workflow context" }, "type": { "type": "string" } } }, "VariableAssignment": { "required": [ "slug", "source" ], "type": "object", "properties": { "slug": { "type": "string", "description": "The type of the variable" }, "source": { "$ref": "#/components/schemas/VariableSource" } }, "description": "The variables to set for the action" }, "VariableSource": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string" } }, "description": "How to set the variable", "discriminator": { "propertyName": "type" } }, "ViolationDTO": { "required": [ "paths" ], "type": "object", "properties": { "description": { "type": "string" }, "endLine": { "type": "integer", "format": "int32" }, "paths": { "type": "array", "items": { "type": "string" } }, "pointer": { "type": "string" }, "ruleLink": { "type": "string" }, "startLine": { "type": "integer", "format": "int32" }, "title": { "type": "string" }, "violationType": { "type": "string", "enum": [ "MUST", "SHOULD", "MAY", "HINT" ] } } }, "WorkflowAction": { "required": [ "isRootAction", "name", "outgoingActions", "schema", "slug" ], "type": "object", "properties": { "isRootAction": { "type": "boolean", "description": "Whether the action is the root action of the workflow. There can be only one root action per workflow" }, "name": { "type": "string", "description": "The name of the action" }, "outgoingActions": { "type": "array", "description": "The actions that will be executed after this action", "items": { "type": "string", "description": "The actions that will be executed after this action" } }, "schema": { "$ref": "#/components/schemas/WorkflowActionSchema" }, "slug": { "type": "string", "description": "The slug of the action" } }, "description": "List of actions in the workflow" }, "WorkflowActionSchema": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the action" } }, "description": "The definition of the action", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/WorkflowActionSchema.HTTP_REQUEST" }, { "$ref": "#/components/schemas/WorkflowActionSchema.ADVANCED_HTTP_REQUEST" }, { "$ref": "#/components/schemas/WorkflowActionSchema.HTTP_REQUEST_ASYNC" }, { "$ref": "#/components/schemas/WorkflowActionSchema.SCAFFOLDER" }, { "$ref": "#/components/schemas/WorkflowActionSchema.USER_INPUT" }, { "$ref": "#/components/schemas/WorkflowActionSchema.JQ" }, { "$ref": "#/components/schemas/WorkflowActionSchema.SLACK" }, { "$ref": "#/components/schemas/WorkflowActionSchema.MANUAL_APPROVAL" }, { "$ref": "#/components/schemas/WorkflowActionSchema.CONDITIONAL_BRANCH" }, { "$ref": "#/components/schemas/WorkflowActionSchema.GITHUB_CREATE_OR_UPDATE_FILE" }, { "$ref": "#/components/schemas/WorkflowActionSchema.MS_TEAMS_SEND_MESSAGE" }, { "$ref": "#/components/schemas/WorkflowActionSchema.JAVASCRIPT" }, { "$ref": "#/components/schemas/WorkflowActionSchema.SET_VARIABLES" }, { "$ref": "#/components/schemas/WorkflowActionSchema.AWS" }, { "$ref": "#/components/schemas/WorkflowActionSchema.PAGERDUTY_CREATE_INCIDENT" }, { "$ref": "#/components/schemas/WorkflowActionSchema.JIRA_CREATE_ISSUE" } ] }, "WorkflowActionSchema.ADVANCED_HTTP_REQUEST": { "title": "ADVANCED_HTTP_REQUEST", "required": [ "actionIdentifier", "inputs", "type" ], "type": "object", "properties": { "actionIdentifier": { "type": "string" }, "inputs": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/JsonNode" } }, "integrationAlias": { "type": "string" }, "type": { "type": "string" } } }, "WorkflowActionSchema.AWS": { "title": "AWS", "required": [ "accountId", "actionIdentifier", "inputs", "region", "type" ], "type": "object", "properties": { "accountId": { "type": "string" }, "actionIdentifier": { "type": "string" }, "inputs": { "type": "object", "additionalProperties": { "$ref": "#/components/schemas/JsonNode" } }, "region": { "type": "string" }, "type": { "type": "string" } } }, "WorkflowActionSchema.CONDITIONAL_BRANCH": { "title": "CONDITIONAL_BRANCH", "required": [ "branches", "type" ], "type": "object", "properties": { "branches": { "type": "array", "description": "The list of conditional branches that will be evaluated in order", "items": { "$ref": "#/components/schemas/Conditional" } }, "fallbackBranch": { "$ref": "#/components/schemas/Fallback" }, "joiningAction": { "type": "string", "description": "The joining action that will run after all branches" }, "type": { "type": "string" } } }, "WorkflowActionSchema.GITHUB_CREATE_OR_UPDATE_FILE": { "title": "GITHUB_CREATE_OR_UPDATE_FILE", "required": [ "alias", "commitMessage", "content", "path", "repositoryName", "type" ], "type": "object", "properties": { "alias": { "type": "string", "description": "The alias for the github configuration to be used" }, "author": { "$ref": "#/components/schemas/GithubAuthor" }, "branch": { "type": "string", "description": "The branch in the repository where the changes will be applied (optional; defaults to the main branch if not specified)" }, "commitMessage": { "type": "string", "description": "A message describing the purpose of the commit" }, "committer": { "$ref": "#/components/schemas/GithubCommitter" }, "content": { "type": "string", "description": "The content of the file to be created or updated (not base64-encoded)" }, "path": { "type": "string", "description": "The full path to the file within the repository" }, "repositoryName": { "type": "string", "description": "The name of the repository where the file is being created or updated" }, "type": { "type": "string" } } }, "WorkflowActionSchema.HTTP_REQUEST": { "title": "HTTP_REQUEST", "required": [ "headers", "httpMethod", "type", "url" ], "type": "object", "properties": { "headers": { "type": "object", "additionalProperties": { "type": "string", "description": "The headers for the HTTP request" }, "description": "The headers for the HTTP request" }, "httpMethod": { "type": "string", "description": "The HTTP method for the request", "enum": [ "GET", "POST", "PUT", "DELETE", "PATCH" ] }, "payload": { "type": "string", "description": "The payload for the request" }, "type": { "type": "string" }, "url": { "type": "string", "description": "The URL for the request" } } }, "WorkflowActionSchema.HTTP_REQUEST_ASYNC": { "title": "HTTP_REQUEST_ASYNC", "required": [ "headers", "httpMethod", "type", "url" ], "type": "object", "properties": { "headers": { "type": "object", "additionalProperties": { "type": "string", "description": "The headers for the HTTP request" }, "description": "The headers for the HTTP request" }, "httpMethod": { "type": "string", "description": "The HTTP method for the request", "enum": [ "GET", "POST", "PUT", "DELETE", "PATCH" ] }, "payload": { "type": "string", "description": "The payload for the request" }, "timeoutInSeconds": { "type": "integer", "description": "The timeout for the request in seconds", "format": "int32" }, "type": { "type": "string" }, "url": { "type": "string", "description": "The URL for the request" } } }, "WorkflowActionSchema.JAVASCRIPT": { "title": "JAVASCRIPT", "required": [ "script", "type" ], "type": "object", "properties": { "script": { "type": "string", "description": "The JavaScript script for the action" }, "type": { "type": "string" } } }, "WorkflowActionSchema.JIRA_CREATE_ISSUE": { "title": "JIRA_CREATE_ISSUE", "required": [ "alias", "components", "description", "fields", "issueSummary", "issueType", "labels", "projectKey", "type" ], "type": "object", "properties": { "alias": { "type": "string", "description": "The alias for the Jira configuration that will be used." }, "assignee": { "type": "string", "description": "The identifier of the assignee for the Jira issue. This field is optional." }, "components": { "type": "array", "description": "A list of components within the Jira project to which the issue belongs. This field is optional.", "items": { "type": "string", "description": "A list of components within the Jira project to which the issue belongs. This field is optional." } }, "description": { "type": "string", "description": "A detailed description of the issue, providing more context about what needs to be addressed." }, "fields": { "type": "object", "additionalProperties": { "type": "object", "description": "A map containing additional fields that are to be provided for the Jira issue, such as custom fields or extra attributes. This field is optional." }, "description": "A map containing additional fields that are to be provided for the Jira issue, such as custom fields or extra attributes. This field is optional." }, "issueSummary": { "type": "string", "description": "A brief summary of the issue being created, typically representing the title of the issue." }, "issueType": { "type": "string", "description": "The type of the issue being created, such as \u0027Bug\u0027, \u0027Task\u0027, or \u0027Story\u0027." }, "labels": { "type": "array", "description": "A list of labels or tags to categorize or highlight the Jira issue. This field is optional.", "items": { "type": "string", "description": "A list of labels or tags to categorize or highlight the Jira issue. This field is optional." } }, "priority": { "type": "string", "description": "The priority of the issue, such as \u0027High\u0027, \u0027Medium\u0027, or \u0027Low\u0027. This field is optional." }, "projectKey": { "type": "string", "description": "The key of the Jira project where the issue will be created. Typically a short code like \u0027PROJ\u0027." }, "reporter": { "type": "string", "description": "The identifier of the reporter who is raising the Jira issue. This field is optional." }, "type": { "type": "string" } } }, "WorkflowActionSchema.JQ": { "title": "JQ", "required": [ "expression", "type" ], "type": "object", "properties": { "expression": { "type": "string", "description": "The JQ expression for the action" }, "type": { "type": "string" } } }, "WorkflowActionSchema.MANUAL_APPROVAL": { "title": "MANUAL_APPROVAL", "required": [ "approvingTeamIds", "type" ], "type": "object", "properties": { "approverDescription": { "type": "string", "description": "A description that will be shown to approvers" }, "approvingTeamIds": { "type": "array", "description": "The IDs of the teams whose members can approve the action", "items": { "type": "string", "description": "The IDs of the teams whose members can approve the action" } }, "type": { "type": "string" } } }, "WorkflowActionSchema.MS_TEAMS_SEND_MESSAGE": { "title": "MS_TEAMS_SEND_MESSAGE", "required": [ "channelId", "message", "teamId", "type" ], "type": "object", "properties": { "channelId": { "type": "string", "description": "The channel id to send the message to" }, "message": { "type": "string", "description": "The message to send" }, "teamId": { "type": "string", "description": "The team id to send the message to" }, "type": { "type": "string" } } }, "WorkflowActionSchema.PAGERDUTY_CREATE_INCIDENT": { "title": "PAGERDUTY_CREATE_INCIDENT", "required": [ "body", "fromEmail", "serviceId", "title", "type", "urgency" ], "type": "object", "properties": { "body": { "type": "string", "description": "The body of the incident" }, "fromEmail": { "type": "string", "description": "The email address of a valid user associated with the account making the request" }, "incidentTypeName": { "type": "string", "description": "The incident type name" }, "serviceId": { "type": "string", "description": "The ID of the service to create the incident for" }, "title": { "type": "string", "description": "The title of the incident" }, "type": { "type": "string" }, "urgency": { "type": "string", "description": "The urgency of the incident", "enum": [ "HIGH", "LOW" ] } } }, "WorkflowActionSchema.SCAFFOLDER": { "title": "SCAFFOLDER", "required": [ "inputOverrides", "scaffolderTemplateId", "type" ], "type": "object", "properties": { "createNewRepository": { "type": "boolean", "description": "Whether the scaffolder should create a new repository. Defaults to `true`" }, "createService": { "type": "boolean", "description": "Whether the cortex service should be created." }, "inputOverrides": { "type": "array", "description": "The input overrides for the scaffolder", "items": { "$ref": "#/components/schemas/InputOverride" } }, "scaffolderTemplateId": { "type": "string", "description": "The ID of the scaffolder template" }, "type": { "type": "string" } } }, "WorkflowActionSchema.SET_VARIABLES": { "title": "SET_VARIABLES", "required": [ "type", "variables" ], "type": "object", "properties": { "type": { "type": "string" }, "variables": { "type": "array", "description": "The variables to set for the action", "items": { "$ref": "#/components/schemas/VariableAssignment" } } } }, "WorkflowActionSchema.SLACK": { "title": "SLACK", "required": [ "channel", "message", "type" ], "type": "object", "properties": { "channel": { "type": "string", "description": "The channel name to send the message to, without the `#`. For example for `#general` use `general`" }, "message": { "type": "string", "description": "The message to send" }, "type": { "type": "string" } } }, "WorkflowActionSchema.USER_INPUT": { "title": "USER_INPUT", "required": [ "inputOverrides", "inputs", "type" ], "type": "object", "properties": { "inputOverrides": { "type": "array", "description": "The list of overrides for the action inputs", "items": { "$ref": "#/components/schemas/InputOverride" } }, "inputs": { "type": "array", "description": "The list of inputs required for the action", "items": { "$ref": "#/components/schemas/WorkflowInput" } }, "jsValidatorScript": { "type": "string", "description": "Optional JavaScript validator script to validate the provided inputs" }, "type": { "type": "string" } } }, "WorkflowDefinition": { "required": [ "actions", "filter", "isDraft", "name", "restrictActionCompletionToRunnerUser", "tag", "variables" ], "type": "object", "properties": { "actions": { "type": "array", "description": "List of actions in the workflow", "items": { "$ref": "#/components/schemas/WorkflowAction" } }, "description": { "type": "string", "description": "Description of the workflow" }, "failedRunResponseTemplate": { "type": "string", "description": "Template for the response when the workflow run fails" }, "filter": { "$ref": "#/components/schemas/WorkflowFilter" }, "iconTag": { "type": "string", "description": "Icon tag for the workflow" }, "isDraft": { "type": "boolean", "description": "Whether the workflow is a draft" }, "name": { "type": "string", "description": "Name of the workflow" }, "restrictActionCompletionToRunnerUser": { "type": "boolean", "description": "If true, only the user who started the workflow can complete actions. Defaults to false." }, "runResponseTemplate": { "type": "string", "description": "Template for the response when the workflow is completed successfully" }, "runRestrictionPolicies": { "type": "array", "description": "List of restriction policies for the workflow", "items": { "$ref": "#/components/schemas/RestrictionPolicyRelationship" } }, "tag": { "type": "string", "description": "Tag of the workflow" }, "variables": { "type": "array", "description": "List of variable definitions for the workflow", "items": { "$ref": "#/components/schemas/WorkflowVariable" } } } }, "WorkflowFilter": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the workflow filter", "enum": [ "GLOBAL", "ENTITY" ] } }, "description": "Filter to determine in what entity contexts the workflow can run", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/WorkflowFilter.GLOBAL" }, { "$ref": "#/components/schemas/WorkflowFilter.ENTITY" } ] }, "WorkflowFilter.ENTITY": { "title": "ENTITY", "required": [ "ownershipScope", "type" ], "type": "object", "properties": { "entityFilter": { "$ref": "#/components/schemas/CompoundFilter" }, "ownershipScope": { "type": "string", "description": "The ownership scope for the workflow", "enum": [ "ALL", "OWNER", "EDITOR" ] }, "type": { "type": "string", "description": "The type of the workflow filter", "enum": [ "GLOBAL", "ENTITY" ] } } }, "WorkflowFilter.GLOBAL": { "title": "GLOBAL", "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the workflow filter", "enum": [ "GLOBAL", "ENTITY" ] } } }, "WorkflowInput": { "required": [ "type" ], "type": "object", "properties": { "type": { "type": "string", "description": "The type of the input", "enum": [ "INPUT_FIELD", "TEXTAREA_FIELD", "SELECT_FIELD", "MULTISELECT_FIELD", "TOGGLE_FIELD", "CORTEX_ENTITY_FIELD", "CORTEX_USER_FIELD", "SLACK_FIELD", "SECRET_FIELD", "NUMBER_FIELD", "DATE_FIELD", "NESTED_FORM_FIELD" ] } }, "description": "The list of inputs required for the action", "discriminator": { "propertyName": "type" }, "oneOf": [ { "$ref": "#/components/schemas/WorkflowInput.INPUT_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.TEXTAREA_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.SELECT_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.MULTISELECT_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.TOGGLE_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.CORTEX_ENTITY_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.CORTEX_USER_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.SLACK_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.SECRET_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.NUMBER_FIELD" }, { "$ref": "#/components/schemas/WorkflowInput.DATE_FIELD" } ] }, "WorkflowInput.CORTEX_ENTITY_FIELD": { "title": "CORTEX_ENTITY_FIELD", "required": [ "allowMultiple", "entityFilter", "key", "name", "required", "shouldDisplayOptionsAsHierarchy", "type" ], "type": "object", "properties": { "allowMultiple": { "type": "boolean", "description": "Whether the input allows multiple values. Defaults to `false`" }, "defaultValue": { "type": "array", "description": "The default value for the input", "items": { "type": "string", "description": "The default value for the input" } }, "description": { "type": "string", "description": "The description of the input" }, "entityFilter": { "$ref": "#/components/schemas/WorkflowInputEntityFilter" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "shouldDisplayOptionsAsHierarchy": { "type": "boolean", "description": "Whether the options should be displayed as a hierarchy. Defaults to `false`" }, "type": { "type": "string" } } }, "WorkflowInput.CORTEX_USER_FIELD": { "title": "CORTEX_USER_FIELD", "required": [ "allowMultiple", "filter", "key", "name", "required", "type" ], "type": "object", "properties": { "allowMultiple": { "type": "boolean", "description": "Whether the input allows multiple values. Defaults to `false`" }, "defaultValue": { "type": "array", "description": "The default value for the input", "items": { "$ref": "#/components/schemas/CortexUserIdentity" } }, "description": { "type": "string", "description": "The description of the input" }, "filter": { "$ref": "#/components/schemas/WorkflowInputUserFilter" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.DATE_FIELD": { "title": "DATE_FIELD", "required": [ "disabled", "format", "key", "name", "required", "type" ], "type": "object", "properties": { "defaultValue": { "type": "string", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "disabled": { "type": "boolean", "description": "Whether the input should be disabled" }, "format": { "type": "string", "description": "The date format of the input", "enum": [ "DATE", "DATETIME" ] }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.INPUT_FIELD": { "title": "INPUT_FIELD", "required": [ "key", "name", "required", "type" ], "type": "object", "properties": { "defaultValue": { "type": "string", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" }, "validationRegex": { "type": "string", "description": "The validation regex for the input" } } }, "WorkflowInput.MULTISELECT_FIELD": { "title": "MULTISELECT_FIELD", "required": [ "allowAdditionalOptions", "key", "name", "options", "required", "type" ], "type": "object", "properties": { "allowAdditionalOptions": { "type": "boolean", "description": "Whether additional options are allowed. Defaults to `false`" }, "defaultValue": { "type": "array", "description": "The default value for the input", "items": { "type": "string", "description": "The default value for the input" } }, "description": { "type": "string", "description": "The description of the input" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "options": { "type": "array", "description": "The list of options for the input", "items": { "type": "string", "description": "The list of options for the input" } }, "optionsLabels": { "type": "array", "description": "The list of labels for the options. If not provided, the options will be used as labels", "items": { "type": "string", "description": "The list of labels for the options. If not provided, the options will be used as labels" } }, "placeholder": { "type": "string", "description": "The placeholder value for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.NUMBER_FIELD": { "title": "NUMBER_FIELD", "required": [ "disabled", "format", "key", "name", "required", "type" ], "type": "object", "properties": { "defaultValue": { "type": "number", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "disabled": { "type": "boolean", "description": "Whether the input should be disabled" }, "format": { "type": "string", "description": "The number format of the input", "enum": [ "INTEGER", "DECIMAL" ] }, "key": { "type": "string", "description": "The key of the input" }, "max": { "type": "number", "description": "The maximum value of the input" }, "min": { "type": "number", "description": "The minimum value of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.SECRET_FIELD": { "title": "SECRET_FIELD", "required": [ "disabled", "key", "name", "required", "type" ], "type": "object", "properties": { "description": { "type": "string", "description": "The description of the input" }, "disabled": { "type": "boolean", "description": "Whether the input should be disabled" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" }, "validationRegex": { "type": "string", "description": "The validation regex for the input" } } }, "WorkflowInput.SELECT_FIELD": { "title": "SELECT_FIELD", "required": [ "allowAdditionalOptions", "key", "name", "options", "required", "type" ], "type": "object", "properties": { "allowAdditionalOptions": { "type": "boolean", "description": "Whether additional options are allowed. Defaults to `false`" }, "defaultValue": { "type": "string", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "options": { "type": "array", "description": "The list of options for the input", "items": { "type": "string", "description": "The list of options for the input" } }, "optionsLabels": { "type": "array", "description": "The list of labels for the options. If not provided, the options will be used as labels", "items": { "type": "string", "description": "The list of labels for the options. If not provided, the options will be used as labels" } }, "placeholder": { "type": "string", "description": "The placeholder value for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.SLACK_FIELD": { "title": "SLACK_FIELD", "required": [ "allowMultiple", "filter", "key", "name", "required", "type" ], "type": "object", "properties": { "allowMultiple": { "type": "boolean", "description": "Whether the input allows multiple values. Defaults to `false`" }, "defaultValue": { "type": "array", "description": "The default value for the input", "items": { "type": "string", "description": "The default value for the input" } }, "description": { "type": "string", "description": "The description of the input" }, "filter": { "$ref": "#/components/schemas/WorkflowInputSlackFilter" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInput.TEXTAREA_FIELD": { "title": "TEXTAREA_FIELD", "required": [ "key", "name", "required", "type" ], "type": "object", "properties": { "defaultValue": { "type": "string", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "placeholder": { "type": "string", "description": "The placeholder for the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" }, "validationRegex": { "type": "string", "description": "The validation regex for the input" } } }, "WorkflowInput.TOGGLE_FIELD": { "title": "TOGGLE_FIELD", "required": [ "key", "name", "required", "type" ], "type": "object", "properties": { "defaultValue": { "type": "boolean", "description": "The default value for the input" }, "description": { "type": "string", "description": "The description of the input" }, "key": { "type": "string", "description": "The key of the input" }, "name": { "type": "string", "description": "The name of the input" }, "required": { "type": "boolean", "description": "Whether the input is required" }, "type": { "type": "string" } } }, "WorkflowInputEntityFilter": { "type": "object", "properties": { "domainIds": { "type": "array", "description": "Restrict options to entities related to the provided domains", "items": { "type": "string", "description": "Restrict options to entities related to the provided domains" } }, "emailOwners": { "type": "array", "description": "Restrict options to entities owned by the provided users", "items": { "type": "string", "description": "Restrict options to entities owned by the provided users" } }, "excludedGroupTags": { "type": "array", "description": "Restrict options to entities in the provided groups", "items": { "type": "string", "description": "Restrict options to entities in the provided groups" } }, "groupTags": { "type": "array", "description": "Restrict options to entities not in the provided groups", "items": { "type": "string", "description": "Restrict options to entities not in the provided groups" } }, "teamIds": { "type": "array", "description": "Restrict options to entities owned by the provided teams", "items": { "type": "string", "description": "Restrict options to entities owned by the provided teams" } }, "typeFilter": { "$ref": "#/components/schemas/EntityTypeFilter1" } }, "description": "The entity filter for the input" }, "WorkflowInputSlackFilter": { "required": [ "channels" ], "type": "object", "properties": { "channels": { "type": "array", "description": "Restrict options to the provided channels", "items": { "type": "string", "description": "Restrict options to the provided channels" } } }, "description": "The filters for the input" }, "WorkflowInputUserFilter": { "type": "object", "properties": { "teamCids": { "type": "array", "description": "Restrict options to users on the provided teams", "items": { "type": "string", "description": "Restrict options to users on the provided teams" } }, "userEmails": { "type": "array", "description": "Restrict options to users with the provided emails", "items": { "type": "string", "description": "Restrict options to users with the provided emails" } } }, "description": "The user filter for the input" }, "WorkflowListResponse": { "required": [ "page", "total", "totalPages", "workflows" ], "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" }, "workflows": { "type": "array", "description": "List of workflows", "items": { "$ref": "#/components/schemas/WorkflowDefinition" } } } }, "WorkflowVariable": { "required": [ "slug", "type" ], "type": "object", "properties": { "defaultValue": { "$ref": "#/components/schemas/JsonNode" }, "slug": { "type": "string", "description": "The slug of the variable" }, "type": { "type": "string", "description": "The type of the variable", "enum": [ "STRING", "NUMBER", "BOOLEAN", "OBJECT", "ARRAY_OF_STRING", "ARRAY_OF_NUMBER", "ARRAY_OF_BOOLEAN", "ARRAY_OF_OBJECT" ] } }, "description": "List of variable definitions for the workflow" }, "YamlDescriptorsListResponse": { "required": [ "descriptors", "page", "total", "totalPages" ], "type": "object", "properties": { "descriptors": { "type": "array", "items": { "type": "string" } }, "page": { "type": "integer", "description": "Current page number, 0-indexed", "format": "int32" }, "total": { "type": "integer", "description": "Total number of results", "format": "int32" }, "totalPages": { "type": "integer", "description": "Total number of pages", "format": "int32" } } } }, "securitySchemes": { "bearerAuth": { "bearerFormat": "JWT", "description": "All requests to the Cortex API need to provide an `Authorization: Bearer \u003ctoken\u003e` header, where `\u003ctoken\u003e` is an API key created in the Settings page of your workspace.", "scheme": "bearer", "type": "http" } } } }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cortexapps/cortex-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server