openapi: 3.0.1 info: contact: email: support@instana.com name: © Instana url: 'http://instana.com' termsOfService: 'https://www.instana.com/terms-of-use/' title: Instana REST API documentation version: 1.307.1417 x-ibm-ahub-try: true x-logo: altText: instana logo backgroundColor: '#FAFBFC' url: header-logo.svg description: "Searching for answers and best pratices? Check our [IBM Instana Community](https://community.ibm.com/community/user/aiops/communities/community-home?CommunityKey=58f324a3-3104-41be-9510-5b7c413cc48f).\n\n
\n \"info\n \n Our API documentation is moving to \n API Hub\n\t — please update your bookmarks now, as the current site will be deprecated after Release-306.\n \n
\n\n## Overview\nThe Instana REST API provides programmatic access to the Instana platform. It can be used to retrieve data available through the Instana UI Dashboard -- metrics, events, traces, etc -- and also to automate configuration tasks such as user management.\n\n### Navigating the API documentation\nThe API endpoints are grouped by product area and functionality. This generally maps to how our UI Dashboard is organized, hopefully making it easier to locate which endpoints you'd use to fetch the data you see visualized in our UI. The [UI sections](https://www.ibm.com/docs/en/instana-observability/current?topic=working-user-interface#navigation-menu) include:\n- Websites & Mobile Apps\n- Applications\n- Infrastructure\n- Synthetic Monitoring\n- Events\n- Automation\n- Service Levels\n- Settings\n- etc\n\n### Rate Limiting\nA rate limit is applied to API usage. Up to 5,000 calls per hour can be made. How many remaining calls can be made and when this call limit resets, can inspected via three headers that are part of the responses of the API server.\n\n- **X-RateLimit-Limit:** Shows the maximum number of calls that may be executed per hour.\n- **X-RateLimit-Remaining:** How many calls may still be executed within the current hour.\n- **X-RateLimit-Reset:** Time when the remaining calls will be reset to the limit. For compatibility reasons with other rate limited APIs, this date is not the date in milliseconds, but instead in seconds since 1970-01-01T00:00:00+00:00.\n\n### Further Reading\nWe provide additional documentation for our REST API in our [product documentation](https://www.ibm.com/docs/en/instana-observability/current?topic=apis-web-rest-api). Here you'll also find some common queries for retrieving data and configuring Instana.\n\n## Getting Started with the REST API\n\n### API base URL\nThe base URL for an specific instance of Instana can be determined using the tenant and unit information.\n- `base`: This is the base URL of a tenant unit, e.g. `https://test-example.instana.io`. This is the same URL that is used to access the Instana user interface.\n- `apiToken`: Requests against the Instana API require valid API tokens. An initial API token can be generated via the Instana user interface. Any additional API tokens can be generated via the API itself.\n\n### Curl Example\nHere is an Example to use the REST API with Curl. First lets get all the available metrics with possible aggregations with a GET call.\n\n```bash\ncurl --request GET \\\n --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \\\n --header 'authorization: apiToken xxxxxxxxxxxxxxxx'\n```\n\nNext we can get every call grouped by the endpoint name that has an error count greater then zero. As a metric we could get the mean error rate for example.\n\n```bash\ncurl --request POST \\\n --url https://test-instana.instana.io/api/application-monitoring/analyze/call-groups \\\n --header 'authorization: apiToken xxxxxxxxxxxxxxxx' \\\n --header 'content-type: application/json' \\\n --data '{\n \"group\":{\n \"groupbyTag\":\"endpoint.name\"\n },\n \"tagFilters\":[\n \t{\n \t\t\"name\":\"call.error.count\",\n \t\t\"value\":\"0\",\n \t\t\"operator\":\"GREATER_THAN\"\n \t}\n ],\n \"metrics\":[\n \t{\n \t\t\"metric\":\"errors\",\n \t\t\"aggregation\":\"MEAN\"\n \t}\n ]\n }'\n```\n\n### Generating REST API clients\n\nThe API is specified using the [OpenAPI v3](https://github.com/OAI/OpenAPI-Specification) (previously known as Swagger) format.\nYou can download the current specification at our [GitHub API documentation](https://instana.github.io/openapi/openapi.yaml).\n\nOpenAPI tries to solve the issue of ever-evolving APIs and clients lagging behind. Please make sure that you always use the latest version of the generator, as a number of improvements are regularly made.\nTo generate a client library for your language, you can use the [OpenAPI client generators](https://github.com/OpenAPITools/openapi-generator).\n\n#### Go\nFor example, to generate a client library for Go to interact with our backend, you can use the following script; mind replacing the values of the `UNIT_NAME` and `TENANT_NAME` environment variables using those for your tenant unit:\n\n```bash\n#!/bin/bash\n\n### This script assumes you have the `java` and `wget` commands on the path\n\nexport UNIT_NAME='myunit' # for example: prod\nexport TENANT_NAME='mytenant' # for example: awesomecompany\n\n//Download the generator to your current working directory:\nwget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/4.3.1/openapi-generator-cli-4.3.1.jar -O openapi-generator-cli.jar --server-variables \"tenant=${TENANT_NAME},unit=${UNIT_NAME}\"\n\n//generate a client library that you can vendor into your repository\njava -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g go \\\n -o pkg/instana/openapi \\\n --skip-validate-spec\n\n//(optional) format the Go code according to the Go code standard\ngofmt -s -w pkg/instana/openapi\n```\n\nThe generated clients contain comprehensive READMEs, and you can start right away using the client from the example above:\n\n```go\nimport instana \"./pkg/instana/openapi\"\n\n// readTags will read all available application monitoring tags along with their type and category\nfunc readTags() {\n\tconfiguration := instana.NewConfiguration()\n\tconfiguration.Host = \"tenant-unit.instana.io\"\n\tconfiguration.BasePath = \"https://tenant-unit.instana.io\"\n\n\tclient := instana.NewAPIClient(configuration)\n\tauth := context.WithValue(context.Background(), instana.ContextAPIKey, instana.APIKey{\n\t\tKey: apiKey,\n\t\tPrefix: \"apiToken\",\n\t})\n\n\ttags, _, err := client.ApplicationCatalogApi.GetApplicationTagCatalog(auth)\n\tif err != nil {\n\t\tfmt.Fatalf(\"Error calling the API, aborting.\")\n\t}\n\n\tfor _, tag := range tags {\n\t\tfmt.Printf(\"%s (%s): %s\\n\", tag.Category, tag.Type, tag.Name)\n\t}\n}\n```\n\n#### Java\nFollow the instructions provided in the official documentation from [OpenAPI Tools](https://github.com/OpenAPITools) to download the [openapi-generator-cli.jar](https://github.com/OpenAPITools/openapi-generator?tab=readme-ov-file#13---download-jar).\n\nDepending on your environment, use one of the following java http client implementations which will create a valid client for our OpenAPI specification:\n```\n//Nativ Java HTTP Client\njava -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8 --library native\n\n//Spring WebClient\njava -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library webclient\n\n//Spring RestTemplate\njava -jar openapi-generator-cli.jar generate -i https://instana.github.io/openapi/openapi.yaml -g java -o pkg/instana/openapi --skip-validate-spec -p dateLibrary=java8,hideGenerationTimestamp=true --library resttemplate\n\n```\n" servers: - description: Instana Backend url: 'https://{unit}-{tenant}.instana.io' variables: tenant: default: tenant description: Customer tenant unit unit: default: unit description: Customer tenant name - description: Instana Self-Hosted Backend url: 'https://{domain}' variables: domain: default: example.com description: Customer Self-Hosted domain tags: - name: Infrastructure Analyze description: |- This endpoint group exposes the functions that are used by the Instana **Analyze Infrastructure** dashboards. Two of the endpoints provide a [list of entity types](#operation/getAvailablePlugins) and [metrics for an entity type](#operation/getAvailableMetrics). It is also possible to [search and filter entities](#operation/getEntities) and [aggregate metrics on similar entities](#operation/getEntityGroups). ## Important notes ### Prerequisites For self-hosted installations, BeeInstana is required for this endpoint group. See this [documentation for enabling BeeInstana](https://www.ibm.com/docs/en/instana-observability/current?topic=premises-installing-instana-backend-docker#beeinstana-metric-pipeline-beta). ### Timeframe **timeFrame** As in the Instana dashboards, you can specify the timeframe for metrics retrieval. ``` windowSize to (ms) (unix-timestamp) <----------------------| ``` The timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with specified granularity, a default granularity will be used for adjustment. ### Metrics **metric** refers to the metric name. Query the [list of available metrics](#operation/getAvailableMetrics) for existing metrics on an entity type. This is to be used when requesting metrics or when ordering by a metric. For **order.by**, `label` may also be used. ### Filtering As in the Instana dashboards, you can **filter by a tag**. Query the [infrastructure tag catalog](#operation/getInfrastructureCatalogMetrics) to retrieve a list of available tags. - name: Infrastructure Metrics description: "This endpoint retrieves the metrics for infrastructure components.\r\n\r\n### Mandatory Parameters\r\n**plugin:** Plugins are entities' for which we collect metrics, for example : \"Host\", \"Cassandra node\", \"Cassandra Connection\".\r\n\r\nThe available plugins are depending on the system you are monitoring. Therefore you will need to [retrieve plugins](#operation/getInfrastructureCatalogPlugins) where we have data for you.\r\n\r\n**query or snapshotIds:** choose between dynamic focus query or [snapshotId](#operation/getSnapshots) (a unique identifier the metrics are assigned to)\r\n\r\nTo make the it easy to get started this endpoint has two modes that can be used for metrics retrieval:\r\n1. Search metrics with a query\r\n You are using the [Dynamic Focus](https://www.ibm.com/docs/en/instana-observability/current?topic=instana-filtering-dynamic-focus) query to filter the result.\r\n To get usable search parameters you can either query the search [catalog endpoint](#operation/getInfrastructureCatalogSearchFields) or use the UI\r\n\r\n1. Search for metrics for snapshotIds\r\n For advanced use cases, pagination for example, its recommended to use fixed snapshotIds.\r\n\r\n**metrics:** Id of the exact metric you want to retrieve, eg. \"cpu.user\", \"clientrequests.read.mean\"\r\n\r\nOnce you have selected the plugin you can define up to five metrics you want to retrieve with the call.\r\nPlease use our [metrics catalog call](#operation/getInfrastructureCatalogMetrics) to get the available metrics for the selected plugin.\r\n\r\n### Optional Parameters\r\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\r\n```\r\n windowSize to\r\n (ms) (unix-timestamp)\r\n<----------------------|\r\n```\r\n\r\n**rollup:** Depending on the selected timeFrame its possible to selected the rollup.\r\n\r\nThe available rollup is depending on two factors:\r\n1. [Retention times](https://www.ibm.com/docs/en/instana-observability/current?topic=policies#data-retention-policy)\r\n\r\n\tFor example if you select a to timestamp that is 3 Weeks in the past the most accurate rollup you can query for would be 1min\r\n1. Size of the selected windowSize\r\n\r\n\tThe limitation is that we only return 600 Data points per call, thus if you select a windowSize of 1hour the most accurate rollup you can query for would be 5s\r\n\r\nValid rollups are:\r\n\r\n| rollup | value |\r\n| ------------- | ------------- |\r\n| 1 second | 1 |\r\n| 5 seconds | 5 |\r\n| 1 minute | 60 |\r\n| 5 minutes | 300 |\r\n| 1 hour | 3600 |\r\n\r\n\r\n### Defaults\r\n**timeframe:**\r\n```\r\n\"timeFrame\": {\r\n\t\"windowSize\": 60000,\r\n\t\"to\": {current timestamp}\r\n}\r\n```\r\n\r\n**rollup**: 1\r\n\r\n### Limits\r\n1000 Calls per Hour\r\n\r\nTo keep the response size reasonable the limit is set to 30 retrieved items. To implement pagination see [1]\r\n\r\nA maximum of 600 data points are returned per metric.\r\n\r\nYou can only retrieve metrics [above](https://docs.instana.io/core_concepts/dynamic_graph/) the selected Dynamic Focus filter. Work around can be found under [2]\r\n\r\nThe following example will return an empty result, because the selected plugin \"host\" is below the dynamic focus filter \"java\" :\r\n```\r\nquery=entity.selfType:java\r\nplugin=host\r\nmetric=cpu.steal\r\n```\r\n### Tips\r\n[1] **Pagination**\r\nSometimes the query you are interested in returns more than 30 items, you have to use the [find snapshots](#operation/getSnapshots) endpoint to get a full list of Ids for your query and then use the [metrics endpoint](#operation/getInfrastructureMetrics) with the returned snapshotIds\r\n\r\n\r\n[2] **Application filter**\r\nYou can work around the aforementioned limitation by querying one of the crosscutting entities like applications, services and endpoints. For the example above you could create an Application with jvm.version isPresent filter. And search Query then for the created application name\r\n```\r\nquery=entity.application.name:\"Java Applications\"\r\n```\r\n" - name: Infrastructure Resources - name: Infrastructure Catalog description: | The endpoints of this group retrieve all available resources to query infrastructure metrics. - name: Infrastructure Topology - name: Logging Analyze - name: Application Metrics description: "The endpoints of this group retrieve the metrics for defined applications, discovered services and endpoints.\r\n### Mandatory Parameters\r\n\r\n**metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items:\r\n1. *metric* select a particular metric to get a list of available metrics query the [catalog endpoint](#operation/getApplicationCatalogMetrics).\r\n2. *aggregation* depending on the selected metric different aggregations are available e.g. SUM, MEAN, P95. The aforementioned [catalog endpoint](#operation/getApplicationCatalogMetrics) gives you the metrics with the available aggregations.\r\n\r\n**Note**: The above mentioned list of available metrics with its supported metrics can also be found in the section **Supported Aggregation on Application metrics** below.\r\n\r\n### Optional Parameters\r\n\r\n**metrics** Default you will get an aggregated metric with for the selected timeframe \r\n\r\n* *granularity* \r\n * If it is not set you will get a an aggregated value for the selected timeframe\r\n * If the granularity is set you will get data points with the specified granularity **in seconds**\r\n * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**)\r\n * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600)\r\n \r\n**pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics\r\n1. *page* select the page number you want to retrieve\r\n2. *pageSize* set the number of applications you want to return with one query\r\n\r\n**order** You can order the returned items alphanumerical by label, either ascending or descending\r\n1. *by* if the granularity is set to 1 you can use the metric name eg. \"latency.p95\" to order by that value\r\n1. *direction* either ascending or descending\r\n\r\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\r\n```\r\n windowSize to\r\n (ms) (unix-timestamp)\r\n<----------------------|\r\n```\r\n\r\nThe timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with granularity, a default granularity will be used for adjustment.\r\n\r\nTo narrow down the result set you have four options to search for an application.\r\n\r\n**nameFilter | applicationId | serviceId | endpointId**\r\n\r\n* *nameFilter:* filter by name with \"contains\" semantic.\r\n\r\n* *applicationId:* search directly for an application by applicationId \r\n\r\n* *serviceId:* search for applications that include a particular service by serviceId\r\n\r\n* *endpointId:* search for applications that include a particular endpoint by endpointId\r\n\r\n### Defaults\r\n\r\n**metrics**\r\n* *granularity:* 1\r\n\r\n**order**\r\n* by application label ascending.\r\n\r\n**timeFrame**\r\n```\r\n\"timeFrame\": {\r\n\t\"windowSize\": 60000,\r\n\t\"to\": {current timestamp}\r\n}\r\n```\r\n**nameFilter | applicationId | serviceId | endpointId**\r\n* no filters are applied in the default call\r\n\r\n\r\n## Supported Aggregation on Application Metrics\r\n\r\n| Metric | Description | Allowed Aggregations |\r\n|------------------|--------------------------------------------------------------------------------------------|----------------------|\r\n| `calls` | Number of received calls | `PER_SECOND`, `SUM` |\r\n| `erroneousCalls` | The number of erroneous calls |`PER_SECOND`, `SUM` |\r\n| `latency` | Latency of received calls in milliseconds | `P25`, `P50`, `P75`, `P90`, `P95`, `P98`, `P99`, `SUM`, `MEAN`, `MAX`, `MIN` |\r\n| `errors` | Error rate of received calls. A value between 0 and 1 | `MEAN` |\r\n| `applications` | The number of Application Perspectives |`DISTINCT_COUNT` |\r\n| `services` | The number of Services |`DISTINCT_COUNT` |\r\n| `endpoints` | The number of Endpoints |`DISTINCT_COUNT` |\r\n| `http.1xx` | Counts the number of occurrences of HTTP status codes where 100 <= status code <= 199 |`PER_SECOND`, `SUM` |\r\n| `http.2xx` | Counts the number of occurrences of HTTP status codes where 200 <= status code <= 299 |`PER_SECOND`, `SUM` |\r\n| `http.3xx` | Counts the number of occurrences of HTTP status codes where 300 <= status code <= 399 |`PER_SECOND`, `SUM` |\r\n| `http.4xx` | Counts the number of occurrences of HTTP status codes where 400 <= status code <= 499 |`PER_SECOND`, `SUM` |\r\n| `http.5xx` | Counts the number of occurrences of HTTP status codes where 500 <= status code <= 599 |`PER_SECOND`, `SUM` |\r\n" - name: Application Catalog description: |- The endpoints of this group retrieve all available resources to query application metrics. It includes: **Catalog for Application Tags** Showing a list of tags which is used for building a query in various use cases within Instana, for example, subset of tags which are available for grouping in traces in Unbounded Analytics for Traces. **Catalog for metrics** Showing a list of metrics that are available for aggregations. For example, Call count can have 2 types of aggrgations: sum and per second. - name: Application Resources description: |- The API endpoints of this group provides insights into resources created and discovered. It includes: **Application Perspectives** Returns a list of predefined application perspectives, offering an organized view of application perspectives within the system. **Discovered Services Inside Application Perspectives** Fetches services identified within the context of specific application perspectives. **Discovered Services and Endpoints** Provides a detailed list of endpoints associated with services, enabling deeper visibility into service dependencies and interactions. It also provides a detailed list of services. These API endpoints collectively serve as a crucial tool for managing and analyzing application-level resource structures. - name: Application Analyze description: "The API endpoints of this group expose our analyze functionality.\nIt includes:\n\n**Grouped Metrics**\n\nTwo group endpoints to retrieve metrics for traces and calls. \n\n**List of traces and its detailed information**\n\nYou can also [search and filter all traces](#operation/getTraces) and retrieve [all details](#operation/getTraceDownload) attached to the trace. Furthermore, you can also retrive [all details](#operation/getCallDetails) of a call.\n\n## Parameters\n### Mandatory Parameters (only for group Endpoints):\n**group** It is mandatory to select a tag by which the calls and traces are grouped for the distinct endpoint call\n* *groupByTag* select a tag by which the calls and traces are grouped \n * a full list of available tags can be retrieved from the [application tag catalog](#operation/getApplicationTagCatalog)\n * for the trace endpoint only two tags are reasonable and working: `trace.endpoint.name` and `trace.service.name` which indicate the entry endpoint or service for the trace\n* *groupByTagSecondLevelKey* tags of type KEY_VALUE_PAIR need a second parameter e.g for `kubernetes.deployment.label` you would need provide the label you want to groupBy here.\n\n### Optional Parameters\n**pagination**\n* *offset* set the starting point for the data retrieval\n* *retrievalSize* you set the number of returned values\n* *ingestionTime* if you want to paginate through your result set you are interested in having the data for a fixed time point, the results set has a `cursor` class that has a ingestionTime property that indicates what you have to enter here.\n**order**\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n```\nThe timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with granularity, a default granularity will be used for adjustment.\n\n**tagFilters** As in the UI you able to filter your query by a tag. To get a list of all available tags you can query the [application tag catalog](#operation/getApplicationTagCatalog)\n* *name* The name of the tag as returned by the catalog\n* *value* The filter value of the tag, possible types are:\n * \"STRING\" alphanumerical values, valid operators: \"EQUALS\", \"CONTAINS\", \"NOT_EQUAL\", \"NOT_CONTAIN\", \"NOT_EMPTY\", \"IS_EMPTY\"\n * \"NUMBER\" numerical values, valid operators: \"EQUALS\", \"LESS_THAN\" \"GREATER_THAN\"\n * \"KEY_VALUE_PAIR\" \n* *operator* one of the valid operators for the type of the selected tag\n\n**metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items:\n1. *metric* select a particular metric, available metrics in this context are\n * Latency Mean\n * Error Rate\n * Traces Sum\n2. *aggregation* depending on the selected metric different aggregations are available e.g. SUM, MEAN, P95. The aforementioned [catalog endpoint](#operation/getApplicationCatalogMetrics) gives you the metrics with the available aggregations.\n\n**Note**: The above mentioned list of available metrics with its supported metrics can also be found in [Get grouped call metrics](#operation/getCallGroup) and [Get grouped trace metrics](#operation/getTraceGroups).\n\n3. *granularity* \n * If it is not set you will get a an aggregated value for the selected timeframe\n * If the granularity is set you will get data points with the specified granularity **in seconds**\n * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**)\n * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600)\n\n### Defaults:\n**timeFrame**\n```\n\"timeFrame\": {\n\t\"windowSize\": 60000,\n\t\"to\": {current timestamp}\n}\n```\n" - name: Application Settings description: |- The API endpoints of this group provides a way to create, read, update, delete (CRUD) for various configuration settings. It includes: **Application Perspectives Configuration** Set of APIs which perform CRUD operations for Application Perspectives. **Endpoint Mapping Configuration** Set of APIs which perform CRUD operations when user wants to customise the endpoint mapping rules. **Service Mapping Configuration** Set of APIs which perform CRUD operations when user wants to customise the service mapping rules. **Manual Service Mapping Configuration** Set of **experimental** APIS which perform CRUD operations when user wants to tweak the service mapping rules when automatic service mapping rules gives undesired results. - name: Application Topology - name: Website Metrics - name: Website Catalog description: | The endpoints of this group retrieve all available resources to query website metrics. - name: Website Configuration - name: Website Analyze description: "The following four endpoints expose our analyze functionality.\n\n## Mandatory Parameters :\n\n**type** \n\n**group (only for group Endpoints)** It is mandatory to select a tag by which the beacons are grouped for the distinct endpoint call\n* *groupByTag* select a tag by which the beacons are grouped \n * a full list of available tags can be retrieved from the [website tag catalog](#operation/getWebsiteCatalogTags)\n* *groupByTagSecondLevelKey* tags of type KEY_VALUE_PAIR need a second parameter e.g for `beacon.meta` you would need provide the label you want to groupBy here.\n\n\n## Optional Parameters:\n\n**pagination**\n* *offset* set the starting point for the data retrieval\n* *retrievalSize* you set the number of returned values\n* *ingestionTime* if you want to paginate through your result set you are interested in having the data for a fixed time point, the results set has a `cursor` class that has a ingestionTime property that indicates what you have to enter here.\n\n**order**\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n```\n\n**tagFilterExpression** As in the UI you are able to filter your query using tags and operators such as `AND` and `OR`. To get a list of all available tags you can query the [tag catalog](#operation/getWebsiteCatalogTags)\n* *name* The name of the tag as returned by the catalog, e.g `beacon.meta`, `beacon.http.path`\n* *value* The filter value of the tag, possible types are:\n * \"STRING\" alphanumerical values, valid operators: \"EQUALS\", \"CONTAINS\", \"NOT_EQUAL\", \"NOT_CONTAIN\", \"NOT_EMPTY\", \"IS_EMPTY\"\n * \"NUMBER\" numerical values, valid operators: \"EQUALS\", \"LESS_THAN\" \"GREATER_THAN\"\n * \"KEY_VALUE_PAIR\" of you are using meta tags `beacon.meta` you can filter for those by setting `yourMetaTagName=foo` in the value field, valid operators: \"EQUALS\", \"CONTAINS\", \"NOT_EQUAL\", \"NOT_CONTAIN\", \"NOT_EMPTY\", \"IS_EMPTY\"\n* *operator* one of the valid operators for the type of the selected tag\n\n**metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items:\n1. *metric* select a particular metric, available metrics in this context are\n * Latency Mean\n * Error Rate\n2. *aggregation* depending on the selected metric different aggregations are available e.g. SUM, MEAN, P95. The aforementioned [catalog endpoint](#operation/getWebsiteCatalogMetrics) gives you the metrics with the available aggregations.\n3. *granularity* \n * If it is not set you will get a an aggregated value for the selected timeframe\n * If the granularity is set you will get data points with the specified granularity **in seconds**\n * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**)\n * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600)\n \n\n## Defaults:\n\n**timeFrame**\n```\n\"timeFrame\": {\n\t\"windowSize\": 60000,\n\t\"to\": {current timestamp}\n}\n```\n" - name: Mobile App Metrics - name: Mobile App Catalog - name: Mobile App Configuration - name: Mobile App Analyze - name: Events - name: Event Settings - name: Application Alert Configuration description: |- The API endpoints of this group can be used to manage Application alert configurations. ## Parameters: - **id:** ID of the application alert config which needs to be updated. - **name:** Name for the application alert configuration. - **description:** Description for the application alert configuration. - **severity:** The severity of the alert when triggered, which is either `5` (Warning), or `10` (Critical). - **triggering:** Optional flag to indicate whether also an Incident is triggered or not. - **applications:** Selection of application, services and endpoints in scope. The selection defines a tree of included or excluded sub entities. The defined `inclusive` flag defines whether this node and his child nodes are included (`inclusive: true`) or excluded (`inclusive: false`) by default. Empty selections or unnecessary selections are not allowed. #### Example 1: Select an entire Application Perspective To select the entire application with ID `` including all its services and endpoints, simply provide the following selection object: ```json "applications": { "": { "applicationId": "" } } ``` Leaf nodes of the selection tree default to `true` if no `inclusive` value is defined. #### Example 2: Specific selection of services and endpoints To select not the entire application with ID ``, but only the entire serivces Service1 with ID `` and Service2 with ID ``, with the exception of endpoint `` of Service2. And in addition, only Endpoint `` of Service3 with id ``, then use the following selection: ```json "applications": { "": { "applicationId": "", "inclusive": false, "services": { "": { "serviceId": "" }, "": { "serviceId": "", "inclusive": true, "endpoints": { "": { "endpointId": "", "inclusive": false } } }, "": { "serviceId": "", "inclusive": false, "endpoints": { "": { "endpointId": "", "inclusive": true } } } } } } ``` - **boundaryScope:** Boundary scope of the Application Perspective - **tagFilterExpression:** Boolean expression of tag filters to define the scope of relevant calls. - **includeInternal:** Optional flag to indicate whether also internal calls are included in the scope or not. The default is `false`. - **includeSynthetic:** Optional flag to indicate whether also synthetic calls are included in the scope or not. The default is `false`. - **evaluationType:** The alert evaluation type of the alert configuration. For example, this allows to configure whether calls of the configured scope is aggregated to a single metric that is then considered for alerting (`"PER_AP"`), or whether each service of an Appliction Perspective is is evaluated individually (`"PER_AP_SERVICE"`). - **granularity:** The evaluation granularity used for detection of violations of the defined threshold. In other words, it defines the size of the tumbling window used. - **rule:** Indicates the type of rule this alert configuration is about. - **threshold:** Indicates the type of threshold this alert rule is evaluated on . - **timeThreshold:** Indicates the type of violation of the defined threshold. - **alertChannelIds:** List of IDs of alert channels defined in Instana. ## Deprecated Parameters - **applicationId:** Unique ID of the Application Perspective. It is replaced by **applications**. - name: Global Application Alert Configuration description: | The API endpoints of this group can be used to manage Global Application alert configurations. ## Parameters: All parameters and deprecated parameters are similar to Application Alert Configuration except **applications** - **applications:** Selection of applications, services and endpoints in scope. It allows more than one application to define a global rule across different Application Perspectives. #### Example: Select multiple Application Perspectives To select multiple applications with IDs ``, `` including all its services and endpoints, simply provide the following selection object: ```json "applications": { "": { "applicationId": "" }, "": { "applicationId": "" } } ``` - name: Infrastructure Alert Configuration - name: Synthetic Alert Configuration description: |+ The API endpoints of this group can be used to manage alert configurations for Synthetic Monitoring. ## Parameters: - **id:** ID of the alert configuration. - **name:** Name for the synthetic alert configuration, which is used as the title of the event when triggered. - **description:** Description for the synthetic alert configuration, which is used as the detials of the triggerd event. - **severity:** The severity of the alert when triggered, which is either `5` (Warning), or `10` (Critical). - **syntheticTestIds:** List of synthetic test IDs this alert configuration is applied to. Check out APIs in [Synthetic Monitoring](#tag/Synthetic-Settings) to e.g. get a [list of all synthetic tests](#operation/getSyntheticTests) available. - **rule:** Indicates the type of rule this alert configuration is about. The only `alertType` available so far is `"failure"`, where the metric name `"status"` is expected. This boolean metric requires no threshold to be specified, because value of `status=0` indicates a test failure. - **timeThreshold:** Defines the triggering condition in time, such as how many consecutive test failures are required to open an event. Setting a higher value for `violationsCount` helps to reduce the number of alerts. - **alertChannelIds:** List of IDs of alert channels defined in Instana. - name: Host Agent description: 'Endpoints of this group can be used to list and configure host agents. ' - name: User - name: Groups description: | Groups are used to permit individual users to perform specific actions and get visibility to an access scope. Each user can be assigned to multiple groups, every one coming with its associated permissions. In addition a group sets the access scope and you can configure the visible areas for the group members. When you are a member of multiple groups, your permissions have an additive effect. Granting access to certain entities within Instana (e.g. Applications, Kubernetes Clusters etc.) is done through a corresponding entry in the `permissionSet` payload. - name: Teams - name: Role - name: Audit Log - name: API Token description: |- API Tokens are unique strings that are used to authenticate and authorize access to the API. These are used to secure API endpoints and ensure that only authorized users can access certain functions. When you raise a request to the API, you must include the API Token in the request header to verify your identity. Instana API Tokens are specific to Tenant Unit (TU) and cannot be used across TUs. Each token has its associated set of permissions, which are preselected when you create the token. - name: Session Settings - name: Maintenance Configuration description: | ### Maintenance Windows Maintenance windows allow you to mute alerts. ### Types of Maintenance Configurations **One-Time**: Executed once at a fixed scheduled time, after which the configuration expires. **Recurrent**: Executed on a schedule basis (e.g., daily, weekly, monthly, or yearly). ### Pausing or Resuming Maintenance Configurations Maintenance windows can be paused or resumed. If a maintenance configuration is paused, alerts for the events matching the scope of the configuration will no longer be muted. - name: Synthetic Calls description: |- The API endpoints of this group can fetch, update and delete the synthetic endpoint configuration rules. **Note:** There are some following restrictions to use `matchSpecification` parameter for Synthetic endpoint configuration: 1. `matchSpecification.type` should be `LEAF`. 2. `matchSpecification.key` should be always be `endpoint.name`. 3. `matchSpecification.operator` should be among the following options: `EQUALS`, `CONTAINS`, `STARTS_WITH`, `ENDS_WITH`, `NOT_STARTS_WITH`, `NOT_ENDS_WITH`. 4. `matchSpecification.entity` should be `DESTINATION` as health check endpoint is considered as a destination endpoint. - name: Releases description: |- These APIs can be used to create, update, delete and fetch releases. ## Mandatory Parameters when sending a request: 1. **Create release** - `name` and `start` are mandatory parameters to create a release with Global scope. - `applications` is a mandatory parameter **along with** Global scope mandatory parameters to create a release with Application Perspective scope. - `services.name` is a mandatory parameter **along with** Global scope mandatory parameters to create a release with Service scope. - `services.scopedTo.applications` is a mandatory parameter **along with Service scope** mandatory parameters to create a release with Service within an Application Perspective scope. 2. **Delete release** - `releaseId` is a mandatory path parameter. 3. **Get release** - `releaseId` is a mandatory path parameter. 4. **Update release** - `releaseId` is a mandatory path parameter. - Same mandatory parameters as **Create release**. - name: SLI Settings description: |- ## Deprecated Parameters **tagFilters** The list of tag filters. It is replaced by **tagFilterExpression** - name: SLI Report - name: Health - name: Custom Dashboards description: |- You can use these API endpoints to manage custom dashboards. We recommend that you leverage the `Edit as JSON` feature found within our user interface to construct the desired request payloads. Specifically to help you build correct widget configurations and access rules. To identify the correct values for the `relatedId` field of the access rules, we recommend using the `/api/custom-dashboard/shareable-users` and `/api/custom-dashboard/shareable-api-tokens` endpoints. These endpoints return our internal IDs for users and API tokens. - name: Usage - name: Synthetic Catalog - name: Synthetic Metrics description: | The endpoints of this group retrieve metrics for Synthetic test results. ### Mandatory Parameters **metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items: 1. *metric* select a particular metric. This is the list of available metrics for all types of Synthetic Tests: synthetic.metricsResponseTime (ms), synthetic.metricsResponseSize (bytes), synthetic.metricsStatusCode (an integer represents an HTTP response code, e.g., 200, 401, 500), synthetic.metricsRequestSize (bytes), synthetic.metricsUploadSpeed (bytes per second), synthetic.metricsDownloadSpeed (bytes per second), synthetic.metricsRedirectTime (ms), synthetic.metricsRedirectCount, synthetic.metricsConnectCount, synthetic.metricsStatus (an integer, 1-success or 0-failure), synthetic.successRate, and synthetic.tags (list of custom properties and values). The following metrics are only available for the HTTPAction type Synthetic Tests: synthetic.metricsBlocking (bytes), synthetic.metricsDns (bytes), synthetic.metricsConnect (bytes), synthetic.metricsSsl (bytes), synthetic.metricsSending (bytes), synthetic.metricsWaiting (bytes), and synthetic.metricsReceiving (bytes). The metric synthetic.customMetrics (list of custom metrics and values) is only available for SSLCertificate and DNS tests. For SSLCertificate, the custom metrics are returned as metrics. For DNS, the custom metrics are returned in the *ismDetails* field. The metric synthetic.tags adds the latest list of custom properties to the response. 2. *aggregation* Depending on the selected metric, different aggregations are available e.g., SUM, MEAN, P90 (90th percentile), DISTINCT_COUNT, and MAX. MAX is only allowed for synthetic.tags. Metric synthetic.successRate only accepts MEAN. **timeFrame** As in our UI you can specify the timeframe for metrics retrieval. ``` windowSize to (ms) (unix-timestamp) <----------------------| ``` The timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with granularity, a default granularity will be used for adjustment. If **groups** includes a groupbyTag that is an array, such as synthetic.tags, the maximum windowSize is *3600000* (1 hour). ### Optional Parameters **metrics** By default you will get an aggregated metric for the selected timeframe * *granularity* * If it is not set you will get an aggregated value for the selected timeframe * If the granularity is set you will get data points with the specified granularity **in seconds** * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**) * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600) * The granularity values are the same for all metrics **pagination** if you use pagination, fix the timeFrame for the retrieved metrics 1. *page* select the page number you want to retrieve 2. *pageSize* set the number of Synthetic test results you want to return with one query **groups** You can group test results by one or more tags. 1. *groupbyTag* use the metric or tag name, e.g. "synthetic.applicationId", to group by its value 2. *groupbyTagSecondLevelTag* is optional. It is used to further qualify values when the *groupbyTag* is an array of key/value pairs, such as "synthetic.tags". 3. *groupbyTagEntity* is ignored and therefore does not need to be specified. If *groups* is not specified, the default grouping is *synthetic.testId*. An example of grouping by the custom property "region": ``` "groups": [ { "groupbyTag": "synthetic.tags", "groupbyTagSecondLevelTag": "region" } ] ``` **includeAggregatedTestIds** Optionally used when not grouping by testId. Specifying *true* will return a list of tests that were included in the aggregated result for each row returned. **tagFilterExpression** It serves as a filter to narrow down return results. Its type can be either EXPRESSION or TAG_FILTER with logical operators "AND" or "OR". A tagFilterExpression can specify a custom property by its key and value. ``` "tagFilterExpression": { "type": "EXPRESSION", "logicalOperator": "AND", "elements": [ { "name": "synthetic.tags", "key": "region", "value": "Denver", "operator": "EQUALS" }, { "name": "synthetic.locationId", "operator": "EQUALS", "stringValue": "abcdefgXSJmQsehOWg1S" } ] } ``` ### Defaults **groups** ``` "groups": [ "groupbyTag": "synthetic.testId" ] ``` **includeAggregatedTestIds** * *includeAggregatedTestIds:* *true* when grouping by synthetic.testId, otherwise *false*. **metrics** * *granularity:* 0 **pagination** * If **pagination** is not specified, the entire result set is returned. **timeFrame** ``` "timeFrame": { "to": {current timestamp}, "windowSize": 60000 } ``` ### Sample payload to get the mean synthetic.metricsResponseTIme for each Synthetic test within the specified timeFrame ```json { "metrics": [ { "aggregation": "MEAN", "metric": "synthetic.metricsResponseTime" }], "timeFrame": { "to": 0, "windowSize": 1800000 } } ``` ### Sample payload to get the mean synthetic.metricsResponseTIme for each Synthetic test within the specified timeFrame grouped by applicationId ```json { "metrics": [ { "aggregation": "MEAN", "metric": "synthetic.metricsResponseTime" }], "timeFrame": { "to": 0, "windowSize": 1800000 }, "groups": [{ "groupbyTag": "synthetic.applicationId" }] } ``` ### Sample payload to get the synthetic.successRate for the Synthetic tests within the specified timeFrame grouped by the two custom properties region and cluster. ```json { "metrics": [ { "aggregation": "MEAN", "metric": "synthetic.successRate" }], "timeFrame": { "to": 0, "windowSize": 1800000 }, "groups": [ { "groupbyTag": "synthetic.tags", "groupbyTagSecondLevelKey": "region" }, { "groupbyTag": "synthetic.tags", "groupbyTagSecondLevelKey": "cluster" }] } ``` - name: Synthetic Settings description: |- The API endpoints of this group can be used to manage Synthetic Locations, Synthetic Tests and Synthetic Credentials. ## Synthetic Location Properties: - **id** Unique identifier of the location resource. - **label** Friendly name of the location. - **description** The description of the location. - **locationType** Indicates if the location is managed or private. - **playbackCapability** The playback capabilities provided by this location resource. The playbackCapability object has the following properties: - **syntheticType** Different types of synthetic tests that can be executed at this location. Possible values are HTTPAction, HTTPScript, BrowserScript, WebpageAction, WebpageScript, SSLCertificate, and DNS. The values are corresponding to the syntheticType parameter available in the createSyntheticTest endpoint. - **browserType** Different types of supported Web browsers when creating synthetic tests for BrowserScript, WebpageAction and WebpageScript. Right now, only Chrome and Firefox are supported. - **geoPoint** An object includes the longitude, latitude, country name, and city name properties of a location. - **popVersion** PoP's version - **customProperties** An object with name/value pairs to provide additional information of the Synthetic location. - **createdAt** The location created time, following RFC3339 standard. - **modifiedAt** The location modified time, following RFC3339 standard. - **observedAt** The timestamp when PoP requests a Synthetic test, following RFC3339 standard. ## Synthetic Test Properties: - **id** Unique identifier of the Synthetic test resource. - **label** Friendly name of the Synthetic test resource. - **description** The description of the Synthetic test. - **active** Indicates if the Synthetic test is started or not. The default is true. - **applicationId** Unique identifier of the Application Perspective. - **configuration** An object which has two properties: syntheticType and the corresponding configuration object: - **syntheticType** The type of the Synthetic test. Supported values are HTTPAction, HTTScript, BrowserScript, WebpageAction, WebpageScript, SSLCertificate, and DNS. The locations assigned to execute this Synthetic test must support this syntheticType, i.e. the location's playbackCapabilities property. - **markSyntheticCall** Flag used to control if HTTP calls will be marked as synthetic calls/endpoints in Instana backend, so they can be ignored when calculating service and application KPIs, users can also check "Hide Synthetic Calls" checkbox to hide/show them in UI. - **retries** An integer type from 0 to 2, 0 by default. It indicates how many attempts (max 2) will be allowed to get a successful connection (not necessarily a successful result). For API Simple, failures like socket hangups, gateway timeouts, and DNS lookup fails cause retires, but 404's 400's, do not. API Script and Browser Script test will retry if script failed for any reason. - **retryInterval** The time interval between retries in seconds. The default is 1s, max is 10s. - **timeout** The timeout to be used by the PoP playback engines running the test. Values are in integers followed by a time unit (ms, s, m). It is the minimum value of test configuration `timeout`, `testFrequency` and `maxTimeout` configured in PoP deployment. - If user defined timeout value exceeds the `maxTimeout` or `testFrequency` in test configuration, the timeout value does not take effect and PoP playback engines use the smaller one of `maxTimeout` and `testFrequency` as the actual timeout value. - If timeout value in test configuration is not provided, the default value is **1m** for HTTPAction and HTTPScript tests. BrowserScript, WebpageAction, and WebpageScript tests use the smaller one of `maxTimeout` and `testFrequency` as the actual timeout value. - **XXXConfiguration** The configuration corresponding to the syntheticType. Configuration types are HTTPActionConfiguration, HTTPScriptConfiguration, BrowserScriptConfiguration, WebpageActionConfiguration, WebpageScriptConfiguration, SSLCertificateConfiguration, and DNSConfiguration. - **HTTPActionConfiguration** has the following properties: - **url** The URL is being tested. It is required. - **syntheticType** Its value is HTTPAction. It is required. - **operation** An operation being used must be one of GET, HEAD, OPTIONS, PATCH, POST, PUT, and DELETE. By default, it is GET. - **headers** An object with header/value pairs - **header** The header to be sent in operation. It should not contain the terminating ':' character. - **value** The value of the header. - **body** The body content to send with the operation. - **validationString** An expression to be evaluated. - **followRedirect** A boolean type, true by default; to allow redirect. - **allowInsecure** A boolean type, true by default; if set to true then allow insecure certificates (expired, self-signed, etc). - **expectStatus** An integer type, by default, the Synthetic passes for any 2XX status code. This forces just one status code to cause a pass, including what would normally be a fail, for example, a 404. - **expectJson** An optional object to be used to check against the test response object. - **expectMatch** An optional regular expression string to be used to check the test response. - **expectExists** An optional list of property labels used to check if they are present in the test response object. - **expectNotEmpty** An optional list of property labels used to check if they are present in the test response object with a non-empty value. - **HTTPScriptConfiguration** has the following properties: - **script** The Javascript content, it is plain text, not base64 encoded. **script** and **scripts** are mutually exclusive. - **scripts** Multi script package. **script** and **scripts** are mutually exclusive. - **scriptFile** The name of the file to run - **bundle** All required js files bundled up into a single zip file with base64 encoded - **syntheticType** Its value is HTTPScript. It is required. - The API Script Guide, including examples, can be found at: https://www.ibm.com/docs/en/instana-observability/current?topic=monitoring-using-api-scripts - **BrowserScriptConfiguration** has the following properties: - **script** A Node.js based test script, it is plain text, not base64 encoded. **script** and **scripts** are mutually exclusive. - **scripts** Multi script package. **script** and **scripts** are mutually exclusive. - **scriptFile** The name of the file to run - **bundle** All required js files bundled up into a single zip file with base64 encoded - **scriptType** The type of the script, right now, only Basic type is supported. - **browser** The type of the browser: chrome or firefox, chrome by default. - **recordVideo** A boolean type, false by default. - **syntheticType** Its value is BrowserScript. It is required. - **WebpageActionConfiguration** has the following properties: - **url** The URL of the Web page being tested. It is required. - **browser** The type of the browser: chrome or firefox, chrome by default. - **recordVideo** A boolean type, false by default. - **syntheticType** Its value is WebpageAction. It is required. - **WebpageScriptConfiguration** has the following properties: - **script** A Selenium IDE recording script. It is required. - **browser** The type of the browser: chrome or firefox, chrome by default. - **recordVideo** A boolean type, false by default. - **syntheticType** Its value is WebpageScript. It is required. - **SSLCertificateConfiguration** has the following properties: - **hostname** The hostname of the SSL enabled website. - **port** The SSL port, set to 443 by default. - **daysRemainingCheck** The number of days to use on the validation check. The test will fail when the certificate validity has less than this number of days remaining until expiration. - **acceptSelfSignedCertificate** A boolean type, false by default, used to support self-signed certificates. - **DNSConfiguration** has the following properties: - **acceptCNAME** A boolean type, false by default. When enabled, the canonical name in the DNS response is accepted and no further lookups are performed. - **lookup** The name or IP address of the host whose record is being queried. - **lookupServerName** A boolean type, false by default, that enables recursive DNS lookups. - **port** The DNS server listening port, set to 53 by default. - **queryTime** An optional filter to be used to validate the test response time. Syntax: \\\, where: - **key** is the name of the property to be validated. Only **responseTime** is supported. - **operator** is one of EQUALS, GREATER_THAN, LESS_THAN. - **value** is a numeric value, in milliseconds, Default is 10000. - **queryType** The DNS query type used in the test. Value must be one of ALL, ALL_CONDITIONS, ANY, A, AAAA, CNAME, NS. Default value is A. - If **ALL** is defined, all available query types will be executed. - If **ALL_CONDITIONS** is defined, only the query types defined in **targetValues** will be executed. - **recursiveLookups** A boolean type, false by default, that enables recursive DNS lookups. - **server** The IP address of the DNS server. - **serverRetries** The number of times to try a timed-out DNS lookup before returning failure. Default is 1. - **targetValues** An optional list of filters to be used to validate the test response. Syntax: [\\\, ...], where: - **key** is the name of the property to be validated. - **operator** is one of CONTAINS, IS, MATCHES, NOT_MATCHES. - **value** is the expected property value. - **transport** The protocol used to do DNS check. Only UDP is supported. - **createdAt** The test created time, following RFC3339 standard. - **createdBy** The user identifier who created the test resource. - **customProperties** An object with name/value pairs to provide additional information of the Synthetic test. - **locations** It is an array of the PoP location IDs where the Synthetic tests are located. - **applications** It is an array of the unique identifiers of the Application Perspectives associated to this test. - **modifiedAt** The test last updated time, following RFC3339 standard. - **modifiedBy** The user identifier who updated the test resource. - **playbackMode** Defines how the Synthetic test should be executed across multiple PoPs. This property is optional, and its default value is Simultaneous, and only Simultaneous is supported, i.e., Synthetic tests run at all locations simultaneously. - **testFrequency** How often the playback for a Synthetic test is scheduled. The unit of the testFrequency parameter is minute. The default is every 15 minutes. The range is from 1 minute to 120 minutes. For SSLCertificate tests, the default is every 24 hours and the range is from 60 minute to 1440 minutes. ## Synthetic Credentials: Synthetic credentials can be used to store passwords and/or secrets used by the Synthetic Tests. All Script Tests can use credentials in their body and API Simple Tests can use them on header parameters. It is required that the credentials used in the test be created before the test is created or modified. Credentials can be associated to multiple Application Perspectives, Websites, and Mobile Apps. Tests using credentials are validated during test creation and update whether you use the API or UI, as follows: 1. The user Id of the logged in user or API Token being used to create or modify the test must have permission to use credentials. Requests to create or update a test referencing credentials without the correct permission will fail with return code `Forbidden`. 2. The credentials or secrets used in the test must exist. Requests to create or update a test referencing credentials that do not exist will fail with return code `Bad Request`. 3. Credentials associated to Application Perspectives, Websites, and Mobile Apps can only be used by tests that are associated to at least one common Application Perspective, Websites, and MobileApps. Requests to create or update a test referencing credentials without matching Application Perspectives, Websites, or Mobile Apps will fail with return code `Bad Request`. - name: Synthetic Test Playback Results description: "The endpoints of this group retrieve the results for defined Synthetic tests.\n\n**Note on names in TagFilter/TagFilterExpression**: From R243, the name used in a TagFilter or a TagFilterExpression has the format: synthetic.\\.\nIt can be one of the following: synthetic.id (id is the test result id), synthetic.testId,\nsynthetic.testName, synthetic.locationId, synthetic.applicationId, synthetic.serviceId, synthetic.syntheticType,\nsynthetic.locationName, and synthetic.locationLabel. If it is a metric name, then the format is: synthetic.metrics\\.\nFor example, synthetic.metricsResponseTime, synthetic.metricsStatus.\n\nThe names used prior to R243 should be considered as deprecated. They will be accepted temporarily and will be removed in an upcoming release.\n\n## Get Synthetic test playback results \nThe endpoint returns the aggregated Synthetic test result data\n\n### Mandatory Parameters \n\n**testId** An array of the unique identifiers of Synthetic tests\n\n**metrics** A list of metric objects that define which metric should be returned, with the defined aggregation. Each metrics objects consists of minimum two items:\n1. *metric* select a particular metric. This is the list of available metrics for all types of Synthetic Tests: \n synthetic.metricsResponseTime (ms), synthetic.metricsResponseSize (bytes), synthetic.metricsStatusCode (an integer represents an HTTP response code, e.g., 200, 401, 500), synthetic.metricsRequestSize (bytes), \n synthetic.metricsUploadSpeed (bytes per second), synthetic.metricsDownloadSpeed (bytes per second), \n synthetic.metricsRedirectTime (ms), synthetic.metricsRedirectCount, synthetic.metricsConnectCount, synthetic.metricsStatus (an integer, 1-success or 0-failure), and synthetic.tags (list of custom properties and values). \n \n The following metrics are only available for the HTTPAction type Synthetic Tests: synthetic.metricsBlocking (bytes), synthetic.metricsDns (bytes), synthetic.metricsConnect (bytes), synthetic.metricsSsl (bytes), \n synthetic.metricsSending (bytes), synthetic.metricsWaiting (bytes), and synthetic.metricsReceiving (bytes).\n\n The metric synthetic.customMetrics (list of custom metrics and values) is only available for SSLCertificate and DNS tests. For SSLCertificate, the custom metrics are returned as metrics. For DNS, the custom metrics are returned in the *ismDetails* field.\n\n The metric synthetic.tags adds the latest list of custom properties to the response.\n\n2. *aggregation* Depending on the selected metric, different aggregations are available e.g., SUM, MEAN, P90 (90th percentile), DISTINCT_COUNT, and MAX. MAX is only allowed for synthetic.tags.\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n```\nThe timeFrame might be adjusted to fit the metric granularity so that there is no partial bucket. For example, if the query timeFrame is 08:02 - 09:02 and the metric granularity is 5 minutes, the timeFrame will be adjusted to 08:05 - 09:00. The adjusted timeFrame will be returned in the response payload. If the query does not have any metric with granularity, a default granularity will be used for adjustment.\n\n### Optional Parameters\n\n**metrics** By default you will get an aggregated metric for the selected timeframe\n\n* *granularity*\n * If it is not set you will get an aggregated value for the selected timeframe\n * If the granularity is set you will get data points with the specified granularity **in seconds**\n * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in **milliseconds**)\n * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600)\n * The granularity values are the same for all metrics\n\n**pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics\n1. *page* select the page number you want to retrieve\n2. *pageSize* set the number of Synthetic test results you want to return with one query\n\n**order** You can order the returned items alphanumerical by label, either ascending or descending\n1. *by* Use the metric name, e.g. \"synthetic.metricsResponseTime\", to order by its value\n2. *direction* either ascending (ASC) or descending (DESC)\n\n**tagFilters** It serves as a filter to narrow down return results.\nIt will be replaced by **tagFilterExpression**.\n\n**tagFilterExpression** It serves as a filter to narrow down return results. Its type can be either EXPRESSION or TAG_FILTER with\nlogical operators AND or OR.\n\nA payload only needs either tagFilters or tagFilterExpression as a filter, not both.\n\nEither tagFilters or tagFilterExpression can specify a custom property by its key and value.\n```\n\"tagFilters\":[{\n \"name\":\"synthetic.tags\",\n \"key\":\"location\",\n \"value\":\"Denver\",\n \"operator\":\"EQUALS\"\n}]\n```\n\nTo narrow down the result set you have two options to search for a test.\n\n**locationId | applicationId**\n\n* *synthetic.locationId:* filter by locationId\n\n* *synthetic.applicationId:* filter by applicationId\n\n### Defaults\n\n**metrics**\n* *granularity:* 0\n\n**timeFrame**\n```\n\"timeFrame\": {\n\t\"windowSize\": 60000,\n\t\"to\": {current timestamp}\n}\n```\n**locationId | applicationId**\n* no filters are applied in the default call\n\n### Sample payload to get a Synthetic test result\n```\n{\n \"testId\": [\"tUmWgvzdo1Q1vpVRpzR5\", \"Pg0Q1UqHRd7OMysohVLd\"],\n \"//comment1\": \"Get test results from last 30 minutes (windowSize), data are aggregated every 10 minutes (granularity)\",\n \"//comment2\": \"The granularity values for responseTime and responseSize must be the same\"\n \"metrics\": [\n {\n \"aggregation\": \"MEAN\",\n \"granularity\": 600, \n \"metric\": \"synthetic.metricsResponseTime\"\n },\n {\n \"aggregation\": \"MEAN\",\n \"granularity\": 600, \n \"metric\": \"synthetic.metricsResponseSize\"\n }],\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 1800000 \n }\n}\n```\n\n## Get a list of Synthetic test playback results (analytic function)\nThe endpoint returns the Synthetic test result data based upon the specified analytic function.\nThe *tagFilterExpression* is applied to the result data and is then grouped by the synthetic.testId before the analytic function is applied. \nOptionally, after the analytic function is applied to the result data, the *tagFilters* can further filter the result. \n\n### Mandatory Parameters\n**analyticFunction** It is a string. Valid values are *FIRST_VALUE* and *LAST_VALUE*.\n\n**syntheticMetrics** It is an array of metrics. The available metrics for all types of Synthetic Tests: synthetic.id (a string representing the test result ID),\nsynthetic.metricsResponseTime (ms), synthetic.metricsResponseSize (bytes), synthetic.metricsStatusCode (an integer represents an HTTP response code, e.g., 200, 401, 500), synthetic.metricsRequestSize (bytes),\nsynthetic.metricsUploadSpeed (bytes per second), synthetic.metricsDownloadSpeed (bytes per second),\nsynthetic.metricsRedirectTime (ms), synthetic.metricsRedirectCount, synthetic.metricsConnectCount, synthetic.metricsStatus (an integer, 1-success or 0-failure), and synthetic.tags (list of custom properties and values).\n\nThe following metrics are only available for the HTTPAction type Synthetic Tests: synthetic.metricsBlocking (bytes), synthetic.metricsDns (bytes), synthetic.metricsConnect (bytes), synthetic.metricsSsl (bytes),\nsynthetic.metricsSending (bytes), synthetic.metricsWaiting (bytes), and synthetic.metricsReceiving (bytes).\n\nThe metric synthetic.customMetrics (list of custom metrics and values) is only available for SSLCertificate and DNS tests. For SSLCertificate, the custom metrics are returned as metrics. For DNS, the custom metrics are returned in the *ismDetails* field.\n\nThe metric synthetic.tags adds the latest list of custom properties to the response.\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n```\n\n### Optional Parameters\n**includeLocationIdGrouping** A boolean. The default grouping for the API is synthetic.testId. \nSpecify *true* to change the grouping to synthetic.testId, synthetic.locationId. The default for \nthis parameter is *false*.\n\n**pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics\n1. *page* select the page number you want to retrieve\n2. *pageSize* set the number of Synthetic test results you want to return with one query\n\n**order** You can order the returned items alphanumerical by label, either ascending or descending\n1. *by* Use the metric name, e.g. \"synthetic.metricsResponseTime\" to order by that value\n2. *direction* either ascending (ASC) or descending (DESC)\n\n**tagFilterExpression** It serves as a filter to define the scope of relevant results that will \nbe grouped and then applied to the analytic function. Its type can be either EXPRESSION or \nTAG_FILTER with logical operators *AND* or *OR*.\n\n**tagFilters** The tagFilters are applied to the result set generated by the analytic function. \nAn example: if there are three tests and their last value status\nare 1, 0, 1 (indicating success, failure, success) and \n**tagFilters** is not specified, then the API with LAST_VALUE will\nreturn three tests with the stated statuses. If **tagFilters** is specified with\nsynthetic.metricsStatus equal to 0 (failed), then the final result set will be the tests that \nfailed the last time that they ran and in this example will be one record consisting\nof the test with status 0.\n\nEither tagFilters or tagFilterExpression can specify a custom property by its key and value.\n```\n\"tagFilters\":[{\n \"name\":\"synthetic.tags\",\n \"key\":\"location\",\n \"value\":\"Denver\",\n \"operator\":\"EQUALS\"\n}]\n```\n\n### Sample payload to retrieve the response_size and response_time from the last result of each test that ran within the last five minutes. Include both scheduled and on-demand tests.\n```json\n{\n \"syntheticMetrics\":[\"synthetic.metricsResponseSize\",\"synthetic.metricsResponseTime\"],\n \"analyticFunction\": \"LAST_VALUE\",\n \"order\":{\n \"by\":\"synthetic.startTime\",\n \"direction\":\"DESC\"\n },\n \"tagFilterExpression\": {\n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"AND\",\n \"elements\":[{\n \"stringValue\":\"All\",\n \"name\":\"synthetic.runType\",\n \"operator\":\"EQUALS\"\n }]\n },\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 300000\n }\n}\n```\n\n### Sample payload to retrieve the response_size and response_time from the last result of each test that ran within the last five minutes. Include both scheduled and on-demand tests. Only return results for tests that failed the last time that they ran. \n```json\n{\n \"syntheticMetrics\":[\"synthetic.metricsResponseSize\",\"synthetic.metricsResponseTime\"],\n \"analyticFunction\": \"LAST_VALUE\",\n \"order\":{\n \"by\":\"synthetic.startTime\",\n \"direction\":\"DESC\"\n },\n \"tagFilterExpression\": {\n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"AND\",\n \"elements\":[{\n \"stringValue\":\"All\",\n \"name\":\"synthetic.runType\",\n \"operator\":\"EQUALS\"\n }]\n },\n \"tagFilters\":[{\n \"numberValue\": 0,\n \"name\":\"synthetic.metricsStatus\",\n \"operator\":\"EQUALS\"\n }],\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 300000\n }\n}\n```\n\n## Get a list of Synthetic test playback results (no aggregation)\n### Mandatory Parameters\n**syntheticMetrics** It is an array of metrics. The available metrics for all types of Synthetic Tests: synthetic.id (a string representing the test result ID), \nsynthetic.metricsResponseTime (ms), synthetic.metricsResponseSize (bytes), synthetic.metricsStatusCode (an integer represents an HTTP response code, e.g., 200, 401, 500), synthetic.metricsRequestSize (bytes),\nsynthetic.metricsUploadSpeed (bytes per second), synthetic.metricsDownloadSpeed (bytes per second),\nsynthetic.metricsRedirectTime (ms), synthetic.metricsRedirectCount, synthetic.metricsConnectCount, synthetic.metricsStatus (an integer, 1-success or 0-failure), and synthetic.tags (list of custom properties and values).\n\nThe following metrics are only available for the HTTPAction type Synthetic Tests: synthetic.metricsBlocking (bytes), synthetic.metricsDns (bytes), synthetic.metricsConnect (bytes), synthetic.metricsSsl (bytes),\nsynthetic.metricsSending (bytes), synthetic.metricsWaiting (bytes), and synthetic.metricsReceiving (bytes).\n\nThe metric synthetic.customMetrics (list of custom metrics and values) is only available for SSLCertificate and DNS tests. For SSLCertificate, the custom metrics are returned as metrics. For DNS, the custom metrics are returned in the *ismDetails* field.\n\nThe metric synthetic.tags adds the latest list of custom properties to the response.\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n```\n\n### Optional Parameters\n**pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics\n1. *page* select the page number you want to retrieve\n2. *pageSize* set the number of Synthetic test results you want to return with one query\n\n**order** You can order the returned items alphanumerical by label, either ascending or descending\n1. *by* Use the metric name, e.g. \"synthetic.metricsResponseTime\" to order by that value\n2. *direction* either ascending (ASC) or descending (DESC)\n\n**tagFilters** It serves as a filter to narrow down return results. \nIt will be replaced by **tagFilterExpression**.\n\n**tagFilterExpression** It serves as a filter to narrow down return results. Its type can be either EXPRESSION or TAG_FILTER with \nlogical operators AND or OR.\n\nA payload only needs either tagFilters or tagFilterExpression as a filter, not both.\n\nEither tagFilters or tagFilterExpression can specify a custom property by its key and value.\n```\n\"tagFilters\":[{\n \"name\":\"synthetic.tags\",\n \"key\":\"location\",\n \"value\":\"Denver\",\n \"operator\":\"EQUALS\"\n}]\n```\n\n### Sample payload to get a list of Synthetic test results with tagFilters\n```json\n{\n \"syntheticMetrics\":[\"synthetic.metricsResponseTime\",\"synthetic.metricsResponseSize\"],\n \"order\":{\n \"by\":\"synthetic.metricsResponseTime\",\n \"direction\":\"DESC\"\n },\n \"tagFilters\":[{\n \"stringValue\":\"hYziqsaXSJmQsehOWg1S\",\n \"name\":\"synthetic.testId\",\n \"operator\":\"EQUALS\"\n }],\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 1800000\n }\n}\n```\n\n### Sample payload to get a list of Synthetic test results with tagFilterExpression\n```json\n{\n \"syntheticMetrics\":[\"synthetic.metricsResponseTime\",\"synthetic.metricsResponseSize\"],\n \"order\":{\n \"by\":\"synthetic.metricsResponseTime\",\n \"direction\":\"DESC\"\n },\n \"tagFilterExpression\": { \n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"AND\",\n \"elements\":[{\n \"stringValue\":\"hYziqsaXSJmQsehOWg1S\",\n \"name\":\"synthetic.testId\",\n \"operator\":\"EQUALS\"\n }, {\n \"name\": \"synthetic.locationId\", \n \"operator\": \"EQUALS\", \n \"stringValue\": \"abcdefgXSJmQsehOWg1S\"\n }]\n },\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 1800000\n }\n}\n```\n\n### Sample payload to get the custom metrics of a Synthetic SSLCertificate test\n```json\n{\n \"syntheticMetrics\":[\"synthetic.customMetrics\"],\n \"tagFilters\":[{\n \"stringValue\":\"dk6yzb9fxCDlB6axIhUu\",\n \"name\":\"synthetic.testId\",\n \"operator\":\"EQUALS\"\n }],\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 172800000\n }\n}\n```\n\n## Get a list of Synthetic tests with Success Rate and Average Response Time data\nThe endpoint returns a list of Synthetic tests with Success Rate and Average Response Time result data\n\n### Mandatory Parameters\n\n**metrics**\n1. *metric* select a particular metric. Right now, only synthetic.metricsResponseTime (ms) is supported.\n2. *aggregation* MEAN\n3. *granularity* 60\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n\n\"timeFrame\": {\n\t\"windowSize\": 60000,\n\t\"to\": {current timestamp}\n}\n```\n\n### Optional Parameters\n\n**pagination** if you use pagination you most probably want to fix the timeFrame for the retrieved metrics\n1. *page* select the page number you want to retrieve\n2. *pageSize* set the number of Synthetic test results you want to return with one query\n\n**order** You can order the returned items alphanumerical by label, either ascending or descending\n1. *by* Use the metric name, \"synthetic.metricsResponseTime\", to order by its value\n2. *direction* either ascending (ASC) or descending (DESC)\n\n**tagFilters** It serves as a filter to narrow down return results. The name of a tagFilter is one of the following: \nsynthetic.syntheticType, synthetic.locationId, and synthetic.applicationId.\nIt will be replaced by **tagFilterExpression**.\n```\n\"tagFilters\":[{\n \"stringValue\":\"hYziqsaXSJmQsehOWg1S\",\n \"name\":\"synthetic.applicationId\",\n \"operator\":\"EQUALS\"\n}]\n```\n\n**tagFilterExpression** It serves as a filter to narrow down return results. Its type can be either EXPRESSION or TAG_FILTER with\nlogical operators AND or OR.\n```\n\"tagFilterExpression\": { \n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"AND\",\n \"elements\":[{\n \"name\": \"synthetic.metricsStatus\", \n \"operator\": \"EQUALS\", \n \"numberValue\": 1\n }, {\n \"name\": \"synthetic.locationId\", \n \"operator\": \"EQUALS\", \n \"stringValue\":\"WnjlKKbgzLDnyGra6PAs\"\n }]\n}\n```\n\nA payload only needs either tagFilters or tagFilterExpression as a filter, not both.\n\nEither tagFilters or tagFilterExpression can specify a custom property by its key and value.\n```\n\"tagFilters\":[{\n \"name\":\"synthetic.tags\",\n \"key\":\"location\",\n \"value\":\"Denver\",\n \"operator\":\"EQUALS\"\n}]\n```\n\nTo narrow down the result set you have three options to search for a test.\n\n**syntheticType | locationId | applicationId**\n\n* *synthetic.syntheticType:* filter by syntheticType, either HTTPAction or HTTPScript\n\n* *synthetic.locationId:* filter by locationId\n\n* *synthetic.applicationId:* filter by applicationId\n\n\nTests can also be filtered by their active state (`true`/`false`) using the custom property label `synthetic.testActive`.\n```\n\"tagFilters\": [{ \n \"name\":\"synthetic.testActive\", \n \"operator\":\"EQUALS\",\n \"booleanValue\": false \n}]\n```\n\n### Defaults\n\n**syntheticType | locationId | applicationId**\n* no filters are applied in the default call\n\n### Sample payload to get a list of active Synthetic tests with SuccessRate and Average Response Time results\n```\n{\n \"metrics\": [\n {\n \"aggregation\": \"MEAN\",\n \"granularity\": 60, \n \"metric\": \"synthetic.metricsResponseTime\"\n }],\n \"tagFilterExpression\": { \n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"AND\",\n \"elements\":[{\n \"name\": \"synthetic.locationId\", \n \"operator\": \"EQUALS\", \n \"stringValue\": \"abcdefgXSJmQsehOWg1S\"\n }, {\n \"name\": \"synthetic.testActive\",\n \"operator\": \"EQUALS\",\n \"booleanValue\": true\n }]\n },\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 3600000 \n }\n}\n```\n\n## Get a list of Synthetic locations with Last Test Run on (each location) data\nThe endpoint returns a list of Synthetic locations with Last Test Run on (each location) result data\n\n### Mandatory Parameters\n\n**timeFrame** As in our UI you can specify the timeframe for metrics retrieval.\n```\n windowSize to\n (ms) (unix-timestamp)\n<----------------------|\n\n\"timeFrame\": {\n\t\"windowSize\": 60000,\n\t\"to\": {current timestamp}\n}\n```\n\n### Optional Parameters\n\n**pagination** if you use pagination you should use the same timeFrame for all of the pages you want to query\n1. *page* select the page number you want to retrieve\n2. *pageSize* set the number of Synthetic locations you want to return with one query\n\n**order** You can order the returned items alphanumerically by label, either ascending or descending\n1. *by* Use the metric name, e.g., \"location_name\", to order by its value\n2. *direction* either ascending (ASC) or descending (DESC)\n\n The sorting can be done on the following metrics: location_name, location_label, status, type, total_tests,\n last_test_run, and namespace\n\n**tagFilters** It serves as a filter to narrow down return results. The name of a tagFilter is one of the following: \nsynthetic.locationName, synthetic.locationLabel, and synthetic.locationId.\nIt will be replaced by **tagFilterExpression**.\n```\n\"tagFilters\":[{\n \"stringValue\":\"hYziqsaXSJmQsehOWg1S\",\n \"name\":\"synthetic.locationId\",\n \"operator\":\"EQUALS\"\n}]\n```\n\n**tagFilterExpression** It serves as a filter to narrow down return results. Its type can be either EXPRESSION or TAG_FILTER with\nlogical operators AND or OR.\n```\n\"tagFilterExpression\": { \n \"type\":\"EXPRESSION\",\n \"logicalOperator\":\"OR\",\n \"elements\":[{\n \"name\": \"synthetic.locationId\", \n \"operator\": \"EQUALS\", \n \"stringValue\":\"WnjlKKbgzLDnyGra6PAs\"\n }]\n}\n```\n\nA payload only needs either tagFilters or tagFilterExpression as a filter, not both.\n\n### Sample payload to get a list of Synthetic locations with Last Test Run on (each location) data\n```\n{\n \"order\": {\n \t\"by\": \"status\", \n \t\"direction\": \"Desc\"\n },\n \"timeFrame\": {\n \"to\": 0,\n \"windowSize\": 3600000 \n }\n}\n```\n\n## Get Synthetic test playback result detail data\n\n### Query Parameters\n**type** The type of the detailed data. Its value is one of these types: SUBTRANSACTIONS, LOGS, and HAR.\n\n**name** The name of the file to be retrieved, if more than one file available for the same type. Used when the type equals to LOGS or IMAGES\n\n## Download a Synthetic test playback result detail data file\n\n### Query Parameter\n**type** The type of a single compressed file. Its value is one of these types: SUBTRANSACTIONS, LOGS, IMAGES, VIDEOS, and HAR.\n" - name: Action Catalog - name: Action History - name: Policies - name: Authentication - name: Log Alert Configuration - name: End User Monitoring - name: AI Management paths: '/api/apdex/report/{apdexId}': get: description: Generate Apdex Report for a specified Apdex ID. operationId: getApdexReport parameters: - description: Apdex Configuration ID example: nCtEoR6NSPqG61QkIkwwCw in: path name: apdexId required: true schema: type: string - description: 'Starting point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' example: 1706713140000 in: query name: from required: true schema: type: integer format: int64 - description: 'Ending point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' example: 1706813100000 in: query name: to required: true schema: type: integer format: int64 responses: '200': content: application/json: example: apdexId: nCtEoR6NSPqG61QkIkwwCw from: 1706713140000 to: 1706813100000 apdexScore: - - 1706713140000 - 0.5 - - 1706779500000 - 0.5 schema: type: array items: $ref: '#/components/schemas/ApdexReport' description: OK '404': content: application/json: example: errors: - There is no Apdex configuration for the given ID. schema: type: array items: type: string description: No Apdex configuration for the given ID security: - ApiKeyAuth: - Default summary: Generate Apdex report tags: - Apdex Report x-ibm-ahub-byok: true /api/application-monitoring/analyze/backend-correlation: get: description: |- Resolves backend trace IDs using correlation IDs from website and mobile app monitoring beacons. For more information on Application Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-analyze. operationId: getCorrelatedTraces parameters: - description: | Here, the `backendTraceId` is typically used which can be obtained from the `Get all beacons` API endpoint for website and mobile app monitoring. For XHR, fetch, or HTTP beacons, the `beaconId` retrieved from the same API endpoint can also serve as the `correlationId`. example: 0v7f55879ca12345 in: query name: correlationId required: true schema: type: string maxLength: 128 minLength: 0 responses: '200': content: application/json: example: - traceId: c606ccf3578135c6 schema: type: array items: $ref: '#/components/schemas/BackendTraceReference' description: OK security: - ApiKeyAuth: - Default summary: Resolve Trace IDs from Monitoring Beacons. tags: - Application Analyze x-ibm-ahub-byok: true /api/application-monitoring/analyze/call-groups: post: operationId: getCallGroup parameters: - description: 'If enabled, fill the missing data points in the metric result with timestamp and value 0.' in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: example: group: groupbyTag: service.name groupbyTagEntity: DESTINATION metrics: - aggregation: SUM metric: calls - aggregation: P75 metric: latency granularity: 360 includeInternal: false includeSynthetic: false order: by: calls direction: DESC pagination: retrievalSize: 20 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: call.type operator: EQUALS entity: NOT_APPLICABLE value: DATABASE - type: TAG_FILTER name: service.name operator: EQUALS entity: DESTINATION value: ratings timeFrame: to: '1688366990000' windowSize: '600000' schema: $ref: '#/components/schemas/GetCallGroups' responses: '200': content: application/json: example: items: - name: ratings timestamp: 1688366520000 cursor: '@class': .IngestionOffsetCursor ingestionTime: 1688980829000 offset: 1 metrics: latency.p75.360: - - 1688366520000 - 1 canLoadMore: false totalHits: 1 totalRepresentedItemCount: 1 totalRetainedItemCount: 1 adjustedTimeframe: windowSize: 360000 to: 1688366880000 schema: $ref: '#/components/schemas/CallGroupsResult' description: OK security: - ApiKeyAuth: - Default summary: Get grouped call metrics tags: - Application Analyze x-ibm-ahub-byok: true description: "This endpoint retrieves the metrics for calls.\r\n\r\n## Deprecated Parameters\r\n**tagFilters:** The list of tag filters. It is replaced by **tagFilterExpression**, **includeInternal** and **includeSynthetic**.\r\n\r\n## Supported Aggregation on Get Grouped call metrics\r\n\r\n| Metric | Description | Allowed Aggregations |\r\n|------------------|--------------------------------------------------------------------------------------------|----------------------|\r\n| `calls` | Number of received calls | `PER_SECOND`, `SUM` |\r\n| `erroneousCalls` | The number of erroneous calls |`PER_SECOND`, `SUM` |\r\n| `latency` | Latency of received calls in milliseconds | `P25`, `P50`, `P75`, `P90`, `P95`, `P98`, `P99`, `SUM`, `MEAN`, `MAX`, `MIN` |\r\n| `errors` | Error rate of received calls. A value between 0 and 1 | `MEAN` |\r\n| `services` | The number of Services |`DISTINCT_COUNT` |" /api/application-monitoring/analyze/trace-groups: post: operationId: getTraceGroups parameters: - description: 'If enabled, fill the missing data points in the metric result with timestamp and value 0.' in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: example: group: groupbyTag: trace.endpoint.name groupbyTagEntity: NOT_APPLICABLE metrics: - aggregation: SUM metric: latency order: by: latency direction: ASC pagination: retrievalSize: 20 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: call.type operator: EQUALS entity: NOT_APPLICABLE value: DATABASE - type: TAG_FILTER name: service.name operator: EQUALS entity: DESTINATION value: ratings schema: $ref: '#/components/schemas/GetTraceGroups' responses: '200': content: application/json: example: items: - name: GET /api/cart-total timestamp: 1688542673148 cursor: '@class': .IngestionOffsetCursor ingestionTime: 1688543264000 offset: 1 metrics: latency.sum: - - 1688543260000 - 31 canLoadMore: true totalHits: 2595 totalRepresentedItemCount: 2595 totalRetainedItemCount: 2595 adjustedTimeframe: windowSize: 600000 to: 1687939110000 schema: $ref: '#/components/schemas/TraceGroupsResult' description: OK security: - ApiKeyAuth: - Default summary: Get grouped trace metrics tags: - Application Analyze x-ibm-ahub-byok: true description: | The API endpoint retrieves metrics for traces that are grouped in the endpoint or service name. The supported `groupbyTag` are `trace.endpoint.name` and `trace.service.name`. ## Supported Aggregation on Get grouped trace metrics | Metric | Description | Allowed Aggregations | |------------------|--------------------------------------------------------------------------------------------|----------------------| | `erroneousCalls` | The number of erroneous calls |`PER_SECOND`, `SUM` | | `latency` | Latency of received calls in milliseconds | `P25`, `P50`, `P75`, `P90`, `P95`, `P98`, `P99`, `SUM`, `MEAN`, `MAX`, `MIN` | | `errors` | Error rate of received calls. A value between 0 and 1 | `MEAN` | /api/application-monitoring/analyze/traces: post: operationId: getTraces requestBody: content: application/json: examples: analyze/traces: description: analyze/traces value: includeInternal: false includeSynthetic: false pagination: retrievalSize: 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: endpoint.name operator: EQUALS entity: DESTINATION value: GET / - type: TAG_FILTER name: service.name operator: EQUALS entity: DESTINATION value: groundskeeper order: by: traceLabel direction: DESC schema: $ref: '#/components/schemas/GetTraces' responses: '200': content: application/json: example: items: - trace: id: 506aef767d8ec147 label: sdk.reloading-config-cache startTime: 1725601763937 duration: 0 erroneous: false service: id: 84b5041665ce4ed6f60b47d1fd96c12d4132c9ed label: appdata-processor types: [] technologies: [] snapshotIds: [] entityType: SERVICE endpoint: null cursor: '@class': .IngestionOffsetCursor ingestionTime: 1725601787000 offset: 1 canLoadMore: true totalHits: 154 totalRepresentedItemCount: 154 totalRetainedItemCount: 154 adjustedTimeframe: windowSize: 600000 to: 1725601780000 schema: $ref: '#/components/schemas/TraceResult' description: OK x-example: TraceResult security: - ApiKeyAuth: - Default summary: Get all traces tags: - Application Analyze x-ibm-ahub-byok: true description: "Use the endpoint to retrieve a list of traces.\r\n\r\n**Deprecated Parameter:** `tagFilters` is deprecated. It is replaced by `tagFilterExpression`.\r\n" /api/application-monitoring/applications: get: description: |- Use this API endpoint if one wants to retrieve a list of Application Perspectives. A use case could be to view the application id of an Application Perspective. For more information on Application Resources please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-resources. operationId: getApplications parameters: - description: Name of application in: query name: nameFilter schema: type: string - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 - description: Page number from results in: query name: page schema: type: integer format: int32 - description: Number of items per page in: query name: pageSize schema: type: integer format: int32 - description: 'Filter for application scope, i.e: INBOUND or ALL' in: query name: applicationBoundaryScope schema: type: string enum: - ALL - INBOUND responses: '200': content: application/json: example: items: - boundaryScope: INBOUND entityType: APPLICATION id: e8krH1wNRV6daAo-NEmG8g label: Robot Shop page: 1 pageSize: 1 totalHits: 1 schema: $ref: '#/components/schemas/ApplicationResult' description: OK security: - ApiKeyAuth: - Default summary: Get applications tags: - Application Resources x-ibm-ahub-byok: true /api/application-monitoring/applications;id=/services: get: description: |- Use this API endpoint if one wants to retrieve a list of services in an Application Perspective. A use case could be to retrieve all service ids present in an Application Perspective. For more information on Application Resources please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-resources. operationId: getApplicationServices parameters: - description: Name of service (partial match allowed) in: query name: nameFilter schema: type: string - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 - description: Page number from results in: query name: page schema: type: integer format: int32 - description: Number of items per page in: query name: pageSize schema: type: integer format: int32 - description: 'Filter for application scope, i.e: INBOUND or ALL' in: query name: applicationBoundaryScope schema: type: string enum: - ALL - INBOUND - description: Include snapshot ids in the results in: query name: includeSnapshotIds schema: type: boolean responses: '200': content: application/json: example: items: - entityType: SERVICE id: 79f1430f4a42a707a97621ca00617e40bd51c31d label: www.paypal.com snapshotIds: - CywiRxmGIwtQIKezVs-XMcTX2xg technologies: - kafkaCluster types: - MESSAGING page: 1 pageSize: 1 totalHits: 1 schema: $ref: '#/components/schemas/ServiceResult' description: OK security: - ApiKeyAuth: - Default summary: Get applications/services tags: - Application Resources x-ibm-ahub-byok: true /api/application-monitoring/applications/services/endpoints: get: description: |- Use this API endpoint if one wants to retrieve a list of Endpoints. A use case could be to view the endpoint id of an Endpoint. For more information on Application Resources please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-resources. operationId: getApplicationEndpoints parameters: - description: Name of service in: query name: nameFilter schema: type: string - description: Type of Endpoint in: query name: types schema: type: array items: type: string uniqueItems: true - description: List of technologies in: query name: technologies schema: type: array items: type: string uniqueItems: true - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 - description: Page number from results in: query name: page schema: type: integer format: int32 - description: Number of items per page in: query name: pageSize schema: type: integer format: int32 - description: 'Filter for application scope, i.e: INBOUND or ALL' in: query name: applicationBoundaryScope schema: type: string enum: - ALL - INBOUND responses: '200': content: application/json: example: items: - entityType: ENDPOINT id: IWeMKSzcvJHijAQoaA-luyHriDQ label: websites serviceId: a25c02069636022456e6139ebfe4f4bfec23ae31 synthetic: false syntheticType: NON_SYNTHETIC technologies: - postgreSqlDatabase type: DATABASE page: 1 pageSize: 1 totalHits: 1 schema: $ref: '#/components/schemas/EndpointResult' description: OK security: - ApiKeyAuth: - Default summary: Get endpoints tags: - Application Resources x-ibm-ahub-byok: true /api/application-monitoring/catalog: get: operationId: getApplicationTagCatalog parameters: - description: | The start of the timestamp expreseed in Unix epoch time in milliseconds which will fetch list of queryable tags until current timestamp. Eg: `1719875833000` (1 July 2024 23:17:13 GMT) will fetch list of queryable tags from that time till current time. in: query name: from schema: type: integer format: int64 - description: 'The source from where queryable tags should be fetched from. In Unbounded Analytics, Application Perspectives has 2 sources; `Calls` and `Traces`.' in: query name: dataSource schema: type: string enum: - CALLS - TRACES - description: | The subset of queryable tags that is available for a particular use case. For eg: If you select `dataSource` as `TRACES` and useCase as `Grouping`. The tags available for querying are `trace.endpoint.name` and `trace.service.name`. useCase is helpful when one wants to know which tags are supported for querying. in: query name: useCase schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: example: tagTree: - label: Agent description: null icon: null children: - label: Zone icon: lib_views_tag tagName: agent.zone queryable: true type: TAG type: LEVEL queryable: false tags: - name: marathon.label label: Label type: KEY_VALUE_PAIR description: marathon label canApplyToSource: true canApplyToDestination: true idTag: false schema: $ref: '#/components/schemas/TagCatalog' description: OK security: - ApiKeyAuth: - Default summary: Get application tag catalog tags: - Application Catalog x-ibm-ahub-byok: true description: |- Use this API endpoint to retrieve a list of tags. This API endpoint also shows tags which are grouped together. This grouping also denotes the dimensionality of an event. Eg: `Call` can have 9 attributes. Also these tags have cardinality ranging from low to high which will help in examining broad or narrow patterns during the analysis. Queryable tags are a powerful enabler for slice and dice analysis in `Query Builder`. `Query Builder` can be found in `Unbounded Analytics`. /api/application-monitoring/catalog/metrics: get: operationId: getApplicationCatalogMetrics responses: '200': content: application/json: example: - metricId: calls label: Call count formatter: NUMBER description: Number of received calls aggregations: - PER_SECOND - SUM defaultAggregation: null schema: type: array items: $ref: '#/components/schemas/MetricDescription' description: OK security: - ApiKeyAuth: - Default summary: Get Metric catalog tags: - Application Catalog x-ibm-ahub-byok: true description: | This endpoint retrieves all available metric definitions for application monitoring. /api/application-monitoring/catalog/tags: get: deprecated: true operationId: getApplicationTags parameters: - description: | The start of the timestamp expreseed in Unix epoch time in milliseconds which will fetch list of queryable tags until current timestamp. Eg: `1719875833000` (1 July 2024 23:17:13 GMT) will fetch list of queryable tags from that time till current time. in: query name: from schema: type: integer format: int64 - description: 'The source from where queryable tags should be fetched from. In Unbounded Analytics, Application Perspectives has 2 sources; `Calls` and `Traces`.' in: query name: dataSource schema: type: string enum: - CALLS - TRACES - description: | The subset of queryable tags that is available for a particular use case. For eg: If you select `dataSource` as `TRACES` and useCase as `Grouping`. The tags available for querying are `trace.endpoint.name` and `trace.service.name`. useCase is helpful when one wants to know which tags are supported for querying. in: query name: useCase schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/Tag' description: OK security: - ApiKeyAuth: - Default summary: Get application tags tags: - Application Catalog x-ibm-ahub-byok: true description: "**Note:** This API Endpoint is deprecated. Use `Get application tag catalog` endpoint instead.\n\nThis endpoint retrieves all available tags for your monitored system.\n\nThese tags can be used to group metric results.\n```\n\"group\": {\n \"groupbyTag\": \"service.name\"\n}\n```\n\nThese tags can be used to filter metric results.\n```\n\"tagFilters\": [{\n\t\"name\": \"application.name\",\n\t\"operator\": \"EQUALS\",\n\t\"value\": \"example\"\n}]\n```\n" /api/application-monitoring/metrics/applications: post: description: |- Use this API endpoint if one wants to retrieve one or more supported aggregation of supported metrics for an Application Perspective. For eg: retrieve `MEAN` aggregation of `latency` metric for an Application Perspective `app`. For more information on supported metrics, refer `Get Metric catalog`. For more information on Application Metrics please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-metrics. operationId: getApplicationMetrics parameters: - description: 'If enabled, fill the missing data points in the metric result with timestamp and value 0.' in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: examples: metrics/applications: description: | Attribute in "order by" should be provided in "metrics" as well value: metrics: - aggregation: MEAN metric: latency order: by: latency direction: DESC pagination: page: 1 pageSize: 1 timeFrame: to: 1646037122400 windowSize: 3600000 schema: $ref: '#/components/schemas/GetApplications' responses: '200': content: application/json: example: items: - application: id: Jv83WpUmSKiiCWIpi-reSQ label: demoApp boundaryScope: ALL entityType: APPLICATION metrics: latency.mean: - - 1669190580000 - 4 page: 1 pageSize: 1 totalHits: 1616 adjustedTimeframe: windowSize: 3600000 to: 1646037120000 schema: $ref: '#/components/schemas/ApplicationMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get Application Metrics tags: - Application Metrics x-ibm-ahub-byok: true /api/application-monitoring/metrics/endpoints: post: description: |- Use this API endpoint if one wants to retrieve one or more supported aggregation of supported metrics for an Endpoint. For eg: retrieve `MEAN` aggregation of `latency` metric for an Endpoint `GET /api/foo`. For more information on supported metrics, refer `Get Metric catalog`. For more information on Application Metrics please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-metrics. operationId: getEndpointsMetrics parameters: - description: 'If enabled, fill the missing data points in the metric result with timestamp and value 0.' in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: examples: metrics/endpoints: description: | Order by is supported for following attributes: endpointLabel or valid metrics if provided such as latency.mean value: applicationBoundaryScope: ALL endpointId: murzTwzJlGyqc_CFtEKx8INVCfY excludeSynthetic: true metrics: - aggregation: MEAN metric: latency order: by: latency.mean direction: ASC pagination: page: 1 pageSize: 1 timeFrame: to: 1669190589000 windowSize: 3600000 schema: $ref: '#/components/schemas/GetEndpoints' responses: '200': content: application/json: example: items: - endpoint: id: murzTwzJlGyqc_CFtEKx8INVCfY label: robot-shop type: MESSAGING serviceId: 05b145cfb6fbc24d08a8e01155c0aa2bf8460c87 technologies: - golangRuntimePlatform - kubernetesService syntheticType: NON_SYNTHETIC synthetic: false entityType: ENDPOINT metrics: latency.mean: - - 1669190580000 - 2434.5625 page: 1 pageSize: 1 totalHits: 1 adjustedTimeframe: windowSize: 3600000 to: 1669190580000 schema: $ref: '#/components/schemas/EndpointMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get Endpoint metrics tags: - Application Metrics x-ibm-ahub-byok: true /api/application-monitoring/metrics/services: post: description: |- Use this API endpoint if one wants to retrieve one or more supported aggregation of supported metrics for a Service. For eg: retrieve `MEAN` aggregation of `latency` metric for a Service `payment`. For more information on supported metrics, refer `Get Metric catalog`. For more information on Application Metrics please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-metrics. operationId: getServicesMetrics parameters: - description: 'If enabled, fill the missing data points in the metric result with timestamp and value 0.' in: query name: fillTimeSeries schema: type: boolean - in: query name: includeSnapshotIds schema: type: boolean requestBody: content: application/json: examples: metrics/services: description: | Order by is supported for following attributes: types, technologies, serviceLabel and valid metrics if provided such as latency.mean value: applicationBoundaryScope: ALL contextScope: NONE metrics: - aggregation: mean metric: latency order: by: latency.mean direction: DESC pagination: page: 1 pageSize: 1 serviceId: c467ca0fa21477fee3cde75a140b2963307388a7 technologies: - springbootApplicationContainer timeFrame: to: 1669190589000 windowSize: 3600000 schema: $ref: '#/components/schemas/GetServices' responses: '200': content: application/json: example: items: - service: id: c467ca0fa21477fee3cde75a140b2963307388a7 label: discount types: - HTTP technologies: - springbootApplicationContainer snapshotIds: [] entityType: SERVICE metrics: endpoints.distinct_count: - - 1669190580000 - 4 page: 1 pageSize: 1 totalHits: 1 adjustedTimeframe: windowSize: 3600000 to: 1669190580000 schema: $ref: '#/components/schemas/ServiceMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get Service metrics tags: - Application Metrics x-ibm-ahub-byok: true /api/application-monitoring/services: get: description: |- Use this API endpoint if one wants to retrieve a list of Services. A use case could be to view the service id of a Service. For more information on Application Resources please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-resources. operationId: getServices parameters: - description: Name of service in: query name: nameFilter schema: type: string - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 - description: Page number from results in: query name: page schema: type: integer format: int32 - description: Number of items per page in: query name: pageSize schema: type: integer format: int32 - description: Include snapshot ids in the results in: query name: includeSnapshotIds schema: type: boolean responses: '200': content: application/json: example: items: - entityType: SERVICE id: 79f1430f4a42a707a97621ca00617e40bd51c31d label: Robot Shop snapshotIds: - CywiRxmGIwtQIKezVs-XMcTX2xg technologies: - kafkaCluster types: - MESSAGING page: 1 pageSize: 1 totalHits: 1 schema: $ref: '#/components/schemas/ServiceResult' description: OK security: - ApiKeyAuth: - Default summary: Get services tags: - Application Resources x-ibm-ahub-byok: true /api/application-monitoring/settings/application: get: description: |- Use this API endpoint if one wants to retrieve a list of all Application Perspectives with their configuration settings. This endpoint requires `canConfigureApplications` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureApplications` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Configuration of applications` to `true`. ## Deprecated Parameters **matchSpecification:** A binary tree sturcture of match expression connected with binary operator AND or OR. It is replaced by **tagFilterExpression** which is also used in Application Analyze API endpoints. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getApplicationConfigs responses: '200': content: application/json: example: - id: CxJ55sRbQwqBIfw5DzpRmQ label: Discount Canary Build 6987 matchSpecification: null tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION scope: INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING boundaryScope: INBOUND accessRules: - accessType: READ_WRITE relationType: GLOBAL relatedId: null schema: type: array items: $ref: '#/components/schemas/ApplicationConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: All Application configurations tags: - Application Settings x-ibm-ahub-byok: true post: operationId: addApplicationConfig requestBody: content: application/json: example: accessRules: - accessType: READ_WRITE relationType: GLOBAL relatedId: null boundaryScope: INBOUND label: Discount Build 6987 scope: INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/NewApplicationConfig' required: true responses: '200': content: application/json: example: id: oLyuFtIfQ3eKzAqM5vBGkQ label: Discount Build 6987 matchSpecification: null tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION scope: INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING boundaryScope: INBOUND accessRules: - accessType: READ_WRITE relationType: GLOBAL relatedId: null schema: $ref: '#/components/schemas/ApplicationConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Add application configuration tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to create a new Application Perspective. This endpoint requires `canConfigureApplications` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureApplications` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Configuration of applications` to `true`. ## Deprecated Parameters **matchSpecification:** A binary tree sturcture of match expression connected with binary operator AND or OR. It is replaced by **tagFilterExpression** which is also used in Application Analyze API endpoints. '/api/application-monitoring/settings/application/{id}': delete: description: |- Use this API endpoint if one wants to delete an Application Perspective. This endpoint requires `canConfigureApplications` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureApplications` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. ## Deprecated Parameters **matchSpecification:** A binary tree structure of match expression connected with binary operator AND or OR. It is replaced by **tagFilterExpression** which is also used in Application Analyze API endpoints. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: deleteApplicationConfig parameters: - in: path name: id required: true schema: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - ConfigureServiceMapping summary: Delete application configuration tags: - Application Settings x-ibm-ahub-byok: true get: description: |- Use this API endpoint if one wants to retrieve an Application Perspective with its configuration setting. This endpoint requires `canConfigureApplications` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureApplications` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Configuration of applications` to `true`. ## Deprecated Parameters **matchSpecification:** A binary tree structure of match expression connected with binary operator AND or OR. It is replaced by **tagFilterExpression** which is also used in Application Analyze API endpoints. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getApplicationConfig parameters: - in: path name: id required: true schema: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' responses: '200': content: application/json: example: id: CxJ55sRbQwqBIfw5DzpRmQ label: Discount Canary Build 6987 matchSpecification: null tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION scope: INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING boundaryScope: INBOUND accessRules: - accessType: READ_WRITE relationType: GLOBAL relatedId: null schema: $ref: '#/components/schemas/ApplicationConfig' description: OK '403': description: Insufficient permission '404': description: No config found for provided application id security: - ApiKeyAuth: - ConfigureServiceMapping summary: Application configuration tags: - Application Settings x-ibm-ahub-byok: true put: operationId: putApplicationConfig parameters: - in: path name: id required: true schema: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' requestBody: content: application/json: example: accessRules: - accessType: READ relationType: ROLE boundaryScope: INBOUND id: CxJ55sRbQwqBIfw5DzpRmQ label: Discount Build 1 scope: INCLUDE_NO_DOWNSTREAM tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/ApplicationConfig' required: true responses: '200': content: application/json: example: id: CxJ55sRbQwqBIfw5DzpRmQ label: Discount Canary Build 6987 matchSpecification: null tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.label stringValue: stage=canary numberValue: null booleanValue: null key: stage value: canary operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: build=6987 numberValue: null booleanValue: null key: build value: '6987' operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: kubernetes.label stringValue: app=discount numberValue: null booleanValue: null key: app value: discount operator: EQUALS entity: DESTINATION scope: INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING boundaryScope: INBOUND accessRules: - accessType: READ_WRITE relationType: GLOBAL relatedId: null schema: $ref: '#/components/schemas/ApplicationConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Update application configuration tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to update an existing Application Perspective. This endpoint requires `canConfigureApplications` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureApplications` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Configuration of applications` to `true`. ## Deprecated Parameters **matchSpecification:** A binary tree sturcture of match expression connected with binary operator AND or OR. It is replaced by **tagFilterExpression** which is also used in Application Analyze API endpoints. /api/application-monitoring/settings/endpoint: get: description: |- Use this API endpoint if one wants to retrieve a list of all endpoint configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getEndpointConfigs responses: '200': content: application/json: example: - serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointCase: LOWER endpointNameByFirstPathSegmentRuleEnabled: false endpointNameByCollectedPathTemplateRuleEnabled: false rules: null - serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointCase: UPPER endpointNameByFirstPathSegmentRuleEnabled: false endpointNameByCollectedPathTemplateRuleEnabled: false rules: null schema: type: array items: $ref: '#/components/schemas/EndpointConfig' description: OK security: - ApiKeyAuth: - CanConfigureServiceMapping summary: All Endpoint configurations tags: - Application Settings x-ibm-ahub-byok: true post: description: |- Use this API endpoint if one wants to create an endpoint configuration of a service. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: createEndpointConfig requestBody: content: application/json: example: serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointCase: LOWER endpointNameByFirstPathSegmentRuleEnabled: false endpointNameByCollectedPathTemplateRuleEnabled: false rules: null schema: $ref: '#/components/schemas/EndpointConfig' required: true responses: '200': content: application/json: example: serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointCase: LOWER endpointNameByFirstPathSegmentRuleEnabled: false endpointNameByCollectedPathTemplateRuleEnabled: false rules: null schema: $ref: '#/components/schemas/EndpointConfig' description: OK security: - ApiKeyAuth: - CanConfigureServiceMapping summary: Create endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true '/api/application-monitoring/settings/endpoint/{id}': delete: description: |- Use this API endpoint if one wants to delete an endpoint configuration of a service. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: deleteEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureServiceMapping summary: Delete endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true get: description: |- Use this API endpoint if one wants to retrieve the endpoint configuration of a service. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. responses: '200': content: application/json: example: serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointCase: LOWER endpointNameByFirstPathSegmentRuleEnabled: false endpointNameByCollectedPathTemplateRuleEnabled: false rules: null schema: $ref: '#/components/schemas/EndpointConfig' description: OK '403': description: Insufficient permission '404': description: No config found for provided service id security: - ApiKeyAuth: - CanConfigureServiceMapping summary: Endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true put: description: |- Use this API endpoint if one wants to update an existing endpoint configuration of a service. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: updateEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. requestBody: content: application/json: example: serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER testCases: - /api/v2/users endpointCase: UPPER schema: $ref: '#/components/schemas/EndpointConfig' required: true responses: '200': content: application/json: example: serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER testCases: - /api/v2/users endpointCase: UPPER schema: $ref: '#/components/schemas/EndpointConfig' description: OK security: - ApiKeyAuth: - CanConfigureServiceMapping summary: Update endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true /api/application-monitoring/settings/http-endpoint: get: deprecated: true description: |- This is a deprecated endpoint. Use `All Endpoint configurations` instead. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getHttpEndpointConfigs responses: '200': content: application/json: example: serviceId: d0cedae516f2182ede16f57f67476dd4c7dab9cd endpointNameByFirstPathSegmentRuleEnabled: true endpointNameByCollectedPathTemplateRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER - type: MATCH_ALL testCases: - /api/v2/users schema: type: array items: $ref: '#/components/schemas/HttpEndpointConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: All HTTP endpoint configurations tags: - Application Settings x-ibm-ahub-byok: true post: deprecated: true description: |- This is a deprecated endpoint. Use `Create endpoint configuration` instead. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: createHttpEndpointConfig requestBody: content: application/json: example: endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - type: MATCH_ALL testCases: - /api/v2/users serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 schema: $ref: '#/components/schemas/HttpEndpointConfig' required: true responses: '200': content: application/json: example: serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 endpointNameByFirstPathSegmentRuleEnabled: true endpointNameByCollectedPathTemplateRuleEnabled: true rules: - enabled: true pathSegments: - type: MATCH_ALL testCases: - /api/v2/users schema: $ref: '#/components/schemas/HttpEndpointConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Create HTTP endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true '/api/application-monitoring/settings/http-endpoint/{id}': delete: deprecated: true description: |- This is a deprecated endpoint. Use `Delete endpoint configuration` instead. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: deleteHttpEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - ConfigureServiceMapping summary: Delete HTTP endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true get: deprecated: true description: |- This is a deprecated endpoint. Use `Endpoint configuration` instead. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getHttpEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. responses: '200': content: application/json: example: endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER - type: MATCH_ALL testCases: - /api/v2/users serviceId: 20ba31821b079e7d845a08096124880db3eeeb47 schema: $ref: '#/components/schemas/HttpEndpointConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: HTTP Endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true put: deprecated: true description: |- This is a deprecated endpoint. Use `Update endpoint configuration` instead. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: updateHttpEndpointConfig parameters: - in: path name: id required: true schema: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. requestBody: content: application/json: example: endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER - type: MATCH_ALL testCases: - /api/v2/users serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 schema: $ref: '#/components/schemas/HttpEndpointConfig' required: true responses: '200': content: application/json: example: endpointNameByCollectedPathTemplateRuleEnabled: true endpointNameByFirstPathSegmentRuleEnabled: true rules: - enabled: true pathSegments: - name: api type: FIXED - name: version type: PARAMETER - type: MATCH_ALL testCases: - /api/v2/users serviceId: 20ba31821b079e7d845a08096124880db3eeeb40 schema: $ref: '#/components/schemas/HttpEndpointConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Update HTTP endpoint configuration tags: - Application Settings x-ibm-ahub-byok: true /api/application-monitoring/settings/manual-service: get: operationId: getAllManualServiceConfigs responses: '200': content: application/json: example: - id: wh49Z209S82aGvRl8ZZ0dQ tagFilterExpression: type: TAG_FILTER name: call.database.connection stringValue: 'redis:6379' numberValue: null booleanValue: null key: null value: 'redis:6379' operator: EQUALS entity: NOT_APPLICABLE unmonitoredServiceName: null existingServiceId: 2224a6ad91373ef2504dc6b5795d421bff8e4a4d description: null enabled: true schema: type: array items: $ref: '#/components/schemas/ManualServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: All manual service configurations tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API Endpoint if one wants to retrieve a list of all manual service configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. **This is an experimental endpoint to workaround service mapping issues.** ### Use cases The manual service configuration APIs enables mapping calls to services using tag filter expressions based on call tags. There are two use cases on the usage of these APIs: 1. Map to an Unmonitored Service with a Custom Name. For example, Map HTTP calls to different Google domains (`www.ibm.com`, `www.ibm.fr`) into a single service named `IBM` using the `call.http.host tag`. 2. Link Calls to an Existing Monitored Service. For example, Link database calls (`jdbc:mysql://10.128.0.1:3306`) to an existing service like `MySQL@3306` on demo-host by referencing its service ID. post: operationId: addManualServiceConfig requestBody: content: application/json: example: description: Map source service example enabled: true existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null schema: $ref: '#/components/schemas/NewManualServiceConfig' required: true responses: '200': content: application/json: example: id: FpG0_9tZT5OjzYM7m5VgUQ tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 description: Map source service example enabled: true schema: $ref: '#/components/schemas/ManualServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Add manual service configuration tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to add a manual service configuration. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. **This is an experimental endpoint to workaround service mapping issues.** ### Use cases The manual service configuration APIs enables mapping calls to services using tag filter expressions based on call tags. There are two use cases on the usage of these APIs: 1. Map to an Unmonitored Service with a Custom Name. For example, Map HTTP calls to different Google domains (`www.ibm.com`, `www.ibm.fr`) into a single service named `IBM` using the `call.http.host tag`. 2. Link Calls to an Existing Monitored Service. For example, Link database calls (`jdbc:mysql://10.128.0.1:3306`) to an existing service like `MySQL@3306` on demo-host by referencing its service ID. ### Important Note 1. Use `tagfilterExpression` to match calls on which the manual service configuration will be applied. **Only call tags are allowed** in the tag filter expression. 2. Either `unmonitoredServiceName` or `existingServiceId` should be specified in a configuration. put: operationId: replaceAllManualServiceConfigs requestBody: content: application/json: example: - description: Map source service enabled: true existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null schema: type: array items: $ref: '#/components/schemas/NewManualServiceConfig' required: true responses: '200': content: application/json: example: - id: undcnbu-S7OWi_4q4BnG4Q tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 description: Map source service enabled: true schema: type: array items: $ref: '#/components/schemas/ManualServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Replace all manual service configurations tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to update more than 1 manual service configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. **This is an experimental endpoint to workaround service mapping issues.** ### Use cases The manual service configuration APIs enables mapping calls to services using tag filter expressions based on call tags. There are two use cases on the usage of these APIs: 1. Map to an Unmonitored Service with a Custom Name. For example, Map HTTP calls to different Google domains (`www.ibm.com`, `www.ibm.fr`) into a single service named `IBM` using the `call.http.host tag`. 2. Link Calls to an Existing Monitored Service. For example, Link database calls (`jdbc:mysql://10.128.0.1:3306`) to an existing service like `MySQL@3306` on demo-host by referencing its service ID. ### Important Note 1. Use `tagfilterExpression` to match calls on which the manual service configuration will be applied. **Only call tags are allowed** in the tag filter expression. 2. Either `unmonitoredServiceName` or `existingServiceId` should be specified in a configuration. '/api/application-monitoring/settings/manual-service/{id}': delete: operationId: deleteManualServiceConfig parameters: - in: path name: id required: true schema: type: string description: A unique id of the manual service configuration. responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - ConfigureServiceMapping summary: Delete manual service configuration tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to delete a manual service configuration. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. **This is an experimental endpoint to workaround service mapping issues.** ### Use cases The manual service configuration APIs enables mapping calls to services using tag filter expressions based on call tags. There are two use cases on the usage of these APIs: 1. Map to an Unmonitored Service with a Custom Name. For example, Map HTTP calls to different Google domains (`www.ibm.com`, `www.ibm.fr`) into a single service named `IBM` using the `call.http.host tag`. 2. Link Calls to an Existing Monitored Service. For example, Link database calls (`jdbc:mysql://10.128.0.1:3306`) to an existing service like `MySQL@3306` on demo-host by referencing its service ID. put: operationId: updateManualServiceConfig parameters: - in: path name: id required: true schema: type: string description: A unique id of the manual service configuration. requestBody: content: application/json: example: description: Map source service example enabled: true existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 id: BDGeDcG4TRSzRkJ1mGOk-Q tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null schema: $ref: '#/components/schemas/ManualServiceConfig' required: true responses: '200': content: application/json: example: id: BDGeDcG4TRSzRkJ1mGOk-Q tagFilterExpression: type: TAG_FILTER name: service.name stringValue: front numberValue: null booleanValue: null key: null value: front operator: EQUALS entity: SOURCE unmonitoredServiceName: null existingServiceId: c467ca0fa21477fee3cde75a140b2963307388a7 description: Map source service example enabled: true schema: $ref: '#/components/schemas/ManualServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Update manual service configuration tags: - Application Settings x-ibm-ahub-byok: true description: |- Use this API endpoint if one wants to update a manual service configuration. **This is an experimental endpoint to workaround service mapping issues.** ### Use cases The manual service configuration APIs enables mapping calls to services using tag filter expressions based on call tags. There are two use cases on the usage of these APIs: 1. Map to an Unmonitored Service with a Custom Name. For example, Map HTTP calls to different Google domains (`www.ibm.com`, `www.ibm.fr`) into a single service named `IBM` using the `call.http.host tag`. 2. Link Calls to an Existing Monitored Service. For example, Link database calls (`jdbc:mysql://10.128.0.1:3306`) to an existing service like `MySQL@3306` on demo-host by referencing its service ID. ### Important Note 1. Use `tagfilterExpression` to match calls on which the manual service configuration will be applied. **Only call tags are allowed** in the tag filter expression. 2. Either `unmonitoredServiceName` or `existingServiceId` should be specified in a configuration. /api/application-monitoring/settings/service: get: description: |- Use this API endpoint if one wants to retrive a list of all service configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getServiceConfigs responses: '200': content: application/json: example: - id: MyhomcyCRz2DF3O2KNXpGg name: Rule comment: null label: '{docker.container.name}' enabled: false matchSpecification: - key: docker.container.name value: .* schema: type: array items: $ref: '#/components/schemas/ServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: All service configurations tags: - Application Settings x-ibm-ahub-byok: true post: description: |- Use this API endpoint if one wants to create a custom service rule. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. ## Errata: The following field is documented in the request schema: - The `id` field is not mandatory and one can't have a service configuration id before creating one configuration. Instana creates it automatically. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: addServiceConfig requestBody: content: application/json: example: comment: null enabled: true label: '{gce.zone}-{jvm.args.abc}' matchSpecification: - key: gce.zone value: .* - key: jvm.args.abc value: .* name: ABC is good schema: $ref: '#/components/schemas/ServiceConfig' required: true responses: '200': content: application/json: example: id: oMsVfR0fSCuTKF2TFdYRmQ name: ABC is good comment: null label: '{gce.zone}-{jvm.args.abc}' enabled: true matchSpecification: - key: gce.zone value: .* - key: jvm.args.abc value: .* schema: $ref: '#/components/schemas/ServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Add service configuration tags: - Application Settings x-ibm-ahub-byok: true put: description: |- Use this API endpoint if one wants to modify 1 or more existing service configuration. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: replaceAll requestBody: content: application/json: example: - comment: null enabled: true id: 8C-jGYx8Rsue854tzkh8KQ label: '{docker.container.name}' matchSpecification: - key: docker.container.name value: .* name: Rule schema: type: array items: $ref: '#/components/schemas/ServiceConfig' required: true responses: '200': content: application/json: example: - id: 9uma4MhnTTSyBzwu_FKBJA name: Rule comment: null label: '{docker.container.name}' enabled: true matchSpecification: - key: docker.container.name value: .* schema: type: array items: $ref: '#/components/schemas/ServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Replace all service configurations tags: - Application Settings x-ibm-ahub-byok: true /api/application-monitoring/settings/service/order: put: description: |- Use this API endpoint if one wants to change the order of service configurations aka custom service rules. Note that all service configuration IDs have to be passed in the request to re-order the configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: orderServiceConfig requestBody: content: application/json: example: - 9uma4MhnTTSyBzwu_FKBJA - oMsVfR0fSCuTKF2TFdYRmQ schema: type: array items: type: string required: true responses: '204': description: Order of Service rules modified '400': description: Provided config is not found '401': description: Unauthorized request '403': description: Insufficient permissions. security: - ApiKeyAuth: - ConfigureServiceMapping summary: Order of service configuration tags: - Application Settings x-ibm-ahub-byok: true '/api/application-monitoring/settings/service/{id}': delete: description: |- Use this API endpoint if one wants to delete a service configuration. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: deleteServiceConfig parameters: - in: path name: id required: true schema: type: string description: 'A unique string for the service configuration. Eg: `G510hmXYSDysLZ5kuj0BaQ`' responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - ConfigureServiceMapping summary: Delete service configuration tags: - Application Settings x-ibm-ahub-byok: true get: description: |- Use this API endpoint if one wants to retrieve a particular custom service rule. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: getServiceConfig parameters: - in: path name: id required: true schema: type: string description: 'A unique string for the service configuration. Eg: `G510hmXYSDysLZ5kuj0BaQ`' responses: '200': content: application/json: example: id: P_37IlGQT0qQy9fxLxvFqA name: Rule comment: null label: '{docker.container.name}' enabled: true matchSpecification: - key: docker.container.name value: .* schema: $ref: '#/components/schemas/ServiceConfig' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - ConfigureServiceMapping summary: Service configuration tags: - Application Settings x-ibm-ahub-byok: true put: description: |- Use this API endpoint if one wants to update a particular custom service rule. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Application Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-settings. operationId: putServiceConfig parameters: - in: path name: id required: true schema: type: string description: 'A unique string for the service configuration. Eg: `G510hmXYSDysLZ5kuj0BaQ`' requestBody: content: application/json: example: comment: null enabled: true id: 9uma4MhnTTSyBzwu_FKBJA label: '{gce.zone}-{jvm.args.abc}' matchSpecification: - key: gce.zone value: .* - key: jvm.args.abc value: .* name: DEF is good schema: $ref: '#/components/schemas/ServiceConfig' required: true responses: '200': content: application/json: example: id: 9uma4MhnTTSyBzwu_FKBJA name: DEF is good comment: null label: '{gce.zone}-{jvm.args.abc}' enabled: true matchSpecification: - key: gce.zone value: .* - key: jvm.args.abc value: .* schema: $ref: '#/components/schemas/ServiceConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Update service configuration tags: - Application Settings x-ibm-ahub-byok: true /api/application-monitoring/topology/services: get: description: | Use this API endpoint if one wants to retrieve services and connections (call paths) between them for calls in the scope given by the parameters. ## Errata: The following fields are unsupported but documented in the schema for the result `services`: - The `applications` field is always missing and the `snapshotIds` field is always empty, despite being declared as required in the result schema. - The `maxSeverity` and `numberOfOpenIssues` fields are always missing. operationId: getServicesMap parameters: - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 - description: Filter by application ID in: query name: applicationId schema: type: string - description: 'Filter by application scope, i.e., INBOUND or ALL. The default value is INBOUND. Applies only if application ID filter is specified.' in: query name: applicationBoundaryScope schema: type: string enum: - ALL - INBOUND responses: '200': content: application/json: example: connections: - from: 8bfb4e1aa590eab8f08f837b97acf5803a5737ed to: f17e7efb3b9b2d62bfec6b07905759fb81e99797 calls: 2179 latency: 1.6103717301514455 errorRate: 0 services: - id: f17e7efb3b9b2d62bfec6b07905759fb81e99797 label: robot-shop types: - MESSAGING technologies: - kubernetesService - rabbitMq snapshotIds: [] entityType: SERVICE schema: $ref: '#/components/schemas/ServiceMap' description: OK '400': description: Bad Request '401': description: Unauthorized '403': description: Forbidden security: - ApiKeyAuth: - Default summary: Gets the service topology tags: - Application Topology x-ibm-ahub-byok: true '/api/application-monitoring/v2/analyze/traces/{id}': get: description: |- Use this API endpoint if one wants to retrive comprehensive details of a particular trace. For more information on Application Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-analyze. operationId: getTraceDownload parameters: - in: path name: id required: true schema: type: string description: An Instana generated unique identifier for a trace. - in: query name: retrievalSize schema: type: integer format: int32 description: | The number of records to retrieve in a single request. For example, when retrievalSize is set to 30, offset is 20, and ingestionTime is 1725519793, the API request will fetch 30 records starting from the 21st record after the specified `ingestionTime`. Minimum value is 1 and maximum value is 10000. maximum: 10000 minimum: 1 - in: query name: offset schema: type: integer format: int32 description: | The number of records to be skipped from the `ingestionTime`. For example: when `offset` is 20 and `ingestionTime` is 1725519793, the API response should have records starting from the 21st record after the specified `ingestionTime`. Note that if `offset` value is not empty, `ingestionTime` can't be empty. - in: query name: ingestionTime schema: type: integer format: int64 description: | The timestamp indicating the starting point from which data was ingested. The format of the timestamp is in Unix epoch Time. For example, `Thursday, 5 September 2024 07:03:13 GMT` can be represented as `1725519793`. responses: '200': content: application/json: example: items: - id: daa9141549aea210 timestamp: 1688544599223 parentId: null foreignParentId: null name: GET /api/shipping/cities/dk duration: 30 minSelfTime: 1 networkTime: null callCount: 1 errorCount: 0 destination: service: id: ce4b152bac7b99744d8314838e49b799afd6dd96 label: nginx-web endpoint: id: wAS2omB44e0EK4xqL7f-e-wt4C4 label: upstream shipping type: HTTP technologies: [] cursor: '@class': .IngestionOffsetCursor ingestionTime: 1688547327000 offset: 1 canLoadMore: false totalHits: 3 totalRepresentedItemCount: 3 totalRetainedItemCount: 3 schema: $ref: '#/components/schemas/TraceDownloadResult' description: OK security: - ApiKeyAuth: - Default summary: Get trace detail tags: - Application Analyze x-ibm-ahub-byok: true '/api/application-monitoring/v2/analyze/traces/{traceId}/calls/{callId}/details': get: description: |- Use this API endpoint to retrieve a vast information about a call present in a trace. For more information on Application Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-analyze. operationId: getCallDetails parameters: - in: path name: traceId required: true schema: type: string description: An Instana generated unique identifier for a trace. - in: path name: callId required: true schema: type: string description: 'The call ID. A unique identifier for an individual call. For example: `1bcad5c82338deaf`.' responses: '200': content: application/json: example: id: 14219b3deb6a6bc5 label: GET /api/shipping/cities/bg start: 1707295859759 duration: 3597 minSelfTime: 2 networkTime: null errorCount: 0 batchSize: 1 batchSelfTime: 3597 source: applications: [] service: id: ROOT label: '' endpoint: id: XCjGvnwuiak0m3ISke3naE-NrGA label: Unspecified type: UNDEFINED physicalContext: {} destination: applications: [] service: id: ce4b152bac7b99744d8314838e49b799afd6dd96 label: nginx-web endpoint: id: wAS2omB44e0EK4xqL7f-e-wt4C4 label: upstream shipping type: HTTP physicalContext: process: id: jXvrnXHuBqfhlZQTux-ck1PYd6Y time: 1707258023000 label: Node @30303 plugin: nginx data: null spans: - id: 14219b3deb6a6bc5 parentId: '' name: sdk.http.entry kind: ENTRY foreignParentId: '' start: 1707295859759 duration: 3597 errorCount: 0 stackTrace: [] data: service: nginx-web http: path: /api/shipping/cities/bg protocol: http route_id: upstream shipping method: GET host: 'web:8080' url: 'http://web:8080//api/shipping/cities/bg' status: 200 logs: [] synthetic: false schema: $ref: '#/components/schemas/TraceActivityTreeNodeDetails' description: OK security: - ApiKeyAuth: - Default summary: Get call detail tags: - Application Analyze x-ibm-ahub-byok: true /api/application-monitoring/v2/metrics: post: description: |- Use this API endpoint if one wants to retrieve one or more supported aggregation of supported metrics for a combination of entities. For eg: retrieve `MEAN` aggregation of `latency` metric for an Endpoint `GET /api/foo`, Service `payment` and Application Perspective `app`. Consider this API endpoint an upgraded version of `Get Application Metrics`, `Get Endpoint metrics` and `Get Service metrics`. For more information on supported metrics, refer `Get Metric catalog`. For more information on Application Metrics please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-metrics. operationId: getApplicationDataMetricsV2 requestBody: content: application/json: example: includeInternal: true includeSynthetic: true metrics: - aggregation: MEAN metric: latency tagFilterExpression: type: TAG_FILTER name: service.name operator: EQUALS entity: DESTINATION value: warehouse timeFrame: to: 1669190589000 windowSize: 3600000 schema: $ref: '#/components/schemas/GetApplicationMetrics' responses: '200': content: application/json: example: metrics: latency.mean: - - 1669190580000 - 106.85055708882756 adjustedTimeframe: windowSize: 3600000 to: 1669190580000 schema: $ref: '#/components/schemas/MetricAPIResult' description: OK security: - ApiKeyAuth: - Default summary: Get Application Data Metrics tags: - Application Metrics x-ibm-ahub-byok: true /api/automation/actioninstances: delete: description: 'Deletes the automation action run results from the action run history. The results to delete is filtered by the filter values given in the query parameters. The automation action run result will be deleted only if the action run result was created within the timeframe specified in the `from` and `to` query parameters. This call requires `Deletion of automation action history` permission and, `from` and `to` query parameters.' operationId: deleteActionInstances parameters: - description: From date filter in milliseconds (13-digit) to look up the action run results to delete example: 1706713140000 in: query name: from required: true schema: type: integer format: int64 - description: To date filter in milliseconds (13-digit) to look up the action run results to delete example: 1706713140000 in: query name: to required: true schema: type: integer format: int64 - description: Target snapshot ID to look up the action run results to delete example: aCtEoR6NSPqG61QkIkwwCw in: query name: targetSnapshotId schema: type: string - description: Event ID filter to look up the action run results to delete example: bCtEoR6NSPqG61QkIkwwCw in: query name: eventId schema: type: string - description: Event specification ID filter to look up the action run results to delete example: 1706713140000 in: query name: eventSpecificationId schema: type: string - description: 'Text in action run result name, description and event name to filter the action run results to delete' example: 1706713140000 in: query name: search schema: type: string - description: Action type filter to look up the action run results to delete example: 'One or more of the following types HTTP, SCRIPT, ANSIBLE, GITHUB, GITLAB, JIRA' in: query name: types schema: type: array items: type: string - description: Action status filter to look up the action run results to delete example: 'One or more of the following status SUBMITTED, IN_PROGRESS, SUCCESS, FAILED, TIMEOUT' in: query name: actionStatuses schema: type: array items: type: string - description: List of action IDs to filter the action run results to delete example: cCtEoR6NSPqG61QkIkwwCw in: query name: actionIds schema: type: array items: type: string - description: Policy ID filter to look up the action run results to delete example: bCtEoR6NSPqG61QkIkwwCw in: query name: policyId schema: type: string responses: '200': content: application/json: example: deletedDocumentsCount: '2' description: Automation action run results are deleted. '400': description: '`from` date or `to` date query parameter is missing.' '403': description: Automation feature is not enabled or Insufficient permissions. '500': description: The request do not contain a valid user or API Token. security: - ApiKeyAuth: - canDeleteAutomationActionHistory summary: Delete automation action run results. tags: - Action History x-ibm-ahub-byok: true get: description: 'Get the details of automation action run results from action run history. The results are filtered by the filters in the query parameters. The automation action run result will be fetched only if the action run results were created within the timeframe specified by the `windowSize` and `to` query parameters. The `windowSize` parameter is used to compute the from date (`from = to - windowSize`) of the timeframe. The default value for `windowSize` is 10 minutes and the default value for `to` is current system time. When using personal access tokens, the user must have at least `Viewer` access for Automation and the automation action run results returned are also filtered based on the access set in `Limited access` permission settings. This API returns paginated result as specified in query parameters `page` and `pageSize`. The response contains list of automation action run results whose contents corresponds to the `page` query parameter and whose size corresponds to the `pageSize` query parameter.' operationId: getActionInstances parameters: - description: Window size filter in milliseconds (to compute the from date) to get the action run result details example: 10000 in: query name: windowSize schema: type: integer format: int64 - description: To date filter in milliseconds (13-digit) to get the action run result details example: 1706713140000 in: query name: to schema: type: integer format: int64 - description: Page to fetch -- used for paging the action run result records example: 2 in: query name: page schema: type: integer format: int32 - description: Number of records to return in each page -- used for paging the action run result records example: 50 in: query name: pageSize schema: type: integer format: int32 - description: Target snapshot ID filter to get the action run result details example: nCtEoR6NSPqG61QkIkwwCw in: query name: targetSnapshotId schema: type: string - description: Event ID filter to get the action run result details example: nCtEoR6NSPqG61QkIkwwCw in: query name: eventId schema: type: string - description: Event specification ID filter to get the action run result details example: 1706713140000 in: query name: eventSpecificationId schema: type: string - description: 'Text in action run result name, description and event name filter to get the action run result details' example: 1706713140000 in: query name: search schema: type: string - description: Action type filter to get the action run result details example: 'One or more of the following types HTTP, SCRIPT, ANSIBLE, GITHUB, GITLAB, JIRA' in: query name: types schema: type: array items: type: string - description: Action status filter to get the action run result details example: 'One or more of the following status SUBMITTED, IN_PROGRESS, SUCCESS, FAILED, TIMEOUT' in: query name: actionStatuses schema: type: array items: type: string - description: Action IDs filter to get the action run result details for only these actions in: query name: actionIds schema: type: array items: type: string - description: Policy ID filter to get the action run result details example: nCtEoR6NSPqG61QkIkwwCw in: query name: policyId schema: type: string - description: Action run result column to order the result set. example: Name of the action run result column. Default is action run result start date. in: query name: orderBy schema: type: string - description: Sort order direction. example: asc or desc in: query name: orderDirection schema: type: string responses: '200': content: application/json: example: items: - actionInstanceId: fqiH0HOgR1-4Ygoy5EDycw actionId: d473c1b0-0740-4d08-95fe-31e5d0a9faff actionName: Hello World type: SCRIPT status: SUCCESS createdDate: 1710162882369 startDate: 1710162882653 endDate: 1710162882826 eventId: M3wuBxuaSDyecZJ7ICioiw eventSpecificationId: en0FW6XRWu7aRsD4055dbMLAuSU problemText: Test event hostSnapshotId: 2nIOVtEW-iPbsEIi89-yDqJHi2g targetSnapshotId: jfSmhACY-Oa3a8zfjJxvOxJeDSk metadata: [] page: 1 pageSize: 50 totalHits: 500 schema: $ref: '#/components/schemas/PaginatedResult' description: Automation action run result details are returned. '403': description: Automation feature is not enabled or Insufficient permissions. security: - ApiKeyAuth: - Default summary: Get the details of automation action run results from action run history. tags: - Action History x-ibm-ahub-byok: true post: description: Submits the automation action for execution on an agent. The automation action to execute and the agent on which to execute the action must be specified as actionId and hostId. For more details on the request payload see the request sample. This call requires `Execution of automation actions` permission. operationId: addActionInstance requestBody: content: application/json: example: hostId: aHostId actionId: d473c1b0-0740-4d08-95fe-31e5d0a9faff policyId: 2nIOVtEW-iPbsEIi89-yDqJabc inputParameters: - name: name type: type value: value eventId: M3wuBxuaSDyecZJ7ICioiw async: 'true' timeout: '600' schema: $ref: '#/components/schemas/ActionInstanceRequest' required: true responses: '200': content: application/json: example: actionInstanceId: fqiH0HOgR1-4Ygoy5EDycw actionId: d473c1b0-0740-4d08-95fe-31e5d0a9faff actionName: Hello World type: SCRIPT status: SUBMITTED createdDate: 1710162882369 eventId: M3wuBxuaSDyecZJ7ICioiw eventSpecificationId: en0FW6XRWu7aRsD4055dbMLAuSU problemText: Test event hostSnapshotId: 2nIOVtEW-iPbsEIi89-yDqJHi2g targetSnapshotId: jfSmhACY-Oa3a8zfjJxvOxJeDSk inputParameters: [] outputParameters: [] metadata: [] externalSourceType: '' actorId: 5ee5195fbea6150001758c40 actorName: Stan actorType: USER eventEntityType: '' actionDescription: Simple script action for testing policyId: 2nIOVtEW-iPbsEIi89-yDqJabc schema: $ref: '#/components/schemas/ActionInstance' description: Automation action submitted for execution on the agent. '400': description: The payload in the request body is not valid or the action ID (actionId) in the payload is invalid or the agent host ID (hostId) in the payload is invalid. '403': description: Automation feature is not enabled or Insufficient permissions. security: - ApiKeyAuth: - canRunAutomationActions summary: Run an automation action. tags: - Action History x-ibm-ahub-byok: true '/api/automation/actioninstances/{actionInstanceId}': delete: description: 'Deletes the automation action run result specified in the request path from the action run history. The automation action run result will be deleted only if the action run result was created within the timeframe specified in the `from` and `to` query parameters. To get the automation action run result ID and the created time, you can run `/api/automation/actioninstances` and `/api/automation/actioninstances/<{actionInstanceId}>` REST calls. This call requires `Deletion of automation action history` permission.' operationId: deleteActionInstance parameters: - description: Automation action run result ID to delete. example: nCtEoR6NSPqG61QkIkwwCw in: path name: actionInstanceId required: true schema: type: string - description: From date filter in milliseconds (13-digit) to look up the action run result ID. example: 1706713140000 in: query name: from required: true schema: type: integer format: int64 - description: To date filter in milliseconds (13-digit) to look up the action run result ID. example: 1706713190000 in: query name: to required: true schema: type: integer format: int64 responses: '200': content: application/json: example: deletedDocumentsCount: '2' description: Automation action run result is deleted. '400': description: 'Automation action run result ID is missing in the request path, or `from` date or `to` date is missing in the query parameters.' '403': description: Automation feature is not enabled or Insufficient permissions. '500': description: The request do not contain a valid user or API Token. security: - ApiKeyAuth: - canDeleteAutomationActionHistory summary: Deletes an automation action run result from the action run history by ID. tags: - Action History x-ibm-ahub-byok: true get: description: 'Get the details of automation action run result specified in the request path from action run history. The automation action run result will be fetched only if the action run result was created within the timeframe specified by the `windowSize` and `to` query parameters. The `windowSize` parameter is used to compute the from date (`from = to - windowSize`) of the timeframe. The default value for `windowSize` is 10 minutes and the default value for `to` is current system time. To get the automation action run result ID and the created time, you can run `/api/automation/actioninstances` REST calls. When using personal access tokens, the user must have at least `Viewer` access for Automation.' operationId: getActionInstance parameters: - description: action run result ID to get action run result details example: nCtEoR6NSPqG61QkIkwwCw in: path name: actionInstanceId required: true schema: type: string - description: Window size in milliseconds. This value is used compute the from date `(from = to - windowSize)` to get the action run result details. The default `windowSize` is set to 10 minutes if this value is not provided. example: 10000 in: query name: windowSize schema: type: integer format: int64 - description: To date filter in milliseconds (13-digit) to get the action run result details. The default `to` date is set to `System.currentTimeMillis()` if this value is not provided. example: 1706713140000 in: query name: to schema: type: integer format: int64 responses: '200': content: application/json: example: actionInstanceId: fqiH0HOgR1-4Ygoy5EDycw actionId: d473c1b0-0740-4d08-95fe-31e5d0a9faff actionName: Hello World type: SCRIPT status: SUCCESS returnCode: 0 errorMessage: '' createdDate: 1710162882369 startDate: 1710162882653 endDate: 1710162882826 eventId: M3wuBxuaSDyecZJ7ICioiw eventSpecificationId: en0FW6XRWu7aRsD4055dbMLAuSU problemText: Test event hostSnapshotId: 2nIOVtEW-iPbsEIi89-yDqJHi2g inputParameters: [] outputParameters: [] metadata: [] targetSnapshotId: jfSmhACY-Oa3a8zfjJxvOxJeDSk externalSourceType: '' actorId: 5ee5195fbea6150001758c40 actorName: Stan actorType: USER eventEntityType: '' actionDescription: Simple script action for testing policyId: 2nIOVtEW-iPbsEIi89-yDqJabc output: Hello world! schema: $ref: '#/components/schemas/ActionInstance' description: The automation action run result detail is returned. '400': description: Missing automation action run result ID. '403': description: Automation feature is not enabled or Insufficient permissions. security: - ApiKeyAuth: - Default summary: Get the details of an automation action run result by ID from action run history. tags: - Action History x-ibm-ahub-byok: true /api/automation/actions: get: description: 'Get all automation actions. When using personal access tokens, the user must have at least `Viewer` access for Automation and the actions returned are also filtered based on the access set in `Limited access` permission settings.' operationId: getActions responses: '200': content: application/json: example: - id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: type: array items: $ref: '#/components/schemas/Action' description: Automation actions are returned. '403': description: Automation feature is not enabled or Insufficient permissions. '500': description: Failed to retrieve the automation actions. security: - ApiKeyAuth: - Default summary: Get all automation actions. tags: - Action Catalog x-ibm-ahub-byok: true '/api/automation/actions/{id}': get: description: 'Get an automation action by ID specified in the request path. When using personal access tokens, the user must have at least `Viewer` access for Automation and the actions returned are also filtered based on the access set in `Limited access` permission settings.' operationId: getActionByID parameters: - description: Automation action ID example: d473c1b0-0740-4d08-95fe-31e5d0a9faff in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: $ref: '#/components/schemas/Action' description: Automation action is returned. '403': description: Automation feature is not enabled or Insufficient permissions. '404': description: Automation action not found. security: - ApiKeyAuth: - Default summary: Get an automation action by ID. tags: - Action Catalog x-ibm-ahub-byok: true /api/automation/ai/action/match: get: description: Get automation actions that match based on application ID or snapshot ID within a specified time window. operationId: getActionMatchesByIdAndTimeWindow parameters: - in: query name: applicationId schema: type: string - in: query name: snapshotId schema: type: string - in: query name: to schema: type: integer format: int64 - in: query name: windowSize schema: type: integer format: int64 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ActionMatch' description: The automation actions that match are returned. '400': description: 'Either applicationId or snapshotId must be provided, but not both.' '403': description: Automation feature is not enabled or Insufficient permissions. '500': description: Failed to retrieve the matching automation actions. security: - ApiKeyAuth: - Default summary: Get action matches by application ID or snapshot ID. tags: - Action Catalog x-ibm-ahub-byok: true post: description: Get automation actions that match the incident or issue data in the request body. operationId: getActionMatches parameters: - in: query name: targetSnapshotId schema: type: string requestBody: content: application/json: example: name: CPU spends significant time waiting for input/output description: Checks whether the system spends significant time waiting for input/output. schema: $ref: '#/components/schemas/ActionSearchSpace' required: true responses: '200': content: application/json: example: - score: 0.12087341955930318 action: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - sample createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 color: low confidence: low aiEngine: NLP schema: type: array items: $ref: '#/components/schemas/ActionMatch' description: The automation actions that match the incident are returned. '403': description: Automation feature is not enabled or Insufficient permissions. '500': description: Failed to retrieve the matching automation actions. security: - ApiKeyAuth: - Default summary: Get automation actions that match the incidents or issues. tags: - Action Catalog x-ibm-ahub-byok: true /api/automation/parameters/dynamic: put: operationId: resolve requestBody: content: application/json: example: eventId: 7UPTIakhR3uVaMnSQuG3TA timestamp: 1710168530000 parameters: - name: Application name tagName: application.name schema: $ref: '#/components/schemas/GetDynamicParameterValues' required: true responses: '200': content: application/json: example: eventId: 7UPTIakhR3uVaMnSQuG3TA timestamp: 1710168530000 parameters: - name: Application name tagName: application.name resolvedValue: '["Demo Application"]' schema: $ref: '#/components/schemas/GetDynamicParameterValues' description: OK '500': description: Internal server error security: - ApiKeyAuth: - canRunAutomationActions summary: Resolve dynamic parameter values tags: - Action Catalog x-ibm-ahub-byok: true /api/automation/parameters/dynamic/catalog: get: operationId: getDynamicParametersTagCatalog responses: '200': content: application/json: example: tagTree: - label: Application description: null icon: null children: - label: Name icon: lib_application tagName: application.name queryable: true type: TAG type: LEVEL queryable: false tags: - name: application.name label: Name type: STRING_SET description: null canApplyToSource: true canApplyToDestination: true idTag: false schema: $ref: '#/components/schemas/TagCatalog' description: OK '500': description: Internal server error security: - ApiKeyAuth: - Default summary: Get tag catalog for dynamic parameters tags: - Action Catalog x-ibm-ahub-byok: true /api/automation/policies: get: description: 'Returns all the automation policies filtered by the values in optional query parameters. When using personal access tokens, the user must have at least `Viewer` access for Automation and the automation policies returned are also filtered based on the access set in `Limited access` permission settings.' operationId: getPolicies parameters: - description: 'Filter policies by the event or alert type that can trigger a policy. This is an optional parameter. Valid values are customEvent, builtinEvent, applicationSmartAlert, globalApplicationSmartAlert, websiteSmartAlert, infraSmartAlert, mobileAppSmartAlert, syntheticsSmartAlert, logSmartAlert, sloSmartAlert' in: query name: triggerType schema: type: string - description: Trigger identifier. This is an optional parameter. in: query name: triggerId schema: type: string - description: Filter policies by policy execution type. This is an optional parameter. Valid values are automatic or manual in: query name: executionType schema: type: string - description: Filter policies by action ID. This is an optional parameter. in: query name: actionId schema: type: string responses: '200': content: application/json: example: - id: a14700b0-401b-47eb-a751-deda0035fde3 name: Policy for test description: Policy for test trigger: type: customEvent id: C3Ha8PffQHfJ0Hk6 name: Test Event typeConfigurations: - name: manual runnable: type: action id: d473c1b0-0740-4d08-95fe-31e5d0a9faff runConfiguration: actions: - action: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test - idempotent createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: type: array items: $ref: '#/components/schemas/Policy' description: Automation policies list filtered by the values in query parameters. '403': description: Insufficient permissions. '500': description: Failed to retrieve the automation policies. security: - ApiKeyAuth: - Default summary: Get all automation policies. tags: - Policies x-ibm-ahub-byok: true post: description: Creates a new automation policy. Policy creation requires `Configuration of automation policies` permission. operationId: addPolicy requestBody: content: application/json: example: name: builtin-action-custom-event trigger: name: test event type: customEvent id: 2X5r-Un18MIE59rE typeConfigurations: - name: manual runnable: type: action id: c5ba4453-0bc2-3c3e-bdbe-b3ce68239145 runConfiguration: actions: - action: id: c5ba4453-0bc2-3c3e-bdbe-b3ce68239145 schema: $ref: '#/components/schemas/Policy' required: true responses: '201': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Policy for test description: Policy for test trigger: type: customEvent id: C3Ha8PffQHfJ0Hk6 name: Test Event typeConfigurations: - name: manual runnable: type: action id: d473c1b0-0740-4d08-95fe-31e5d0a9faff runConfiguration: actions: - action: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: $ref: '#/components/schemas/Policy' description: New policy created. '400': description: Bad request. '403': description: Insufficient permissions. '412': description: Invalid input value. '500': description: Internal Server Error. security: - ApiKeyAuth: - canConfigureAutomationPolicies summary: Create an automation policy. tags: - Policies x-ibm-ahub-byok: true /api/automation/policies/bulk: post: description: Creates a list of automation policies. Policy creation requires `Configuration of automation policies` permission. operationId: addPolicies requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/Policy' required: true responses: '201': content: application/json: schema: type: array items: $ref: '#/components/schemas/Policy' description: Created. '400': description: Bad request. '403': description: Insufficient permissions. '412': description: Invalid input value. '500': description: Internal Server Error. security: - ApiKeyAuth: - canConfigureAutomationPolicies summary: Create automation policies. tags: - Policies x-ibm-ahub-byok: true '/api/automation/policies/{id}': delete: description: Deletes an automation policy by identifier. Policy deletion requires `Configuration of automation policies` permission. When using personal tokens the automation policies deleted are based on the access set in `Limited access` permission settings. operationId: deletePolicy parameters: - description: Automation policy ID to delete example: a14700b0-401b-47eb-a751-deda0035fde3 in: path name: id required: true schema: type: string responses: '204': description: Automation policy successfully deleted '403': description: Insufficient permissions. '412': description: Automation policy does not exist security: - ApiKeyAuth: - canConfigureAutomationPolicies summary: Deletes an automation policy by identifier. tags: - Policies x-ibm-ahub-byok: true get: description: 'Returns the automation policy filtered by the ID in request parameter. When using personal access tokens, the user must have at least `Viewer` access for Automation and the automation policies returned are also filtered based on the access set in `Limited access` permission settings.' operationId: getPolicyByID parameters: - description: Automation policy ID example: a14700b0-401b-47eb-a751-deda0035fde3 in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Policy for test description: Policy for test trigger: type: customEvent id: C3Ha8PffQHfJ0Hk6 name: Test Event typeConfigurations: - name: manual runnable: type: action id: d473c1b0-0740-4d08-95fe-31e5d0a9faff runConfiguration: actions: - action: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: $ref: '#/components/schemas/Policy' description: Automation policy filtered by the ID in request parameter. '403': description: Insufficient permissions. '404': description: Automation policy not found. security: - ApiKeyAuth: - Default summary: Get an automation policy by ID. tags: - Policies x-ibm-ahub-byok: true put: description: Updates an automation policy by identifier. Policy updates requires `Configuration of automation policies` permission. When using personal tokens the automation policies updated are based on the access set in `Limited access` permission settings. operationId: updatePolicy parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: builtin-action-custom-event trigger: name: test event type: customEvent id: 2X5r-Un18MIE59rE typeConfigurations: - name: manual runnable: type: action id: c5ba4453-0bc2-3c3e-bdbe-b3ce68239145 runConfiguration: actions: - action: id: c5ba4453-0bc2-3c3e-bdbe-b3ce68239145 schema: $ref: '#/components/schemas/Policy' required: true responses: '200': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Policy for test description: Policy for test trigger: type: customEvent id: C3Ha8PffQHfJ0Hk6 name: Test Event typeConfigurations: - name: manual runnable: type: action id: d473c1b0-0740-4d08-95fe-31e5d0a9faff runConfiguration: actions: - action: id: d473c1b0-0740-4d08-95fe-31e5d0a9faff name: Hello World description: Simple script action for testing type: SCRIPT fields: - name: subtype description: script subtype encoding: base64 value: YmFzaA== secured: false - name: script_ssh description: script content encoding: base64 value: ZWNobyBoZWxsbyB3b3JsZA== secured: false - name: timeout description: timeout of the action execution in seconds encoding: ascii value: '' secured: false inputParameters: [] tags: - Test createdAt: 1694442511.129923 modifiedAt: 1703191040.321448 schema: $ref: '#/components/schemas/Policy' description: Automation policy successfully updated. '403': description: Insufficient permissions. '412': description: Invalid input value. '500': description: Server Error. security: - ApiKeyAuth: - canConfigureAutomationPolicies summary: Updates an automation policy by identifier. tags: - Policies x-ibm-ahub-byok: true /api/business-monitoring/activities: post: operationId: getActivities requestBody: content: application/json: schema: $ref: '#/components/schemas/GetActivities' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CursorPaginatedBusinessActivityItem' description: OK security: - ApiKeyAuth: - Default summary: Get Business Activities tags: - Business Monitoring x-ibm-ahub-byok: true /api/business-monitoring/activities/csv: post: operationId: getActivitiesCsv requestBody: content: application/json: schema: $ref: '#/components/schemas/GetActivities' responses: '200': content: text/csv: schema: $ref: '#/components/schemas/BusinessActivity' description: OK security: - ApiKeyAuth: - Default summary: Download Business Activities tags: - Business Monitoring x-ibm-ahub-byok: true /api/business-monitoring/business-perspectives: get: operationId: getBusinessPerspectives responses: '200': content: application/json: example: - id: gBwNFIbjS6Ozwt0a12regg label: biz-perspective name: biz-perspective description: This is an example business perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/BusinessPerspectiveConfig' description: OK security: - ApiKeyAuth: - Default summary: Get all business perspectives tags: - Business Monitoring x-ibm-ahub-byok: true post: operationId: createBusinessPerspective requestBody: content: application/json: example: label: biz-perspective name: biz-perspective description: This is an example business perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/NewBusinessPerspectiveConfig' required: true responses: '200': content: application/json: example: id: gBwNFIbjS6Ozwt0a12regg label: biz-perspective name: biz-perspective description: This is an example business perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/BusinessPerspectiveConfig' description: OK security: - ApiKeyAuth: - Default summary: Create business perspective tags: - Business Monitoring x-ibm-ahub-byok: true '/api/business-monitoring/business-perspectives/{id}': delete: operationId: deleteBusinessPerspective parameters: - in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - Default summary: Delete business perspective tags: - Business Monitoring x-ibm-ahub-byok: true get: operationId: getBusinessPerspective parameters: - in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: gBwNFIbjS6Ozwt0a12regg label: biz-perspective name: biz-perspective description: This is an example business perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/BusinessPerspectiveConfig' description: OK security: - ApiKeyAuth: - Default summary: Get business perspective tags: - Business Monitoring x-ibm-ahub-byok: true put: operationId: updateBusinessPerspective parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: example: label: biz-perspective name: biz-perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/UpdatedBusinessPerspectiveConfig' required: true responses: '200': content: application/json: example: id: gBwNFIbjS6Ozwt0a12regg label: biz-perspective name: biz-perspective description: This is an example business perspective rbacTags: - id: 0xHKaxfaS161Al6Qc23g4w displayName: team 1 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: AND elements: - type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: service.name stringValue: my-service-1 numberValue: null booleanValue: null key: null value: my-service-1 operator: EQUALS entity: DESTINATION - type: TAG_FILTER name: service.name stringValue: my-service-2 numberValue: null booleanValue: null key: null value: my-service-2 operator: EQUALS entity: DESTINATION schema: $ref: '#/components/schemas/BusinessPerspectiveConfig' description: OK security: - ApiKeyAuth: - Default summary: Update business perspective tags: - Business Monitoring x-ibm-ahub-byok: true /api/business-monitoring/catalog: get: operationId: getBusinessTagCatalog parameters: - in: query name: from schema: type: integer format: int64 - in: query name: useCase schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: example: tagTree: - label: Region or Environment description: null icon: null children: - label: Zone description: null icon: null children: - label: Agent Zone tagName: agent.zone type: TAG - label: Ec2 Zone tagName: aws.ec2.zone type: TAG - label: Azure Zone tagName: azure.zone type: TAG type: LEVEL queryable: false - label: Cloud description: null icon: null children: - label: Aws Arn tagName: aws.arn type: TAG - label: Ec2 Ipv4 tagName: aws.ec2.ipv4 type: TAG - label: Ec2 PublicName tagName: aws.ec2.publicName type: TAG - label: Ec2 Tag tagName: aws.ec2.tag type: TAG - label: Ec2 Zone tagName: aws.ec2.zone type: TAG - label: Ecs Cluster Name tagName: aws.ecs.cluster.name type: TAG - label: Azure Zone tagName: azure.zone type: TAG - label: Gce Tag tagName: gce.tag type: TAG - label: Gce Zone tagName: gce.zone type: TAG - label: Cloud Provider tagName: cloud.provider type: TAG type: LEVEL queryable: false - label: Host description: null icon: null children: - label: Http Host tagName: call.http.host type: TAG - label: Host Fqdn tagName: host.fqdn type: TAG - label: Host Ip tagName: host.ip type: TAG - label: Host Name tagName: host.name type: TAG - label: Host Zone tagName: host.zone type: TAG - label: Jboss Node Name tagName: jboss.node.name type: TAG - label: Kubernetes Cluster Name tagName: kubernetes.cluster.name type: TAG - label: Kubernetes Node Name tagName: kubernetes.node.name type: TAG type: LEVEL queryable: false type: LEVEL queryable: false - label: custom description: null icon: null children: - label: HTTP description: null icon: null children: - label: Http Header tagName: call.http.header type: TAG - label: Http Params tagName: call.http.params type: TAG - label: Http PathTemplate tagName: call.http.pathTemplate type: TAG type: LEVEL queryable: false - label: Miscellaneous description: null icon: null children: - label: Agent Tag tagName: agent.tag type: TAG - label: Ec2 Tag tagName: aws.ec2.tag type: TAG - label: Call Tag tagName: call.tag type: TAG type: LEVEL queryable: false - label: Platform description: null icon: null children: - label: Docker Label tagName: docker.label type: TAG - label: Kubernetes Label tagName: kubernetes.label type: TAG - label: Kubernetes Deployment Label tagName: kubernetes.deployment.label type: TAG - label: Kubernetes Pod Label tagName: kubernetes.pod.label type: TAG - label: Openshift Deploymentconfig Label tagName: openshift.deploymentconfig.label type: TAG type: LEVEL queryable: false type: LEVEL queryable: false tags: [] schema: $ref: '#/components/schemas/TagCatalog' description: OK security: - ApiKeyAuth: - Default summary: Get business tag catalog tags: - Business Monitoring x-ibm-ahub-byok: true /api/custom-dashboard: get: description: |- Get all accessible custom dashboards details. For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: getCustomDashboards parameters: - description: query example: BeeInstana in: query name: query schema: type: string - description: pageSize example: 2 in: query name: pageSize schema: type: integer format: int32 - description: page example: 1 in: query name: page schema: type: integer format: int32 - description: withTotalHits example: false in: query name: withTotalHits schema: type: boolean responses: '200': content: application/json: example: - id: gBtvG96xRpScauwsclG-KA title: BeeInstana - aggregator annotations: - SHARED - id: UtaUyPjGSTOAmPFICSbwqw title: BeeInstana - alerting annotations: - SHARED schema: type: array items: $ref: '#/components/schemas/CustomDashboardPreview' description: OK security: - ApiKeyAuth: - Default summary: Get accessible custom dashboards tags: - Custom Dashboards x-ibm-ahub-byok: true post: description: |- For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: addCustomDashboard requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomDashboard' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomDashboard' description: OK '403': description: When attempting to share dashboards without the canCreatePublicCustomDashboards permission. '422': description: When the custom dashboard payload is invalid. security: - ApiKeyAuth: - Default summary: Add custom dashboard tags: - Custom Dashboards x-ibm-ahub-byok: true /api/custom-dashboard/shareable-api-tokens: get: description: |- Get all API tokens that have access to shareable custom dashboards. For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: getShareableApiTokens responses: '200': content: application/json: example: - id: foJfJVpyS5eAQAhfxSRctw name: New API Token - id: O_OKWG48S2WemaL_e3j_vQ name: New API Token - id: ATBzggrzTE-aRpUMBLmG9g name: New API Token schema: type: array items: $ref: '#/components/schemas/DashboardApiToken' description: OK security: - ApiKeyAuth: - Default - ApiKeyAuth: - CreatePublicCustomDashboards summary: Get all API tokens. tags: - Custom Dashboards x-ibm-ahub-byok: true /api/custom-dashboard/shareable-users: get: description: |- Get all users (without invitations) that have access to shareable custom dashboards. For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: getShareableUsers responses: '200': content: application/json: example: - id: 63721be55108940001ead6fa email: JohnMcClane@instana.com fullName: John McClane - id: 6360a5ad034a430001c500d0 email: HansGruber@instana.com fullName: Hans Gruber schema: type: array items: $ref: '#/components/schemas/UserBasicResult' description: OK security: - ApiKeyAuth: - Default - ApiKeyAuth: - CreatePublicCustomDashboards summary: Get all users (without invitations). tags: - Custom Dashboards x-ibm-ahub-byok: true '/api/custom-dashboard/{customDashboardId}': delete: description: |- For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: deleteCustomDashboard parameters: - in: path name: customDashboardId required: true schema: type: string responses: '204': description: Custom dashboard successfully removed security: - ApiKeyAuth: - Default summary: Remove custom dashboard tags: - Custom Dashboards x-ibm-ahub-byok: true get: description: |- Get all Custom Dashboard Info for specified customDashboardId. For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: getCustomDashboard parameters: - description: customDashboardId example: alHaYV5aSkKku_wcg53teQ in: path name: customDashboardId required: true schema: type: string responses: '200': content: application/json: example: | { "id": "alHaYV5aSkKku_wcg53teQ", "title": "{string}", "accessRules": [ { "accessType": "READ_WRITE", "relationType": "USER", "relatedId": "5ee8a3e8cd70020001ecb007" }, { "accessType": "READ", "relationType": "GLOBAL", "relatedId": null } ], "widgets": [ { "id": "dIxxq0LCdqZomve2", "title": "SUM of bytes received for a particular container", "width": 2, "height": 4, "x": 0, "y": 0, "type": "bigNumber", "config": { "formatter": "bytes.detailed", "comparisonDecreaseColor": "greenish", "metricConfiguration": { "metric": "network.rx.bytes", "timeShift": 0, "tagFilterExpression": { "name": "docker.containerId", "type": "TAG_FILTER", "value": "faaa7f1732d16faa7fc27a0cb49fdf5c07716f3d3be1315e20f24d099657bbe0", "entity": "NOT_APPLICABLE", "operator": "EQUALS" }, "aggregation": "SUM", "source": "INFRASTRUCTURE_METRICS", "crossSeriesAggregation": "SUM", "type": "docker" }, "comparisonIncreaseColor": "redish" } } ], "writable": true, "ownerId": {string} } schema: $ref: '#/components/schemas/CustomDashboardWithUserSpecificInformation' description: OK security: - ApiKeyAuth: - Default summary: Get custom dashboard tags: - Custom Dashboards x-ibm-ahub-byok: true put: description: |- For more information on custom dashboards please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#custom-dashboards. operationId: updateCustomDashboard parameters: - in: path name: customDashboardId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomDashboard' responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomDashboard' description: OK '403': description: When attempting to share dashboards without the canCreatePublicCustomDashboards permission. '422': description: When the custom dashboard payload is invalid. security: - ApiKeyAuth: - Default summary: Update custom dashboard tags: - Custom Dashboards x-ibm-ahub-byok: true /api/custom-entitytypes: get: description: This end point lists custom Entity Type Definition operationId: listCustomEntities responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEntityWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: List custom Entity Type Definition tags: - Custom Entities x-ibm-ahub-byok: true post: description: This end point creates a custom entity type operationId: createCustomEntities requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEntityModel' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEntityWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: Create a Custom Entity type tags: - Custom Entities x-ibm-ahub-byok: true '/api/custom-entitytypes/{id}': delete: description: This end point deletes a custom Entity type definition operationId: deleteCustomEntity parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEntityModel' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEntityWithMetadata' description: Entity Deleted security: - ApiKeyAuth: - Default summary: Delete a Custom Entity Type tags: - Custom Entities x-ibm-ahub-byok: true get: description: This endpoint gets custom Entity Type by ID operationId: getCustomEntity parameters: - in: path name: id required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEntityWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: Get custom Entity Types tags: - Custom Entities x-ibm-ahub-byok: true put: description: This end points updates the definition of a custom entity type operationId: updateCustomEntity parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEntityModel' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEntityWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: Update a Custom Entity Type tags: - Custom Entities x-ibm-ahub-byok: true '/api/eum/impact/report/{eventId}': get: description: Gets a report of users impacted by an event which was created from a smart alert violation operationId: getImpactedUsersReport parameters: - in: path name: eventId required: true schema: type: string responses: '200': content: text/csv: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get impacted users report tags: - End User Monitoring x-ibm-ahub-byok: true /api/events: get: description: 'Get all Events within a timeframe. The timeframe is defined as `[from, to]` or `[to - windowSize, to]`. ' operationId: getEvents parameters: - description: A Unix timestamp representing the end of the requested timeframe. Defaults to the current system time example: 1704096000000 in: query name: to schema: type: integer format: int64 - description: 'The size of the requested timeframe, in milliseconds, relative to the ''to'' parameter. Defaults to 10 minutes (600000 milliseconds) if neither ''windowSize'' nor ''from'' are provided. Resulting timeframe range = [to - windowSize, to]' example: 600000 in: query name: windowSize schema: type: integer format: int64 - description: 'A Unix timestamp representing the start of the requested timeframe. Can be used as an alternative to ''windowSize'' to define the timeframe. If both ''from'' and ''windowSize'' are provided, ''from'' takes precedence. Resulting timeframe range = [from, to]' example: 1672560000000 in: query name: from schema: type: integer format: int64 - description: Flag to filter the results to only show events with state changes within the timeframe. example: true in: query name: filterEventUpdates schema: type: boolean - description: Flag to filter the results to exclude events that have been triggered before the timeframe. This also filters out events with state changes within the timeframe if the events' start times begin before the timeframe. example: true in: query name: excludeTriggeredBefore schema: type: boolean - deprecated: true description: Flag to filter the results to include Agent Monitoring Issues. example: true in: query name: includeAgentMonitoringIssues schema: type: boolean - deprecated: true description: Flag to filter the results to include Kubernetes Info Events. example: true in: query name: includeKubernetesInfoEvents schema: type: boolean - description: 'A string representing an event type - an INCIDENT, ISSUE, or CHANGE. This query can be repeated to use multiple filters.' example: INCIDENT in: query name: eventTypeFilters schema: type: array items: type: string enum: - INCIDENT - ISSUE - CHANGE uniqueItems: true responses: '200': content: application/json: example: - eventId: gM73SycATrOFMcL5qspByQ start: 1706774419000 end: 1706783931000 type: incident state: open problem: New Event-test-01 detail: test severity: 5 entityName: .NET App entityLabel: powershell.exe metrics: - metricName: threads.lck_crs snapshotId: zqEuPom1v7YK61jRU8cEpRhCI1w entityId: steadyId: '55428' pluginId: com.instana.forge.infrastructure.runtime.clr.ClrRuntimePlatform host: '00:15:5d:ff:fe:98:d1:f6' entityType: INFRASTRUCTURE fixSuggestion: test snapshotId: zqEuPom1v7YK61jRU8cEpRhCI1w recentEvents: - eventId: ZzaptuusSOutGLGmqD-wzA - eventId: oeqTbltKQw6pp1OJi_QH_Q - eventId: Cnv-8y96SOW2CzZbn7SK7Q - eventId: vidr6ZX9QmqhtdvBrYFR3Q - eventId: NWfYJEUjSLSPJbxfCEW6kA - eventId: iJ2Bm8Y5Qq-Fh-IAwAnRqQ - eventId: kHiCKKByTdW0sMhhjxvgQg - eventId: w-hl_-8NQXKEIemcNR5ouw - eventId: Vn0weJOGROaFKwRtqNDaeg - eventId: Z9yz38EOR3aR0rYlBN3oRQ - eventId: h7-N1PT9Sim4dCbyM-sf3g - eventId: nnWCZ2L2STi8lXFbPNUgUg - eventId: j1NlsfUYTz69t3dqSMekPQ probableCause: [] probableCauseMetadata: {} schema: type: array items: $ref: '#/components/schemas/EventResult' description: OK '400': description: Bad request. security: - ApiKeyAuth: - Default summary: Get all Events tags: - Events x-ibm-ahub-byok: true post: description: 'Gets a set of events by their IDs. ' operationId: getEventsByIds requestBody: content: application/json: example: - VOMNl0OgRv2HXlsR0iUYGg - h66yezD9Sfi5YNh_cmeG7Q schema: type: array items: type: string required: true responses: '200': content: application/json: example: - eventId: VOMNl0OgRv2HXlsR0iUYGg start: 1722027687446 end: 1722028317446 type: issue state: open problem: Calls are slower than usual detail: Calls are slower or equal to 50 ms based on latency (90th). severity: 5 entityName: Endpoint entityLabel: POST /integration/slack/event metrics: - metricAggregation: P90 metricName: latency entityType: ENDPOINT fixSuggestion: Calls are slower or equal to 50 ms based on latency (90th). snapshotId: A-fDmFeA5Mzl3yIs8hXs5Megwz8 endpointId: A-fDmFeA5Mzl3yIs8hXs5Megwz8 endpointServiceId: fc3b86a089d24ed3b7d50ac3a7639c682101d6b9 applicationId: qOlcrsSlS_eWLGnBjooqWA - eventId: h66yezD9Sfi5YNh_cmeG7Q start: 1721764921276 end: 1722028014839 type: issue state: open problem: _RP Static camunda Archive Invoice for k8s-demo detail: Calls are slower or equal to the expectation based on latency (90th). severity: 5 entityName: Endpoint entityLabel: Archive Invoice metrics: - metricAggregation: P90 metricName: latency entityType: ENDPOINT fixSuggestion: Calls are slower or equal to the expectation based on latency (90th). snapshotId: MN1thidNpDc15zM-NP4ilfJs87k endpointId: MN1thidNpDc15zM-NP4ilfJs87k endpointServiceId: 1f0ee2b46a33c2dbfedfec9c45ad81ff1c8e7e37 applicationId: acfRC1IqTVi41OMLAJU4Cw schema: type: array items: $ref: '#/components/schemas/EventResult' description: OK '206': description: Some of the requested events do not exist. '422': description: Unprocessable entity. security: - ApiKeyAuth: - Default summary: Get Events by IDs tags: - Events x-ibm-ahub-byok: true /api/events/agent-monitoring-events: get: description: 'Gets all Agent Monitoring Events within a timeframe. The timeframe is defined as `[from, to]` or `[to - windowSize, to]`. ' operationId: agentMonitoringEvents parameters: - description: A Unix timestamp representing the end of the requested timeframe. Defaults to the current system time example: 1704096000000 in: query name: to schema: type: integer format: int64 - description: 'The size of the requested timeframe, in milliseconds, relative to the ''to'' parameter. Defaults to 10 minutes (600000 milliseconds) if neither ''windowSize'' nor ''from'' are provided. Resulting timeframe range = [to - windowSize, to]' example: 600000 in: query name: windowSize schema: type: integer format: int64 - description: 'A Unix timestamp representing the start of the requested timeframe. Can be used as an alternative to ''windowSize'' to define the timeframe. If both ''from'' and ''windowSize'' are provided, ''from'' takes precedence. Resulting timeframe range = [from, to]' example: 1672560000000 in: query name: from schema: type: integer format: int64 - description: Flag to filter the results to only show events with state changes within the timeframe. example: true in: query name: filterEventUpdates schema: type: boolean - description: Flag to filter the results to exclude events that have been triggered before the timeframe. This also filters out events with state changes within the timeframe if the events' start times begin before the timeframe. example: true in: query name: excludeTriggeredBefore schema: type: boolean responses: '200': content: application/json: example: - eventId: n8DamRZKSs6Z2f0wiZ9tVQ start: 1707472014671 end: 1707472674671 type: agent_monitoring_issue state: open problem: 'Monitoring issue: jvm_attach_generic' detail: 'Our Agent observed a problem with monitoring the linked process. To resolve this issue, please check our docs (https://www.instana.com/docs/) for error code: jvm_attach_generic' severity: 5 entityName: Process entityLabel: java entityType: INFRASTRUCTURE fixSuggestion: 'Our Agent observed a problem with monitoring the linked process. To resolve this issue, please check our docs (https://www.instana.com/docs/) for error code: jvm_attach_generic' snapshotId: 2fDFOytDpF4FYKrTdfwdlklDOPY schema: type: array items: $ref: '#/components/schemas/EventResult' description: OK '404': description: The events do not exist in the timeframe. security: - ApiKeyAuth: - Default summary: Get Agent Monitoring Events tags: - Events x-ibm-ahub-byok: true /api/events/kubernetes-info-events: get: description: 'Gets all Kubernetes Info Events within a timeframe. The timeframe is defined as `[from, to]` or `[to - windowSize, to]`. ' operationId: kubernetesInfoEvents parameters: - description: A Unix timestamp representing the end of the requested timeframe. Defaults to the current system time example: 1704096000000 in: query name: to schema: type: integer format: int64 - description: 'The size of the requested timeframe, in milliseconds, relative to the ''to'' parameter. Defaults to 10 minutes (600000 milliseconds) if neither ''windowSize'' nor ''from'' are provided. Resulting timeframe range = [to - windowSize, to]' example: 600000 in: query name: windowSize schema: type: integer format: int64 - description: 'A Unix timestamp representing the start of the requested timeframe. Can be used as an alternative to ''windowSize'' to define the timeframe. If both ''from'' and ''windowSize'' are provided, ''from'' takes precedence. Resulting timeframe range = [from, to]' example: 1672560000000 in: query name: from schema: type: integer format: int64 - description: Flag to filter the results to only show events with state changes within the timeframe. example: true in: query name: filterEventUpdates schema: type: boolean - description: Flag to filter the results to exclude events that have been triggered before the timeframe. This also filters out events with state changes within the timeframe if the events' start times begin before the timeframe. example: true in: query name: excludeTriggeredBefore schema: type: boolean responses: '200': content: application/json: example: - eventId: nOYcBAncQIyZHdVNnBRmzQ start: 1707472297000 end: 1707472297000 type: change state: closed problem: BackOff detail: 'Back-off pulling image "gcr.io/kubernetes-helm/tiller:v2.14.1"' severity: -2 entityName: Kubernetes Pod entityLabel: kube-system/tiller-deploy-7bf78cdbf7-gnjg5 (pod) entityType: INFRASTRUCTURE fixSuggestion: 'Back-off pulling image "gcr.io/kubernetes-helm/tiller:v2.14.1"' snapshotId: wTRNW3DaFeQhk7G3Cx5bKC5Psgk schema: type: array items: $ref: '#/components/schemas/EventResult' description: OK '404': description: The events do not exist in the timeframe. security: - ApiKeyAuth: - Default summary: Get Kubernetes Info Events tags: - Events x-ibm-ahub-byok: true /api/events/settings/alertingChannels: get: description: Gets all the alerting channels. Requires the permission called CanConfigureIntegrations. operationId: getAlertingChannels parameters: - description: List of IDs of alert channels defined in Instana. Can be left empty. example: '[YbcFlaG8k5oIkxD0, OYcbU9gdP6OTBThJ, qbhfsL9vTtlaBOAt]' in: query name: ids schema: type: array items: type: string uniqueItems: true responses: '200': content: application/json: example: - id: 18iiwkDxHD7_A4mIlouise name: Email Alert Channel customEmailSubjectPrefix: null emails: - youremail@email.com kind: EMAIL - id: 1pFirIMvrZk9NO2R name: Stan Test Slack Channel webhookUrl: 'https://hooks.slack.com/testwebhook' iconUrl: '' channel: team-stan-test-channel emojiRendering: false kind: SLACK schema: type: array items: $ref: '#/components/schemas/AbstractIntegration' description: OK security: - ApiKeyAuth: - CanConfigureIntegrations summary: Get all Alerting Channels tags: - Event Settings x-ibm-ahub-byok: true post: description: Creates an alerting channel. Requires the permission called CanConfigureIntegrations. operationId: postAlertingChannel requestBody: content: application/json: schema: $ref: '#/components/schemas/AbstractIntegration' required: true responses: '200': content: application/json: example: id: 18iiwkDxHD7_A4mIlouise name: Email Alert Channel customEmailSubjectPrefix: null emails: - youremail@email.com kind: EMAIL schema: $ref: '#/components/schemas/AbstractIntegration' description: created the alert channel setting '302': description: 'Redirect to the integration service for continuing the configuration with the 3rd party system ' '400': content: application/json: schema: type: string description: Failed creating the alert channel setting security: - ApiKeyAuth: - CanConfigureIntegrations summary: Create Alert Channel tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/alertingChannels/infos: get: description: Gets the overview information of all alerting channels. Requires the permission called CanConfigureIntegrations. operationId: getAlertingChannelsOverview parameters: - description: List of IDs of alert channels defined in Instana. Can be left empty. example: '[YbcFlaG8k5oIkxD0, OYcbU9gdP6OTBThJ, qbhfsL9vTtlaBOAt]' in: query name: ids schema: type: array items: type: string uniqueItems: true responses: '200': content: application/json: example: - id: qbhfsL9vTtlaBOAt kind: WEB_HOOK name: alert-response-generic-webhook properties: {} - id: V_gYaoRFPe6S-T-l kind: OPS_GENIE name: OpsGenie QA properties: Alias: '' Tags: k8s-test schema: type: array items: $ref: '#/components/schemas/IntegrationOverview' description: OK security: - ApiKeyAuth: - CanConfigureIntegrations summary: Get Overview of Alerting Channels tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/alertingChannels/notify/{id}': post: description: 'Sends alert for a specific event to an alerting channel. Provided the event Id, an alert could be sent to the alerting channel. This endpoint requires `canInvokeAlertChannel` permission.' operationId: sendTestAlertingById parameters: - description: ID of the alerting channel to be notified on. example: YbcFlaG8k5oIkxD0 in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ManualAlertingChannelConfiguration' required: true responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureIntegrations summary: Notify manually to Alerting Channel. Requires the permission called CanConfigureIntegrations. tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/alertingChannels/test: put: description: Sends a test alert to an alert channel. This is for testing if an potential alert channel is able to receive alerts from Instana. Requires the permission called CanConfigureIntegrations. operationId: sendTestAlerting requestBody: content: application/json: schema: $ref: '#/components/schemas/AbstractIntegration' x-example: alertingChannelTestCall required: true responses: '200': content: application/json: examples: Failure: description: Failure value: status: failure message: Alerting channel was unsuccessful. Success: description: Success value: status: success message: 'Alerting Channel was successfully triggered, please check the channel!' description: Test alerting channel response security: - ApiKeyAuth: - CanConfigureIntegrations summary: Test Alerting Channel tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/alertingChannels/{id}': delete: description: Deletes an alert channel. Requires the permission called CanConfigureIntegrations. operationId: deleteAlertingChannel parameters: - description: ID of the Alerting Channel to delete. example: YbcFlaG8k5oIkxD0 in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. security: - ApiKeyAuth: - CanConfigureIntegrations summary: Delete Alerting Channel tags: - Event Settings x-ibm-ahub-byok: true get: description: Gets an alerting channel. Requires the permission called CanConfigureIntegrations. operationId: getAlertingChannel parameters: - description: ID of the Alerting Channel to get. example: YbcFlaG8k5oIkxD0 in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: 18iiwkDxHD7_A4mIlouise name: Email Alert Channel customEmailSubjectPrefix: null emails: - youremail@email.com kind: EMAIL schema: $ref: '#/components/schemas/AbstractIntegration' description: OK security: - ApiKeyAuth: - CanConfigureIntegrations summary: Get Alerting Channel tags: - Event Settings x-ibm-ahub-byok: true put: description: Updates an alerting channel. Requires the permission called CanConfigureIntegrations. operationId: putAlertingChannel parameters: - description: ID of the Alerting Channel to update. example: YbcFlaG8k5oIkxD0 in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AbstractIntegration' required: true responses: '200': content: application/json: example: id: 18iiwkDxHD7_A4mIlouise name: Email Alert Channel customEmailSubjectPrefix: null emails: - youremail@email.com kind: EMAIL schema: $ref: '#/components/schemas/AbstractIntegration' description: Updated the alert channel setting '302': description: 'Redirect to the integration service for continuing the configuration with the 3rd party system ' '400': content: application/json: schema: type: string description: Failed updating the alert channel setting security: - ApiKeyAuth: - CanConfigureIntegrations summary: Update Alert Channel tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/alerts: get: description: Gets all Alert Configurations operationId: getAlerts responses: '200': content: application/json: example: - id: 5GJXiK9aciVaBPnu alertName: CMH Alert Test muteUntil: 9007199254740991 integrationIds: - GcqLyri-worP8sXX eventFilteringConfiguration: query: 'entity.host.fqdn:robot-shop-pink1.fyre.ibm.com' ruleIds: - roILHzyaMBRDZE3FxaeZ5T_wx4Q eventTypes: [] applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: - type: staticString key: cmhtest value: cmhval lastUpdated: 1702590551696 invalid: false alertChannelNames: - CMH Email test applicationNames: [] - id: E8Z88ThbA7RDPgbz alertName: SQL Server Write txns Alert muteUntil: 0 integrationIds: - Hrigl1epXxAc0Tym eventFilteringConfiguration: query: null ruleIds: - v1jc5yEjHRNbX8_i eventTypes: [] applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: [] lastUpdated: 1702590551748 invalid: false alertChannelNames: - Servicenow Webhook Sunny applicationNames: [] - id: Z9eXY8LOfTuAf43e alertName: IBM i All Alerts muteUntil: 0 integrationIds: [] eventFilteringConfiguration: query: 'entity.ibmi.os.hostname:ut31p37.rch.stglabs.ibm.com AND event.text:*' ruleIds: [] eventTypes: - warning applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: [] lastUpdated: 1704894496752 invalid: false alertChannelNames: [] applicationNames: [] schema: type: array items: $ref: '#/components/schemas/ValidatedAlertingConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Get all Alert Configurations tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/alerts/infos: get: description: Gets all alert configurations that relate to the given alert channel. operationId: getAlertingConfigurationInfos parameters: - description: ID of a specific alert channel configuration. example: hu6ynJbwgB4X1rjk in: query name: integrationId required: true schema: type: string responses: '200': content: application/json: example: - id: Xt67tttZF4yzemPQ label: Production Availability Alerts query: 'entity.zone:prod' eventTypes: [] selectedEvents: 2 enabled: true type: Alert entityId: null invalid: false - id: wNbFtdyvQgeA4k8JdBSsyA label: Database Cluster Alerts query: null eventTypes: null selectedEvents: null enabled: false type: ApplicationSmartAlert entityId: mwVo3lG-TD-4ssDa3w0pGA invalid: false schema: type: array items: $ref: '#/components/schemas/ValidatedAlertingChannelInputInfo' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: All alerting configuration info tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/alerts/{id}': delete: description: Delete a specific Alert Configuration by ID operationId: deleteAlert parameters: - description: ID of a specific Alert Configuration to delete. example: hu6ynJbwgB4X1rjkkw in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Delete Alert Configuration tags: - Event Settings x-ibm-ahub-byok: true get: description: Get a specific Alert Configuration by ID. operationId: getAlert parameters: - description: ID of a specific Alert Configuration to retrieve. example: iSjG7UWK3Dy6bDUc in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: iSjG7UWK3Dy6bDUc alertName: test-email-alert muteUntil: 0 integrationIds: - B1PdA6BUdA9JJRZG eventFilteringConfiguration: query: 'event.text:*BRUCE*' ruleIds: [] eventTypes: - warning - incident - critical applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: [] lastUpdated: 1718828552918 schema: $ref: '#/components/schemas/AlertingConfigurationWithLastUpdated' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Get Alert Configuration tags: - Event Settings x-ibm-ahub-byok: true put: description: Create or update a specific Alert configuration by ID operationId: putAlert parameters: - description: ID of a specific Alert Configuration to create or update. example: hu6ynJbwgB4X1rjk in: path name: id required: true schema: type: string requestBody: content: application/json: example: id: hu6ynJbwgB4X1rjk alertName: Alerts Test muteUntil: 9007199254740991 integrationIds: - ctCR9Q373YAY27H_ - wyAPFbP_xZCeEUn6 - M01h5MDfb7YVQPAz - BH4nVcoPdSpJH_4U - ldF14o6dCKmQFJxP - IbQkmZ46_oUGV-L7 - wpWi9SYL7cJOu_UZ - ds1Lpvix2WVoWTKg eventFilteringConfiguration: query: null ruleIds: [] eventTypes: - incident - critical applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: - type: staticString key: assignment_group value: ITSM App-Dev - type: staticString key: category value: Software - type: staticString key: change_test value: test kevin - type: staticString key: assigned_to value: Antony Alldis schema: $ref: '#/components/schemas/AlertingConfiguration' required: true responses: '200': content: application/json: example: id: hu6ynJbwgB4X1rjk alertName: Alerts Test muteUntil: 0 integrationIds: - ctCR9Q373YAY27H_ - wyAPFbP_xZCeEUn6 - M01h5MDfb7YVQPAz - BH4nVcoPdSpJH_4U - ldF14o6dCKmQFJxP - IbQkmZ46_oUGV-L7 - wpWi9SYL7cJOu_UZ - ds1Lpvix2WVoWTKg eventFilteringConfiguration: query: null ruleIds: [] eventTypes: - incident - critical applicationAlertConfigIds: [] validVersion: 1 customPayloadFields: - type: staticString key: assignment_group value: ITSM App-Dev - type: staticString key: category value: Software - type: staticString key: change_test value: test kevin - type: staticString key: assigned_to value: Antony Alldis schema: $ref: '#/components/schemas/AlertingConfigurationWithLastUpdated' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '422': description: Unprocessable request - missing/invalid data. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Create or update Alert Configuration tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/application-alert-configs: get: description: |- Gets all the Smart Alert Configurations pertaining to a specific application. Configurations are sorted by creation date in descending order. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: findAllActiveApplicationAlertConfigs parameters: - description: The ID of a specific Application. example: IYS1XOEcTNiT1eOD8pxgXg in: query name: applicationId required: true schema: type: string - description: A list of Smart Alert Configuration IDs. This allows fetching of a specific set of Configurations. This query can be repeated to use multiple IDs. example: IYS1XOEcTNiT1eOD8pxgXg in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: Erroneous call rate is higher than normal description: The erroneous call rate is higher or equal to 4%. boundaryScope: ALL applicationId: IYS1XOEcTNiT1eOD8pxgXg applications: IYS1XOEcTNiT1eOD8pxgXg: applicationId: IYS1XOEcTNiT1eOD8pxgXg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: errors metricName: errors aggregation: MEAN threshold: type: staticThreshold operator: '>=' value: 0.04 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: A5VvSXR_SVG6z7YbnIHiHQ created: 1707751873882 initialCreated: 1707751873882 readOnly: false enabled: true derivedFromGlobalAlert: false schema: type: array items: $ref: '#/components/schemas/ApplicationAlertConfigWithMetadata' description: OK - Returns an empty list if no configurations match the criteria '403': description: Insufficient permissions. security: - ApiKeyAuth: - Default summary: Get all Smart Alert Configs tags: - Application Alert Configuration x-ibm-ahub-byok: true post: description: |- Creates a new Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: createApplicationAlertConfig requestBody: content: application/json: example: name: Calls are slower than usual description: Calls are slower or equal to the expectation based on latency (90th). boundaryScope: INBOUND applicationId: ZOi0te_ERE-mRm-9zsbwdg applications: ZOi0te_ERE-mRm-9zsbwdg: applicationId: ZOi0te_ERE-mRm-9zsbwdg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: TAG_FILTER name: endpoint.name stringValue: null numberValue: null booleanValue: null key: null value: null operator: NOT_EMPTY entity: DESTINATION includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 1 - 3 - - 600000 - 1 - 3 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] schema: $ref: '#/components/schemas/ApplicationAlertConfig' required: true responses: '200': content: application/json: example: name: Calls are slower than usual description: Calls are slower or equal to the expectation based on latency (90th). boundaryScope: INBOUND applicationId: ZOi0te_ERE-mRm-9zsbwdg applications: ZOi0te_ERE-mRm-9zsbwdg: applicationId: ZOi0te_ERE-mRm-9zsbwdg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: TAG_FILTER name: endpoint.name stringValue: null numberValue: null booleanValue: null key: null value: null operator: NOT_EMPTY entity: DESTINATION includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 1 - 3 - - 600000 - 1 - 3 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: DKp0JArJRAiQIav9CoKSWQ created: 1706617456952 initialCreated: 1706617456952 readOnly: false enabled: true derivedFromGlobalAlert: false schema: $ref: '#/components/schemas/ApplicationAlertConfigWithMetadata' description: Smart Alert Configuration created. '400': description: Invalid Configuration. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '428': description: Baseline calculation failed due to insufficient data. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Create Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}': delete: description: |- Deletes an Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: deleteApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to delete. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string responses: '204': description: Smart Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Delete Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true get: description: |- Gets a specific Smart Alert Configuration. This may return a deleted Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: findApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to retrieve. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the Configuration was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1706617456952 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: Calls are slower than usual description: Calls are slower or equal to the expectation based on latency (90th). boundaryScope: INBOUND applicationId: ZOi0te_ERE-mRm-9zsbwdg applications: ZOi0te_ERE-mRm-9zsbwdg: applicationId: ZOi0te_ERE-mRm-9zsbwdg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: TAG_FILTER name: endpoint.name stringValue: null numberValue: null booleanValue: null key: null value: null operator: NOT_EMPTY entity: DESTINATION includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 1 - 3 - - 600000 - 1 - 3 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: DKp0JArJRAiQIav9CoKSWQ created: 1706617456952 initialCreated: 1706617456952 readOnly: false enabled: true derivedFromGlobalAlert: false schema: $ref: '#/components/schemas/ApplicationAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true post: description: |- Updates an existing Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: updateApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to update. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: Calls are slower than usual description: Calls are slower or equal to the expectation based on latency (90th). boundaryScope: INBOUND applicationId: ZOi0te_ERE-mRm-9zsbwdg applications: ZOi0te_ERE-mRm-9zsbwdg: applicationId: ZOi0te_ERE-mRm-9zsbwdg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: TAG_FILTER name: endpoint.name stringValue: null numberValue: null booleanValue: null key: null value: null operator: NOT_EMPTY entity: DESTINATION includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 1 - 3 - - 600000 - 1 - 3 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] schema: $ref: '#/components/schemas/ApplicationAlertConfig' required: true responses: '200': content: application/json: example: name: Calls are slower than usual description: Calls are slower or equal to the expectation based on latency (90th). boundaryScope: INBOUND applicationId: ZOi0te_ERE-mRm-9zsbwdg applications: ZOi0te_ERE-mRm-9zsbwdg: applicationId: ZOi0te_ERE-mRm-9zsbwdg inclusive: true services: {} severity: 5 triggering: false tagFilterExpression: type: TAG_FILTER name: endpoint.name stringValue: null numberValue: null booleanValue: null key: null value: null operator: NOT_EMPTY entity: DESTINATION includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 1 - 3 - - 600000 - 1 - 3 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: DKp0JArJRAiQIav9CoKSWQ created: 1706617456952 initialCreated: 1706617456952 readOnly: false enabled: true derivedFromGlobalAlert: false schema: $ref: '#/components/schemas/ApplicationAlertConfigWithMetadata' description: Smart Alert Configuration updated. '204': description: Smart Alert Configuration did not change. '400': description: Invalid Application ID provided. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '428': description: Baseline calculation failed due to insufficient data. '500': description: Internal error. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Update Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}/disable': put: description: |- Disables an Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: disableApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to disable. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Smart Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Disable Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}/enable': put: description: |- Enables an Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: enableApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to enable. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Smart Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Enable Application Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}/restore/{created}': put: description: |- Restores a deleted Smart Alert Configuration. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: restoreApplicationAlertConfig parameters: - description: ID of a specific Smart Alert Configuration to restore. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string - description: Unix timestamp representing the creation time of a specific Smart Alert Configuration. example: 1707726529124 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Smart Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Restore Smart Alert Config tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}/update-baseline': post: description: |- Recalculates and updates the historic baseline (static seasonal threshold) of a Configuration. The `LastUpdated` field of the Configuration is changed to the current time. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: updateApplicationHistoricBaseline parameters: - description: ID of a specific Smart Alert Configuration to recalculate. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string responses: '200': description: Smart Alert Configuration baseline successfully recalculated and updated. '204': description: Baseline recalculation completed with no changes needed. '400': description: Invalid configuration type or configuration is read-only. '403': description: Insufficient permissions to access this configuration. '404': description: Smart Alert Configuration not found. '428': description: Baseline calculation failed due to insufficient data. security: - ApiKeyAuth: - CanConfigureApplicationSmartAlerts summary: Recalculate Smart Alert Config Baseline tags: - Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/application-alert-configs/{id}/versions': get: description: |- Gets all versions of an Smart Alert Configuration. This may return deleted Configurations. Configurations are sorted by creation date in descending order. For more information on Application Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#application-alert-configuration. operationId: findApplicationAlertConfigVersions parameters: - description: ID of a specific Smart Alert Configuration to retrieve. example: DKp0JArJRAiQIav9CoKSWQ in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: DKp0JArJRAiQIav9CoKSWQ created: 1706617456952 enabled: true deleted: false changeSummary: changeType: CREATE author: id: 5ee8a3e8cd70020001ecb007 type: USER fullName: Stan schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Smart Alert Config Versions tags: - Application Alert Configuration x-ibm-ahub-byok: true /api/events/settings/custom-payload-configurations: delete: description: Deletes a Global Custom Payload Configuration. operationId: deleteCustomPayloadConfiguration responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalAlertPayload summary: Delete Custom Payload Configuration tags: - Event Settings x-ibm-ahub-byok: true get: description: Gets All Global Custom Payload Configurations. operationId: getCustomPayloadConfigurations parameters: - in: query name: context schema: type: string default: ALL description: The type of Smart Alert that the custom payload is associated with. enum: - ALL - APPLICATION - WEBSITE - SYNTHETIC - MOBILE_APP - INFRA - LOG responses: '200': content: application/json: example: - fields: - type: dynamic key: zone value: tagName: agent.zone key: app - type: staticString key: global_custom_payload value: 42+1 lastUpdated: 1723212859513 schema: $ref: '#/components/schemas/CustomPayloadWithVersion' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalAlertPayload summary: Get All Global Custom Payload Configurations tags: - Event Settings x-ibm-ahub-byok: true put: description: Creates or Updates Global Custom Payload Configuration. operationId: upsertCustomPayloadConfiguration requestBody: content: application/json: example: fields: - type: staticString key: string value: customValue - type: dynamic key: string value: tagName: agent.zone key: string schema: $ref: '#/components/schemas/CustomPayloadConfiguration' required: true responses: '200': content: application/json: example: - fields: - type: staticString key: string value: customValue - type: dynamic key: string value: tagName: agent.zone key: string lastUpdated: 1723212859513 schema: type: array items: $ref: '#/components/schemas/CustomPayloadWithLastUpdated' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '422': description: 'Unable to process request, request data is invalid.' security: - ApiKeyAuth: - CanConfigureGlobalAlertPayload summary: Create/Update Global Custom Payload Configuration tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/custom-payload-configurations/catalog: get: description: 'Custom payload tags used to filter, extract and aggregate specific data like AP calls for alert notifications. The catalog defines available tags like application.name and their types, and other attributes.' operationId: getCustomPayloadTagCatalog responses: '200': content: application/json: example: - tagTree: - label: Agent description: null icon: null children: - label: Tag icon: lib_views_tag tagName: agent.tag queryable: true type: TAG scoreBoost: null type: LEVEL queryable: false tags: - name: azure.appservice.name label: App Service Name type: STRING description: null canApplyToSource: true canApplyToDestination: true idTag: false schema: $ref: '#/components/schemas/TagCatalog' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalAlertPayload summary: Get Tag Catalog for Custom Payload tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/custom-payload-configurations/v2: put: description: Creates or Updates Global Custom Payload Configuration. operationId: upsertCustomPayloadConfigurationV2 requestBody: content: application/json: example: |2 "fields": [ { "type": "staticString", "key": "string", "value": "customValue" }, { "type": "dynamic", "key": "string", "value": { "tagName": "agent.zone", "key": "string" } } ], "version": 1 schema: $ref: '#/components/schemas/CustomPayloadConfiguration' required: true responses: '200': content: application/json: example: - fields: - type: staticString key: string value: customValue - type: dynamic key: string value: tagName: agent.zone key: string lastUpdated: 1723212859513 version: 1 schema: type: array items: $ref: '#/components/schemas/CustomPayloadWithVersion' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '409': description: Version conflict. '422': description: 'Unable to process request, request data is invalid.' security: - ApiKeyAuth: - CanConfigureGlobalAlertPayload summary: Create/Update Global Custom Payload Configuration tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/event-specifications/built-in: get: description: Get all built-in event specifications operationId: getBuiltInEventSpecifications parameters: - in: query name: ids schema: type: array items: type: string uniqueItems: true responses: '200': content: application/json: example: - id: 5J-4V_gLWm-pofGW8BEoFU7C_6s shortPluginId: otelHost name: CPU spends significant time waiting for input/output description: Assesses whether the system is spending a significant amount of time waiting for input/output operations. hyperParams: - id: CsSGNuJ9MCsYvN5tXoWOPIWGiyM name: Sliding Window description: Sliding window defaultValue: 60000 minValue: 60000 maxValue: 72000000 valueFormat: MILLIS - id: dfLU7K_vx1Qd8FrR4M1XAmiSM0w name: Maximum wait percentage description: Specifies the maximum allowable CPU wait percentage. Metric values that exceed this threshold are deemed violations. defaultValue: 0.25 minValue: 0 maxValue: 1 valueFormat: PERCENTAGE - id: eq_Y3yLA37aralhMCV1AYuEVVoA name: Allowed CPU Wait violations description: Specifies the number of permitted CPU Wait violations within the given time window. defaultValue: 9 minValue: 0 maxValue: 9223372036854776000 valueFormat: NUMBER ruleInputs: - inputKind: METRIC inputName: cpu.wait severity: 5 triggering: false enabled: true hidden: false lastUpdated: 1729198411351 - id: kLC5kTFUUM4HiMWEkqlggo6dF-s shortPluginId: ibmCloudEventStream name: Event Stream has more than the recommended number of connected Kafka clients description: Checks whether the number of connected Kafka clients exceeds the recommended maximum hyperParams: - id: qkxsXUDoELI6cHEoWSXQ4FR8-8M name: Kafka Max Connectd Clients Percent Severe description: Kafka max connected clients percent critical threshold defaultValue: 0.95 minValue: 0 maxValue: 1 valueFormat: PERCENTAGE - id: x00McJfR0Y2twIIE8Hf3oxoUEoE name: Kafka Max Connectd Clients Percent Warning description: Kafka max connected clients percent warning threshold defaultValue: 0.9 minValue: 0 maxValue: 1 valueFormat: PERCENTAGE ruleInputs: - inputKind: METRIC inputName: kafka_recommended_max_connected_clients_percent severity: 5 triggering: false enabled: true hidden: false lastUpdated: 1729198411681 schema: type: array items: $ref: '#/components/schemas/BuiltInEventSpecificationWithLastUpdated' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: All built-in event specification tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/event-specifications/built-in/{eventSpecificationId}': delete: operationId: deleteBuiltInEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string responses: '204': description: Successful - no content to return. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Delete built-in event specification tags: - Event Settings x-ibm-ahub-byok: true get: operationId: getBuiltInEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/BuiltInEventSpecification' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Built-in event specifications tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/event-specifications/built-in/{eventSpecificationId}/disable': post: operationId: disableBuiltInEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BuiltInEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Disable built-in event specification tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/event-specifications/built-in/{eventSpecificationId}/enable': post: operationId: enableBuiltInEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/BuiltInEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Enable built-in event specification tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/event-specifications/custom: get: description: ' This API helps in getting all the custom event specifications.' operationId: getCustomEventSpecifications responses: '200': content: application/json: example: - id: Yojfl6Yn9SXaFhJG name: DP_Domain_MemoryUsage entityType: ibmDataPowerDomain query: null triggering: true description: Average Memory Usage for the DP Domain >= 0% expirationTime: 60000 enabled: true rules: - ruleType: threshold metricName: currentMemUsage metricPattern: null rollup: 0 window: 600000 aggregation: avg conditionOperator: '>=' conditionValue: 0 severity: 5 ruleLogicalOperator: AND lastUpdated: 1670404707763 validVersion: 1 actions: null migrated: false applicationAlertConfigId: null deleted: false schema: type: array items: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: All custom event specifications tags: - Event Settings x-ibm-ahub-byok: true post: operationId: postCustomEventSpecification requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecification' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Create new custom event specification tags: - Event Settings x-ibm-ahub-byok: true description: | This endpoint creates a new Custom Event Specification. ## Mandatory Parameters: - **name:** Name for the custom event - **entityType:** Name of the available plugins for the selected source - **rules.ruleType:** Type of the rule being set for the custom event ### Rule-type specific parameters Depending on the chosen `ruleType`, there are further required parameters: #### Threshold Rule using a dynamic built-in metric by pattern : - **rules.conditionOperator:** Conditional operator for the aggregation for the provided time window - **rules.metricPattern.prefix:** Prefix pattern for the metric - **rules.metricPattern.operator:** Operator for matching the metric ``` curl --request POST 'https:///api/events/settings/event-specifications/custom' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation", "enabled":true,"entityType":"host","expirationTime":"60000","name":"Event for OpenAPI documentation", "query":, "rules":[{"aggregation":"sum","conditionOperator":">", "conditionValue":0.1, "metricName":null, "metricPattern":{"prefix":"fs", "postfix":"free", "operator":"endsWith", "placeholder":"/xvda1"}, "rollup":null, "ruleType":"threshold", "severity":10, "window":30000}], "triggering":false }' ``` The above example creates a custom event that matches disk devices that end with "/xvda1" for the metric "fs.{device}.free" for any host in scope. #### Threshold Rule using fixed metric : - **rules.conditionOperator:** Conditional operator for the aggregation for the provided time window - **rules.metricName:** Metric name for the event ``` curl --request POST 'https:///api/events/settings/event-specifications/custom' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation fixed Metric", "enabled":true,"entityType":"host","expirationTime":"60000", "name":"Event for OpenAPI documentation fixed metric","rules":[{"aggregation":"sum","conditionOperator":">", "conditionValue":0.1, "metricName":"fs./dev/xvda1.free", "rollup":null, "ruleType":"threshold", "severity":10, "window":30000}], "triggering":false }' ``` #### System Rule: - **rules.systemRuleId:** Id of the System Rule being set ``` curl --request POST 'https:///api/events/settings/event-specifications/custom' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation System Rule", "enabled":true,"entityType":"any","expirationTime":"60000", "name":"Event for OpenAPI documentation System Rule", "rules":[{"ruleType":"system", "systemRuleId":"entity.offline","severity":10}], "triggering":false }' ``` #### Entity Verification Rule: - **rules.matchingEntityType:** Type of the Entity - **rules.matchingOperator:** Operator for matching the Entity name - **rules.matchingEntityLabel:** Name Pattern for the Entity ``` curl --request POST 'https:///api/events/settings/event-specifications/custom' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI Entity Verification Rule", "enabled":true,"entityType":"host","expirationTime":"60000", "name":"Event for OpenAPI Entity Verification Rule", "rules":[{"matchingEntityLabel":"test", "matchingEntityType":"jvmRuntimePlatform","matchingOperator":"startsWith","offlineDuration":1800000, "ruleType":"entity_verification","severity": 5}], "triggering":false }' ``` ### Deprecations: The entity types `application`, `service` and `endpoint` are deprecated for custom events and need to be migrated to a Smart Alert soon. We advise to configure a respective Smart Alert instead of a custom Event. For more information please [refer to our documentation](https://www.ibm.com/docs/en/obi/current?topic=applications-smart-alerts). /api/events/settings/event-specifications/custom/systemRules: get: description: This API helps to get all the system rules for custom event specifications. operationId: getSystemRules responses: '200': content: application/json: example: - id: entity.offline name: Offline event detection (System Rule) schema: type: array items: $ref: '#/components/schemas/SystemRuleLabel' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: All system rules for custom event specifications tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/event-specifications/custom/{eventSpecificationId}': delete: operationId: deleteCustomEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string responses: '204': description: Successful - no content to return. security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Delete custom event specification tags: - Event Settings x-ibm-ahub-byok: true description: | This endpoint deletes a Custom Event Specification. By default, the ID of a deleted configuration cannot be reused anymore to enable links in previous Issues or Incidents to stay valid. However, check out the docs for [updating a configuration](#operation/putCustomEventSpecification) how this default behavior can be changed using the `allowRestore` query parameter. ## Mandatory Parameters: - **eventSpecificationId (Path Parameter):** A unique identifier for the custom event specification to delete. # Example: ``` curl --request DELETE 'https:///api/events/settings/event-specifications/custom/' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' ``` get: description: This API helps to get the Custom Event specification for the given ID. operationId: getCustomEventSpecification parameters: - description: eventSpecificationId example: Yojfl6Yn9SXaFhJG in: path name: eventSpecificationId required: true schema: type: string responses: '200': content: application/json: example: id: Yojfl6Yn9SXaFhJG name: DP_Domain_MemoryUsage entityType: ibmDataPowerDomain query: null triggering: true description: Average Memory Usage for the DP Domain >= 0% expirationTime: 60000 enabled: true rules: - ruleType: threshold severity: 5 metricName: currentMemUsage rollup: 0 window: 600000 metricPattern: null aggregation: avg conditionOperator: '>=' conditionValue: 0 metricLabel: Current Memory Usage metricFormat: PERCENTAGE ruleLogicalOperator: AND lastUpdated: 1670404707763 validVersion: 1 actions: null migrated: false applicationAlertConfigId: null deleted: false schema: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Custom event specification tags: - Event Settings x-ibm-ahub-byok: true put: operationId: putCustomEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string - in: query name: allowRestore schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecification' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Create or update custom event specification tags: - Event Settings x-ibm-ahub-byok: true description: | This endpoint creates or updates a Custom Event Specification. ## Mandatory Parameters: - **eventSpecificationId (Path Parameter):** A unique identifier for each custom event - **name:** Name for the custom event - **entityType:** Name of the available plugins for the selected source - **rules.ruleType:** Type of the rule being set for the custom event ### Rule-type specific parameters Depending on the chosen `ruleType`, there are further required parameters: #### Threshold Rule using a dynamic built-in metric by pattern : - **rules.conditionOperator:** Conditional operator for the aggregation for the provided time window - **rules.metricPattern.prefix:** Prefix pattern for the metric - **rules.metricPattern.operator:** Operator for matching the metric ``` curl --request PUT 'https:///api/events/settings/event-specifications/custom/' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation", "enabled":true,"entityType":"host","expirationTime":"60000","name":"Event for OpenAPI documentation", "query":, "rules":[{"aggregation":"sum","conditionOperator":">", "conditionValue":0.1, "metricName":null, "metricPattern":{"prefix":"fs", "postfix":"free", "operator":"endsWith", "placeholder":"/xvda1"}, "rollup":null, "ruleType":"threshold", "severity":10, "window":30000}], "triggering":false }' ``` The above example creates a custom event that matches disk devices that end with "/xvda1" for the metric "fs.{device}.free" for any host in scope. #### Threshold Rule using fixed metric : - **rules.conditionOperator:** Conditional operator for the aggregation for the provided time window - **rules.metricName:** Metric name for the event ``` curl --request PUT 'https:///api/events/settings/event-specifications/custom/' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation fixed Metric", "enabled":true,"entityType":"host","expirationTime":"60000", "name":"Event for OpenAPI documentation fixed metric","rules":[{"aggregation":"sum","conditionOperator":">", "conditionValue":0.1, "metricName":"fs./dev/xvda1.free", "rollup":null, "ruleType":"threshold", "severity":10, "window":30000}], "triggering":false }' ``` #### System Rule: - **rules.systemRuleId:** Id of the System Rule being set ``` curl --request PUT 'https:///api/events/settings/event-specifications/custom/' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI documentation System Rule", "enabled":true,"entityType":"any","expirationTime":"60000", "name":"Event for OpenAPI documentation System Rule", "rules":[{"ruleType":"system", "systemRuleId":"entity.offline","severity":10}], "triggering":false }' ``` #### Entity Verification Rule: - **rules.matchingEntityType:** Type of the Entity - **rules.matchingOperator:** Operator for matching the Entity name - **rules.matchingEntityLabel:** Name Pattern for the Entity ``` curl --request PUT 'https:///api/events/settings/event-specifications/custom/' \ --header 'Authorization: apiToken ' \ --header 'Content-Type: application/json' \ --data-raw '{ "description":"Event for OpenAPI Entity Verification Rule", "enabled":true,"entityType":"host","expirationTime":"60000", "name":"Event for OpenAPI Entity Verification Rule", "rules":[{"matchingEntityLabel":"test", "matchingEntityType":"jvmRuntimePlatform","matchingOperator":"startsWith","offlineDuration":1800000, "ruleType":"entity_verification","severity": 5}], "triggering":false }' ``` ## Optional Parameters: - **allowRestore (Query Parameter):** Allows to restore a custom event specification that was previously deleted or migrated when set to `true`. This allows to have idempotent operations that can be useful in _configuration as code_ scenarios. By default, the ID of a deleted configuration cannot be reused anymore to enable links in previous Issues or Incidents to stay valid. ### Deprecations: The entity types `application`, `service` and `endpoint` are deprecated for custom events and need to be migrated to a Smart Alert soon. We advise to configure a respective Smart Alert instead of a custom Event. For more information please [refer to our documentation](https://www.ibm.com/docs/en/obi/current?topic=applications-smart-alerts). '/api/events/settings/event-specifications/custom/{eventSpecificationId}/disable': post: operationId: disableCustomEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Disable custom event specification tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/event-specifications/custom/{eventSpecificationId}/enable': post: operationId: enableCustomEventSpecification parameters: - in: path name: eventSpecificationId required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/CustomEventSpecificationWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Enable custom event specification tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/event-specifications/infos: get: description: This API helps to get the summary of all build-in and custom event specifications operationId: getEventSpecificationInfos responses: '200': content: application/json: example: - id: yBGNFSh-pcKzZVBFnxoBu_36Yw4 name: Frequent TCP errors description: Checks whether the host has an unusual high number of TCP errors. entityType: host type: BUILT_IN severity: 5 triggering: false invalid: false enabled: true migrated: false schema: type: array items: $ref: '#/components/schemas/EventSpecificationInfo' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: Summary of all built-in and custom event specifications tags: - Event Settings x-ibm-ahub-byok: true post: description: Summary of all built-in and custom event specifications by IDs operationId: getEventSpecificationInfosByIds requestBody: content: application/json: schema: type: array items: type: string required: true responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/EventSpecificationInfo' description: OK security: - ApiKeyAuth: - CanConfigureCustomAlerts summary: All built-in and custom event specifications tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/global-alert-configs/applications: get: description: |- Gets all Global Smart Alert Configuration. Configurations are sorted by creation date in descending order. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: findActiveGlobalApplicationAlertConfigs parameters: - description: The ID of a specific global application. example: j02SxMRTSf-NCBXf5IdsjQ in: query name: applicationId required: true schema: type: string - description: A list of Global Smart Alert Configuration IDs. This allows fetching of a specific set of Configurations. This query can be repeated to use multiple IDs. example: IYS1XOEcTNiT1eOD8pxgXg in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: vlFnxhVTS3KVb-wsN26PeQ created: 1707305626330 initialCreated: 1707305626330 readOnly: false enabled: true builtIn: false schema: type: array items: $ref: '#/components/schemas/GlobalApplicationAlertConfigWithMetadata' description: OK - Returns an empty list if no configurations match the criteria '403': description: Insufficient permissions. security: - ApiKeyAuth: - Default summary: Get all Global Smart Alert Configs tags: - Global Application Alert Configuration x-ibm-ahub-byok: true post: description: |- Creates a new Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: createGlobalApplicationAlertConfig requestBody: content: application/json: example: name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] schema: $ref: '#/components/schemas/GlobalApplicationsAlertConfig' required: true responses: '200': content: application/json: example: name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: vlFnxhVTS3KVb-wsN26PeQ created: 1707305626330 initialCreated: 1707305626330 readOnly: false enabled: true builtIn: false schema: $ref: '#/components/schemas/GlobalApplicationAlertConfigWithMetadata' description: Global Smart Alert Configuration created. '400': description: Invalid Configuration. '403': description: Insufficient permissions. '422': description: Unprocessable entity. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Create Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/applications/{id}': delete: description: |- Disables a Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: deleteGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to delete. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string responses: '204': description: Global Smart Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Delete Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true get: description: |- Gets a specific Global Smart Alert Configuration. This may return a deleted Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: findGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to retrieve. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the Configuration was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1707305626330 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: vlFnxhVTS3KVb-wsN26PeQ created: 1707305626330 initialCreated: 1707305626330 readOnly: false enabled: true builtIn: false schema: $ref: '#/components/schemas/GlobalApplicationAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true post: description: |- Updates an existing Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: updateGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to update. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] schema: $ref: '#/components/schemas/GlobalApplicationsAlertConfig' required: true responses: '200': content: application/json: example: name: Slow calls than usual description: Calls are slower or equal to 2 ms based on latency (90th). boundaryScope: INBOUND applications: j02SxMRTSf-NCBXf5IdsjQ: applicationId: j02SxMRTSf-NCBXf5IdsjQ inclusive: true services: {} applicationIds: - j02SxMRTSf-NCBXf5IdsjQ severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] includeInternal: false includeSynthetic: false rule: alertType: slowness aggregation: P90 metricName: latency threshold: type: staticThreshold operator: '>=' value: 2 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 evaluationType: PER_AP customPayloadFields: [] id: vlFnxhVTS3KVb-wsN26PeQ created: 1707305626330 initialCreated: 1707305626330 readOnly: false enabled: true builtIn: false schema: $ref: '#/components/schemas/GlobalApplicationAlertConfigWithMetadata' description: Global Smart Alert Configuration updated. '204': description: Global Smart Alert Configuration did not change. '400': description: Invalid Application ID provided. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '500': description: Internal error. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Update Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/applications/{id}/disable': put: description: |- Disables a Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: disableGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to disable. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Global Smart Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Disable Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/applications/{id}/enable': put: description: |- Enables a Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: enableGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to enable. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Global Smart Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Enable Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/applications/{id}/restore/{created}': put: description: |- Restores a deleted Global Smart Alert Configuration. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: restoreGlobalApplicationAlertConfig parameters: - description: ID of a specific Global Smart Alert Configuration to restore. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string - description: Unix timestamp representing the creation time of a specific Global Smart Alert Configuration. example: 1707305626330 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Global Smart Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureGlobalApplicationSmartAlerts summary: Restore Global Smart Alert Config tags: - Global Application Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/applications/{id}/versions': get: description: |- Gets all versions of a Global Smart Alert Configuration. This may return deleted Configurations. Configurations are sorted by creation date in descending order. For more information on Global Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Applications#global-application-alert-configuration. operationId: findGlobalApplicationAlertConfigVersions parameters: - description: ID of a specific Global Smart Alert Configuration to retrieve. example: vlFnxhVTS3KVb-wsN26PeQ in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: vlFnxhVTS3KVb-wsN26PeQ created: 1707305626330 enabled: true deleted: false changeSummary: changeType: CREATE author: id: 5ee8a3e8cd70020001ecb007 type: USER fullName: Stan schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Global Smart Alert Config Versions tags: - Global Application Alert Configuration x-ibm-ahub-byok: true /api/events/settings/global-alert-configs/logs: get: description: Configs are sorted descending by their created date. operationId: findActiveLogAlertConfigs parameters: - in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/LogAlertConfigWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: All Log Alert Configs tags: - Log Alert Configuration x-ibm-ahub-byok: true post: operationId: createLogAlertConfig requestBody: content: application/json: schema: $ref: '#/components/schemas/LogAlertConfig' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/LogAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Create Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/logs/{id}': delete: operationId: deleteLogAlertConfig parameters: - in: path name: id required: true schema: type: string responses: '204': description: Log Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Delete Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true get: description: Find a Log Alert Config by ID. This will deliver deleted configs too. operationId: findLogAlertConfig parameters: - in: path name: id required: true schema: type: string - in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/LogAlertConfigWithMetadata' description: OK '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - Default summary: Get Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true post: operationId: updateLogAlertConfig parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/LogAlertConfig' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/LogAlertConfigWithMetadata' description: Log Smart Alert successfully updated '204': description: Log Smart Alert did not change '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Update Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/logs/{id}/disable': put: operationId: disableLogAlertConfig parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Log Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Disable Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/logs/{id}/enable': put: operationId: enableLogAlertConfig parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Log Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Enable Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/logs/{id}/restore/{created}': put: operationId: restoreLogAlertConfig parameters: - in: path name: id required: true schema: type: string - in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Log Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureGlobalLogSmartAlerts summary: Restore Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/logs/{id}/versions': get: description: Find all versions of a Log Alert Config by ID. This will deliver deleted configs too. Configs are sorted descending by their created date. operationId: findLogAlertConfigVersions parameters: - in: path name: id required: true schema: type: string responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - Default summary: Get versions of Log Alert Config tags: - Log Alert Configuration x-ibm-ahub-byok: true /api/events/settings/global-alert-configs/service-levels: get: description: Configs are sorted descending by their created date. operationId: findActiveServiceLevelsAlertConfigs parameters: - description: Service Levels Objective(SLO) Configuration ID example: SLOEANnWh9tQOa2h88kGxK6wQ in: query name: sloId schema: type: string - description: List of Service Levels Alert Configuration IDs example: ln3IGogYS-S7CPqcOQYTNA in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: name: Error Budget Remaining is low description: Error Budget Remaining is less than or equal to 5%. severity: 5 triggering: true rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE threshold: type: staticThreshold operator: '>=' value: 0.05 lastUpdated: 1716454787342 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ alertChannelIds: [] timeThreshold: expiry: null timeWindow: 600000 customPayloadFields: - type: staticString key: foo value: bar id: ln3IGogYS-S7CPqcOQYTNA created: 1717668384754 initialCreated: 1717668384754 readOnly: false enabled: true schema: type: array items: $ref: '#/components/schemas/ServiceLevelseAlertConfigWithMetadata' description: Fetched list of the Service Level Alert Configurations Successfully security: - ApiKeyAuth: - Default summary: All Service levels Alert Configs tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true post: operationId: createServiceLevelsAlertConfig requestBody: content: application/json: example: alertChannelIds: [] customPayloadFields: - key: foo id: avvh9tbxpfRE65t type: staticString value: bar description: Error Budget Remaining is less than or equal to 5%. name: Error Budget Remaining is low rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE severity: 5 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ threshold: type: staticThreshold value: 0.05 operator: '>=' lastUpdated: 1716454787342 timeThreshold: timeWindow: 600000 triggering: true schema: $ref: '#/components/schemas/ServiceLevelsAlertConfig' description: Create Request Body required: true responses: '200': content: application/json: example: name: Error Budget Remaining is low description: Error Budget Remaining is less than or equal to 5%. severity: 5 triggering: true rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE threshold: type: staticThreshold operator: '>=' value: 0.05 lastUpdated: 1716454787342 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ alertChannelIds: [] timeThreshold: expiry: null timeWindow: 600000 customPayloadFields: - type: staticString key: foo value: bar id: ln3IGogYS-S7CPqcOQYTNA created: 1717668384754 initialCreated: 1717668384754 readOnly: false enabled: true schema: $ref: '#/components/schemas/ServiceLevelseAlertConfigWithMetadata' description: Created new Service Levels Alert Configuration Successfully '400': content: application/json: example: errors: - Website SLOs do not support triggering -> true schema: type: array items: type: string description: Service levels Alert Config with Website SLOs do not support triggering security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Create Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/service-levels/{id}': delete: operationId: deleteServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string responses: '204': description: Service Levels Alert Configuration Deleted Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Delete Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true get: description: Find a Service levels Alert Config by ID. This will deliver deleted configs too. operationId: findServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string - description: Service Levels Alert Version Creation Date example: 1706617456952 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: Error Budget Remaining is low description: Error Budget Remaining is less than or equal to 5%. severity: 5 triggering: true rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE threshold: type: staticThreshold operator: '>=' value: 0.05 lastUpdated: 1716454787342 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ alertChannelIds: [] timeThreshold: expiry: null timeWindow: 600000 customPayloadFields: - type: staticString key: foo value: bar id: ln3IGogYS-S7CPqcOQYTNA created: 1717668384754 initialCreated: 1717668384754 readOnly: false enabled: true schema: $ref: '#/components/schemas/ServiceLevelseAlertConfigWithMetadata' description: Fetched Service Level Alert Configuration Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - Default summary: Get Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true post: operationId: updateServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string requestBody: content: application/json: example: alertChannelIds: [] customPayloadFields: - key: foo id: avvh9tbxpfRE65t type: staticString value: bar description: Error Budget Remaining is less than or equal to 5%. name: Error Budget Remaining is low rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE severity: 5 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ threshold: type: staticThreshold value: 0.05 operator: '>=' lastUpdated: 1716454787342 timeThreshold: timeWindow: 600000 triggering: true schema: $ref: '#/components/schemas/ServiceLevelsAlertConfig' description: Update Request Body required: true responses: '200': content: application/json: example: name: Error Budget Remaining is low description: Error Budget Remaining is less than or equal to 5%. severity: 5 triggering: true rule: alertType: ERROR_BUDGET metric: BURNED_PERCENTAGE threshold: type: staticThreshold operator: '>=' value: 0.05 lastUpdated: 1716454787342 sloIds: - SLOEANnWh9tQOa2h88kGxK6wQ alertChannelIds: [] timeThreshold: expiry: null timeWindow: 600000 customPayloadFields: - type: staticString key: foo value: bar id: ln3IGogYS-S7CPqcOQYTNA created: 1717668384754 initialCreated: 1717668384754 readOnly: false enabled: true schema: $ref: '#/components/schemas/ServiceLevelseAlertConfigWithMetadata' description: Updated Service Levels Alert Configuration Successfully '204': description: Service Levels Smart Alert Configuration did not change '400': content: application/json: example: errors: - Website SLOs do not support triggering -> true schema: type: array items: type: string description: Service levels Alert Config with Website SLOs do not support triggering security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Update Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/service-levels/{id}/disable': put: operationId: disableServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Service Levels Alert Configuration Disabled Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Disable Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/service-levels/{id}/enable': put: operationId: enableServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Service Levels Alert Configuration Enabled Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Enable Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/service-levels/{id}/restore/{created}': put: operationId: restoreServiceLevelsAlertConfig parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string - description: Service Levels Alert Version Creation Date example: 1706617456952 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Service Levels Alert Configuration Restored Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - canConfigureServiceLevelSmartAlerts summary: Restore Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/service-levels/{id}/versions': get: description: Find all versions of a Service levels Alert Config by ID. This will deliver deleted configs too. Configs are sorted descending by their created date. operationId: findServiceLevelsAlertConfigVersions parameters: - description: Service Levels Alert Configuration ID example: ln3IGogYS-S7CPqcOQYTNA in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: ln3IGogYS-S7CPqcOQYTNA created: 1717507017767 enabled: false deleted: false changeSummary: changeType: DISABLE author: id: SCzqyU_LTtmO9CCnvvVOAg type: API fullName: userToken - id: ln3IGogYS-S7CPqcOQYTNA created: 1717506979607 enabled: true deleted: false changeSummary: changeType: CREATE author: id: SCzqyU_LTtmO9CCnvvVOAg type: API fullName: userToken schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: Fetched list of Service Level Alert Configuration Versions Successfully '404': content: application/json: example: '{"errors":["Config with id: -DZZjflTQTmZ7yGvBilPlQ is not found"]}' schema: type: string description: Service levels Alert Config with given ID not found security: - ApiKeyAuth: - Default summary: Get versions of Service levels Alert Config tags: - Service Levels Alert Configuration x-ibm-ahub-byok: true /api/events/settings/global-alert-configs/synthetics: get: description: |- Gets all the Synthetic Smart Alert Configuration pertaining to a specific synthetic test. Configurations are sorted by creation date in descending order. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: findActiveSyntheticAlertConfigs parameters: - description: 'The ID of a specific Synthetic Test. ' example: ic25Vt1T5dgKzi0K7812 in: query name: syntheticTestId schema: type: string - description: A list of Smart Alert Configuration IDs. This allows fetching of a specific set of Configurations. This query can be repeated to use multiple IDs. example: smRTFp08juKWtn8I in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: Tests in EU are failing description: Tests in EU failed for 1 consecutive time syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: synthetic.serviceId stringValue: '12' numberValue: null booleanValue: null key: null value: '12' operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: synthetic.locationLabel stringValue: US-west1 numberValue: null booleanValue: null key: null value: '123' operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: [] timeThreshold: type: violationsInSequence violationsCount: 1 customPayloadFields: [] id: 2K1YQIeaSQKIcIkHPH7D3g created: 1707486254161 initialCreated: 1706531043586 readOnly: false enabled: true schema: type: array items: $ref: '#/components/schemas/SyntheticAlertConfigWithMetadata' description: Success. Returns empty result if syntheticTestId is invalid. '403': description: Insufficient permissions. security: - ApiKeyAuth: - Default summary: Get all Synthetic Smart Alert Configs tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true post: description: |- Creates a new Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: createSyntheticAlertConfig requestBody: content: application/json: example: name: '2 consecutive failures of ${synthetic.testName} at locations${synthetic.locationLabel}' description: Alert created without test but with AppId - Synthetic test failed for 2 consecutive times syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: TAG_FILTER name: synthetic.applicationId stringValue: 2BPCBLz_RBG8J6mjyuxm6w numberValue: null booleanValue: null key: null value: 2BPCBLz_RBG8J6mjyuxm6w operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: - 0o1ISHPfR8-N4iUK timeThreshold: type: violationsInSequence violationsCount: 2 customPayloadFields: [] schema: $ref: '#/components/schemas/SyntheticAlertConfig' required: true responses: '200': content: application/json: example: name: '2 consecutive failures of ${synthetic.testName} at locations${synthetic.locationLabel}' description: Alert created without test but with AppId - Synthetic test failed for 2 consecutive times syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: TAG_FILTER name: synthetic.applicationId stringValue: 2BPCBLz_RBG8J6mjyuxm6w numberValue: null booleanValue: null key: null value: 2BPCBLz_RBG8J6mjyuxm6w operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: - 0o1ISHPfR8-N4iUK timeThreshold: type: violationsInSequence violationsCount: 2 customPayloadFields: [] id: qgEwvI0vRfe3Al_D7T7LSA created: 1707149760053 initialCreated: 1707145201046 readOnly: false enabled: true schema: $ref: '#/components/schemas/SyntheticAlertConfigWithMetadata' description: Synthetic Smart Alert Configuration created. '400': description: Invalid configuration. '403': description: Insufficient permissions. '422': description: Unprocessable entity. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Create Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/synthetics/{id}': delete: description: |- Deletes a Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: deleteSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to delete. example: 2K1YQIeaSQKIcIkHPH7D3g in: path name: id required: true schema: type: string responses: '204': description: Synthetic Smart Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Delete Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true get: description: |- Gets a specific Synthetic Smart Alert Configuration. This may return a deleted Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: findSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to retrieve. example: qgEwvI0vRfe3Al_D7T7LSA in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the Configuration was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1707149760053 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: '2 consecutive failures of ${synthetic.testName} at locations${synthetic.locationLabel}' description: Alert created without test but with AppId - Synthetic test failed for 2 consecutive times syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: TAG_FILTER name: synthetic.applicationId stringValue: 2BPCBLz_RBG8J6mjyuxm6w numberValue: null booleanValue: null key: null value: 2BPCBLz_RBG8J6mjyuxm6w operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: - 0o1ISHPfR8-N4iUK timeThreshold: type: violationsInSequence violationsCount: 2 customPayloadFields: [] id: qgEwvI0vRfe3Al_D7T7LSA created: 1707149760053 initialCreated: 1707145201046 readOnly: false enabled: true schema: $ref: '#/components/schemas/SyntheticAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true post: description: |- Updates an existing Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: updateSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to update. example: qgEwvI0vRfe3Al_D7T7LSA in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: '2 consecutive failures of ${synthetic.testName} at locations${synthetic.locationLabel}' description: Alert created without test but with AppId - Synthetic test failed for 2 consecutive times syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: TAG_FILTER name: synthetic.applicationId stringValue: 2BPCBLz_RBG8J6mjyuxm6w numberValue: null booleanValue: null key: null value: 2BPCBLz_RBG8J6mjyuxm6w operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: - 0o1ISHPfR8-N4iUK timeThreshold: type: violationsInSequence violationsCount: 2 customPayloadFields: [] schema: $ref: '#/components/schemas/SyntheticAlertConfig' required: true responses: '200': content: application/json: example: name: '2 consecutive failures of ${synthetic.testName} at locations${synthetic.locationLabel}' description: Alert created without test but with AppId - Synthetic test failed for 2 consecutive times syntheticTestIds: - ic25Vt1T5dgKzi0K7812 - 2gBxQz3oKtXgFXzRoQ6O severity: 5 tagFilterExpression: type: TAG_FILTER name: synthetic.applicationId stringValue: 2BPCBLz_RBG8J6mjyuxm6w numberValue: null booleanValue: null key: null value: 2BPCBLz_RBG8J6mjyuxm6w operator: EQUALS entity: NOT_APPLICABLE rule: alertType: failure metricName: status aggregation: SUM alertChannelIds: - 0o1ISHPfR8-N4iUK timeThreshold: type: violationsInSequence violationsCount: 2 customPayloadFields: [] id: qgEwvI0vRfe3Al_D7T7LSA created: 1707149760053 initialCreated: 1707145201046 readOnly: false enabled: true schema: $ref: '#/components/schemas/SyntheticAlertConfigWithMetadata' description: Synthetic Smart Alert Configuration updated '204': description: Synthetic Smart Alert Configuration did not change '400': description: Invalid Configuration ID provided. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '500': description: Internal error. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Update Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/synthetics/{id}/disable': put: description: |- Disables a Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: disableSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to disable. example: 2K1YQIeaSQKIcIkHPH7D3g in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Synthetic Smart Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Disable Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/synthetics/{id}/enable': put: description: |- Enables a Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: enableSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to enable. example: 2K1YQIeaSQKIcIkHPH7D3g in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Synthetic Smart Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Enable Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/synthetics/{id}/restore/{created}': put: description: |- Restores a deleted Synthetic Smart Alert Configuration. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: restoreSyntheticAlertConfig parameters: - description: ID of a specific Synthetic Smart Alert Configuration to restore. example: 2K1YQIeaSQKIcIkHPH7D3g in: path name: id required: true schema: type: string - description: Unix timestamp representing the creation time of a specific Synthetic Smart Alert Configuration. example: 1707726529124 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Synthetic Smart Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureGlobalSyntheticSmartAlerts summary: Restore Synthetic Smart Alert Config tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/global-alert-configs/synthetics/{id}/versions': get: description: |- Gets all versions of a Synthetic Smart Alert Configuration. This may return deleted Configurations. Configurations are sorted by creation date in descending order. For more information on Synthetic Alert Configuration please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-alert-configuration. operationId: findSyntheticAlertConfigVersions parameters: - description: ID of a specific Synthetic Smart Alert Configuration to retrieve. example: qgEwvI0vRfe3Al_D7T7LSA in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: qgEwvI0vRfe3Al_D7T7LSA created: 1707149760053 enabled: true deleted: false changeSummary: changeType: UPDATE author: id: 6244073003b38f0001209ec5 type: USER fullName: John Doe - id: qgEwvI0vRfe3Al_D7T7LSA created: 1707145201046 enabled: true deleted: false changeSummary: changeType: CREATE author: id: 6244073003b38f0001209ec5 type: USER fullName: John Doe schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - Default summary: Get Synthetic Smart Alert Config Versions tags: - Synthetic Alert Configuration x-ibm-ahub-byok: true /api/events/settings/infra-alert-configs: get: description: Configs are sorted descending by their created date. operationId: findActiveInfraAlertConfigs parameters: - description: List of IDs of Infra Smart Alert configurations example: '[4kxgJAXdSDiu6swQaKXrJw, ZLo28grvQaiMqIaikJK1RQ]' in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: high-mean-memory-usage description: Something is going wrong in your infrastructure. severity: 5 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.cluster.name stringValue: 200_PoP_Cluster numberValue: null booleanValue: null key: null value: 200_PoP_Cluster operator: EQUALS entity: NOT_APPLICABLE groupBy: - kubernetes.cluster.name - kubernetes.namespace.name - kubernetes.pod.name rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false threshold: type: staticThreshold operator: '>=' value: 1 lastUpdated: 1724720573744 forecastingConfig: null alertChannelIds: - VjS1NvcXpOARmTvA - CrLI3QeIZKygaNLH granularity: 60000 timeThreshold: type: violationsInSequence timeWindow: 180000 id: 4kxgJAXdSDiu6swQaKXrJw created: 1724720587414 initialCreated: 1714766649532 readOnly: false enabled: false customPayloadFields: - type: staticString key: testKey value: team-ar rules: - thresholdOperator: '>=' rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false thresholds: WARNING: type: staticThreshold value: 1 CRITICAL: type: staticThreshold value: 4 schema: type: array items: $ref: '#/components/schemas/InfraAlertConfigWithMetadata' description: OK security: - ApiKeyAuth: - Default summary: All Infra Alert Configs tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true post: operationId: createInfraAlertConfig requestBody: content: application/json: schema: $ref: '#/components/schemas/InfraAlertConfig' required: true responses: '200': content: application/json: example: name: high-mean-memory-usage description: Something is going wrong in your infrastructure. severity: 5 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.cluster.name stringValue: 200_PoP_Cluster numberValue: null booleanValue: null key: null value: 200_PoP_Cluster operator: EQUALS entity: NOT_APPLICABLE groupBy: - kubernetes.cluster.name - kubernetes.namespace.name - kubernetes.pod.name rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false threshold: type: staticThreshold operator: '>=' value: 1 lastUpdated: 1724720573744 forecastingConfig: null alertChannelIds: - VjS1NvcXpOARmTvA - CrLI3QeIZKygaNLH granularity: 60000 timeThreshold: type: violationsInSequence timeWindow: 180000 id: 4kxgJAXdSDiu6swQaKXrJw created: 1724720587414 initialCreated: 1714766649532 readOnly: false enabled: false customPayloadFields: - type: staticString key: testKey value: team-ar rules: - thresholdOperator: '>=' rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false thresholds: WARNING: type: staticThreshold value: 1 CRITICAL: type: staticThreshold value: 4 schema: $ref: '#/components/schemas/InfraAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Create Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/infra-alert-configs/{id}': delete: operationId: deleteInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration to delete example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Delete Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true get: description: Find a Infra Alert Config by ID. This will deliver deleted configs too. operationId: findInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the config was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1722877985000 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: high-mean-memory-usage description: Something is going wrong in your infrastructure. severity: 5 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.cluster.name stringValue: 200_PoP_Cluster numberValue: null booleanValue: null key: null value: 200_PoP_Cluster operator: EQUALS entity: NOT_APPLICABLE groupBy: - kubernetes.cluster.name - kubernetes.namespace.name - kubernetes.pod.name rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false threshold: type: staticThreshold operator: '>=' value: 1 lastUpdated: 1724720573744 forecastingConfig: null alertChannelIds: - VjS1NvcXpOARmTvA - CrLI3QeIZKygaNLH granularity: 60000 timeThreshold: type: violationsInSequence timeWindow: 180000 id: 4kxgJAXdSDiu6swQaKXrJw created: 1724720587414 initialCreated: 1714766649532 readOnly: false enabled: false customPayloadFields: - type: staticString key: testKey value: team-ar rules: - thresholdOperator: '>=' rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false thresholds: WARNING: type: staticThreshold value: 1 CRITICAL: type: staticThreshold value: 4 schema: $ref: '#/components/schemas/InfraAlertConfigWithMetadata' description: OK '404': description: Resource not found. security: - ApiKeyAuth: - Default summary: Get Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true post: operationId: updateInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration to update example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/InfraAlertConfig' required: true responses: '200': content: application/json: example: name: high-mean-memory-usage description: Something is going wrong in your infrastructure. severity: 5 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: kubernetes.cluster.name stringValue: 200_PoP_Cluster numberValue: null booleanValue: null key: null value: 200_PoP_Cluster operator: EQUALS entity: NOT_APPLICABLE groupBy: - kubernetes.cluster.name - kubernetes.namespace.name - kubernetes.pod.name rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false threshold: type: staticThreshold operator: '>=' value: 1 lastUpdated: 1724720573744 forecastingConfig: null alertChannelIds: - VjS1NvcXpOARmTvA - CrLI3QeIZKygaNLH granularity: 60000 timeThreshold: type: violationsInSequence timeWindow: 180000 id: 4kxgJAXdSDiu6swQaKXrJw created: 1724720587414 initialCreated: 1714766649532 readOnly: false enabled: false customPayloadFields: - type: staticString key: testKey value: team-ar rules: - thresholdOperator: '>=' rule: alertType: genericRule metricName: memory.usage entityType: crio aggregation: MEAN crossSeriesAggregation: MEAN regex: false thresholds: WARNING: type: staticThreshold value: 1 CRITICAL: type: staticThreshold value: 4 schema: $ref: '#/components/schemas/InfraAlertConfigWithMetadata' description: OK '204': description: Infra Smart Alert did not change '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Update Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/infra-alert-configs/{id}/disable': put: operationId: disableInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration to disable example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Successful - no content to return. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Disable Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/infra-alert-configs/{id}/enable': put: operationId: enableInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration to enable example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Successful - no content to return. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Enable Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/infra-alert-configs/{id}/restore/{created}': put: operationId: restoreInfraAlertConfig parameters: - description: ID of the Infra Smart Alert configuration to restore example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string - description: A Unix Timestamp of when the alert was created example: 1722877985000 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Successful - no content to return. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureGlobalInfraSmartAlerts summary: Restore Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true '/api/events/settings/infra-alert-configs/{id}/versions': get: description: Find all versions of a Infra Alert Config by ID. This will deliver deleted configs too. Configs are sorted descending by their created date. operationId: findInfraAlertConfigVersions parameters: - description: ID of the Infra Smart Alert configuration example: 4kxgJAXdSDiu6swQaKXrJw in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: 4kxgJAXdSDiu6swQaKXrJw created: 1724720587414 enabled: false deleted: false changeSummary: changeType: DISABLE author: id: 5ee8a3e8cd70020001ecb007 type: USER fullName: Stan schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '404': description: Resource not found. security: - ApiKeyAuth: - Default summary: Get versions of Infra Alert Config tags: - Infrastructure Alert Configuration x-ibm-ahub-byok: true /api/events/settings/manual-close: post: description: Manually close a set of events. A close notification will be sent out and the event state will be updated accordingly for each event operationId: multiCloseEvent requestBody: content: application/json: example: eventIds: - DPmhOKanQ3KmQCCElqOBeg - PRYfcm_7QRid9IRRhW3Y4w username: user123 reasonForClosing: Routine maintenance completed closeTimestamp: 1691505637000 muteAlerts: true schema: $ref: '#/components/schemas/ManualCloseInfo' required: true responses: '200': content: application/json: example: successfulRequests: - DPmhOKanQ3KmQCCElqOBeg - PRYfcm_7QRid9IRRhW3Y4w failedRequests: [] schema: $ref: '#/components/schemas/Json' description: The multi close operation was successful '207': description: At least one of the manual close operations failed '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '501': description: The multi close feature is not enabled. security: - ApiKeyAuth: - CanManuallyCloseIssue summary: Manually closing multiple events tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/manual-close/{eventId}': post: description: Manually close an event (issue or incident). A close notification will be sent out and the event state will be updated accordingly. operationId: manuallyCloseEvent parameters: - example: exampleEventId in: path name: eventId required: true schema: type: string requestBody: content: application/json: example: username: user123 reasonForClosing: Routine maintenance completed closeTimestamp: 1691505637000 muteAlerts: true schema: $ref: '#/components/schemas/ManualCloseInfo' required: true responses: '200': content: application/json: example: | { "type": "issue", "key": "__6oRuc3-oYSbWm2xjiFW7c-7RjLg__com.instana.forge.application.Endpoint__7-eW690TQA-dH4yxMDFpTQ.6oRuc3-oYSbWm2xjiFW7c-7RjLg57517532", "id": "GdKPDQV0SR6bc184Hg4wig", "problem": { "id": "3Lp8tyWNTvKdypvFskzDGA", "plugin_id": "com.instana.forge.application.Endpoint", "steady_id": "6oRuc3-oYSbWm2xjiFW7c-7RjLg", "host_id": "", "problem_text": "_woot", "fix_suggestion": "Calls are slower or equal to 3440 ms based on latency (90th).", "explanation": "", "severity": 5, "experimental": false }, "state": "MANUALLY_CLOSED", "metadata": { "app20EndpointServiceLabel": "otel-shop-shipping", "entityLabel": "/cities/{code}", "incidentNeeded": false, "manualCloseReason": "Routine maintenance completed", "manualCloseTimestamp": 1730755686351, "app20EndpointId": "6oRuc3-oYSbWm2xjiFW7c-7RjLg", "triggeringTime": 1730754600000, "entityName": "Endpoint", "metricAccessId": "MjSTRXXEiDXlDRiUUZH_3pKkeNw", "windowWarmupTime": 1200000, "app20ApplicationId": "btg-B701Rx6o9QNXUS4TVw", "disableEvent": false, "manualCloseUsername": "user123", "thresholdType": "staticThreshold", "muteAlerts": true, "eventConfigurationType": "Application Smart Alert", "endpointIds": ["6oRuc3-oYSbWm2xjiFW7c-7RjLg"], "app20ServiceId": "29af274138b88060667309e933725265a7c45208", "serviceIds": ["29af274138b88060667309e933725265a7c45208"], "eventSpecificationId": "7-eW690TQA-dH4yxMDFpTQ", "alertConfigCreated": 1662545340108, "granularity": 600000, "metricViolationTimestamps": [1730754600000], "custom_issue": true, "applicationId": "btg-B701Rx6o9QNXUS4TVw", "smartAlertInfo": { "metricAggregation": "P90", "metricName": "latency", "metricValue": 44300.0, "thresholdValue": 3440.0, "metricUnit": "MILLIS" }, "customPayloads": { "appName": ["All Services"], "podName": ["otel-shop-shipping-5b9bd5448d-9r7h9"] }, "incidents": [], "triggering": false, "start": 1730755339666, "end": 1730757446576, "affectedEntities": ["MjSTRXXEiDXlDRiUUZH_3pKkeNw"], "type": "issue", "eventMode": "ENDPOINT_20" } schema: $ref: '#/components/schemas/Event' description: The event associated with that event id was successfully closed. '400': description: The manual close information is required. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: The event id refers to an event that is not open. security: - ApiKeyAuth: - CanManuallyCloseIssue summary: Manually close an event. tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/mobile-app-alert-configs: get: description: Gets all the Mobile Smart Alert Configuration pertaining to a specific mobile app.Configurations are sorted by creation date in descending order. operationId: findActiveMobileAppAlertConfigs parameters: - description: The ID of a specific Mobile Application. example: tk2OLeusR3aQJD5h-rBh2A in: query name: mobileAppId required: true schema: type: string - description: A list of Smart Alert Configuration IDs. This allows Website Smart Alert Configuration of a specific set of Configurations. This query can be repeated to use multiple IDs. example: smRTFp08juKWtn8I in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] id: qOW5jlR5TQafXKWDIceRkA created: 1707224011842 initialCreated: 1707224011842 readOnly: false enabled: true completeTagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.id stringValue: tk2OLeusR3aQJD5h-rBh2A numberValue: null booleanValue: null key: null value: tk2OLeusR3aQJD5h-rBh2A operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: mobileBeacon.http.status stringValue: '5' numberValue: null booleanValue: null key: null value: '5' operator: STARTS_WITH entity: NOT_APPLICABLE schema: type: array items: $ref: '#/components/schemas/WithMetadata' description: Success. Returns empty result if mobileAppId is invalid. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Get all Mobile Smart Alert Configs tags: - Event Settings x-ibm-ahub-byok: true post: description: 'Creates a new Mobile Smart Alert Configuration. ' operationId: createMobileAppAlertConfig requestBody: content: application/json: example: name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] schema: $ref: '#/components/schemas/MobileAppAlertConfig' required: true responses: '200': content: application/json: example: name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] id: qOW5jlR5TQafXKWDIceRkA created: 1707224011842 initialCreated: 1707224011842 readOnly: false enabled: true completeTagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.id stringValue: tk2OLeusR3aQJD5h-rBh2A numberValue: null booleanValue: null key: null value: tk2OLeusR3aQJD5h-rBh2A operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: mobileBeacon.http.status stringValue: '5' numberValue: null booleanValue: null key: null value: '5' operator: STARTS_WITH entity: NOT_APPLICABLE schema: $ref: '#/components/schemas/WithMetadata' description: Mobile Smart Alert Configuration created. '400': description: Invalid Configuration. '403': description: Insufficient permissions. '422': description: Unprocessable entity. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Create Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}': delete: description: Deletes a Mobile Smart Alert Configuration operationId: deleteMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to delete. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string responses: '204': description: Mobile Smart Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Delete Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true get: description: Gets a specific Mobile Smart Alert Configuration. This may return a deleted Configuration. operationId: findMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to retrieve example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the Configuration was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1722877985000 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] id: qOW5jlR5TQafXKWDIceRkA created: 1707224011842 initialCreated: 1707224011842 readOnly: false enabled: true completeTagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.id stringValue: tk2OLeusR3aQJD5h-rBh2A numberValue: null booleanValue: null key: null value: tk2OLeusR3aQJD5h-rBh2A operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: mobileBeacon.http.status stringValue: '5' numberValue: null booleanValue: null key: null value: '5' operator: STARTS_WITH entity: NOT_APPLICABLE schema: $ref: '#/components/schemas/WithMetadata' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Get Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true post: description: 'Updates an existing Mobile Smart Alert Configuration. ' operationId: updateMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to update. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] schema: $ref: '#/components/schemas/MobileAppAlertConfig' required: true responses: '200': content: application/json: example: name: 'HTTP Status Code(s): 5XX' description: Occurrences of HTTP Status Code 5XX (Server Error) is above the expectation. mobileAppId: tk2OLeusR3aQJD5h-rBh2A severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: statusCode metricName: httpxxx operator: STARTS_WITH value: '5' aggregation: SUM threshold: type: staticThreshold operator: '>=' value: 5 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: [] id: qOW5jlR5TQafXKWDIceRkA created: 1707224011842 initialCreated: 1707224011842 readOnly: false enabled: true completeTagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.id stringValue: tk2OLeusR3aQJD5h-rBh2A numberValue: null booleanValue: null key: null value: tk2OLeusR3aQJD5h-rBh2A operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: mobileBeacon.http.status stringValue: '5' numberValue: null booleanValue: null key: null value: '5' operator: STARTS_WITH entity: NOT_APPLICABLE schema: $ref: '#/components/schemas/WithMetadata' description: Mobile Smart Alert Configuration updated. '204': description: Mobile Smart Alert Configuration did not change. '400': description: Invalid Mobile App ID provided. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '500': description: Internal error. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Update Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}/disable': put: description: Disables a Mobile Smart Alert Configuration. operationId: disableMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to disable. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Mobile Smart Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Disable Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}/enable': put: description: Enables a Mobile Smart Alert Configuration. operationId: enableMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to enable. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Mobile Smart Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Enable Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}/restore/{created}': put: description: Restores a Mobile Smart Alert Configuration. operationId: restoreMobileAppAlertConfig parameters: - description: ID of a specific Mobile Smart Alert Configuration to restore. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string - description: Unix timestamp representing the creation time of a specific Mobile Smart Alert Configuration. example: 1707726529124 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Mobile Smart Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Restore Mobile Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}/update-baseline': post: description: Recalculates and updates the historic baseline (static seasonal threshold) of a Configuration. The `LastUpdated` field of the Configuration is changed to the current time. operationId: updateMobileAppHistoricBaseline parameters: - description: ID of a specific Mobile Smart Alert Configuration to recalculate. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string responses: '200': description: Mobile Smart Alert Configuration baseline successfully recalculated and updated. '204': description: Baseline recalculation completed with no changes needed. '400': description: Invalid configuration type or configuration is read-only. '403': description: Insufficient permissions to access this configuration. '404': description: Mobile Smart Alert Configuration not found. '428': description: Baseline calculation failed due to insufficient data. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Recalculate Mobile Smart Alert Config Baseline tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/mobile-app-alert-configs/{id}/versions': get: description: Gets all versions of a Mobile Smart Alert Configuration. This may return deleted Configurations. Configurations are sorted by creation date in descending order. operationId: findMobileAppAlertConfigVersions parameters: - description: ID of a specific Mobile Smart Alert Configuration to retrieve. example: qOW5jlR5TQafXKWDIceRkA in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: qOW5jlR5TQafXKWDIceRkA created: 1706686318650 enabled: true deleted: false changeSummary: changeType: CREATE author: id: 5ee8a3e8cd70020001ecb007 type: USER fullName: Stan schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - CanConfigureMobileAppSmartAlerts summary: Get Mobile Smart Alert Config Versions tags: - Event Settings x-ibm-ahub-byok: true /api/events/settings/website-alert-configs: get: description: Gets all the Website Smart Alert Configuration pertaining to a specific website. Configurations are sorted by creation date in descending order. operationId: findActiveWebsiteAlertConfigs parameters: - description: The ID of a specific Website example: XIZGGVT1TX2O-0OFeT2Yig in: query name: websiteId required: true schema: type: string - description: A list of Smart Alert Configuration IDs. This allows fetching of a specific set of Configurations. This query can be repeated to use multiple IDs. example: smRTFp08juKWtn8I in: query name: alertIds schema: type: array items: type: string maxItems: 1000 minItems: 0 uniqueItems: true responses: '200': content: application/json: example: - name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null id: G-h5p0znTHan2m2U3c-Z1Q created: 1707726529124 initialCreated: 1707726529124 readOnly: false enabled: true schema: type: array items: $ref: '#/components/schemas/WebsiteAlertConfigWithMetadata' description: Success. Returns empty result if websiteId is invalid. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Get all Website Smart Alert Configs tags: - Event Settings x-ibm-ahub-byok: true post: description: Creates a new Website Smart Alert Configuration. operationId: createWebsiteAlertConfig requestBody: content: application/json: example: name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null schema: $ref: '#/components/schemas/WebsiteAlertConfig' required: true responses: '200': content: application/json: example: name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null id: G-h5p0znTHan2m2U3c-Z1Q created: 1707726529124 initialCreated: 1707726529124 readOnly: false enabled: true schema: $ref: '#/components/schemas/WebsiteAlertConfigWithMetadata' description: Website Smart Alert Configuration created. '400': description: Invalid configuration. '403': description: Insufficient permissions. '422': description: Unprocessable entity. '428': description: Baseline calculation failed due to insufficient data. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Create Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}': delete: description: Deletes a Website Smart Alert Configuration. operationId: deleteWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to delete. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string responses: '204': description: Website Smart Alert Configuration deleted. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Delete Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true get: description: Gets a specific Website Smart Alert Configuration. This may return a deleted Configuration. operationId: findWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to retrieve. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string - description: 'A Unix timestamp representing a specific time the config was active. If no timestamp is provided, the latest active version will be retrieved. ' example: 1722877985000 in: query name: validOn schema: type: integer format: int64 responses: '200': content: application/json: example: name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null id: G-h5p0znTHan2m2U3c-Z1Q created: 1707726529124 initialCreated: 1707726529124 readOnly: false enabled: true schema: $ref: '#/components/schemas/WebsiteAlertConfigWithMetadata' description: OK '403': description: Insufficient permissions. '404': description: The requested configuration does not exist. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Get Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true post: description: Updates an existing Website Smart Alert Configuration. operationId: updateWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to update. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null schema: $ref: '#/components/schemas/WebsiteAlertConfig' required: true responses: '200': content: application/json: example: name: onLoad Time (90th) is too high description: The onLoad Time (90th) is above the expectation. websiteId: XIZGGVT1TX2O-0OFeT2Yig severity: 5 triggering: false tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] rule: alertType: slowness metricName: onLoadTime aggregation: P90 threshold: type: historicBaseline operator: '>=' seasonality: DAILY baseline: - - 0 - 239.164 - 6.1026 - - 600000 - 240.0013 - 7.4109 - - 85200000 - 241.3653 - 3 - - 85800000 - 239.4759 - 3.9012 deviationFactor: 3 lastUpdated: 0 alertChannelIds: [] granularity: 600000 timeThreshold: type: violationsInSequence timeWindow: 600000 customPayloadFields: - type: staticString key: '1' value: '2' - type: dynamic key: '2' value: tagName: beacon.website.name key: null id: G-h5p0znTHan2m2U3c-Z1Q created: 1707726529124 initialCreated: 1707726529124 readOnly: false enabled: true schema: $ref: '#/components/schemas/WebsiteAlertConfigWithMetadata' description: Website Smart Alert Configuration updated. '204': description: Website Smart Alert Configuration did not change. '400': description: Invalid Configuration ID provided. '403': description: Insufficient permissions. '404': description: The requested configuration does not exist. '422': description: Unprocessable entity. '428': description: Baseline calculation failed due to insufficient data. '500': description: Internal error. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Update Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}/disable': put: description: Disables a Website Smart Alert Configuration. operationId: disableWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to disable. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Website Smart Alert Configuration disabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Disable Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}/enable': put: description: Enables a website alert configuration. operationId: enableWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to enable. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Website Smart Alert Configuration enabled. '403': description: Insufficient permissions. '404': description: Invalid Configuration ID provided. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Enable Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}/restore/{created}': put: description: Restores a deleted Website Smart Alert Configuration. operationId: restoreWebsiteAlertConfig parameters: - description: ID of a specific Website Smart Alert Configuration to restore. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string - description: Unix timestamp representing the creation time of a specific Website Smart Alert Configuration. example: 1707726529124 in: path name: created required: true schema: type: integer format: int64 requestBody: content: application/json: schema: type: string nullable: true responses: '204': description: Website Smart Alert Configuration restored. '403': description: Insufficient permissions. '404': description: Invalid Configuration provided. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Restore Website Smart Alert Config tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}/update-baseline': post: description: Recalculates and updates the historic baseline (static seasonal threshold) of a Configuration. The `LastUpdated` field of the Configuration is changed to the current time. operationId: updateWebsiteHistoricBaseline parameters: - description: ID of a specific Website Smart Alert Configuration to recalculate. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string responses: '200': description: Website Smart Alert Configuration baseline successfully recalculated and updated. '204': description: Baseline recalculation completed with no changes needed. '400': description: Invalid configuration type or configuration is read-only. '403': description: Insufficient permissions to access this configuration. '404': description: Website Smart Alert Configuration not found. '428': description: Baseline calculation failed due to insufficient data. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: Recalculate Website Smart Alert Config Baseline tags: - Event Settings x-ibm-ahub-byok: true '/api/events/settings/website-alert-configs/{id}/versions': get: description: Gets all versions of a Website Smart Alert Configuration. This may return deleted Configurations. Configurations are sorted by creation date in descending order. operationId: findWebsiteAlertConfigVersions parameters: - description: ID of a specific Website Smart Alert Configuration to retrieve. example: G-h5p0znTHan2m2U3c-Z1Q in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: G-h5p0znTHan2m2U3c-Z1Q created: 1706709825308 enabled: true deleted: false changeSummary: changeType: CREATE author: id: 5ee8a3e8cd70020001ecb007 type: USER fullName: Stan schema: type: array items: $ref: '#/components/schemas/ConfigVersion' description: OK '403': description: Insufficient permissions. '404': description: The requested Configuration does not exist. security: - ApiKeyAuth: - CanConfigureWebsiteSmartAlerts summary: 'Get Website Smart Alert Config Versions. ' tags: - Event Settings x-ibm-ahub-byok: true '/api/events/{eventId}': get: description: Gets a specific event. operationId: getEvent parameters: - description: ID of a specific Event to retrieve. example: LZOGo1lXR4WeCB2ftgtGGQ in: path name: eventId required: true schema: type: string responses: '200': content: application/json: example: eventId: LZOGo1lXR4WeCB2ftgtGGQ start: 1706783553000 end: 1706783553000 type: change state: closed problem: Pulled detail: 'Successfully pulled image "registry.redhat.io/redhat/redhat-marketplace-index:v4.14" in 830.603468ms (830.624088ms including waiting)' severity: -2 entityName: Kubernetes Pod entityLabel: openshift-marketplace/redhat-marketplace-qbn8f (pod) entityType: INFRASTRUCTURE fixSuggestion: 'Successfully pulled image "registry.redhat.io/redhat/redhat-marketplace-index:v4.14" in 830.603468ms (830.624088ms including waiting)' snapshotId: xLziJivLyeepxBf0UnNR1ff-9MI schema: $ref: '#/components/schemas/EventResult' description: OK '404': description: The requested event does not exist. security: - ApiKeyAuth: - Default summary: Get Event tags: - Events x-ibm-ahub-byok: true /api/host-agent: get: operationId: searchHostAgents parameters: - in: query name: query schema: type: string - in: query name: to schema: type: integer format: int64 - in: query name: windowSize schema: type: integer format: int64 - in: query name: size schema: type: integer format: int32 - in: query name: offline schema: type: boolean responses: '200': content: application/json: example: |2 { "items": [ { "snapshotId": "iRsnjcH9cls2rlx3wm8ENPapljk", "plugin": "instanaAgent", "from": 1706712590000, "to": null, "tags": [], "label": "Instana Agent @ ip-10-255-207-205", "host": "EC2-i-0a8be85269f7e2b92" }, ] } schema: $ref: '#/components/schemas/SnapshotResult' description: OK security: - ApiKeyAuth: - Default summary: Query host agent snapshots tags: - Host Agent x-ibm-ahub-byok: true /api/host-agent/configuration: post: operationId: updateConfigurationByQuery parameters: - in: query name: query schema: type: string - in: query name: to schema: type: integer format: int64 - in: query name: windowSize schema: type: integer format: int64 - in: query name: size schema: type: integer format: int32 - in: query name: offline schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentConfigurationUpdate' responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Update agent configuration by query tags: - Host Agent x-ibm-ahub-byok: true description: |+ This endpoint can be used to initialize or change configuration management settings for all agents selected by the given Dynamic Focus Query. '/api/host-agent/{hostId}/clr-logs': get: operationId: getAgentClrLogs parameters: - in: path name: hostId required: true schema: type: string - in: query name: download schema: type: boolean responses: default: content: application/octet-stream: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Agent CLR download logs tags: - Host Agent x-ibm-ahub-byok: true '/api/host-agent/{hostId}/configuration': post: operationId: updateConfigurationByHost parameters: - in: path name: hostId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/AgentConfigurationUpdate' responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Update agent configuration by host tags: - Host Agent x-ibm-ahub-byok: true description: |+ This endpoint can be used to initialize or change configuration management settings for a specific host agent. '/api/host-agent/{hostId}/logs': get: operationId: getAgentLogs parameters: - in: path name: hostId required: true schema: type: string - in: query name: download schema: type: boolean - in: query name: file required: true schema: type: array items: type: string uniqueItems: true responses: default: content: application/octet-stream: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Agent download logs tags: - Host Agent x-ibm-ahub-byok: true '/api/host-agent/{hostId}/support-info': get: operationId: getAgentSupportInformation parameters: - in: path name: hostId required: true schema: type: string - in: query name: supportInfoId required: true schema: type: string responses: default: content: application/octet-stream: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Agent download support information tags: - Host Agent x-ibm-ahub-byok: true '/api/host-agent/{hostId}/update': post: operationId: updateAgent parameters: - in: path name: hostId required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - Default - ApiKeyAuth: - canConfigureAgents summary: Agent update tags: - Host Agent x-ibm-ahub-byok: true '/api/host-agent/{id}': get: operationId: getAgentSnapshot parameters: - in: path name: id required: true schema: type: string - in: query name: to schema: type: integer format: int64 - in: query name: windowSize schema: type: integer format: int64 responses: '200': content: application/json: example: |2 { "snapshotId": "snapshot id", "plugin": "instanaAgent", "from": 1706791431000, "tags": [], "label": "Instana Agent @ ip-10-255-207-205", "entityId": { "host": "EC2-i-0a8be85269f7e2b92", "pluginId": "plugin id", "steadyId": "self" }, "data": { "memory.nativeTotal": 134217728, "capabilities": [ "gitops", "logdownload", "agentprofiler", "agentSupportInfo", { "java-trace-commands": [ "get-agent-statistics", "get-loader-statistics", "get-tracer-statistics", "get-instrumentation-install-messages", "get-instrumentation-install-errors", "get-instrumentation-runtime-errors", "get-instrumented-classes", "get-raw-matchers", "get-weak-concurrent-maps", "log-reset", "log-trace-context", "log-rejected", "start-debug-tracer", "stop-debug-tracer" ] }, "log4j-safe-lib" ], "origin": "public_docker", "startedAt": 1705917107361, "memory.total": 181805056, "pid": "29001", "mode": 2, "hostname": "ip-10-255-207-205", "java": { "vmversion": "25.392-b08", "version": "1.8.0_392", "vmname": "vm name", "vmvendor": "vendor name" }, "git": { "present": true, "initialized": false }, "hasCpuLoad": true, "updateMode": "Auto", "log.counts.byMessage": { "?:?": "WARN ? "Can no longer query container metrics for k8s.io: 8ac777f1ca6231299050ee5482ecac6c1747b2545b3b1d890f69d0a849b3adb4 ... requesting sensor shutdown"" }, "loglevel": "INFO", "agentVersion": "Latest", "metrics": true, "boot": "1.2.30", "pids": [ "14096", "19502", "2001", "29812", "981", "28411", "29522", "1267", "2475", "27182" ], "user": "root", "logAsRate": true } } schema: $ref: '#/components/schemas/SnapshotItem' description: OK security: - ApiKeyAuth: - Default summary: Get host agent snapshot details tags: - Host Agent x-ibm-ahub-byok: true /api/infrastructure-monitoring/analyze/entities: post: description: |- This endpoint retrieves entities for a given entity type along with the requested metrics. For more information on Infrastructure Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Infrastructure#infrastructure-analyze. operationId: getEntities requestBody: content: application/json: examples: This example retrieves a JVM entity labeled "custom-metrics.jar" with metrics for memory used and blocked threads (both using a one hour granularity and a one minute granularity).: description: This example retrieves a JVM entity labeled "custom-metrics.jar" with metrics for memory used and blocked threads (both using a one hour granularity and a one minute granularity). value: tagFilterExpression: type: TAG_FILTER entity: NOT_APPLICABLE name: label operator: EQUALS value: custom-metrics.jar timeFrame: to: 1673969562715 windowSize: 3600000 pagination: retrievalSize: 200 type: jvmRuntimePlatform metrics: - metric: memory.used granularity: 3600000 aggregation: MAX - metric: memory.used granularity: 600000 aggregation: MAX - metric: threads.blocked granularity: 3600000 aggregation: MEAN - metric: threads.blocked granularity: 600000 aggregation: MEAN schema: $ref: '#/components/schemas/GetInfrastructureQuery' responses: '200': content: application/json: schema: $ref: '#/components/schemas/InfrastructureEntitiesResult' description: OK security: - ApiKeyAuth: - Default summary: Get infrastructure entities tags: - Infrastructure Analyze x-ibm-ahub-byok: true /api/infrastructure-monitoring/analyze/entity-groups: post: description: |- This endpoint groups entities for a given entity type and aggregates metrics for these groups. For more information on Infrastructure Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Infrastructure#infrastructure-analyze. operationId: getEntityGroups requestBody: content: application/json: examples: 'This example retrieves JVM entities grouped with the same host name ordered by label, aggregating memory used and blocked threads (both using a one hour granularity and a one minute granularity).': description: 'This example retrieves JVM entities grouped with the same host name ordered by label, aggregating memory used and blocked threads (both using a one hour granularity and a one minute granularity).' value: timeFrame: to: 1674075565075 windowSize: 3600000 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] pagination: retrievalSize: 20 groupBy: - host.name type: jvmRuntimePlatform metrics: - metric: memory.used granularity: 3600000 aggregation: MEAN - metric: memory.used granularity: 600000 aggregation: MEAN - metric: threads.blocked granularity: 3600000 aggregation: MEAN - metric: threads.blocked granularity: 600000 aggregation: MEAN order: by: label direction: ASC schema: $ref: '#/components/schemas/GetInfrastructureGroupsQuery' responses: '200': content: application/json: schema: $ref: '#/components/schemas/InfrastructureGroupsResult' description: OK security: - ApiKeyAuth: - Default summary: Get grouped infrastructure entities with aggregated metrics tags: - Infrastructure Analyze x-ibm-ahub-byok: true /api/infrastructure-monitoring/analyze/entity-types: post: description: |- This endpoint retrieves available entity types. For more information on Infrastructure Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Infrastructure#infrastructure-analyze. operationId: getAvailablePlugins requestBody: content: application/json: examples: This example retrieves all entity types.: description: This example retrieves all entity types. value: tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] timeFrame: to: 1673969562715 windowSize: 3600000 schema: $ref: '#/components/schemas/GetAvailablePluginsQuery' responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailablePlugins' description: OK security: - ApiKeyAuth: - Default summary: Get available entity types tags: - Infrastructure Analyze x-ibm-ahub-byok: true /api/infrastructure-monitoring/analyze/metrics: post: description: |- This endpoint retrieves available metrics for an entity type. For more information on Infrastructure Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Infrastructure#infrastructure-analyze. operationId: getAvailableMetrics requestBody: content: application/json: examples: This example retrieves all available metrics for JVM entities.: description: This example retrieves all available metrics for JVM entities. value: tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] timeFrame: to: 1673969562715 windowSize: 3600000 query: '' type: jvmRuntimePlatform schema: $ref: '#/components/schemas/GetAvailableMetricsQuery' responses: '200': content: application/json: schema: $ref: '#/components/schemas/AvailableMetrics' description: OK security: - ApiKeyAuth: - Default summary: Get available metrics tags: - Infrastructure Analyze x-ibm-ahub-byok: true '/api/infrastructure-monitoring/catalog/metrics/{plugin}': get: operationId: getInfrastructureCatalogMetrics parameters: - in: path name: plugin required: true schema: type: string - in: query name: filter schema: type: string - in: query name: label schema: type: string - in: query name: limit schema: type: integer format: int32 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/MetricInstance' description: OK security: - ApiKeyAuth: - Default summary: Get metric catalog tags: - Infrastructure Catalog x-ibm-ahub-byok: true description: | This endpoint retrieves all available metric definitions of the requested plugin. ### Path Parameters: **plugin** The plugin id from [available plugins](#operation/getInfrastructureCatalogPlugins) ### Optional Parameters: **filter** You can restrict the returned metric definitions by passing a filter. * `custom` to retrieve custom metric definitions only. * `builtin` to retrieve built-in metric definitions only. '/api/infrastructure-monitoring/catalog/payloads/{pluginId}': get: operationId: getAvailablePayloadKeysByPluginId parameters: - description: plugin id example: db2Database in: path name: pluginId required: true schema: type: string responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/GetPayloadKeysResult' description: OK links: payload for snapshot: operationId: getPluginPayload parameters: payloadKey: '$response.body#/[*]' security: - ApiKeyAuth: - Default summary: Get payload keys for plugin tags: - Infrastructure Catalog x-ibm-ahub-byok: true /api/infrastructure-monitoring/catalog/plugins: get: operationId: getInfrastructureCatalogPlugins responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PluginResult' description: OK security: - ApiKeyAuth: - Default summary: Get plugin catalog tags: - Infrastructure Catalog x-ibm-ahub-byok: true description: | This endpoint retrieves all available plugin ids for your monitored system. /api/infrastructure-monitoring/catalog/plugins-with-custom-metrics: get: operationId: getInfrastructureCatalogPluginsWithCustomMetrics responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/PluginResult' description: OK security: - ApiKeyAuth: - Default summary: Get all plugins with custom metrics catalog tags: - Infrastructure Catalog x-ibm-ahub-byok: true /api/infrastructure-monitoring/catalog/search: get: operationId: getInfrastructureCatalogSearchFields responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/SearchFieldResult' description: OK security: - ApiKeyAuth: - Default summary: get search field catalog tags: - Infrastructure Catalog x-ibm-ahub-byok: true description: | This endpoint retrieves all available search keywords for dynamic focus queries. These search fields can be accessed via lucene queries. Each field belongs to a context, e.g. to entity, trace or event data. Some fields contain a set of possible fixed values, in this case a deviant value is invalid. ``` ?query={keyword}:{value} ``` /api/infrastructure-monitoring/catalog/tags: get: description: This endpoint retrieves the tag catalog. operationId: getTagCatalogAll responses: '200': content: application/json: schema: $ref: '#/components/schemas/TagCatalog' description: OK security: - ApiKeyAuth: - Default summary: Get available tags tags: - Infrastructure Catalog x-ibm-ahub-byok: true '/api/infrastructure-monitoring/catalog/tags/{plugin}': get: description: This endpoint retrieves the tag catalog filtered by plugin. operationId: getTagCatalog parameters: - description: plugin example: host in: path name: plugin required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/TagCatalog' description: OK security: - ApiKeyAuth: - Default summary: Get available tags for a particular plugin tags: - Infrastructure Catalog x-ibm-ahub-byok: true '/api/infrastructure-monitoring/graph/related-hosts/{snapshotId}': get: description: Gets the Related Hosts operationId: getRelatedHosts parameters: - description: Snapshot ID running on the host in: path name: snapshotId required: true schema: type: string - description: Size of time window in milliseconds in: query name: windowSize schema: type: integer format: int64 - description: Timestamp since Unix Epoch in milliseconds of the end of the time window in: query name: to schema: type: integer format: int64 responses: '200': content: application/json: example: - ZoKkksp277FMLSXIghPKdjZcvfE schema: type: array items: type: string description: Returns the snapshot ID of the hosts security: - ApiKeyAuth: - Default summary: Related hosts tags: - Infrastructure Topology x-ibm-ahub-byok: true /api/infrastructure-monitoring/metrics: post: operationId: getInfrastructureMetrics parameters: - in: query name: offline schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/GetCombinedMetrics' responses: '200': content: application/json: schema: $ref: '#/components/schemas/InfrastructureMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get infrastructure metrics tags: - Infrastructure Metrics x-ibm-ahub-byok: true description: "- The **offline** parameter is used to allow deeper visibility into snapshots. Set to `false`, the query will return all snapshots that are still available on the given **to** timestamp. However, set to `true`, the query will return all snapshots that have been active within the time window, this must at least include the online result and snapshots terminated within this time.\r\n" /api/infrastructure-monitoring/monitoring-state: get: description: 'This API endpoint retrieves the current monitoring state of the system, providing details about the number of monitored hosts and serverless entities. It responds with a JSON object containing this information.' operationId: getMonitoringState responses: '200': content: application/json: example: hasEntities: true hostCount: 122 serverlessCount: 7 schema: $ref: '#/components/schemas/MonitoringState' description: OK security: - ApiKeyAuth: - Default summary: Monitored host count tags: - Infrastructure Resources x-ibm-ahub-byok: true '/api/infrastructure-monitoring/payloads/{snapshotId}/{payloadKey}': get: operationId: getPluginPayload parameters: - description: Snapshot id. in: path name: snapshotId required: true schema: type: string - description: 'Payload key. Use [getAvailablePayloadKeysByPluginId](/openapi/#operation/getAvailablePayloadKeysByPluginId) to retrieve the list of possible keys.' example: topqueries in: path name: payloadKey required: true schema: type: string - description: End of timeframe expressed as the Unix epoch time in milliseconds. example: 1689018652000 in: query name: to schema: type: integer format: int64 - description: Window size in milliseconds. example: 3600000 in: query name: windowSize schema: type: integer format: int64 responses: '200': content: application/json: example: raw_payload: - DEFERRED_VALUE: '64' DEFERRED_VALUE_FLAGS: NONE VALUE: '64' NAME: app_ctl_heap_sz VALUE_FLAGS: NONE timestamp: 1707833086000 description: OK security: - ApiKeyAuth: - Default summary: Get a payload for a snapshot tags: - Infrastructure Resources x-ibm-ahub-byok: true /api/infrastructure-monitoring/snapshots: get: operationId: getSnapshots parameters: - description: query to use to filter snapshot retrieval example: 'entity.zone:myZone*' in: query name: query schema: type: string - description: end of timeframe expressed as the Unix epoch time in milliseconds example: 1689018652000 in: query name: to schema: type: integer format: int64 - description: windowSize in milliseconds example: 3600000 in: query name: windowSize schema: type: integer format: int64 - description: maximum number of snapshots to retrieve example: 100 in: query name: size schema: type: integer format: int32 - description: entity type example: host in: query name: plugin schema: type: string - description: 'retrieve snapshots which were online during the timeframe, otherwise, return only snapshot which were online at the end of the timeframe' example: false in: query name: offline schema: type: boolean responses: '200': content: application/json: example: items: - snapshotId: ZoKkksp277FMLSXIghPKdjZcvfE plugin: host from: 1706785156000 to: null tags: [] label: ip-10-255-200-30.instana.io host: EC2-i-03afb0ac5188f57f3 - snapshotId: ONRQyD-iztZX6QS9QnjKbFFy-oI plugin: host from: 1706756437000 to: null tags: [] label: ip-10-255-218-45.instana.io host: EC2-i-091cba86bac58cc77 - snapshotId: 0GvRrdko-0Ds9OWPzJVEm0j0vTA plugin: host from: 1706785131000 to: null tags: [] label: ip-10-255-203-60.instana.io host: EC2-i-0d2743935b9596c85 schema: $ref: '#/components/schemas/SnapshotResult' description: OK security: - ApiKeyAuth: - Default summary: Search snapshots tags: - Infrastructure Resources x-ibm-ahub-byok: true description: "These APIs can be used to retrieve information about hosts, processes, JVMs and other entities that we are calling snapshots. A snapshot represents static information about an entity as it was at a specific point in time. To clarify:\r\n**Static information** is any information which is seldom changing, e.g. process IDs, host FQDNs or a list of host hard disks. The counterpart to static information are metrics which have a much higher change rate, e.g. host CPU usage or JVM garbage collection activity. Snapshots only contain static information.\r\n- Snapshots are **versioned** and represent an entity's state for a specific point in time. While snapshots only contain static information, even that information may change. For example you may add another hard disk to a server. For such a change, a new snapshot would be created.\r\n- The **size** parameter can be used in order to limit the maximum number of retrieved snapshots.\r\n- The **offline** parameter is used to allow deeper visibility into snapshots. Set to `false`, the query will return all snapshots that are still available on the given **to** timestamp. However, set to `true`, the query will return all snapshots that have been active within the time window, this must at least include the online result and snapshots terminated within this time.\r\n" post: description: This endpoint retrieves detail information for one or more snapshots. timeFrame defaults to the last 10 minutes if not specified. operationId: postSnapshots requestBody: content: application/json: examples: This example retrieves the detail information for two snapshots.: description: This example retrieves the detail information for two snapshots. value: snapshotIds: - AB3DeFGHIJkLm9OpQrstUVwxY_z - ZY4XwVUTSRqPo8MlKjihGFedC_a timeFrame: to: 1689018652000 windowSize: 3600000 schema: $ref: '#/components/schemas/GetSnapshotsQuery' responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostSnapshotsResult' description: OK security: - ApiKeyAuth: - Default summary: Get snapshot details for multiple snapshots tags: - Infrastructure Resources x-ibm-ahub-byok: true '/api/infrastructure-monitoring/snapshots/{id}': get: description: Get all snapshot information operationId: getSnapshot parameters: - description: snapshot id in: path name: id required: true schema: type: string - description: end of timeframe expressed as the Unix epoch time in milliseconds example: 1689018652000 in: query name: to schema: type: integer format: int64 - description: windowSize in milliseconds example: 3600000 in: query name: windowSize schema: type: integer format: int64 responses: '200': content: application/json: example: snapshotId: ZoKkksp277FMLSXIghPKdjZcvfE plugin: host from: 1706785156000 tags: [] label: ip-10-255-200-30.instana.io entityId: host: EC2-i-03afb0ac5188f57f3 pluginId: com.instana.forge.infrastructure.os.host.Host steadyId: h data: interfaces: eth0: addresses: - subnet: 10.255.200.0 fqdn: - 10-255-200-30.instana-agent-headless.instana-agent.svc.cluster.local - 10-255-200-30.instana-agent.instana-agent.svc.cluster.local - 10-255-200-30.prometheus-prometheus-node-exporter.prometheus.svc.cluster.local ip: 10.255.200.30 mac: '06:00:E9:32:99:C5' eth1: addresses: - subnet: 10.255.200.0 ip: 10.255.205.14 mac: '06:93:A2:5B:97:D9' cpu.model: AMD EPYC 7R13 Processor fqdn: ip-10-255-200-30.instana.io bootId: 3b7e2fe9-7cff-42bb-9879-6b856582fa27 os.arch: amd64 start: 1694791889000 memory.total: 65994727424 openFiles.max: 6441978 filesystems: /dev/nvme0n1p1: options: 'rw,noatime,attr2,inode64,logbufs=8,logbsize=32k,noquota' mounts: - /var/lib/kubelet/pods/dc320aef-ef0e-499a-8eb2-56cb454c22d6/volume-subpaths/configuration/instana-agent/11 - /var/lib/kubelet/pods/dc320aef-ef0e-499a-8eb2-56cb454c22d6/volume-subpaths/configuration/instana-agent/14 - /var/lib/kubelet/pods/dc320aef-ef0e-499a-8eb2-56cb454c22d6/volume-subpaths/additional-backend-2/instana-agent/12 - /var/lib/kubelet/pods/dc320aef-ef0e-499a-8eb2-56cb454c22d6/volume-subpaths/additional-backend-3/instana-agent/13 - / systype: xfs icapacity: 28180816 mount: / capacity: 83873772 os.version: 5.10.186-179.751.amzn2.x86_64 tags: [] cpu.count: 8 hostname: ip-10-255-200-30 machineId: ec2f95ff87a4a46d4672835afb9e2bb5 systemSerialNumber: ec2f95ff-87a4-a46d-4672-835afb9e2bb5 os.name: Linux schema: $ref: '#/components/schemas/SnapshotItem' description: OK security: - ApiKeyAuth: - Default summary: Get snapshot details tags: - Infrastructure Resources x-ibm-ahub-byok: true /api/infrastructure-monitoring/software/versions: get: description: |- Retrieve information about the software that are sensed by the agent remotely, natively, or both. This includes runtime and package manager information. The `plugin`, `name`, `version`, `discoveryType`, `softwareType` and `vendor` parameters are optional filters that can be used to reduce the result data set. The `snapshotId` in `usedBy` is either of host or container, if available operationId: softwareVersions parameters: - description: Timeframe expressed as the Unix epoch time in milliseconds in: query name: time schema: type: integer format: int64 - description: Filter on discoveryType example: NATIVE_SENSOR in: query name: discoveryType schema: type: string enum: - NATIVE_SENSOR - REMOTE_SENSOR - PACKAGE_MANAGER - OTHER - description: Filter on softwareType example: DEPENDENCY in: query name: softwareType schema: type: string enum: - DEPENDENCY - RUNTIME - DATABASE - MESSAGING - PLATFORM - PACKAGE - OS - CACHE - API_GATEWAY - OTHER - APPLICATION_FRAMEWORK - description: Filter on this software name in: query name: name schema: type: string - description: Filter on this plugin in: query name: plugin schema: type: string - description: Filter on this version in: query name: version schema: type: string - description: Filter on this vendor in: query name: vendor schema: type: string responses: '200': content: application/json: example: | [ { "name": "errno", "plugin": "nodeJsRuntimePlatform", "version": "0.1.8", "discoveryType": "NATIVE_SENSOR", "softwareType": "DEPENDENCY", "vendor": "", "metadata": {}, "usedBy": [ { "host": "instana-centos1.fyre.ibm.com", "container": null, "process": "instana-payload-simulator v1.0.0", "snapshotId": "nQHb946M0I_rzRNuTFLVVSUorr8" } ] }, { "name": "OpenJDK 64-Bit Server VM", "plugin": "jvmRuntimePlatform" "version": "17.0.1", "discoveryType": "NATIVE_SENSOR", "softwareType": "RUNTIME", "vendor": "Azul Systems, Inc.", "metadata": {}, "usedBy": [ { "host": "lima-rancher-desktop", "container": "elasticsearch/elasticsearch:7.16.2", "process": "docker-cluster: 0c930ef6c5af", "snapshotId": "cn06irROoHrvrDEa4fWw9vD6yhc" } ] } ] schema: type: array items: $ref: '#/components/schemas/SoftwareVersion' description: OK security: - ApiKeyAuth: - Default summary: Get installed software tags: - Infrastructure Resources x-ibm-ahub-byok: true /api/infrastructure-monitoring/topology: get: operationId: getTopology parameters: - description: Include snapshot data in nodes in: query name: includeData schema: type: boolean responses: '200': content: application/json: example: nodes: - id: nYlAch5BEuXdyzQ1Q1V3QvW9jpY plugin: kubernetesPod label: openshift-console/downloads-6b8f4d6dfc-zv2tx (pod) entityId: host: '' pluginId: com.instana.forge.infrastructure.paas.kubernetes.derivedentity.pod.KubernetesPod steadyId: b3e550f4-5754-4388-bd44-025ecd9f057e edges: - source: i5wh2JGMSHMiSt_TH2sHo1rNLaQ destination: k67B5nn-7mpx6i0oCEiIWvP46ko relation: in schema: $ref: '#/components/schemas/Topology' description: OK security: - ApiKeyAuth: - Default summary: Gets the infrastructure topology tags: - Infrastructure Topology x-ibm-ahub-byok: true /api/instana/health: get: operationId: getHealthState responses: '200': content: application/json: example: health: GREEN messages: [] schema: $ref: '#/components/schemas/HealthState' description: OK security: - ApiKeyAuth: - Default summary: Basic health traffic light tags: - Health x-ibm-ahub-byok: true description: | The returned JSON object will provide a health property which contains a simple traffic light (GREEN/YELLO/RED). For any non-Green-state a list of reasons will be provided in the messages array. Possible messages: * No data being processed * No data arriving from agents /api/instana/usage/api: get: operationId: getAllUsage responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UsageResult' description: OK security: - ApiKeyAuth: - CanViewAccountAndBillingInformation summary: API usage by customer tags: - Usage x-ibm-ahub-byok: true '/api/instana/usage/api/{day}/{month}/{year}': get: operationId: getUsagePerDay parameters: - in: path name: day required: true schema: type: integer format: int32 - in: path name: month required: true schema: type: integer format: int32 - in: path name: year required: true schema: type: integer format: int32 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UsageResult' description: OK security: - ApiKeyAuth: - CanViewAccountAndBillingInformation summary: API usage day / month / year tags: - Usage x-ibm-ahub-byok: true '/api/instana/usage/api/{month}/{year}': get: operationId: getUsagePerMonth parameters: - in: path name: month required: true schema: type: integer format: int32 - in: path name: year required: true schema: type: integer format: int32 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UsageResult' description: OK security: - ApiKeyAuth: - CanViewAccountAndBillingInformation summary: API usage month / year tags: - Usage x-ibm-ahub-byok: true '/api/instana/usage/hosts/{day}/{month}/{year}': get: operationId: getHostsPerDay parameters: - in: path name: day required: true schema: type: integer format: int32 - in: path name: month required: true schema: type: integer format: int32 - in: path name: year required: true schema: type: integer format: int32 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UsageResult' description: OK security: - ApiKeyAuth: - CanViewAccountAndBillingInformation summary: Host count day / month / year tags: - Usage x-ibm-ahub-byok: true '/api/instana/usage/hosts/{month}/{year}': get: operationId: getHostsPerMonth parameters: - in: path name: month required: true schema: type: integer format: int32 - in: path name: year required: true schema: type: integer format: int32 responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/UsageResult' description: OK security: - ApiKeyAuth: - CanViewAccountAndBillingInformation summary: Host count month / year tags: - Usage x-ibm-ahub-byok: true /api/instana/version: get: operationId: getVersion responses: '200': content: application/json: example: branch: develop commit: 862420fa8696bd5106224f340a1f93d3c7d86409 imageTag: 3.267.99-0 schema: $ref: '#/components/schemas/InstanaVersionInfo' description: OK security: - ApiKeyAuth: - Default summary: API version information tags: - Health x-ibm-ahub-byok: true /api/llm/capabilities: get: description: Retrieve all available LLM capabilities. operationId: getLLMCapabilities responses: '200': content: application/json: schema: type: array items: type: string enum: - INCIDENT_INVESTIGATION - INCIDENT_SUMMARIZATION - AI_ASSISTANT - MANUAL_ACTION_GENERATION - SCRIPT_GENERATION description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: [] summary: Get all LLM capabilities tags: - AI Management x-ibm-ahub-byok: true /api/llm/egress/handler: get: description: Retrieve all LLM gateways. Optionally filter by enabled status or capability. operationId: getLLMEgressGateways parameters: - description: Filter by enabled status (true/false) in: query name: enabled schema: type: boolean - description: Filter by capability name in: query name: capability schema: type: string responses: '200': content: application/json: example: - id: a14700b0-401b-47eb-a751-deda0035fde3 name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 createdAt: 2024-05-01T10:00:00.000Z modifiedAt: 2024-05-02T15:30:00.000Z schema: type: array items: $ref: '#/components/schemas/LLMEgressGateway' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: [] summary: Get all LLM gateways tags: - AI Management x-ibm-ahub-byok: true post: description: Create a new LLM gateway operationId: addLLMEgressGateway requestBody: content: application/json: example: name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 schema: $ref: '#/components/schemas/LLMEgressGateway' required: true responses: '200': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 schema: $ref: '#/components/schemas/LLMEgressGateway' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureLLM summary: Create a new LLM gateway tags: - AI Management x-ibm-ahub-byok: true '/api/llm/egress/handler/{id}': delete: description: Delete a LLM egress gateway by ID. operationId: deleteLLMEgressGateway parameters: - description: LLM gateway ID in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureLLM summary: Delete a LLM egress gateway tags: - AI Management x-ibm-ahub-byok: true get: description: Retrieve a LLM gateway by ID. operationId: getLLMEgressGatewayById parameters: - description: LLM gateway ID in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 createdAt: 2024-05-01T10:00:00.000Z modifiedAt: 2024-05-02T15:30:00.000Z schema: $ref: '#/components/schemas/LLMEgressGateway' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get a LLM gateway by ID tags: - AI Management x-ibm-ahub-byok: true put: description: Update an existing LLM gateway by ID. operationId: updateLLMEgressGateway parameters: - description: LLM gateway ID in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 schema: $ref: '#/components/schemas/LLMEgressGateway' required: true responses: '200': content: application/json: example: id: a14700b0-401b-47eb-a751-deda0035fde3 name: Example LLM egress Handler description: This is a sample custom handler used for testing. aiModel: watsonx-gpt-4 supports: capabilities: - anomaly-detection - remediation metadata: source: user version: 1.0.0 endpointUrl: 'https://example.com/handler' endpointApiKey: secret-api-key watsonxKey: watsonx-123 watsonxProject: project-xyz watsonxUrl: 'https://watsonx.example.com' instanaAgents: agents: - agent-1 - agent-2 schema: $ref: '#/components/schemas/LLMEgressGateway' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureLLM summary: Update an existing LLM gateway. tags: - AI Management x-ibm-ahub-byok: true '/api/llm/egress/handler/{id}/enable': put: description: Enable a LLM gateway by ID. Any other enabled gateway for the same capability will be automatically disabled. operationId: enableLLMEgressGateway parameters: - description: LLM gateway ID in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureLLM summary: Set the enabled status of a LLM gateway tags: - AI Management x-ibm-ahub-byok: true /api/logging/logs/getLogVolumeUsage: get: description: | Returns aggregated log volume usage data for a specified time range and optional grouping tag. `fromTs` and `toTs` are required and must define a valid time range (i.e., `fromTs` <= `toTs`). Refer to the query parameter description for valid `groupingTag` values. operationId: getLogVolumeUsage parameters: - description: Start timestamp in seconds. Must be <= `toTs`. example: 1682899200 in: query name: fromTs required: true schema: type: integer format: int64 - description: End timestamp in seconds. Must be >= `fromTs`. example: 1682899201 in: query name: toTs required: true schema: type: integer format: int64 - description: | Optional tag to group volume usage by. Valid groupingTag values are: `kubernetes_cluster_name`, `kubernetes_daemonset_name`, `kubernetes_namespace_name`, `kubernetes_deployment_name`, `host_name`, `zone`. example: zone in: query name: groupingTag schema: type: string responses: '200': content: application/json: examples: Full Data: description: Full Data value: logVolumeUsageItems: - numberOfMonth: 11 logVolume: 278141339215 retentionPeriods: - retentionDays: 7 logVolume: 7253402 logVolumeGroups: - label: '' logVolume: 7253402 - label: demo-us-cluster logVolume: 0 - label: demo-us-eks logVolume: 0 - retentionDays: 90 logVolume: 13319384221 logVolumeGroups: - label: '' logVolume: 13004387032 - label: demo-us-cluster logVolume: 265176702 - label: demo-us-eks logVolume: 22645862 - label: k8s-demo-cluster logVolume: 27142175 - label: rci-robotshop logVolume: 32450 Zero Volume: description: Zero Volume value: logVolumeUsageItems: - numberOfMonth: 1 logVolume: 0 retentionPeriods: [] - numberOfMonth: 2 logVolume: 0 retentionPeriods: [] - numberOfMonth: 3 logVolume: 0 retentionPeriods: [] schema: $ref: '#/components/schemas/LogVolumeUsageResult' description: Successfully retrieved log volume usage data '400': description: 'Invalid request (e.g., missing or incorrect time parameters)' '500': description: Unexpected server error security: - ApiKeyAuth: - Default summary: Get Log Volume Usage tags: - Logging Analyze x-ibm-ahub-byok: true /api/mobile-app-monitoring/analyze/beacon-groups: post: description: API request to get grouped mobile app beacon metrics. operationId: getMobileAppBeaconGroups parameters: - in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: example: metrics: - metric: beaconCount aggregation: SUM granularity: 60 group: groupbyTag: mobileBeacon.view.name tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.name operator: EQUALS entity: NOT_APPLICABLE value: robot-warehouse - type: TAG_FILTER name: mobileBeacon.platform operator: EQUALS entity: NOT_APPLICABLE value: iOS timeFrame: to: null windowSize: 3600000 type: SESSION_START schema: $ref: '#/components/schemas/GetMobileAppBeaconGroups' responses: '200': content: application/json: example: items: - name: Products earliestTimestamp: 1707023340857 cursor: '@class': .IngestionOffsetCursor ingestionTime: 1707026879283 offset: 1 metrics: beaconCount.sum.60: - - 1707023340000 - 47 - - 1707023400000 - 43 canLoadMore: false totalHits: 1 totalRepresentedItemCount: 1 totalRetainedItemCount: 1 adjustedTimeframe: windowSize: 3540000 to: 1707026880000 schema: $ref: '#/components/schemas/MobileAppBeaconGroupsResult' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get grouped beacon metrics tags: - Mobile App Analyze x-ibm-ahub-byok: true /api/mobile-app-monitoring/analyze/beacons: post: description: API request to get all mobile app beacons with matching type. operationId: getMobileAppBeacons requestBody: content: application/json: example: tagFilterExpression: entity: NOT_APPLICABLE name: mobileBeacon.mobileApp.name operator: EQUALS value: robot-warehouse timeFrame: to: null windowSize: 60000 type: SESSION_START schema: $ref: '#/components/schemas/GetMobileAppBeacons' responses: '200': content: application/json: example: items: - beacon: agentVersion: 6.0.22 mobileAppId: K3bP-bmCRkyimNai9vvq8o mobileAppLabel: robot-warehouse timestamp: 1707025556799 clockSkew: 450 ingestionTime: 1707025557248 duration: 0 batchSize: 1 sessionId: B5CB9B35-C822-4101-B192-DC2488924C7F beaconId: c43d78282ee5b5cf parentBeaconId: '' backendTraceId: '' type: sessionStart view: Products customEventName: '' meta: feature.testGroup: beta userIp: 94.134.0.0 userId: Example User Id userSessionId: '' userName: Example User Name userEmail: example@example.com userLanguages: - de-DE useFeatures: [] bundleIdentifier: com.example.shop appBuild: aba9031kl appVersion: 1.41.4 platform: Android osName: Android osVersion: '10' deviceManufacturer: Google deviceModel: Google Pixel 4XL deviceHardware: Google Pixel 4XL viewportWidth: 320 viewportHeight: 680 carrier: Deutsche Telekom connectionType: wifi effectiveConnectionType: 3g latitude: 50.9865 longitude: 6.9304 accuracyRadius: 20 city: Cologne subdivision: North Rhine-Westphalia subdivisionCode: NW country: Germany countryCode: DE continent: Europe continentCode: EU httpCallUrl: '' httpCallOrigin: '' httpCallPath: '' httpCallMethod: '' httpCallHeaders: {} errorCount: 0 errorMessage: '' errorId: '' errorType: '' stackTrace: '' stackTraceLine: [] parsedStackTrace: '' cursor: '@class': .IngestionOffsetCursor ingestionTime: 1707025557248 offset: 1 canLoadMore: false totalHits: 70 totalRepresentedItemCount: 70 totalRetainedItemCount: 70 adjustedTimeframe: windowSize: 60000 to: 1707025560000 schema: $ref: '#/components/schemas/MobileAppBeaconResult' description: OK security: - ApiKeyAuth: - Default summary: Get all beacons tags: - Mobile App Analyze x-ibm-ahub-byok: true /api/mobile-app-monitoring/catalog: get: operationId: getMobileAppTagCatalog parameters: - in: query name: beaconType required: true schema: type: string - in: query name: useCase required: true schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: example: - name: mobileBeacon.carrier type: STRING category: MOBILE canApplyToSource: false canApplyToDestination: false sourceValueAvailableFrom: 0 schema: $ref: '#/components/schemas/TagCatalog' description: OK '400': description: When the combination of beaconType and useCase is unsupported/unknown. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get mobile app tag catalog tags: - Mobile App Catalog x-ibm-ahub-byok: true /api/mobile-app-monitoring/catalog/metrics: get: operationId: getMobileAppMetricCatalog responses: '200': content: application/json: example: - metricId: beaconCount label: Beacon count formatter: NUMBER description: How many beacons matching a filter were recorded. aggregations: - SUM defaultAggregation: null beaconTypes: - sessionStart - viewChange - custom - httpRequest - crash pathToValueInBeacon: null tagName: null secondaryBeaconTypes: - sessionStart - viewChange - custom schema: type: array items: $ref: '#/components/schemas/MobileAppMonitoringMetricDescription' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Metric catalog tags: - Mobile App Catalog x-ibm-ahub-byok: true /api/mobile-app-monitoring/catalog/tags: get: operationId: getAllMobileAppCatalogTags responses: '200': content: application/json: example: - name: mobileBeacon.view.name type: STRING category: MOBILE canApplyToSource: false canApplyToDestination: false sourceValueAvailableFrom: 0 schema: type: array items: $ref: '#/components/schemas/Tag' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get all existing mobile app tags tags: - Mobile App Catalog x-ibm-ahub-byok: true /api/mobile-app-monitoring/config: get: description: API request to get configured mobile apps. operationId: getMobileAppConfig responses: '200': content: application/json: example: - id: K3bP-bmCRkyimNai9vvq8o name: example_mobile_app rbacTags: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/MobileApp' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get configured mobile apps tags: - Mobile App Configuration x-ibm-ahub-byok: true post: description: API request to add new mobile app. operationId: postMobileAppConfig parameters: - description: Name of the mobile app in: query name: name schema: type: string requestBody: content: application/json: example: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/ApiTag' responses: '200': content: application/json: example: - id: K3bP-bmCRkyimNai9vvq8o name: example_mobile_app schema: $ref: '#/components/schemas/MobileApp' description: Mobile App successfully configured '400': description: Missing name query parameter or name already used for a configured mobile app. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Configure new mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}': delete: description: API request to remove mobile app. operationId: deleteMobileAppConfig parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string responses: '204': description: Mobile app successfully removed '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Remove mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true get: description: API request to get a specific mobile app configuration by ID. operationId: getSingleMobileAppConfig parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string responses: '200': content: application/json: example: id: K3bP-bmCRkyimNai9vvq8o name: example_mobile_app rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/MobileApp' description: OK '401': description: Unauthorized access - requires user authentication. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get mobile app configuration by ID tags: - Mobile App Configuration x-ibm-ahub-byok: true put: description: API request to rename mobile app. operationId: renameMobileAppConfig parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: New name of the mobile app in: query name: name schema: type: string responses: '200': content: application/json: example: - id: K3bP-bmCRkyimNai9vvq8o name: example_mobile_app schema: $ref: '#/components/schemas/MobileApp' description: Mobile app successfully renamed '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Rename mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/geo-location': get: description: API request to get geo location configuration for mobile app. operationId: getMobileAppGeoLocationConfiguration parameters: - in: path name: mobileAppId required: true schema: type: string responses: '200': content: application/json: example: geoDetailRemoval: NO_REMOVAL geoMappingRules: [] schema: $ref: '#/components/schemas/GeoLocationConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Get geo location configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true put: description: API request to update geo location configuration for mobile app. operationId: updateMobileAppGeoLocationConfiguration parameters: - description: Mobile App ID example: iiLxP1zaTuCS7fyk9m4W0W in: path name: mobileAppId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/GeoLocationConfiguration' responses: '200': content: application/json: schema: $ref: '#/components/schemas/GeoLocationConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Update geo location configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/geo-mapping-rules': get: description: API request to get custom geo mapping rules for mobile app. operationId: getMobileAppGeoMappingRules parameters: - in: path name: mobileAppId required: true schema: type: string responses: '200': content: text/csv: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Get custom geo mapping rules for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true put: description: API request to set custom geo mapping rules for mobile app. operationId: setMobileAppGeoMappingRules parameters: - in: path name: mobileAppId required: true schema: type: string requestBody: content: text/csv: schema: type: string responses: '200': content: text/csv: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '415': description: Unsupported Media Type. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Set custom geo mapping rules for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/ip-masking': get: description: API request to get IP masking configuration for mobile app. operationId: getMobileAppIpMaskingConfiguration parameters: - in: path name: mobileAppId required: true schema: type: string responses: '200': content: application/json: example: ipMasking: DEFAULT schema: $ref: '#/components/schemas/IpMaskingConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Get IP masking configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true put: description: API request to update IP masking configuration for mobile app. operationId: updateMobileAppIpMaskingConfiguration parameters: - description: Mobile App ID example: iiLxP1zaTuCS7fyk9m4W0W in: path name: mobileAppId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/IpMaskingConfiguration' responses: '200': content: application/json: schema: $ref: '#/components/schemas/IpMaskingConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Update IP masking configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/sourcemap-upload': get: description: API request to get all sourcemap configurations for mobile app. operationId: getMobileAppSourceMapFiles parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string responses: '200': content: application/json: example: configs: - id: 26ae11a865ec8c24 description: InstanaAgentExample_v1 createdAt: 1739864150.9596016 modifiedAt: 1739864314.1402564 metadata: - type: DWARF format: TGZ url: com.instana.ios.InstanaAgentExample/dwarf size: 2332564 sizeOnDisk: 2324096 blobs: - blobIndex: 1 size: 2332564 sizeOnDisk: 2324096 meta: null schema: $ref: '#/components/schemas/SourceMapUploadConfigs' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get all sourcemap configurations for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true post: description: API request to add sourcemap configuration for mobile app. operationId: postMobileAppSourceMapConfig parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string requestBody: content: application/json: example: description: InstanaAgentExample_v2 schema: type: object description: Source map upload configuration properties: description: type: string description: Name of configuration responses: '200': content: application/json: example: id: 1f4acfd2da7c53f1 description: InstanaAgentExample_v2 createdAt: 1747892306.8642304 modifiedAt: 1747892306.8642304 metadata: [] schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: Mobile App sourcemap configuration added successfully '400': description: Missing description or description already used for a configuration. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '422': description: Unprocessable request - missing/invalid data. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Add new sourcemap configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/sourcemap-upload/{sourceMapConfigId}': delete: description: API request to delete sourcemap configuration for mobile app. operationId: deleteMobileAppSourceMapUploadConfiguration parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '204': description: Sourcemap configuration successfully deleted or sourcemap not found '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Delete sourcemap configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true get: description: API request to get sourcemap configuration for mobile app. operationId: getMobileAppSourceMapFile parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '200': content: application/json: example: id: 53467e4fb60c1ba2 description: InstanaAgentExample_v1 createdAt: 1721697722.7669933 modifiedAt: 1721698308.4051073 metadata: - type: DWARF format: TGZ url: com.instana.ios.InstanaAgentExample/dwarf size: 3301023 sizeOnDisk: 3287984 blobs: - blobIndex: 1 size: 3301023 sizeOnDisk: 3287984 meta: null schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get sourcemap configuration for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/sourcemap-upload/{sourceMapConfigId}/clear': put: description: API request to clear sourcemap files of a configuration for mobile app. operationId: clearMobileAppSourceMapUploadConfiguration parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '204': description: Sourcemap files in the sourcemap configuration successfully cleared '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Clear sourcemap files for sourcemap upload configuration tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/sourcemap-upload/{sourceMapConfigId}/commit': put: description: API request to commit sourcemap file upload for mobile app. operationId: commitMobileAppSourceMapFile parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string requestBody: content: multipart/form-data: schema: type: object properties: fileId: type: string fileType: type: string responses: '200': content: application/json: example: id: fb3e868cd69f0647 description: InstanaAgentExample_v2 createdAt: 1747954318.3628924 modifiedAt: 1747955097.0266616 metadata: - type: DWARF format: TGZ url: com.instana.ios.InstanaAgentExample/dwarf size: 3454658 sizeOnDisk: 3442288 blobs: - blobIndex: 1 size: 3454658 sizeOnDisk: 3442288 meta: null schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: Successfully committed sourcemap file upload. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Commit sourcemap file upload for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/sourcemap-upload/{sourceMapConfigId}/form': put: description: API request to upload sourcemap file for mobile app. operationId: uploadMobileAppSourceMapFile parameters: - description: Mobile App ID example: K3bP-bmCRkyimNai9vvq8o in: path name: mobileAppId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string requestBody: content: multipart/form-data: schema: type: object properties: blobIndex: type: integer format: int32 description: Blob index which starts from 1 fileFormat: type: string description: File format. Example tgz fileId: type: string description: 'Identifier of your app. For example, com.instana.ios.InstanaExampleApp' fileType: type: string description: 'dSYM stands for iOS symbol file, R8PG_MAP stands for Android java mapping file' sourceMap: type: string format: binary description: Path to your local symbol file required: - blobIndex - fileFormat - fileId - fileType - sourceMap responses: '200': content: application/json: example: id: 77e4c6c8c9855973 description: InstanaAgentExample_v2 createdAt: 1747947350.8836377 modifiedAt: 1747948462.2585921 metadata: - type: DWARF format: TGZ url: com.instana.ios.InstanaAgentExample/dwarf size: 3455633 sizeOnDisk: 3443584 blobs: - blobIndex: 1 size: 3455633 sizeOnDisk: 3443584 meta: null schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Upload sourcemap file for mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true '/api/mobile-app-monitoring/config/{mobileAppId}/teams': put: description: API request to update teams of a mobile app. operationId: updateMobileAppTeams parameters: - in: path name: mobileAppId required: true schema: type: string requestBody: content: application/json: example: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/ApiTag' responses: '200': content: application/json: example: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/ApiTag' description: Mobile App successfully configured '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - ConfigureMobileAppMonitoring summary: Update teams assigned to the mobile app tags: - Mobile App Configuration x-ibm-ahub-byok: true /api/mobile-app-monitoring/metrics: post: deprecated: true description: API request to get mobile app monitoring beacon metrics. operationId: getMobileAppBeaconMetrics requestBody: content: application/json: schema: $ref: '#/components/schemas/GetMobileAppMetrics' responses: '200': content: application/json: schema: $ref: '#/components/schemas/MobileAppMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get mobile app beacon metrics tags: - Mobile App Metrics x-ibm-ahub-byok: true '/api/mobile-app-monitoring/session{id}{timestamp}': get: description: API request to get a mobile app monitoring session. operationId: getSession parameters: - description: Identifier of the session to be retrieved example: 9CA9E31D-B0F7-40EC-8D32-FE163A6557AE in: path name: id required: true schema: type: string style: matrix - description: Timestamp of the session to be retrieved example: 1730595029980 in: path name: timestamp required: true schema: type: integer format: int64 style: matrix responses: '200': content: application/json: example: - agentVersion: 1.8.5 mobileAppId: K3bP-bmCRkyimNai9vvq8o mobileAppLabel: robot-warehouse timestamp: 1707025019211 clockSkew: 460 ingestionTime: 1707025019670 duration: 0 batchSize: 1 sessionId: 9CA9E31D-B0F7-40EC-8D32-FE163A6557AE beaconId: 659302486df75422 parentBeaconId: '' backendTraceId: '' type: sessionStart view: Products customEventName: '' meta: feature.testGroup: sigma userIp: 149.200.0.0 userId: Example user id userSessionId: '' userName: Example user name userEmail: example@example.com userLanguages: - ar-JO useFeatures: [] bundleIdentifier: com.example.shop appBuild: aba9031kl appVersion: 1.42.3 platform: iOS osName: iOS osVersion: 16.7.1 deviceManufacturer: Apple deviceModel: iPhone 13 deviceHardware: 'iPhone14,5' viewportWidth: 320 viewportHeight: 680 carrier: Orange connectionType: wifi effectiveConnectionType: 3g latitude: 31.9555 longitude: 35.9435 accuracyRadius: 20 city: Amman subdivision: Amman Governorate subdivisionCode: AM country: Jordan countryCode: JO continent: Asia continentCode: AS httpCallUrl: '' httpCallOrigin: '' httpCallPath: '' httpCallMethod: '' httpCallHeaders: {} errorCount: 0 errorMessage: '' errorId: '' errorType: '' stackTrace: '' stackTraceLine: [] parsedStackTrace: '' schema: type: array items: $ref: '#/components/schemas/MobileAppMonitoringBeacon' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get mobile app session tags: - Mobile App Metrics x-ibm-ahub-byok: true /api/mobile-app-monitoring/v2/metrics: post: description: API request to get mobile app monitoring beacon metrics. operationId: getMobileAppBeaconMetricsV2 requestBody: content: application/json: example: metrics: - metric: beaconCount aggregation: SUM granularity: 60 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: mobileBeacon.mobileApp.name operator: EQUALS entity: NOT_APPLICABLE value: robot-warehouse - type: TAG_FILTER name: mobileBeacon.view.name operator: EQUALS entity: NOT_APPLICABLE value: Products timeFrame: to: null windowSize: 3600000 type: SESSION_START schema: $ref: '#/components/schemas/GetMobileAppMetricsV2' responses: '200': content: application/json: example: metrics: beaconCount.sum.60: - - 1707026940000 - 75 - - 1707027000000 - 75 adjustedTimeframe: windowSize: 3540000 to: 1707030480000 schema: $ref: '#/components/schemas/MetricAPIResult' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get beacon metrics tags: - Mobile App Metrics x-ibm-ahub-byok: true /api/releases: get: operationId: getAllReleases parameters: - in: query name: from schema: type: integer format: int64 description: The timestamp from where one wants to fetch the release markers. - in: query name: to schema: type: integer format: int64 description: The timestamp till where one wants to fetch the release markers. - in: query name: maxResults schema: type: integer format: int32 description: The maximum number of release markers to be fetched responses: '200': content: application/json: example: - id: Tiu16hLCTniHDtHb_uDV1w name: demo-app/main-** start: 1709091782000 lastUpdated: 1709091782533 schema: type: array items: $ref: '#/components/schemas/ReleaseWithMetadata' description: OK security: - ApiKeyAuth: - CanConfigureReleases summary: Get all releases tags: - Releases x-ibm-ahub-byok: true description: Use this API endpoint to retrieve a list of all releases. post: operationId: postRelease requestBody: content: application/json: schema: $ref: '#/components/schemas/Release' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReleaseWithMetadata' description: OK security: - ApiKeyAuth: - CanConfigureReleases summary: Create release tags: - Releases x-ibm-ahub-byok: true description: |- Use this API endpoint to create a release. Release can be created with four different scopes: 1. Global - Release marker is shown on all dashboard pages for Application perspectives, Services, and Endpoints. 2. Application Perspective - Release marker is shown on the dashboard for the Application perspective. 3. Service - Release marker is shown on the dashboards for the Service and all Application perspective dashboards that contain the Service. 4. Service within an Application Perspective - Release Marker will be shown only for the Service within the given Application perspective, but not for other services within the Application perspective. '/api/releases/{releaseId}': delete: operationId: deleteRelease parameters: - in: path name: releaseId required: true schema: type: string description: The unique release id which one wants to delete. example: XK1e1TE3T9SHKugndn_soQ responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureReleases summary: Delete release tags: - Releases x-ibm-ahub-byok: true description: Use this API endpoint to delete a release. get: operationId: getRelease parameters: - description: The unique release id which one wants to retrieve. example: XK1e1TF3T9SHKugndn_soQ in: path name: releaseId required: true schema: type: string responses: '200': content: application/json: example: id: XK1e1TF3T9SHKugndn_soQ name: demo-app/main-** start: 1706674621000 lastUpdated: 1706674621604 schema: $ref: '#/components/schemas/ReleaseWithMetadata' description: OK security: - ApiKeyAuth: - CanConfigureReleases summary: Get release tags: - Releases x-ibm-ahub-byok: true description: Use this API endpoint to retrieve a particular release. put: operationId: putRelease parameters: - in: path name: releaseId required: true schema: type: string description: The unique release id which one wants to update. example: XK1e1TQ3T9SHKugndn_soQ requestBody: content: application/json: schema: $ref: '#/components/schemas/Release' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReleaseWithMetadata' description: OK security: - ApiKeyAuth: - CanConfigureReleases summary: Update release tags: - Releases x-ibm-ahub-byok: true description: Use this API endpoint to update a release. /api/settings/accesslog: get: description: Retrieve all access logs using defined query. operationId: getAccessLogs parameters: - description: The offset within the result set example: 0 in: query name: offset schema: type: integer format: int32 - description: The query to filter the results example: username@example in: query name: query schema: type: string - description: The size of returned page example: 10 in: query name: pageSize schema: type: integer format: int32 responses: '200': content: application/json: example: total: 1977 entries: - tenantId: tenantId tenantUnitId: unitId action: LOGIN email: username@example.com fullName: Any User timestamp: 1723035109091 schema: $ref: '#/components/schemas/AccessLogResponse' description: OK security: - ApiKeyAuth: - CanViewAuditLog summary: Access log tags: - Audit Log x-ibm-ahub-byok: true /api/settings/apdex: get: description: API to Get All Apdex Configurations. operationId: getAllApdexConfigurations responses: '200': content: application/json: example: - id: _PvpxqTfSyi27O_LCxMd0A createdAt: 1653917798682 apdexName: '{string}' apdexEntity: apdexType: website entityId: '{object}' threshold: 70 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] beaconType: httpRequest - id: K6thQVyzQqWc38yspc0QWw createdAt: 1693828514423 apdexName: '{string}' apdexEntity: apdexType: application entityId: '{object}' threshold: 12 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] boundaryScope: ALL includeInternal: false includeSynthetic: false schema: type: array items: $ref: '#/components/schemas/ApdexConfiguration' description: OK security: - ApiKeyAuth: - Default summary: Get All Apdex Configurations tags: - Apdex Settings x-ibm-ahub-byok: true post: operationId: createApdexConfiguration requestBody: content: application/json: example: - apdexName: Apdex Configuration One apdexEntity: apdexType: website entityId: XIZGGVT1TX2O-0OFeT2Yig threshold: 400 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] beaconType: httpRequest schema: $ref: '#/components/schemas/ApdexConfigurationInput' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/ApdexConfiguration' description: OK security: - ApiKeyAuth: - canConfigureApdex summary: Create Apdex Configuration tags: - Apdex Settings x-ibm-ahub-byok: true '/api/settings/apdex/{entityType}/{entityId}': get: description: API to Get All Apdex Configurations for specified entity type and entity id. operationId: getApdexConfigurationsForEntityTypeAndId parameters: - description: 'Type of the Apdex Configuration, it could be APPLICATION or WEBSITE' example: APPLICATION in: path name: entityType required: true schema: type: string enum: - APPLICATION - WEBSITE - description: Application or Website ID example: XIZGGVT1TX2O-0OFeT2Yig in: path name: entityId required: true schema: type: string responses: '200': content: application/json: example: - id: u2MBXtasQoy3reni5-QZgg createdAt: 1657743333352 apdexName: Apdex Configuration One apdexEntity: apdexType: website entityId: XIZGGVT1TX2O-0OFeT2Yig threshold: 400 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] beaconType: httpRequest - id: ShIqRJgpTT69HZHbfQKRGg createdAt: 1693482558276 apdexName: Apdex Configuration Two apdexEntity: apdexType: website entityId: XIZGGVT1TX2O-0OFeT2Yig threshold: 90 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] beaconType: httpRequest schema: type: array items: $ref: '#/components/schemas/ApdexConfiguration' description: OK '400': content: application/json: example: '{"code":400,"message":"path param entityType must be one of [APPLICATION, WEBSITE]"}' schema: type: string description: Bad Request security: - ApiKeyAuth: - Default summary: Get all Apdex configurations for entity type and entity id tags: - Apdex Settings x-ibm-ahub-byok: true '/api/settings/apdex/{id}': delete: operationId: deleteApdexConfiguration parameters: - description: Apdex Configuration ID example: NCAoNKqySWSK1U5GkmyZgQ in: path name: id required: true schema: type: string responses: '204': description: Apdex Configuration Deleted Successfully security: - ApiKeyAuth: - canConfigureApdex summary: Delete Apdex Configuration tags: - Apdex Settings x-ibm-ahub-byok: true get: description: API to Get Apdex Configuration for specified ID. operationId: getApdexConfiguration parameters: - description: Apdex Configuration ID example: NCAoNKqySWSK1U5GkmyZgQ in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: NCAoNKqySWSK1U5GkmyZgQ createdAt: 1666112381045 apdexName: '{string}' apdexEntity: apdexType: website entityId: XIZGGVT1TX2O-0OFeT2Yig threshold: 100 tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: [] beaconType: httpRequest schema: $ref: '#/components/schemas/ApdexConfiguration' description: OK '404': content: application/json: example: '{"errors":["Apdex Configuration not found"]}' schema: type: string description: Apdex Configuration not found security: - ApiKeyAuth: - Default summary: Get Apdex Configuration tags: - Apdex Settings x-ibm-ahub-byok: true /api/settings/api-tokens: get: description: |- Get the list of API Tokens for this Tenant-Unit For more information on APIToken please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#apitoken. operationId: getApiTokens responses: '200': content: application/json: example: |- [ { "id": "tokenId-1(masked)", "accessGrantingToken": "accessGrantingToken-1(masked)", "internalId": "internalId-1", "name": "tokenName-1", "createdBy": "user1@example.com", "createdOn": timestamp, "lastUsedOn": timestamp, "expiresOn": null, "limitedApplicationsScope": false, "limitedBizOpsScope": false, "limitedWebsitesScope": false, "limitedKubernetesScope": false, "limitedMobileAppsScope": false, "limitedInfrastructureScope": false, "limitedSyntheticsScope": false, "limitedVsphereScope": false, "limitedPhmcScope": false, "limitedPvcScope": false, "limitedZhmcScope": false, "limitedPcfScope": false, "limitedOpenstackScope": false, "limitedAutomationScope": false, "limitedLogsScope": false, "canConfigureServiceMapping": true, "canConfigureEumApplications": true, "canConfigureMobileAppMonitoring": true, "canConfigureUsers": true, "canInstallNewAgents": true, "canConfigureIntegrations": true, "canConfigureApiTokens": true, "canConfigurePersonalApiTokens": false, "canConfigureAgentRunMode": true, "canViewAuditLog": true, "canConfigureAgents": true, "canConfigureAuthenticationMethods": true, "canConfigureApplications": true, "canConfigureTeams": true, "canConfigureReleases": true, "canConfigureLogManagement": true, "canConfigureDatabaseManagement": false, "canCreatePublicCustomDashboards": true, "canViewLogs": true, "canViewTraceDetails": true, "canConfigureSessionSettings": true, "canConfigureGlobalAlertPayload": true, "canViewAccountAndBillingInformation": true, "canEditAllAccessibleCustomDashboards": true, "canConfigureAutomationActions": true, "canConfigureAutomationPolicies": true, "canRunAutomationActions": true, "canDeleteAutomationActionHistory": true, "canConfigureSyntheticTests": true, "canConfigureSyntheticLocations": true, "canConfigureSyntheticCredentials": true, "canViewSyntheticTests": true, "canViewSyntheticLocations": true, "canViewSyntheticTestResults": true, "canUseSyntheticCredentials": true, "canViewBusinessProcesses": false, "canViewBusinessProcessDetails": false, "canViewBusinessActivities": false, "canViewBizAlerts": false, "canDeleteLogs": true, "canCreateHeapDump": false, "canCreateThreadDump": false, "canConfigureEventsAndAlerts": true, "canConfigureMaintenanceWindows": true, "canConfigureApplicationSmartAlerts": true, "canConfigureWebsiteSmartAlerts": true, "canConfigureMobileAppSmartAlerts": true, "canConfigureGlobalApplicationSmartAlerts": true, "canConfigureGlobalSyntheticSmartAlerts": true, "canConfigureGlobalInfraSmartAlerts": true, "canConfigureGlobalLogSmartAlerts": true, "canManuallyCloseIssue": true, "canViewLogVolume": true, "canConfigureLogRetentionPeriod": true }, { "id": "tokenId-2(masked)", "accessGrantingToken": "accessGrantingToken-2(masked)", "internalId": "internalId-2", "name": "tokenName-2", "createdBy": "user2@example.com", "createdOn": timestamp, "lastUsedOn": timestamp, "limitedApplicationsScope": false, "limitedBizOpsScope": false, "limitedWebsitesScope": false, "limitedKubernetesScope": false, "limitedMobileAppsScope": false, "limitedInfrastructureScope": false, "limitedSyntheticsScope": false, "limitedVsphereScope": false, "limitedPhmcScope": false, "limitedPvcScope": false, "limitedZhmcScope": false, "limitedPcfScope": false, "limitedOpenstackScope": false, "limitedAutomationScope": false, "limitedLogsScope": false, "canConfigureServiceMapping": true, "canConfigureEumApplications": true, "canConfigureMobileAppMonitoring": true, "canConfigureUsers": true, "canInstallNewAgents": true, "canConfigureIntegrations": true, "canConfigureApiTokens": true, "canConfigurePersonalApiTokens": false, "canConfigureAgentRunMode": true, "canViewAuditLog": true, "canConfigureAgents": true, "canConfigureAuthenticationMethods": true, "canConfigureApplications": true, "canConfigureTeams": true, "canConfigureReleases": true, "canConfigureLogManagement": true, "canConfigureDatabaseManagement": false, "canCreatePublicCustomDashboards": true, "canViewLogs": true, "canViewTraceDetails": true, "canConfigureSessionSettings": true, "canConfigureGlobalAlertPayload": true, "canViewAccountAndBillingInformation": true, "canEditAllAccessibleCustomDashboards": true, "canConfigureAutomationActions": false, "canConfigureAutomationPolicies": false, "canRunAutomationActions": false, "canDeleteAutomationActionHistory": false, "canConfigureSyntheticTests": true, "canConfigureSyntheticLocations": true, "canConfigureSyntheticCredentials": true, "canViewSyntheticTests": true, "canViewSyntheticLocations": true, "canViewSyntheticTestResults": true, "canUseSyntheticCredentials": true, "canViewBusinessProcesses": false, "canViewBusinessProcessDetails": false, "canViewBusinessActivities": false, "canViewBizAlerts": false, "canDeleteLogs": false, "canCreateHeapDump": false, "canCreateThreadDump": false, "canConfigureEventsAndAlerts": true, "canConfigureMaintenanceWindows": true, "canConfigureApplicationSmartAlerts": true, "canConfigureWebsiteSmartAlerts": true, "canConfigureMobileAppSmartAlerts": true, "canConfigureGlobalApplicationSmartAlerts": true, "canConfigureGlobalSyntheticSmartAlerts": true, "canConfigureGlobalInfraSmartAlerts": true, "canConfigureGlobalLogSmartAlerts": false, "canManuallyCloseIssue": false, "canViewLogVolume": false, "canConfigureLogRetentionPeriod": false } ] schema: type: array items: $ref: '#/components/schemas/ApiToken' description: OK '404': description: No API Tokens found security: - ApiKeyAuth: - CanConfigureApiTokens summary: Get all API Tokens tags: - API Token x-ibm-ahub-byok: true post: description: |- Create an API Token on the Tenant-Unit. Each API Token entry also contains a set of permissions For more information on APIToken please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#apitoken. operationId: postApiToken requestBody: content: application/json: example: | { "accessGrantingToken": "accessGrantingToken", "name": "tokenName", "internalId": "internalId", "canViewAuditLog": true, "canConfigureSessionSettings": true, "canConfigureApplications": true, "canConfigureAgents": true, "canConfigureUsers": true, "canConfigureEventsAndAlerts": true, } schema: $ref: '#/components/schemas/ApiToken' required: true responses: '200': content: application/json: example: id: tokenId accessGrantingToken: accessGrantingToken internalId: internalId name: tokenName createdBy: createdBy createdOn: createdOn lastUsedOn: lastUsedOn expiresOn: expiresOn limitedApplicationsScope: false limitedBizOpsScope: false limitedWebsitesScope: false limitedKubernetesScope: false limitedMobileAppsScope: false limitedInfrastructureScope: false limitedSyntheticsScope: false limitedVsphereScope: false limitedPhmcScope: false limitedPvcScope: false limitedZhmcScope: false limitedPcfScope: false limitedOpenstackScope: false limitedAutomationScope: false limitedLogsScope: false canConfigureServiceMapping: false canConfigureEumApplications: false canConfigureMobileAppMonitoring: false canConfigureUsers: true canInstallNewAgents: false canConfigureIntegrations: false canConfigureApiTokens: false canConfigurePersonalApiTokens: false canConfigureAgentRunMode: false canViewAuditLog: true canConfigureAgents: true canConfigureAuthenticationMethods: false canConfigureApplications: true canConfigureTeams: false canConfigureReleases: false canConfigureLogManagement: false canConfigureDatabaseManagement: false canCreatePublicCustomDashboards: false canViewLogs: false canViewTraceDetails: false canConfigureSessionSettings: true canConfigureGlobalAlertPayload: false canViewAccountAndBillingInformation: false canEditAllAccessibleCustomDashboards: false canConfigureAutomationActions: false canConfigureAutomationPolicies: false canRunAutomationActions: false canDeleteAutomationActionHistory: false canConfigureSyntheticTests: false canConfigureSyntheticLocations: false canConfigureSyntheticCredentials: false canViewSyntheticTests: false canViewSyntheticLocations: false canViewSyntheticTestResults: false canUseSyntheticCredentials: false canViewBusinessProcesses: false canViewBusinessProcessDetails: false canViewBusinessActivities: false canViewBizAlerts: false canDeleteLogs: false canCreateHeapDump: false canCreateThreadDump: false canConfigureEventsAndAlerts: true canConfigureMaintenanceWindows: false canConfigureApplicationSmartAlerts: false canConfigureWebsiteSmartAlerts: false canConfigureMobileAppSmartAlerts: false canConfigureGlobalApplicationSmartAlerts: false canConfigureGlobalSyntheticSmartAlerts: false canConfigureGlobalInfraSmartAlerts: false canConfigureGlobalLogSmartAlerts: false canManuallyCloseIssue: false canViewLogVolume: false canConfigureLogRetentionPeriod: false schema: $ref: '#/components/schemas/ApiToken' description: OK security: - ApiKeyAuth: - CanConfigureApiTokens summary: Create an API token tags: - API Token x-ibm-ahub-byok: true '/api/settings/api-tokens/{internalId}': delete: description: |- Delete the Api Token For more information on APIToken please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#apitoken. operationId: deleteApiToken parameters: - in: path name: internalId required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureApiTokens summary: Delete API token tags: - API Token x-ibm-ahub-byok: true get: description: |- Returns API Token details, including the set of permissions For more information on APIToken please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#apitoken. operationId: getApiToken parameters: - in: path name: internalId required: true schema: type: string responses: '200': content: application/json: example: | { "id": "tokenId(masked)", "accessGrantingToken": "accessGrantingToken(masked)", "internalId": "internalId", "name": "tokenName", "createdBy": "user@example.com", "createdOn": timestamp, "lastUsedOn": timestamp, "expiresOn": null, "limitedApplicationsScope": false, "limitedBizOpsScope": false, "limitedWebsitesScope": false, "limitedKubernetesScope": false, "limitedMobileAppsScope": false, "limitedInfrastructureScope": false, "limitedSyntheticsScope": false, "limitedVsphereScope": false, "limitedPhmcScope": false, "limitedPvcScope": false, "limitedZhmcScope": false, "limitedPcfScope": false, "limitedOpenstackScope": false, "limitedAutomationScope": false, "limitedLogsScope": false, "canConfigureServiceMapping": true, "canConfigureEumApplications": true, "canConfigureMobileAppMonitoring": true, "canConfigureUsers": true, "canInstallNewAgents": true, "canConfigureIntegrations": true, "canConfigureApiTokens": true, "canConfigurePersonalApiTokens": false, "canConfigureAgentRunMode": true, "canViewAuditLog": true, "canConfigureAgents": true, "canConfigureAuthenticationMethods": true, "canConfigureApplications": true, "canConfigureTeams": true, "canConfigureReleases": true, "canConfigureLogManagement": true, "canConfigureDatabaseManagement": false, "canCreatePublicCustomDashboards": true, "canViewLogs": true, "canViewTraceDetails": true, "canConfigureSessionSettings": true, "canConfigureGlobalAlertPayload": true, "canViewAccountAndBillingInformation": true, "canEditAllAccessibleCustomDashboards": true, "canConfigureAutomationActions": true, "canConfigureAutomationPolicies": true, "canRunAutomationActions": true, "canDeleteAutomationActionHistory": true, "canConfigureSyntheticTests": true, "canConfigureSyntheticLocations": true, "canConfigureSyntheticCredentials": true, "canViewSyntheticTests": true, "canViewSyntheticLocations": true, "canViewSyntheticTestResults": true, "canUseSyntheticCredentials": true, "canViewBusinessProcesses": false, "canViewBusinessProcessDetails": false, "canViewBusinessActivities": false, "canViewBizAlerts": false, "canDeleteLogs": true, "canCreateHeapDump": false, "canCreateThreadDump": false, "canConfigureEventsAndAlerts": true, "canConfigureMaintenanceWindows": true, "canConfigureApplicationSmartAlerts": true, "canConfigureWebsiteSmartAlerts": true, "canConfigureMobileAppSmartAlerts": true, "canConfigureGlobalApplicationSmartAlerts": true, "canConfigureGlobalSyntheticSmartAlerts": true, "canConfigureGlobalInfraSmartAlerts": true, "canConfigureGlobalLogSmartAlerts": true, "canManuallyCloseIssue": true, "canViewLogVolume": true, "canConfigureLogRetentionPeriod": true } schema: $ref: '#/components/schemas/ApiToken' description: OK security: - ApiKeyAuth: - CanConfigureApiTokens summary: Get API token tags: - API Token x-ibm-ahub-byok: true put: description: |- Update API Token- Change Token name and associated permissions For more information on APIToken please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#apitoken. operationId: putApiToken parameters: - in: path name: internalId required: true schema: type: string requestBody: content: application/json: example: | { "accessGrantingToken": "accessGrantingToken", "name": "tokenName", "internalId": "internalId", "canViewAuditLog": true, "canConfigureSessionSettings": true, "canConfigureApplications": true, "canConfigureAgents": true, "canConfigureUsers": true, "canConfigureEventsAndAlerts": true, } schema: $ref: '#/components/schemas/ApiToken' required: true responses: '200': content: application/json: example: id: tokenId accessGrantingToken: accessGrantingToken internalId: internalId name: tokenName createdBy: createdBy createdOn: createdOn lastUsedOn: lastUsedOn expiresOn: expiresOn limitedApplicationsScope: false limitedBizOpsScope: false limitedWebsitesScope: false limitedKubernetesScope: false limitedMobileAppsScope: false limitedInfrastructureScope: false limitedSyntheticsScope: false limitedVsphereScope: false limitedPhmcScope: false limitedPvcScope: false limitedZhmcScope: false limitedPcfScope: false limitedOpenstackScope: false limitedAutomationScope: false limitedLogsScope: false canConfigureServiceMapping: false canConfigureEumApplications: false canConfigureMobileAppMonitoring: false canConfigureUsers: true canInstallNewAgents: false canConfigureIntegrations: false canConfigureApiTokens: false canConfigurePersonalApiTokens: false canConfigureAgentRunMode: false canViewAuditLog: true canConfigureAgents: true canConfigureAuthenticationMethods: false canConfigureApplications: true canConfigureTeams: false canConfigureReleases: false canConfigureLogManagement: false canConfigureDatabaseManagement: false canCreatePublicCustomDashboards: false canViewLogs: false canViewTraceDetails: false canConfigureSessionSettings: true canConfigureGlobalAlertPayload: false canViewAccountAndBillingInformation: false canEditAllAccessibleCustomDashboards: false canConfigureAutomationActions: false canConfigureAutomationPolicies: false canRunAutomationActions: false canDeleteAutomationActionHistory: false canConfigureSyntheticTests: false canConfigureSyntheticLocations: false canConfigureSyntheticCredentials: false canViewSyntheticTests: false canViewSyntheticLocations: false canViewSyntheticTestResults: false canUseSyntheticCredentials: false canViewBusinessProcesses: false canViewBusinessProcessDetails: false canViewBusinessActivities: false canViewBizAlerts: false canDeleteLogs: false canCreateHeapDump: false canCreateThreadDump: false canConfigureEventsAndAlerts: true canConfigureMaintenanceWindows: false canConfigureApplicationSmartAlerts: false canConfigureWebsiteSmartAlerts: false canConfigureMobileAppSmartAlerts: false canConfigureGlobalApplicationSmartAlerts: false canConfigureGlobalSyntheticSmartAlerts: false canConfigureGlobalInfraSmartAlerts: false canConfigureGlobalLogSmartAlerts: false canManuallyCloseIssue: false canViewLogVolume: false canConfigureLogRetentionPeriod: false schema: $ref: '#/components/schemas/ApiToken' description: OK security: - ApiKeyAuth: - CanConfigureApiTokens summary: Create or update an API token tags: - API Token x-ibm-ahub-byok: true /api/settings/auditlog: get: description: Retrieve all audit logs using defined query. operationId: getAuditLogs parameters: - description: The offset within the result set example: 0 in: query name: offset schema: type: integer format: int32 - description: The query to filter the results example: username@example.com in: query name: query schema: type: string - description: The size of returned page example: 10 in: query name: pageSize schema: type: integer format: int32 responses: '200': content: application/json: example: total: 1977 entries: - id: WawO9-p0SJ2ifST460tXYZ action: GET /api/settings message: Aborting request due to Insufficient permissions/access rights for resource method actor: type: USER id: userId name: Any User email: username@example.com timestamp: 1723035109091 meta: origin_ip: 10.69.123.42 schema: $ref: '#/components/schemas/AuditLogUiResponse' description: OK security: - ApiKeyAuth: - CanViewAuditLog summary: Audit log tags: - Audit Log x-ibm-ahub-byok: true /api/settings/authentication/googleSSO: delete: description: Delete the corresponding tenants Google SSO configuration. operationId: deleteGoogleSSOConfig responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete Google SSO configuration tags: - Authentication x-ibm-ahub-byok: true /api/settings/authentication/ldap: delete: description: Delete the corresponding tenants LDAP configuration. operationId: deleteLdapConfig responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete LDAP configuration tags: - Authentication x-ibm-ahub-byok: true /api/settings/authentication/oidc: delete: description: Delete the corresponding tenants OIDC configuration. operationId: deleteOidcConfig responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete OIDC configuration tags: - Authentication x-ibm-ahub-byok: true /api/settings/authentication/saml: delete: description: Delete the corresponding tenants SAML configuration. operationId: deleteSamlConfig responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete SAML configuration tags: - Authentication x-ibm-ahub-byok: true /api/settings/correction: get: operationId: getAllSloCorrectionWindowConfigs parameters: - in: query name: pageSize schema: type: integer format: int32 description: Size of the Page example: 1 - in: query name: page schema: type: integer format: int32 description: Page Number example: 1 - in: query name: orderBy schema: type: string description: Order By Value enum: - name - start - nextStart - duration - 'null' example: name - in: query name: orderDirection schema: type: string description: 'Order Direction of the Result, it could be ascending or descending' enum: - ASC - DESC example: ASC - in: query name: query schema: type: string description: Keyword or Query which needs to be searched example: test Correction - in: query name: tag schema: type: array description: List of tags which needs to be searched example: Testing items: type: string description: List of tags which needs to be searched example: Testing uniqueItems: true - in: query name: id schema: type: array description: List of Correction Configuration IDs for which details need to be fetched example: SSPTkTWoT1W0OpE_iQbfaA items: type: string description: List of Correction Configuration IDs for which details need to be fetched example: SSPTkTWoT1W0OpE_iQbfaA - in: query name: sloId schema: type: array description: List of SLO IDs for which details need to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw items: type: string description: List of SLO IDs for which details need to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw - in: query name: refresh schema: type: boolean description: Boolean operator which specifies if the cache needs to be refreshed example: false responses: '200': content: application/json: example: items: - id: N9RdTL-WQkSTa3DYZidxzw name: Correction test 2 description: Correction test 2 active: false createdDate: 1749638253403 lastUpdated: 1749595053386 scheduling: startTime: 1749664800000 duration: 2 durationUnit: hour recurrentRule: FREQ=DAILY;INTERVAL=1 recurrent: true sloIds: - SLOBL-EmhZZQRy-19JVEivEdg tags: [] - id: p9kWax0uS7K2Who1WegsSg name: New test for DST corrections - Test-1 description: This is to minimize impacts from DST active: true createdDate: 1749514781416 lastUpdated: 1749514780649 scheduling: startTime: 1748775600000 duration: 10 durationUnit: hour recurrentRule: FREQ=DAILY;INTERVAL=1 recurrent: true sloIds: - SLOffwtrVkfRmCjOZbdv3Ls9g tags: - seasonal - once - id: b1T4ShnZS-qaORzBTAFRTA name: test rrule - one time description: test active: true createdDate: 1750161592895 lastUpdated: 1750161592139 scheduling: startTime: 1750287600000 duration: 24 durationUnit: hour recurrentRule: '' recurrent: false sloIds: - SLOffwtrVkfRmCjOZbdv3Ls9g tags: [] page: 1 pageSize: 10000 totalHits: 3 schema: $ref: '#/components/schemas/PaginatedResult' description: Fetched list of the SLO Correction Window Configurations Successfully security: - ApiKeyAuth: - Default summary: Get All SLO Correction Window Configs tags: - SLO Correction Configurations x-ibm-ahub-byok: true post: operationId: createSloCorrectionWindowConfig requestBody: content: application/json: example: name: New test for DST corrections Test-9 description: This is to check report API active: true scheduling: startTime: 1749607200000 duration: 3 durationUnit: HOUR recurrentRule: FREQ=DAILY;INTERVAL=1 sloIds: - SLO4s-fs-GuT56c3v4KzQKBuQ tags: - test - rrule schema: $ref: '#/components/schemas/CorrectionConfiguration' required: true responses: '200': content: application/json: example: id: S8rHrE93Rz2TXScTjBw1eg name: New test for DST corrections Test-9 description: This is to check report API active: true createdDate: 1750179360429 lastUpdated: 1750179359948 scheduling: startTime: 1749607200000 duration: 3 durationUnit: hour recurrentRule: FREQ=DAILY;INTERVAL=1 recurrent: true sloIds: - SLO4s-fs-GuT56c3v4KzQKBuQ tags: - rrule - test schema: $ref: '#/components/schemas/CorrectionConfiguration' description: New SLO Correction Window Configuration Created Successfully security: - ApiKeyAuth: - canConfigureServiceLevelCorrectionWindows summary: Create a new SLO Correction Window Config tags: - SLO Correction Configurations x-ibm-ahub-byok: true '/api/settings/correction/{id}': delete: operationId: deleteSloCorrectionWindowConfig parameters: - in: path name: id required: true schema: type: string description: SLO Correction Window Configuration ID example: cvLxfzNJQriV86MQTqOu1g responses: '204': description: SLO Correction Window Configuration Deleted Successfully security: - ApiKeyAuth: - canConfigureServiceLevelCorrectionWindows summary: Delete an existing SLO Correction Window Configuration tags: - SLO Correction Configurations x-ibm-ahub-byok: true get: operationId: getSloCorrectionWindowConfigById parameters: - in: path name: id required: true schema: type: string description: SLO Correction Window Configuration ID example: dCTspkffgHlS_OzNOATQWgsuw - in: query name: refresh schema: type: boolean description: Boolean operator which specifies if the cache needs to be refreshed example: false responses: '200': content: application/json: example: id: S8rHrE93Rz2TXScTjBw1eg name: New test for DST corrections Test-9 description: This is to check report API active: true createdDate: 1750179360429 lastUpdated: 1750179359948 scheduling: startTime: 1749607200000 duration: 3 durationUnit: hour recurrentRule: FREQ=DAILY;INTERVAL=1 recurrent: true sloIds: - SLO4s-fs-GuT56c3v4KzQKBuQ tags: - rrule - test schema: $ref: '#/components/schemas/CorrectionConfiguration' description: Fetched SLO Correction Window Configuration Successfully '404': content: application/json: example: errors: - The SLO Correction Window Configuration you are looking for does not exist. schema: type: string description: SLO Correction Window Configuration Not Found security: - ApiKeyAuth: - Default summary: Get an existing SLO Correction Window Config tags: - SLO Correction Configurations x-ibm-ahub-byok: true put: operationId: updateSloCorrectionWindowConfig parameters: - in: path name: id required: true schema: type: string description: SLO Correction Window Configuration ID example: cvLxfzNJQriV86MQTqOu1g requestBody: content: application/json: example: name: New test for DST corrections Test-9 description: This is to check report API active: true scheduling: startTime: 1749607200000 duration: 3 durationUnit: HOUR recurrentRule: FREQ=DAILY;INTERVAL=1 sloIds: - SLO4s-fs-GuT56c3v4KzQKBuQ tags: - test - rrule schema: $ref: '#/components/schemas/CorrectionConfiguration' required: true responses: '200': content: application/json: example: id: S8rHrE93Rz2TXScTjBw1eg name: New test for DST corrections Test-9 description: This is to check report API active: true createdDate: 1750179360429 lastUpdated: 1750179359948 scheduling: startTime: 1749607200000 duration: 3 durationUnit: hour recurrentRule: FREQ=DAILY;INTERVAL=1 recurrent: true sloIds: - SLO4s-fs-GuT56c3v4KzQKBuQ tags: - rrule - test schema: $ref: '#/components/schemas/CorrectionConfiguration' description: Updated SLO Correction Window Configuration Successfully '404': content: application/json: example: errors: - The SLO Correction Window Configuration you are looking for does not exist. schema: type: string description: SLO Correction Window Configuration Not Found security: - ApiKeyAuth: - canConfigureServiceLevelCorrectionWindows summary: Update an existing SLO Correction Window Config tags: - SLO Correction Configurations x-ibm-ahub-byok: true /api/settings/invitation/share: post: operationId: shareAndInviteUsers requestBody: content: application/json: example: - email: username@example.com groupId: '-1' message: hello message path: /testpath schema: type: array items: $ref: '#/components/schemas/Invitation' required: true responses: '200': content: application/json: example: invitationResults: - userEmail: username@example.com invitationStatus: SUCCESS schema: type: array items: $ref: '#/components/schemas/InvitationResponse' description: OK '400': content: application/json: example: errors: - Please set at least one email schema: type: string description: Bad Request Error security: - ApiKeyAuth: - CanConfigureUsers summary: Send user invitations tags: - User x-ibm-ahub-byok: true description: |- This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result. /api/settings/invitations: delete: operationId: revokePendingInvitation parameters: - description: Email of the invite for removal example: username@example.com in: query name: email required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureUsers summary: Revoke pending invitation tags: - User x-ibm-ahub-byok: true description: | This API endpoint allows to delete an invitation, requires the users’ email as a Query parameter. get: operationId: getInvitations responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/InvitationResult' description: OK security: - ApiKeyAuth: - CanConfigureUsers summary: All pending invitations tags: - User x-ibm-ahub-byok: true description: |- This API endpoint retrieves the list of all pending invitations. During the IdP configuration all pending invitations will be dismissed and whilst an IdP is configured invitations are prevented. post: operationId: inviteUsers requestBody: content: application/json: example: - email: username@example.com groupId: '-1' schema: type: array items: $ref: '#/components/schemas/Invitation' required: true responses: '200': content: application/json: example: invitationResults: - userEmail: username@example.com invitationStatus: SUCCESS schema: type: array items: $ref: '#/components/schemas/InvitationResponse' description: OK '400': content: application/json: example: errors: - Please set at least one email schema: type: string description: Bad Request Error security: - ApiKeyAuth: - CanConfigureUsers summary: Send user invitations tags: - User x-ibm-ahub-byok: true description: |- This API endpoint allows to invite users to this tenant. Each user requires the email address and the group to which the user will be added initially. Inviting users whilst an IdP is configured will always result in failures, as in this case users will be provisioned during the login based on the IdP configuration. During the IdP configurations all pending invitations are automatically revoked. Inviting users who are already members of the tenant will also provide an error result. /api/settings/maintenance: get: deprecated: true description: |- For more information on Maintenance Configurations please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#maintenance-configurations. operationId: getMaintenanceConfigs responses: '200': content: application/json: schema: type: array items: $ref: '#/components/schemas/ValidatedMaintenanceConfigWithStatus' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: All maintenance configurations tags: - Maintenance Configuration x-ibm-ahub-byok: true '/api/settings/maintenance/{id}': delete: deprecated: true description: |- For more information on Maintenance Configurations please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#maintenance-configurations. operationId: deleteMaintenanceConfig parameters: - description: ID of the Maintenance Window Configuration to delete. example: MPhKWoXRp0PBelqk in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Delete maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true get: deprecated: true description: |- For more information on Maintenance Configurations please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#maintenance-configurations. operationId: getMaintenanceConfig parameters: - description: ID of the Maintenance Window Configuration to get. example: MPhKWoXRp0PBelqk in: path name: id required: true schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/MaintenanceConfigWithLastUpdated' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true put: deprecated: true description: |- For more information on Maintenance Configurations please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#maintenance-configurations. operationId: putMaintenanceConfig parameters: - description: ID of the Maintenance Window Configuration to update. example: MPhKWoXRp0PBelqk in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceConfig' required: true responses: '200': description: 'Maintenance config has been created or updated, and successfully scheduled immediately if needed' '202': description: 'Maintenance config has been created or updated, but could not to be scheduled immediately. It will therefore be scheduled during the next auto-refresh with a delay of up to 4 minutes.' '400': description: Invalid JSON or mismatching IDs have been provided security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Create or update maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true /api/settings/rbac/groups: get: operationId: getGroups responses: '200': content: application/json: example: - id: groupId1 name: group1 members: - userId: userId1 email: username1@example.com - userId: userId2 email: username2@example.com - id: groupId2 name: group2 members: - userId: userId1 email: username1@example.com - userId: userId3 email: username3@example.com schema: type: array items: $ref: '#/components/schemas/ApiGroup' description: OK '404': description: No groups found security: - ApiKeyAuth: - CanConfigureTeams summary: Get groups tags: - Groups x-ibm-ahub-byok: true description: |- Retrieve the list of all groups on the tenant together with the `Permission Set` for the tenant unit. The `Permission Set` object contains a set of permissions applied to the group. In case `permissions` include the entry e.g. `LIMITED_APPLICATIONS_SCOPE`, this group will have limited access to application area. The areas are included inside the `permissionSet`. The scopeRoleId is a fixed value for each area type: | Area | value | | ----------------------- | ------------- | | applicationIds | -100 | | kubernetesClusterUUIDs | -200 | | kubernetesNamespaceUIDs | -300 | | websiteIds | -400 | | mobileAppIds | -500 | | infraDfqFilter | -600 | For example: ``` [ { "id": "7hwdhtt7TU2CJDgYXgwwww", "name": "Scoped Group", "members": [ { "userId": "61892cfdfcffab03016b2950", "email": "jhon@example.com" } ], "permissionSet": { "permissions": [ "CAN_VIEW_LOGS", "CAN_VIEW_TRACE_DETAILS", "CAN_EDIT_ALL_ACCESSIBLE_CUSTOM_DASHBOARDS", "ACCESS_APPLICATIONS", "LIMITED_APPLICATIONS_SCOPE", "ACCESS_KUBERNETES", "LIMITED_KUBERNETES_SCOPE", "ACCESS_INFRASTRUCTURE_APPS", "LIMITED_INFRASTRUCTURE_SCOPE", "LIMITED_WEBSITES_SCOPE", ], "applicationIds": [ { "scopeId": "1qvWgVfLTNqi9gGTcCaNUw", "scopeRoleId": "-100" } ], "kubernetesClusterUUIDs": [ { "scopeId": "induced", "scopeRoleId": "-200" } ], "kubernetesNamespaceUIDs": [], "websiteIds": [], "mobileAppIds": [], "infraDfqFilter": { "scopeId": "production", "scopeRoleId": "-600" } } ] ``` In this case `Scoped Group` has no access to websites due to having `LIMITED_WEBSITES_SCOPE` but not `ACCESS_WEBSITES`. Also due to having `LIMITED_APPLICATIONS_SCOPE`, the only visible application is the one with this id: `1qvWgVfLTNqi9gGTcCaNUw`. Same applies to `kubernetesClusterUUIDs`, `kubernetesNamespaceUIDs` and `infraDfqFilter`, with the only difference is that `infraDfqFilter` uses a filter "production" instead of an id. post: operationId: createGroup requestBody: content: application/json: example: name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - CAN_VIEW_LOGS applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: - scopeId: scopeId10 scopeRoleId: '-1' restrictedApplicationFilter: label: group name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiCreateGroup' required: true responses: '200': content: application/json: example: name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - CAN_VIEW_LOGS applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: - scopeId: scopeId10 scopeRoleId: '-1' restrictedApplicationFilter: label: group name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Create group tags: - Groups x-ibm-ahub-byok: true description: |- Creates a group on the tenant. Each group entry also needs a `Permission Set` per unit. The `Permission Set` object contains a set of permissions applied to the group. In case `permissions` include the entry e.g. `LIMITED_APPLICATIONS_SCOPE`, this group will have limited access to application area. Possible access permissions values are: - `ACCESS_APPLICATIONS` - `ACCESS_INFRASTRUCTURE` - `ACCESS_KUBERNETES` - `ACCESS_MOBILE_APPS` - `ACCESS_WEBSITES` - `LIMITED_APPLICATIONS_SCOPE` - `LIMITED_INFRASTRUCTURE_SCOPE` - `LIMITED_KUBERNETES_SCOPE` - `LIMITED_MOBILE_APPS_SCOPE` - `LIMITED_WEBSITES_SCOPE` The `id` value for the group is ignored, a new id is generated. The `scopeRoleId` is ignored, the id corresponding to the area is used. The `scopeId` is the id for the corresponding resource. /api/settings/rbac/groups/delete: put: description: |- Delete multiple groups For more information on groups please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#groups. operationId: deleteGroups requestBody: content: application/json: schema: type: array items: type: string uniqueItems: true required: true responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureTeams summary: Delete groups tags: - Groups x-ibm-ahub-byok: true '/api/settings/rbac/groups/user/{email}': get: operationId: getGroupsByUser parameters: - description: Email of the user for retrieval example: username@example.com in: path name: email required: true schema: type: string style: simple responses: '200': content: application/json: example: - id: groupId name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - CAN_VIEW_LOGS - LIMITED_APPLICATIONS_SCOPE - ACCESS_APPLICATIONS - CAN_VIEW_TRACE_DETAILS applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: [] restrictedApplicationFilter: label: filter name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: type: array items: $ref: '#/components/schemas/ApiGroup' description: OK '404': description: No groups found security: - ApiKeyAuth: - CanConfigureTeams summary: Get groups of a single user tags: - Groups x-ibm-ahub-byok: true description: 'Returns a list of all groups a user belongs to. This includes data from these groups, the `members`, the `name` and the `Permission set`.' '/api/settings/rbac/groups/{groupId}/permissions': put: operationId: addPermissionsOnGroup parameters: - description: Id of the group to add permissions example: groupId in: path name: groupId required: true schema: type: string style: simple requestBody: content: application/json: example: - CAN_VIEW_SYNTHETIC_TESTS - CAN_VIEW_SYNTHETIC_LOCATIONS - CAN_CONFIGURE_AUTOMATION_ACTIONS schema: type: array items: type: string required: true responses: '200': content: application/json: example: id: groupId name: group name members: - userId: userId1 email: username1@example.com permissionSet: permissions: - CAN_VIEW_LOGS - CAN_VIEW_SYNTHETIC_TESTS - CAN_VIEW_SYNTHETIC_LOCATIONS - CAN_CONFIGURE_AUTOMATION_ACTIONS applicationIds: [] kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: [] infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Add permissions to group tags: - Groups x-ibm-ahub-byok: true description: | Add a permission to a group. Permissions are strings associated with the group that some resources requires to fulfill requests. Examples of `Permissions`: - `ACCESS_APPLICATIONS` - `ACCESS_INFRASTRUCTURE` - `ACCESS_KUBERNETES` - `ACCESS_MOBILE_APPS` - `ACCESS_WEBSITES` - `CAN_CONFIGURE_AGENT_RUN_MODE` - `CAN_CONFIGURE_AGENTS` - `CAN_CONFIGURE_API_TOKENS` - `CAN_CONFIGURE_APPLICATIONS` - `CAN_CONFIGURE_AUTHENTICATION_METHODS` - `CAN_CONFIGURE_CUSTOM_ALERTS` - `CAN_CONFIGURE_EUM_APPLICATIONS` - `CAN_CONFIGURE_GLOBAL_ALERT_CONFIGS` - `CAN_CONFIGURE_GLOBAL_ALERT_PAYLOAD` - `CAN_CONFIGURE_INTEGRATIONS` - `CAN_CONFIGURE_LOG_MANAGEMENT` - `CAN_CONFIGURE_MOBILE_APP_MONITORING` - `CAN_CONFIGURE_PERSONAL_API_TOKENS` - `CAN_CONFIGURE_RELEASES` - `CAN_CONFIGURE_SERVICE_LEVEL_INDICATORS` - `CAN_CONFIGURE_SERVICE_MAPPING` - `CAN_CONFIGURE_SESSION_SETTINGS` - `CAN_CONFIGURE_TEAMS` - `CAN_CONFIGURE_USERS` - `CAN_CREATE_PUBLIC_CUSTOM_DASHBOARDS` - `CAN_EDIT_ALL_ACCESSIBLE_CUSTOM_DASHBOARDS` - `CAN_INSTALL_NEW_AGENTS` - `CAN_VIEW_ACCOUNT_AND_BILLING_INFORMATION` - `CAN_VIEW_AUDIT_LOG` - `CAN_VIEW_LOGS` - `CAN_VIEW_TRACE_DETAILS` - `LIMITED_APPLICATIONS_SCOPE` - `LIMITED_INFRASTRUCTURE_SCOPE` - `LIMITED_KUBERNETES_SCOPE` - `LIMITED_MOBILE_APPS_SCOPE` - `LIMITED_WEBSITES_SCOPE` '/api/settings/rbac/groups/{groupId}/users': put: operationId: addUsersToGroup parameters: - description: Id of the group to add users example: groupId in: path name: groupId required: true schema: type: string style: simple requestBody: content: application/json: example: - userId1 - userId3 schema: type: array items: type: string required: true responses: '200': content: application/json: example: id: groupId name: group name members: - userId: userId1 email: username1@example.com - userId: userId2 email: username2@example.com - userId: userId3 email: username3@example.com permissionSet: permissions: - CAN_VIEW_LOGS applicationIds: [] kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: [] infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Add users to group tags: - Groups x-ibm-ahub-byok: true description: Add one or more users to a group. The array contains the ids of the users to be added. '/api/settings/rbac/groups/{id}': delete: description: |- Delete the group data. For more information on groups please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#groups. operationId: deleteGroup parameters: - description: Id of the group to delete example: groupId in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureTeams summary: Delete group tags: - Groups x-ibm-ahub-byok: true get: operationId: getGroup parameters: - description: Id of the group for retrieval example: groupId in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: groupId name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - ACCESS_INFRASTRUCTURE - LIMITED_WEBSITES_SCOPE - CAN_VIEW_SYNTHETIC_TESTS - CAN_VIEW_SYNTHETIC_LOCATIONS - CAN_VIEW_TRACE_DETAILS - CAN_CONFIGURE_AGENT_RUN_MODE - CAN_CONFIGURE_AUTOMATION_ACTIONS - CAN_CONFIGURE_USERS - ACCESS_SYNTHETICS - CAN_VIEW_LOGS - LIMITED_KUBERNETES_SCOPE - CAN_CONFIGURE_TEAMS - CAN_VIEW_SYNTHETIC_TEST_RESULTS - LIMITED_SYNTHETICS_SCOPE - LIMITED_INFRASTRUCTURE_SCOPE applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' - scopeId: scopeId2 scopeRoleId: '-102' - scopeId: scopeId3 scopeRoleId: '-102' - scopeId: scopeId4 scopeRoleId: '-102' - scopeId: scopeId5 scopeRoleId: '-102' - scopeId: scopeId6 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: - scopeId: scopeId10 scopeRoleId: '-1' restrictedApplicationFilter: label: filter name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Get group tags: - Groups x-ibm-ahub-byok: true description: 'Returns group data, including the `Permission set`. See [get groups](#operation/getGroups) for more details.' put: operationId: updateGroup parameters: - description: Id of the group to update example: groupId in: path name: id required: true schema: type: string requestBody: content: application/json: example: name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - CAN_VIEW_LOGS applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: - scopeId: scopeId10 scopeRoleId: '-1' restrictedApplicationFilter: label: group name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' required: true responses: '200': content: application/json: example: name: group name members: - userId: userId email: username@example.com permissionSet: permissions: - CAN_VIEW_LOGS applicationIds: - scopeId: scopeId1 scopeRoleId: '-102' kubernetesClusterUUIDs: [] kubernetesNamespaceUIDs: [] websiteIds: [] mobileAppIds: [] syntheticTestIds: - scopeId: scopeId10 scopeRoleId: '-1' restrictedApplicationFilter: label: group name tagFilterExpression: type: TAG_FILTER name: service.name stringValue: acceptor numberValue: null booleanValue: null key: null value: acceptor operator: EQUALS entity: DESTINATION scope: INCLUDE_NO_DOWNSTREAM infraDfqFilter: scopeId: '' scopeRoleId: '-1' actionFilter: scopeId: '' scopeRoleId: '-1' schema: $ref: '#/components/schemas/ApiGroup' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Update group tags: - Groups x-ibm-ahub-byok: true description: | Add a permission to a group. Permissions are strings associated with the group that some resources requires to fulfill requests. Examples of `Permissions`: - `ACCESS_APPLICATIONS` - `ACCESS_INFRASTRUCTURE` - `ACCESS_KUBERNETES` - `ACCESS_MOBILE_APPS` - `ACCESS_WEBSITES` - `CAN_CONFIGURE_AGENT_RUN_MODE` - `CAN_CONFIGURE_AGENTS` - `CAN_CONFIGURE_API_TOKENS` - `CAN_CONFIGURE_APPLICATIONS` - `CAN_CONFIGURE_AUTHENTICATION_METHODS` - `CAN_CONFIGURE_CUSTOM_ALERTS` - `CAN_CONFIGURE_EUM_APPLICATIONS` - `CAN_CONFIGURE_GLOBAL_ALERT_CONFIGS` - `CAN_CONFIGURE_GLOBAL_ALERT_PAYLOAD` - `CAN_CONFIGURE_INTEGRATIONS` - `CAN_CONFIGURE_LOG_MANAGEMENT` - `CAN_CONFIGURE_MOBILE_APP_MONITORING` - `CAN_CONFIGURE_PERSONAL_API_TOKENS` - `CAN_CONFIGURE_RELEASES` - `CAN_CONFIGURE_SERVICE_LEVEL_INDICATORS` - `CAN_CONFIGURE_SERVICE_MAPPING` - `CAN_CONFIGURE_SESSION_SETTINGS` - `CAN_CONFIGURE_TEAMS` - `CAN_CONFIGURE_USERS` - `CAN_CREATE_PUBLIC_CUSTOM_DASHBOARDS` - `CAN_EDIT_ALL_ACCESSIBLE_CUSTOM_DASHBOARDS` - `CAN_INSTALL_NEW_AGENTS` - `CAN_VIEW_ACCOUNT_AND_BILLING_INFORMATION` - `CAN_VIEW_AUDIT_LOG` - `CAN_VIEW_LOGS` - `CAN_VIEW_TRACE_DETAILS` - `LIMITED_APPLICATIONS_SCOPE` - `LIMITED_INFRASTRUCTURE_SCOPE` - `LIMITED_KUBERNETES_SCOPE` - `LIMITED_MOBILE_APPS_SCOPE` - `LIMITED_WEBSITES_SCOPE` '/api/settings/rbac/groups/{id}/user/{userId}': delete: description: |- Remove the user from a group. For more information on groups please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#groups. operationId: removeUserFromGroup parameters: - description: Id of the group to remove user from example: groupId in: path name: id required: true schema: type: string - description: Id of the user to remove example: userId in: path name: userId required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureTeams summary: Remove user from group tags: - Groups x-ibm-ahub-byok: true /api/settings/rbac/mappings: get: operationId: getGroupMappings responses: '200': content: application/json: example: - id: mappingId key: roles value: analyst groupId: '-3' schema: type: array items: $ref: '#/components/schemas/GroupMapping' description: OK '404': description: No group mapping found security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Get all group mappings tags: - Groups x-ibm-ahub-byok: true description: |- If mappings between groups on the identity provider (LDAP, OIDC, SAML) and Instana groups where configured, this will return a list of those mappings. This can be configured through the [api](#operation/createGroupMapping) or on Instana graphical user interface at Settings > Authentication > IDENTITY PROVIDERS > Group Mapping. post: operationId: createGroupMapping requestBody: content: application/json: example: key: roles value: analyst groupId: '-3' schema: $ref: '#/components/schemas/GroupMapping' required: true responses: '200': content: application/json: example: id: mappingId key: roles value: analyst groupId: '-3' schema: $ref: '#/components/schemas/GroupMapping' description: OK security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Create group mapping tags: - Groups x-ibm-ahub-byok: true description: |- Creates a mapping between a group from the IdP (LDAP, OIDC, SAML) and an Instana group. If the IdP is configured and mappings are enabled, the `key` `value` pairs a user sent by the idp will be evaluated every time this user logs in. If they match the mapping, the user will be assigned to the group corresponding to the `groupId`. Inside the payload, the `id` for the mapping is ignored, and instead, Instana generates a new id. /api/settings/rbac/mappings/delete: put: operationId: deleteGroupMappings requestBody: content: application/json: example: - firstid - secondid schema: type: string required: true responses: '204': description: OK '422': description: invalid request security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete multiple group mappings tags: - Groups x-ibm-ahub-byok: true /api/settings/rbac/mappings/identityProvider/restrictEmptyIdpGroups: get: operationId: getIdentityProviderPatch responses: '200': content: application/json: example: restrictEmptyIdpGroups: false schema: $ref: '#/components/schemas/IdentityProviderPatch' description: OK '404': description: No group mapping restriction found security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Check user restrictions for empty Idp group mapping tags: - Groups x-ibm-ahub-byok: true description: Returns `RestrictEmptyIdpGroups` value indicating if access is denied for empty Idp group mapping. `RestrictEmptyIdpGroups = true` indicates that the tenant is locked and only those users are allowed access that have at least one working mapping rule applied to them during the login process. put: operationId: updateIdentityProvider requestBody: content: application/json: example: restrictEmptyIdpGroups: true schema: $ref: '#/components/schemas/IdentityProviderPatch' required: true responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Allow/Restrict users with empty Idp group mapping tags: - Groups x-ibm-ahub-byok: true description: 'Set the RestrictEmptyIdpGroups value as true/false. See [Check user restrictions for empty Idp group mapping](#operation/getIdentityProviderPatch) for more details.' /api/settings/rbac/mappings/overview: get: operationId: getGroupMappingsOverview responses: '200': content: application/json: example: - id: mappingId key: roles value: analyst role: default team: testing schema: type: array items: $ref: '#/components/schemas/GroupMappingOverview' description: OK '404': description: No group mapping overviews found security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Get all group mappings overview tags: - Groups x-ibm-ahub-byok: true '/api/settings/rbac/mappings/{id}': delete: operationId: deleteGroupMapping parameters: - description: Id of the group mapping to delete example: mappingId in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Delete group mapping tags: - Groups x-ibm-ahub-byok: true get: operationId: getGroupMapping parameters: - in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: mappingId key: roles value: analyst groupId: '-3' schema: $ref: '#/components/schemas/GroupMapping' description: OK '404': description: No group mapping found security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Get group mapping tags: - Groups x-ibm-ahub-byok: true put: operationId: updateGroupMapping parameters: - description: Id of the group mapping to update example: mappingId in: path name: id required: true schema: type: string requestBody: content: application/json: example: id: mappingId key: roles value: analyst groupId: '-3' schema: $ref: '#/components/schemas/GroupMapping' required: true responses: '200': content: application/json: example: id: mappingId key: roles value: analyst groupId: '-3' schema: $ref: '#/components/schemas/GroupMapping' description: OK security: - ApiKeyAuth: - CanConfigureAuthenticationMethods summary: Update group mapping tags: - Groups x-ibm-ahub-byok: true description: 'See [creating group mapping](#operation/createGroupMapping)' /api/settings/rbac/roles: get: description: Retrieve all roles for the current tenant unit. operationId: getRoles responses: '200': content: application/json: example: - id: role-1 name: Administrator members: - userId: user-1 email: admin@example.com name: Admin User - userId: user-2 email: manager@example.com name: Manager User permissions: - CAN_CONFIGURE_APPLICATIONS - CAN_CONFIGURE_EVENTS - CAN_CONFIGURE_INFRASTRUCTURE - CAN_CONFIGURE_TEAMS - id: role-2 name: Developer members: - userId: user-3 email: dev1@example.com name: Developer One - userId: user-4 email: dev2@example.com name: Developer Two permissions: - CAN_VIEW_APPLICATIONS - CAN_VIEW_EVENTS - CAN_VIEW_INFRASTRUCTURE schema: type: array items: $ref: '#/components/schemas/ApiRole' description: OK '404': description: No roles found security: - ApiKeyAuth: - CanConfigureTeams summary: Get all roles tags: - Roles x-ibm-ahub-byok: true post: description: Create a new role. operationId: createRole requestBody: content: application/json: example: name: New Role members: - userId: user-5 email: newuser@example.com name: New User permissions: - CAN_VIEW_APPLICATIONS - CAN_VIEW_EVENTS schema: $ref: '#/components/schemas/ApiCreateRole' description: Role to create required: true responses: '200': content: application/json: example: id: role-3 name: New Role members: - userId: user-5 email: newuser@example.com name: New User permissions: - CAN_VIEW_APPLICATIONS - CAN_VIEW_EVENTS schema: $ref: '#/components/schemas/ApiRole' description: OK security: - ApiKeyAuth: - CanConfigureTeams summary: Create role tags: - Roles x-ibm-ahub-byok: true '/api/settings/rbac/roles/{id}': delete: description: Delete a role by ID. operationId: deleteRole parameters: - description: Id of the role to delete example: roleId in: path name: id required: true schema: type: string responses: '204': description: Role successfully deleted '404': description: Role not found security: - ApiKeyAuth: - CanConfigureTeams summary: Delete role tags: - Roles x-ibm-ahub-byok: true get: description: Retrieve a specific role by its ID. operationId: getRole parameters: - description: Id of the role for retrieval example: roleId in: path name: id required: true schema: type: string - in: query name: includeTeamUsage schema: type: boolean responses: '200': content: application/json: example: id: role-1 name: Administrator members: - userId: user-1 email: admin@example.com name: Admin User - userId: user-2 email: manager@example.com name: Manager User permissions: - CAN_CONFIGURE_APPLICATIONS - CAN_CONFIGURE_EVENTS - CAN_CONFIGURE_INFRASTRUCTURE - CAN_CONFIGURE_TEAMS schema: $ref: '#/components/schemas/ApiRole' description: OK '404': description: Role not found security: - ApiKeyAuth: - CanConfigureTeams summary: Get role by ID tags: - Roles x-ibm-ahub-byok: true put: description: Update an existing role by ID. operationId: updateRole parameters: - description: Id of the role to update example: roleId in: path name: id required: true schema: type: string requestBody: content: application/json: example: id: role-2 name: Updated Developer Role members: - userId: user-3 email: dev1@example.com name: Developer One - userId: user-4 email: dev2@example.com name: Developer Two - userId: user-6 email: dev3@example.com name: Developer Three permissions: - CAN_VIEW_APPLICATIONS - CAN_VIEW_EVENTS - CAN_VIEW_INFRASTRUCTURE - CAN_CONFIGURE_APPLICATIONS schema: $ref: '#/components/schemas/ApiRole' description: Updated role data required: true responses: '200': content: application/json: example: id: role-2 name: Updated Developer Role members: - userId: user-3 email: dev1@example.com name: Developer One - userId: user-4 email: dev2@example.com name: Developer Two - userId: user-6 email: dev3@example.com name: Developer Three permissions: - CAN_VIEW_APPLICATIONS - CAN_VIEW_EVENTS - CAN_VIEW_INFRASTRUCTURE - CAN_CONFIGURE_APPLICATIONS schema: $ref: '#/components/schemas/ApiRole' description: OK '404': description: Role not found security: - ApiKeyAuth: - CanConfigureTeams summary: Update role tags: - Roles x-ibm-ahub-byok: true /api/settings/rbac/teams: get: description: Retrieve all user teams for the current tenant unit. operationId: getTeams responses: '200': content: application/json: example: - id: teamId1 tag: team1 info: description: Team 1 description scope: accessPermissions: - CAN_CONFIGURE_APPLICATIONS - CAN_CONFIGURE_EVENTS restrictedApplicationFilter: null applications: - app-123 - app-456 websites: [] mobileApps: [] kubernetesClusters: - cluster-1 kubernetesNamespaces: [] syntheticTests: [] syntheticCredentials: [] businessPerspectives: [] tagIds: - tag-1 actionFilter: '' logFilter: '' infraDfqFilter: '' members: - userId: userId1 email: username1@example.com name: User One roles: - roleId: role-1 roleName: Admin viaIdP: false - userId: userId2 email: username2@example.com name: User Two roles: - roleId: role-2 roleName: Developer viaIdP: false - id: teamId2 tag: team2 info: description: Team 2 description scope: accessPermissions: - CAN_CONFIGURE_INFRASTRUCTURE restrictedApplicationFilter: null applications: [] websites: [] mobileApps: [] kubernetesClusters: [] kubernetesNamespaces: - namespace-1 syntheticTests: [] syntheticCredentials: [] businessPerspectives: [] tagIds: [] actionFilter: '' logFilter: '' infraDfqFilter: '' members: - userId: userId1 email: username1@example.com name: User One roles: - roleId: role-1 roleName: Admin viaIdP: false - userId: userId3 email: username3@example.com name: User Three roles: - roleId: role-3 roleName: Operator viaIdP: true schema: type: array items: $ref: '#/components/schemas/ApiTeam' description: OK '404': description: No teams found security: - ApiKeyAuth: - CanConfigureTeams summary: Get all teams tags: - Teams x-ibm-ahub-byok: true post: description: Create a new team. operationId: createTeam requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiTeam' description: Team to create required: true responses: '200': description: Team created successfully security: - ApiKeyAuth: - CanConfigureTeams summary: Create team tags: - Teams x-ibm-ahub-byok: true '/api/settings/rbac/teams/{id}': delete: description: Delete the team data. operationId: deleteTeam parameters: - description: Id of the team to delete example: teamId in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureTeams summary: Delete team tags: - Teams x-ibm-ahub-byok: true get: description: Retrieve a specific team by its ID. operationId: getTeam parameters: - description: Id of the team for retrieval example: teamId in: path name: id required: true schema: type: string - in: query name: includeTeamUsage schema: type: boolean responses: '200': content: application/json: example: id: team-1 tag: Development Team info: description: Team responsible for application development scope: accessPermissions: - CAN_CONFIGURE_APPLICATIONS - CAN_CONFIGURE_EVENTS restrictedApplicationFilter: restrictingApplicationId: app-123 applications: - app-123 - app-456 websites: - website-1 mobileApps: - mobile-1 kubernetesClusters: - cluster-1 kubernetesNamespaces: - namespace-1 syntheticTests: - test-1 syntheticCredentials: [] businessPerspectives: - bp-1 tagIds: - tag-1 - tag-2 actionFilter: '' logFilter: '' infraDfqFilter: '' members: - userId: user-1 email: user1@example.com name: John Doe roles: - roleId: role-1 roleName: Admin viaIdP: false - userId: user-2 email: user2@example.com name: Jane Smith roles: - roleId: role-2 roleName: Developer viaIdP: false schema: $ref: '#/components/schemas/ApiTeam' description: Successfully retrieved the team '404': description: Team not found security: - ApiKeyAuth: - CanConfigureTeams summary: Get team by ID tags: - Teams x-ibm-ahub-byok: true put: description: Update an existing team by ID. operationId: updateTeam parameters: - description: Id of the team to update example: teamId in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/ApiTeam' responses: '200': description: Team updated successfully '404': description: Team not found security: - ApiKeyAuth: - CanConfigureTeams summary: Update team tags: - Teams x-ibm-ahub-byok: true /api/settings/session: delete: description: Delete tenant unit session settings. operationId: deleteSessionSettings responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureSessionSettings summary: Delete session settings tags: - Session Settings x-ibm-ahub-byok: true get: description: Get the tenant unit session settings operationId: getSessionSettings responses: '200': content: application/json: example: | { tokenLifeTimeInMillis: 28800000, idleTimeInMillis: 3600000 } schema: $ref: '#/components/schemas/SessionSettings' description: OK security: - ApiKeyAuth: - CanConfigureSessionSettings summary: Get session settings tags: - Session Settings x-ibm-ahub-byok: true put: description: Update individual tenant unit session settings. operationId: setSessionSettings requestBody: content: application/json: example: | { tokenLifeTimeInMillis: 28800000, idleTimeInMillis: 3600000 } schema: $ref: '#/components/schemas/SessionSettings' responses: '200': content: application/json: example: | { tokenLifeTimeInMillis: 28800000, idleTimeInMillis: 3600000 } schema: $ref: '#/components/schemas/SessionSettings' description: OK security: - ApiKeyAuth: - CanConfigureSessionSettings summary: Configure session settings tags: - Session Settings x-ibm-ahub-byok: true /api/settings/sli: get: deprecated: true operationId: getAllSliConfigs responses: '200': content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: type: array items: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - Default summary: Get All SLI Configs tags: - SLI Settings x-ibm-ahub-byok: true post: deprecated: true operationId: createSliConfig requestBody: content: application/json: example: sliName: test-application-sli metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND schema: $ref: '#/components/schemas/SliConfiguration' required: true responses: '200': content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - canConfigureServiceLevels summary: Create SLI Config tags: - SLI Settings x-ibm-ahub-byok: true description: | This endpoint creates the Service Level Indicator Configuration ## Mandatory Parameters: - **id** A unique identifier for each SLI configuration - **sliName:** Name for the SLI configuration - **sliEntity:** Entity of the SLI configuration ### SLI Entity specific parameters Depending on the chosen `sliType` in the `sliEntity`, there are further required parameters: #### Application SLI entity This option can be used to create a Time-Based SLI - **sliEntity.applicationId:** The Id of the Application Perspective - **sliEntity.boundaryScope:** Boundary scope of the Application Perspective - **metricConfiguration.metricName:** The metric name on which to compute the SLI - **metricConfiguration.metricAggregation:** The aggregation of the metric - **metricConfiguration.threshold:** Threshold for the metric #### Availability SLI entity This opetion can be used to create an Event-Based SLI - **sliEntity.applicationId:** The Id of the Application Perspective - **sliEntity.boundaryScope:** Boundary scope of the Application Perspective ## Deprecated Parameters for Availability SLI entity: - **sliEntity.serviceId:** The ID if the Service in he context of an Application Perspective - **sliEntity.endpointId:** The ID of an Endpoint belonging to a Service - **sliEntity.goodEventFilters:** The list of TagFilters to match good events / calls - **sliEntity.badEventFilters:** The list of TagFilters to match bad events / calls All of these filters can be included using the list of TagFilterExpressions via **sliEntity.goodEventFilterExpression** and **sliEntity.badEventFilterExpression**. These parameters will be removed in the upcoming releases. '/api/settings/sli/{id}': delete: deprecated: true operationId: deleteSliConfig parameters: - in: path name: id required: true schema: type: string description: Service Levels Indicator ID example: 7iydEfqJQP6AKzd3yR3byw responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - canConfigureServiceLevels summary: Delete SLI Config tags: - SLI Settings x-ibm-ahub-byok: true get: deprecated: true operationId: getSliConfig parameters: - in: path name: id required: true schema: type: string description: Service Levels Indicator ID example: 3J0RDgfyQz-P_hVzbNNb4A responses: '200': content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - Default summary: Get SLI Config tags: - SLI Settings x-ibm-ahub-byok: true put: deprecated: true operationId: updateSliConfig parameters: - in: path name: id required: true schema: type: string description: Service Levels Indicator ID example: 3J0RDgfyQz-P_hVzbNNb4A requestBody: content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: $ref: '#/components/schemas/SliConfiguration' required: true responses: '200': content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - canConfigureServiceLevels summary: Update SLI Config tags: - SLI Settings x-ibm-ahub-byok: true /api/settings/slo: get: operationId: getAllSloConfigs parameters: - in: query name: pageSize schema: type: integer format: int32 description: Size of the Page example: 1 - in: query name: page schema: type: integer format: int32 description: Page Number example: 1 - in: query name: orderBy schema: type: string description: Order By Value enum: - name - entityType - entityName - blueprint - sloStatus - sloWindowRemain - timeWindow - 'null' example: name - in: query name: orderDirection schema: type: string description: 'Order Direction of the Result, it could be ascending or descending' enum: - ASC - DESC example: ASC - in: query name: query schema: type: string description: Keyword or Query which needs to be searched example: test SLO - in: query name: tag schema: type: array description: List of tags which needs to be searched example: Testing items: type: string description: List of tags which needs to be searched example: Testing uniqueItems: true - in: query name: entityType schema: type: array description: SLO Entity Type which needs to be filtered. (This filter could occurs multiple times.) example: application items: type: string description: SLO Entity Type which needs to be filtered. (This filter could occurs multiple times.) enum: - application - website - synthetic - infrastructure example: application uniqueItems: true - in: query name: blueprint schema: type: array description: SLO blueprint Type which needs to be filtered. (This filter could occurs multiple times.) example: latency items: type: string description: SLO blueprint Type which needs to be filtered. (This filter could occurs multiple times.) enum: - latency - availability - traffic - saturation - custom example: latency uniqueItems: true - in: query name: sloIds schema: type: array description: List of SLO IDs for which details need to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw items: type: string description: List of SLO IDs for which details need to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw - in: query name: sloStatus schema: type: string description: Filter by the SLO status example: green - in: query name: entityIds schema: type: array description: List of entity IDs for which details need to be fetched example: adsewby312sdfd1 items: type: string description: List of entity IDs for which details need to be fetched example: adsewby312sdfd1 - in: query name: grouped schema: type: boolean description: Boolean operator which specifies if the results are grouped example: false - in: query name: refresh schema: type: boolean description: Boolean operator which specifies if the cache needs to be refreshed example: false responses: '200': content: application/json: example: items: - id: SLOY2KDCFExTvmsLyf4W067JQ name: Stans test SLO 2 target: 0.99 lastUpdated: 1680182215442 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing - id: SLOsmbQLI8ORcuhF_L-QquFWQ name: '[Should match no nothing test] website entity tag filter' target: 0.9999 lastUpdated: 1683792839372 rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 entity: type: website websiteId: XIZGGVT1TX2O-0OFeT2Yig beaconType: httpRequest tagFilterExpression: type: TAG_FILTER name: beacon.geo.country stringValue: Moon numberValue: null booleanValue: null key: null value: Moon operator: EQUALS entity: NOT_APPLICABLE indicator: type: eventBased blueprint: latency threshold: 60000 timeWindow: type: rolling duration: 1 durationUnit: week tags: - test - no matches page: 1 pageSize: 10000 totalHits: 2 schema: $ref: '#/components/schemas/PaginatedResult' description: Fetched list of the SLO Configurations Successfully security: - ApiKeyAuth: - Default summary: Get All SLO Configs tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true post: operationId: createSloConfig requestBody: content: application/json: example: name: Stans test SLO 4 target: 0.99 rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing schema: $ref: '#/components/schemas/SLOConfigWithRBACTag' required: true responses: '200': content: application/json: example: id: SLOdCTspkHlS_OzNOATQWgsuw rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 createdDate: 1680182236227 name: Stans test SLO 4 target: 0.99 lastUpdated: 1713873207738 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing schema: $ref: '#/components/schemas/SLOConfigWithRBACTag' description: New SLO Configuration Created Successfully '400': content: application/json: example: '{"errors":["Unknown tag filter: call.error"]}' schema: type: string description: Invalid Tag Filter security: - ApiKeyAuth: - canConfigureServiceLevels summary: Create a new SLO Config tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true /api/settings/slo/tags: get: operationId: getAllSloConfigTags parameters: - in: query name: query schema: type: string description: Keyword or Query which needs to be searched example: test SLO - in: query name: tag schema: type: array description: List of tags which needs to be searched example: Testing items: type: string description: List of tags which needs to be searched example: Testing uniqueItems: true - in: query name: entityType schema: type: string description: SLO Entity Type which needs to be filtered enum: - application - website - synthetic - infrastructure example: application responses: '200': content: application/json: example: - andre - test - testing - drinks - got no snacks - timeBased - Stan - no matches - availability - Lab - demo - thiemo - TimeWindow Test - robot-shop - eventBased - got snacks - migration - robert-creates-a-new-sli schema: type: array items: type: string description: Fetched list of SLO Configuration tags Successfully security: - ApiKeyAuth: - Default summary: Get All SLO Config tags tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true '/api/settings/slo/{id}': delete: operationId: deleteSloConfig parameters: - in: path name: id required: true schema: type: string description: Service Levels Objective Configuration ID example: SLOdCTspkHlS_OzNOATQWgsuw responses: '204': description: SLO Configuration Deleted Successfully security: - ApiKeyAuth: - canConfigureServiceLevels summary: Delete an existing SLO Config tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true get: operationId: getSloConfigById parameters: - in: path name: id required: true schema: type: string description: Service Levels Objective Configuration ID example: SLOdCTspkHlS_OzNOATQWgsuw - in: query name: refresh schema: type: boolean description: Boolean operator which specifies if the cache needs to be refreshed example: false responses: '200': content: application/json: example: id: SLOdCTspkHlS_OzNOATQWgsuw rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 createdDate: 1680182236227 name: Stans test SLO 4 target: 0.99 lastUpdated: 1713873207738 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing schema: $ref: '#/components/schemas/SLOConfigWithRBACTag' description: Fetched SLO Configuration Successfully '404': content: application/json: example: errors: - The sloConfiguration you are looking for does not exist. schema: type: string description: SLO Configuration Not Found security: - ApiKeyAuth: - Default summary: Get an existing SLO Config tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true put: operationId: updateSloConfig parameters: - in: path name: id required: true schema: type: string description: Service Levels Objective Configuration ID example: SLOdCTspkHlS_OzNOATQWgsuw requestBody: content: application/json: example: name: Stans test SLO 4 target: 0.99 rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing schema: $ref: '#/components/schemas/SLOConfigWithRBACTag' required: true responses: '200': content: application/json: example: id: SLOdCTspkHlS_OzNOATQWgsuw rbacTags: - id: R3_hPrHXSMe0yGsnlFdReA displayName: team 1 createdDate: 1680182236227 name: Stans test SLO 4 target: 0.99 lastUpdated: 1713873207738 entity: type: application applicationId: VTNvC_sATZqMj4vSZfsjKA serviceId: null endpointId: null boundaryScope: INBOUND includeInternal: false includeSynthetic: false tagFilterExpression: null indicator: type: timeBased blueprint: latency threshold: 100 aggregation: P90 timeWindow: type: rolling duration: 1 durationUnit: week tags: - Stan - testing schema: $ref: '#/components/schemas/SLOConfigWithRBACTag' description: Updated SLO Configuration Successfully '400': content: application/json: example: errors: - 'SloConfiguration with id: GC8r6gbZT4WIhtsMx_YgLg was not found' schema: type: string description: Bad Request security: - ApiKeyAuth: - canConfigureServiceLevels summary: Update an existing SLO Config tags: - Service Levels Objective(SLO) Configurations x-ibm-ahub-byok: true /api/settings/synthetic-calls: delete: description: |- Use this API endpoint if one wants to delete all custom synthetic call configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Synthetic Calls please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#synthetic-calls. operationId: deleteSyntheticCall responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - ConfigureServiceMapping summary: Delete synthetic call configurations tags: - Synthetic Calls x-ibm-ahub-byok: true get: description: |- Use this API endpoint if one wants to get all custom synthetic call configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Synthetic Calls please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#synthetic-calls. operationId: getSyntheticCalls responses: '200': content: application/json: schema: $ref: '#/components/schemas/SyntheticCallWithDefaultsConfig' description: OK security: - ApiKeyAuth: - ConfigureServiceMapping summary: Synthetic call configurations tags: - Synthetic Calls x-ibm-ahub-byok: true put: description: |- Use this API endpoint if one wants to get all custom synthetic call configurations. This endpoint requires `CanConfigureServiceMapping` permission. One can use `Create or update an API token` endpoint to update the permission by setting `canConfigureServiceMapping` to `true`. If one wants to enable the permission from Instana UI, go to Settings -> Security & Access -> Access Control -> API Token. There one can update the existing token or create a new token and set `Customize service rules and endpoint mapping` to `true`. For more information on Synthetic Calls please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Settings#synthetic-calls. operationId: updateSyntheticCall requestBody: content: application/json: schema: $ref: '#/components/schemas/SyntheticCallConfig' required: true responses: '200': description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - ConfigureServiceMapping summary: Update synthetic call configurations tags: - Synthetic Calls x-ibm-ahub-byok: true /api/settings/users: get: description: Retrieves all users with access to the tenant. The result will not contain pending invitations. operationId: getUsers responses: '200': content: application/json: example: - id: userId email: username@example.com fullName: username lastLoggedIn: 1636434847190 groupCount: 1 tfaEnabled: false schema: type: array items: $ref: '#/components/schemas/UserResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureUsers summary: All users (without invitations) tags: - User x-ibm-ahub-byok: true /api/settings/users/delete: put: description: Remove multiple users access to the tenant. Removing a user from a tenant does not delete their user account. operationId: removeUsersFromTenant requestBody: content: '*/*': schema: type: array items: type: string uniqueItems: true required: true responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureUsers summary: Remove users from tenant tags: - User x-ibm-ahub-byok: true /api/settings/users/overview: get: description: Retrieves all users with access to the tenant. The result will also contain pending invitations. operationId: getUsersIncludingInvitations responses: '200': content: application/json: example: users: - id: userId1 email: username@example.com fullName: fullName lastLoggedIn: 1699313025975 groupCount: null tfaEnabled: null invitations: - id: userId2 email: username2@example.com groupId: '-3' schema: $ref: '#/components/schemas/UsersResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureUsers summary: All users (incl. invitations) tags: - User x-ibm-ahub-byok: true '/api/settings/users/{email}': put: description: Updates the full name of the user. operationId: updateUser parameters: - in: path name: email required: true schema: type: string requestBody: content: application/json: example: fullName: Updated Name schema: $ref: '#/components/schemas/EditUser' responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. security: - ApiKeyAuth: - CanConfigureUsers summary: Change user name of single user tags: - User x-ibm-ahub-byok: true '/api/settings/users/{userId}': delete: description: Remove the users access to the tenant. Removing a user from a tenant does not delete their user account. operationId: removeUserFromTenant parameters: - description: Id of the user for removal example: userId in: path name: userId required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureUsers summary: Remove user from tenant tags: - User x-ibm-ahub-byok: true get: description: Retrieves the user with access to the tenant. operationId: getUserById parameters: - description: Id of the user for retrieval example: userId in: path name: userId required: true schema: type: string style: simple responses: '200': content: application/json: example: id: userId preferredName: preferredName fullName: fullName email: username@example.com encryptedPassword: '' lastLoggedIn: 1699442707385 timestampAcceptedTos: 1696404223545 timestampAcceptedPrivacyAgreement: 1696404223545 acceptedTosVersion: 6 acceptedPrivacyAgreementVersion: 9 tenantsWhereMainContact: [] tenants: [] createDate: 1696404196256 emailConfirmed: true tenantIds: - 55557f97186b9c0007857730 passwordResetAttempt: 0 groupCount: null tfaEnabled: null role: null schema: type: array items: $ref: '#/components/schemas/UserResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. security: - ApiKeyAuth: - CanConfigureUsers summary: Get single user tags: - User x-ibm-ahub-byok: true /api/settings/v2/maintenance: get: operationId: getMaintenanceConfigsV2 responses: '200': content: application/json: example: - id: maintenanceConfigId name: maintenanceConfig query: 'entity.application.id:"anApplicationId"' scheduling: start: 1680703219486 duration: amount: 2 unit: HOURS rrule: FREQ=DAILY;INTERVAL=1;COUNT=1 timezoneId: UTC type: RECURRENT paused: false lastUpdated: 1680703219678 state: EXPIRED validVersion: 1 occurrence: start: 1680703219000 end: 1680710419000 invalid: false applicationNames: - anApplicationName - id: anotherMaintenanceConfigId name: anotherMaintenanceConfig query: 'entity.type:ibmz.db2' scheduling: start: 1680703219486 duration: amount: 2 unit: HOURS rrule: FREQ=DAILY;INTERVAL=1;COUNT=1 timezoneId: UTC type: RECURRENT paused: false lastUpdated: 1680703219678 state: EXPIRED validVersion: 1 occurrence: start: 1680703219000 end: 1680710419000 invalid: false applicationNames: [] - id: '1698949644924' name: sampleMaintenanceConfig query: '' scheduling: start: 1698949644924 duration: amount: 2 unit: HOURS rrule: FREQ=WEEKLY;INTERVAL=2;BYDAY=SA;COUNT=10 timezoneId: America/New_York type: RECURRENT paused: false validVersion: 1 tagFilterExpression: type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: synthetic.locationLabelAggregated stringValue: us-east numberValue: null booleanValue: null key: null value: us-east operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: synthetic.syntheticType stringValue: HTTPScript numberValue: null booleanValue: null key: null value: HTTPScript operator: EQUALS entity: NOT_APPLICABLE tagFilterExpressionEnabled: true retriggerOpenAlertsEnabled: true lastUpdated: 1698949645163 state: SCHEDULED occurrence: start: 1699122444000 end: 1699129644000 schema: type: array items: $ref: '#/components/schemas/ValidatedMaintenanceConfigV2WithStateAndOccurrence' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: All maintenance configurations tags: - Maintenance Configuration x-ibm-ahub-byok: true description: 'This endpoint retrieves all available maintenance configurations. ' '/api/settings/v2/maintenance/{id}': delete: operationId: deleteMaintenanceConfigV2 parameters: - description: Id of the Maintenance Window configuration to delete. example: 8924aa6b in: path name: id required: true schema: type: string responses: default: content: application/json: {} description: default response security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Delete maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true description: |- This endpoint deletes a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to delete. get: operationId: getMaintenanceConfigV2 parameters: - description: Id of the Maintenance Window Configuration to get. example: 8924aa6b in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: maintenanceConfigId name: maintenanceConfig query: '' scheduling: start: 1683864000000 duration: amount: 24 unit: HOURS type: ONE_TIME paused: false validVersion: 1 lastUpdated: 1683901553115 state: EXPIRED occurrence: start: 1683864000000 end: 1683950400000 schema: $ref: '#/components/schemas/MaintenanceConfigV2WithStateAndOccurrence' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Get maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true description: |- This endpoint retrieves a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to fetch. put: operationId: putMaintenanceConfigV2 parameters: - description: Id of the Maintenance Window configuration to update. example: 8924aa6b in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/MaintenanceConfigV2' examples: payload: value: id: maintenanceConfigID name: sampleMaintenanceConfig query: '' scheduling: start: 1683827571245 duration: amount: 2 unit: HOURS type: RECURRENT rrule: FREQ=WEEKLY;INTERVAL=2;BYDAY=SA;COUNT=10 timezoneId: America/New_York tagFilterExpressionEnabled: true tagFilterExpression: type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: synthetic.locationLabelAggregated stringValue: us-east numberValue: null booleanValue: null key: null value: us-east operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: synthetic.syntheticType stringValue: HTTPScript numberValue: null booleanValue: null key: null value: HTTPScript operator: EQUALS entity: NOT_APPLICABLE required: true responses: '200': content: application/json: example: id: maintenanceConfigId name: maintenanceConfig query: '' scheduling: start: 1698938631036 duration: amount: 2 unit: HOURS type: ONE_TIME paused: false validVersion: 1 tagFilterExpression: type: EXPRESSION logicalOperator: OR elements: - type: TAG_FILTER name: synthetic.locationLabelAggregated stringValue: us-east numberValue: null booleanValue: null key: null value: us-east operator: EQUALS entity: NOT_APPLICABLE - type: TAG_FILTER name: synthetic.syntheticType stringValue: HTTPScript numberValue: null booleanValue: null key: null value: HTTPScript operator: EQUALS entity: NOT_APPLICABLE tagFilterExpressionEnabled: true retriggerOpenAlertsEnabled: true lastUpdated: 1698938631408 state: ACTIVE occurrence: start: 1698938631036 end: 1698945831036 description: 'Maintenance config has been created or updated, and successfully scheduled immediately if needed' '202': description: 'Maintenance config has been created or updated, but could not to be scheduled immediately. It will therefore be scheduled during the next auto-refresh with a delay of up to 4 minutes.' '400': description: The provided maintenance configuration is invalid. '422': description: The provided maintenance configuration is incomplete or cannot be processed. security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Create or update maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true description: |- This endpoint creates or updates a maintenance configuration given its ID. ### Path Parameters: - **id:** The ID of the maintenance config to create or update. ### Maintenance Configuration Input This is a description for the fields in the request body: **id**: maintenance configuration unique id **name**: maintenance configuration name **query**: dynamic focus query used to filter alert notifications that will be muted **scheduling**: defines when the maintenance configuration will be scheduled - **start**: time in milliseconds from epoch - **duration**: duration of each maintenance window occurrence in the maintenance configuration - **amount**: the amount of time - **unit**: the unit of time - **type**: `ONE_TIME` or `RECURRENT` - **rrule**: for `RECURRENT` mainteance configurations, the RRULE standard from the [iCalendar Spec](https://datatracker.ietf.org/doc/html/rfc5545) - **paused**: indicates whether maintenance configuration is paused or not **tagFilterExpressionEnabled (OPTIONAL) (Closed Beta)**: indicates whether tagFilterExpression is used to filter alert notifications **tagFilterExpression (OPTIONAL) (Closed Beta)**: tag filter expression used to filter alert notifications that will be muted (this field needs to be provided if **tagFilterExpressionEnabled** is set to true) ### **Scope** There are four supported scopes; application perspective, dynamic focus query, synthetic tests, all entities. Below is the configuration corresponding to each scope: **1. Application Perspective**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **2. Dynamic Focus Query**    dfq: a valid dynamic focus query    tfeEnabled: (optional)    tfe: (optional) **3. Synthetic Tests**    dfq: ""    tfeEnabled: true    tfe: a valid tag filter expression **4. All Entities**    dfq: ""    tfeEnabled: false    tfe: null ### **RRULE Support** You can use the [RRULE tool](https://icalendar.org/rrule-tool.html) for generating RRULEs. The following RRULE tokens are supported: `FREQ`, `UNTIL`, `COUNT`, `INTERVAL`, `BYDAY`, `BYMONTHDAY`, `BYMONTH`. **Additional Constraints:** 1. For `MONTHLY` and `YEARLY`, you can only specify one value for `BYDAY` and `BYMONTHDAY`. 2. The maximum `INTERVAL` allowed is as follows: - DAILY is 365 - WEEKLY is 52 - MONTHLY is 12 - YEARLY is 1 3. If an `UNTIL` date is specified, the value needs to be in UTC. ### **Tag Filter Expression Support** We support the following tag filters: - synthetic.syntheticType - synthetic.testName - synthetic.locationLabelAggregated - synthetic.tags '/api/settings/v2/maintenance/{id}/pause': put: operationId: pauseRecurrentMaintenanceConfiguration parameters: - description: Id of the Maintenance Window configuration to pause. example: 8924aa6b in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: maintenanceConfigId name: maintenanceConfig query: 'entity.application.id:"anApplicationId"' scheduling: start: 1684251745262 duration: amount: 2 unit: HOURS type: ONE_TIME paused: true validVersion: 1 lastUpdated: 1684251750475 state: PAUSED occurrence: start: 1684251745262 end: 1684258945262 schema: $ref: '#/components/schemas/MaintenanceConfigV2WithStateAndOccurrence' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Pause maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true description: | This endpoint pauses a maintenance configuration given its ID. When you pause a maintenance configuration, you will start receiving alerts again for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to pause. '/api/settings/v2/maintenance/{id}/resume': put: operationId: resumeRecurrentMaintenanceConfiguration parameters: - description: Id of the Maintenance Window configuration to resume. example: 8924aa6b in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: maintenanceConfigId name: maintenanceConfig query: 'entity.application.id:"anApplicationId"' scheduling: start: 1684251745262 duration: amount: 2 unit: HOURS type: ONE_TIME paused: false validVersion: 1 lastUpdated: 1684251933433 state: ACTIVE occurrence: start: 1684251745262 end: 1684258945262 schema: $ref: '#/components/schemas/MaintenanceConfigV2WithStateAndOccurrence' description: OK security: - ApiKeyAuth: - CanConfigureMaintenanceWindows summary: Resume maintenance configuration tags: - Maintenance Configuration x-ibm-ahub-byok: true description: | This endpoint resumes a maintenance configuration given its ID. If the maintenance configuration becomes active when you resume the maintenance configuration, you will not receive alerts for the scope defined in the maintenance configuration. ### Path Parameters: - **id:** The ID of the maintenance config to resume. /api/settings/v2/sli: get: operationId: getAllSliConfigsV2 responses: '200': content: application/json: example: - id: T0yCMBR4G sliName: Siva SLI test initialEvaluationTimestamp: 1637758860000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 100 sliEntity: sliType: application applicationId: 1qvXgVfLTNqi8gGTcCaNUw serviceId: 6097d596c3d9024034b3d03b2b5c43acea65e5a4 endpointId: oETFj2WyPusvXgRW_181J3fH_t8 boundaryScope: INBOUND lastUpdated: 1637758839104 schema: type: array items: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - Default summary: Get All SLI Configs tags: - SLI Settings x-ibm-ahub-byok: true post: operationId: createSliConfigV2 requestBody: content: application/json: example: sliName: test-application-sli metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND schema: $ref: '#/components/schemas/SliConfiguration' required: true responses: '200': content: application/json: example: id: 3J0RDgfyQz-P_hVzbNNb4A sliName: test-application-sli initialEvaluationTimestamp: 1732017600000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 555 sliEntity: sliType: application applicationId: btg-B709IU6o9QNXUS4TVw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1732017541059 schema: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: New SLI Configuration Created Successfully '400': content: application/json: example: '{"errors":["Unknown tag filter: call.eron"]}' schema: type: string description: Bad Request '422': content: application/json: example: '{"errors":["sliEntity.entityId must not be blank"]}' schema: type: string description: Unprocessable Entity security: - ApiKeyAuth: - canConfigureServiceLevels summary: Create SLI Config tags: - SLI Settings x-ibm-ahub-byok: true description: | This endpoint creates the Service Level Indicator Configuration ## Mandatory Parameters: - **id** A unique identifier for each SLI configuration - **sliName:** Name for the SLI configuration - **sliEntity:** Entity of the SLI configuration ### SLI Entity specific parameters Depending on the chosen `sliType` in the `sliEntity`, there are further required parameters: #### Application SLI entity This option can be used to create a Time-Based SLI - **sliEntity.applicationId:** The Id of the Application Perspective - **sliEntity.boundaryScope:** Boundary scope of the Application Perspective - **metricConfiguration.metricName:** The metric name on which to compute the SLI - **metricConfiguration.metricAggregation:** The aggregation of the metric - **metricConfiguration.threshold:** Threshold for the metric #### Availability SLI entity This opetion can be used to create an Event-Based SLI - **sliEntity.applicationId:** The Id of the Application Perspective - **sliEntity.boundaryScope:** Boundary scope of the Application Perspective ## Deprecated Parameters for Availability SLI entity: - **sliEntity.serviceId:** The ID if the Service in he context of an Application Perspective - **sliEntity.endpointId:** The ID of an Endpoint belonging to a Service - **sliEntity.goodEventFilters:** The list of TagFilters to match good events / calls - **sliEntity.badEventFilters:** The list of TagFilters to match bad events / calls All of these filters can be included using the list of TagFilterExpressions via **sliEntity.goodEventFilterExpression** and **sliEntity.badEventFilterExpression**. These parameters will be removed in the upcoming releases. '/api/settings/v2/sli/{entityType}/{entityId}': get: operationId: getSliConfigsForEntityTypeAndIdV2 parameters: - description: 'Type of the Entity, whether it is an application or website' in: path name: entityType required: true schema: type: string enum: - APPLICATION - WEBSITE - description: Unique ID of the Entity example: DkPX-x9VQuKBKopuilrkYw in: path name: entityId required: true schema: type: string responses: '200': content: application/json: example: - id: HXcNRWhDSWiZs3HiUAKr7g sliName: turbo time 1 initialEvaluationTimestamp: 1648133520000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 300 sliEntity: sliType: application applicationId: 1qvXgVfLTNqi8gGTcCaNUw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1648133508938 schema: type: array items: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK security: - ApiKeyAuth: - Default summary: Get all SLI configs for entity type and entity id tags: - SLI Settings x-ibm-ahub-byok: true '/api/settings/v2/sli/{id}': delete: operationId: deleteSliConfigV2 parameters: - description: ID of the Service Level Indicator (SLI) example: HXcNRWhDSWiZs3HiUAKr7g in: path name: id required: true schema: type: string responses: '204': description: SLI Configuration Deleted Successfully security: - ApiKeyAuth: - canConfigureServiceLevels summary: Delete SLI Config tags: - SLI Settings x-ibm-ahub-byok: true get: operationId: getSliConfigV2 parameters: - description: ID of the Service Level Indicator (SLI) example: HXcNRWhDSWiZs3HiUAKr7g in: path name: id required: true schema: type: string responses: '200': content: application/json: example: - id: HXcNRWhDSWiZs3HiUAKr7g sliName: turbo time 1 initialEvaluationTimestamp: 1648133520000 metricConfiguration: metricName: latency metricAggregation: P90 threshold: 300 sliEntity: sliType: application applicationId: 1qvXgVfLTNqi8gGTcCaNUw serviceId: null endpointId: null boundaryScope: INBOUND lastUpdated: 1648133508938 schema: $ref: '#/components/schemas/SliConfigurationWithLastUpdated' description: OK '404': content: application/json: example: errors: - The SLI Configuration you are looking for does not exist. schema: type: string description: SLI Configuration Not Found security: - ApiKeyAuth: - Default summary: Get SLI Config tags: - SLI Settings x-ibm-ahub-byok: true '/api/sli/report/{sliId}': get: operationId: getSli parameters: - description: ID of the Service Level Indicator (SLI) example: nCtEoR6NSPqG61QkIkwwCw in: path name: sliId required: true schema: type: string - description: Target SLO example: 0.99 in: query name: slo required: true schema: type: number format: double - description: From Timestamp in milliseconds (13-digit) example: 1706713140000 in: query name: from required: true schema: type: integer format: int64 - description: To Timestamp in milliseconds (13-digit) example: 1706713140000 in: query name: to required: true schema: type: integer format: int64 responses: '200': content: application/json: example: sli: 0.008228916434859497 slo: 0.1 totalErrorBudget: 10236633 errorBudgetRemaining: -1043808 fromTimestamp: 1707771600000 toTimestamp: 1707858000000 violationDistribution: null schema: type: array items: $ref: '#/components/schemas/SliReport' description: OK '404': content: application/json: example: errors: - There is no SLI configuration for the given ID or the report hasn't been generated yet. schema: type: array items: type: string description: There is no SLI configuration for the given ID or the report hasn't been generated yet. security: - ApiKeyAuth: - Default summary: 'Generate SLI report (Limitation: the Classic Edition API report can be available one hour after the SLI configuration created; other editions are around one minute.)' tags: - SLI Report x-ibm-ahub-byok: true /api/slo/correction: get: operationId: getSloCorrection parameters: - in: query name: sloId schema: type: array description: List of SLO IDs for which Correction Windows needs to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw items: type: string description: List of SLO IDs for which Correction Windows needs to be fetched example: SLOdCTspkHlS_OzNOATQWgsuw uniqueItems: true - description: IDs of Correction Configurations to be Excluded from the result example: N1Xj6q8QTZu_cfJOGqy4mg in: query name: excludeCorrectionId schema: type: array items: type: string uniqueItems: true - description: IDs of Correction Configurations to be Included in the result example: uvP7Z03pSUuybDT8-WHLDA in: query name: includeCorrectionId schema: type: array items: type: string uniqueItems: true - in: query name: tags schema: type: array items: type: string uniqueItems: true - description: Correction starting timestamp in milliseconds (13-digit) example: 1706713140000 in: query name: from required: true schema: type: integer format: int64 - description: Correction ending timestamp in milliseconds (13-digit) example: 1706713140000 in: query name: to required: true schema: type: integer format: int64 responses: '200': content: application/json: example: from: 1750125600000 to: 1750176418243 correctionWindows: - from: 1750165200000 to: 1750176418243 correctionConfigs: - CpCe85NeQC2xOKXQluC30g sloConfigs: - SLOwfOpxuCJQjauS2IeHDUpAw - from: 1750158000000 to: 1750176418243 correctionConfigs: - p9kWax0uS7K2Who1WegsSg sloConfigs: - SLOffwtrVkfRmCjOZbdv3Ls9g - from: 1750150800000 to: 1750165200000 correctionConfigs: - uvP7Z03pSUuybDT8-WHLDA sloConfigs: - SLOukNGcoooQlev1z7aqONkIg - from: 1750125600000 to: 1750136400000 correctionConfigs: - S8rHrE93Rz2TXScTjBw1eg sloConfigs: - SLO4s-fs-GuT56c3v4KzQKBuQ - from: 1750172400000 to: 1750176418243 correctionConfigs: - 9Uf9TtvVRgOIMR0DkLB2Ng sloConfigs: [] - from: 1750125600000 to: 1750136400000 correctionConfigs: - 96MtLg5zRP-lmT4WOUE3Yg sloConfigs: - SLO4s-fs-GuT56c3v4KzQKBuQ activeCorrectionConfigIds: - S8rHrE93Rz2TXScTjBw1eg - uvP7Z03pSUuybDT8-WHLDA - CpCe85NeQC2xOKXQluC30g - 9Uf9TtvVRgOIMR0DkLB2Ng - 96MtLg5zRP-lmT4WOUE3Yg - p9kWax0uS7K2Who1WegsSg inActiveCorrectionConfigIds: - nNMSbRwFQEKoQ1Wj0BCWcg schema: type: array items: $ref: '#/components/schemas/Correction' description: Fetched SLO Correction Windows Successfully '404': content: application/json: example: errors: - There is No SLO Correction Windows or Error happened while trying to fetch SLO Correction Windows. schema: type: array items: type: string description: There is no SLO Correction Window security: - ApiKeyAuth: - Default summary: Generate SLO Correction Windows tags: - SLO Correction Windows x-ibm-ahub-byok: true '/api/slo/report/{sloId}': get: operationId: getSlo parameters: - description: Service Levels Objective(SLO) Configuration ID example: SLOEANnWh9tQOa2h88kGxK6wQ in: path name: sloId required: true schema: type: string - description: 'Starting point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' example: 1706713140000 in: query name: from schema: type: string - description: 'Ending point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' example: 1706813100000 in: query name: to schema: type: string - description: IDs of Correction Configurations to be Excluded from the result example: N1Xj6q8QTZu_cfJOGqy4mg in: query name: excludeCorrectionId schema: type: array items: type: string uniqueItems: true - description: IDs of Correction Configurations to be Included in the result example: uvP7Z03pSUuybDT8-WHLDA in: query name: includeCorrectionId schema: type: array items: type: string uniqueItems: true responses: '200': content: application/json: example: sli: 1 slo: 0.9999 totalErrorBudget: 12 errorBudgetRemaining: 12 errorBudgetSpent: 0 fromTimestamp: 1705081552605 toTimestamp: 1705686352605 violationDistribution: '0': 0 '1': 0 '2': 0 '3': 0 '4': 0 '5': 0 '6': 0 '7': 0 '8': 0 '9': 0 '10': 0 '11': 0 '12': 0 '13': 0 '14': 0 '15': 0 '16': 0 '17': 0 '18': 0 '19': 0 '20': 0 '21': 0 '22': 0 '23': 0 '24': 0 '25': 0 '26': 0 '27': 0 '28': 0 '29': 0 '30': 0 '31': 0 '32': 0 '33': 0 '34': 0 '35': 0 '36': 0 '37': 0 '38': 0 '39': 0 '40': 0 '41': 0 '42': 0 '43': 0 '44': 0 '45': 0 '46': 0 '47': 0 '48': 0 '49': 0 '50': 0 '51': 0 '52': 0 '53': 0 '54': 0 '55': 0 '56': 0 '57': 0 '58': 0 '59': 0 '60': 0 '61': 0 '62': 0 '63': 0 '64': 0 '65': 0 '66': 0 '67': 0 '68': 0 '69': 0 '70': 0 '71': 0 '72': 0 '73': 0 '74': 0 '75': 0 '76': 0 '77': 0 '78': 0 '79': 0 '80': 0 '81': 0 '82': 0 '83': 0 '84': 0 '85': 0 '86': 0 '87': 0 '88': 0 '89': 0 '90': 0 '91': 0 '92': 0 '93': 0 '94': 0 '95': 0 '96': 0 '97': 0 '98': 0 '99': 0 '100': 0 '101': 0 '102': 0 '103': 0 '104': 0 '105': 0 '106': 0 '107': 0 '108': 0 '109': 0 '110': 0 '111': 0 '112': 0 '113': 0 '114': 0 '115': 0 '116': 0 '117': 0 '118': 0 '119': 0 '120': 0 '121': 0 '122': 0 '123': 0 '124': 0 '125': 0 '126': 0 '127': 0 '128': 0 '129': 0 '130': 0 '131': 0 '132': 0 '133': 0 '134': 0 '135': 0 '136': 0 '137': 0 '138': 0 '139': 0 '140': 0 '141': 0 '142': 0 '143': 0 '144': 0 '145': 0 '146': 0 '147': 0 '148': 0 '149': 0 '150': 0 '151': 0 '152': 0 '153': 0 '154': 0 '155': 0 '156': 0 '157': 0 '158': 0 '159': 0 '160': 0 '161': 0 '162': 0 '163': 0 '164': 0 '165': 0 '166': 0 '167': 0 errorChart: '0': 0 '1': 0 '2': 0 '3': 0 '4': 0 '5': 0 '6': 0 '7': 0 '8': 0 '9': 0 '10': 0 '11': 0 '12': 0 '13': 0 '14': 0 '15': 0 '16': 0 '17': 0 '18': 0 '19': 0 '20': 0 '21': 0 '22': 0 '23': 0 '24': 0 '25': 0 '26': 0 '27': 0 '28': 0 '29': 0 '30': 0 '31': 0 '32': 0 '33': 0 '34': 0 '35': 0 '36': 0 '37': 0 '38': 0 '39': 0 '40': 0 '41': 0 '42': 0 '43': 0 '44': 0 '45': 0 '46': 0 '47': 0 '48': 0 '49': 0 '50': 0 '51': 0 '52': 0 '53': 0 '54': 0 '55': 0 '56': 0 '57': 0 '58': 0 '59': 0 '60': 0 '61': 0 '62': 0 '63': 0 '64': 0 '65': 0 '66': 0 '67': 0 '68': 0 '69': 0 '70': 0 '71': 0 '72': 0 '73': 0 '74': 0 '75': 0 '76': 0 '77': 0 '78': 0 '79': 0 '80': 0 '81': 0 '82': 0 '83': 0 '84': 0 '85': 0 '86': 0 '87': 0 '88': 0 '89': 0 '90': 0 '91': 0 '92': 0 '93': 0 '94': 0 '95': 0 '96': 0 '97': 0 '98': 0 '99': 0 '100': 0 '101': 0 '102': 0 '103': 0 '104': 0 '105': 0 '106': 0 '107': 0 '108': 0 '109': 0 '110': 0 '111': 0 '112': 0 '113': 0 '114': 0 '115': 0 '116': 0 '117': 0 '118': 0 '119': 0 '120': 0 '121': 0 '122': 0 '123': 0 '124': 0 '125': 0 '126': 0 '127': 0 '128': 0 '129': 0 '130': 0 '131': 0 '132': 0 '133': 0 '134': 0 '135': 0 '136': 0 '137': 0 '138': 0 '139': 0 '140': 0 '141': 0 '142': 0 '143': 0 '144': 0 '145': 0 '146': 0 '147': 0 '148': 0 '149': 0 '150': 0 '151': 0 '152': 0 '153': 0 '154': 0 '155': 0 '156': 0 '157': 0 '158': 0 '159': 0 '160': 0 '161': 0 '162': 0 '163': 0 '164': 0 '165': 0 '166': 0 '167': 0 errorAccumulationChart: '0': 0 '1': 0 '2': 0 '3': 0 '4': 0 '5': 0 '6': 0 '7': 0 '8': 0 '9': 0 '10': 0 '11': 0 '12': 0 '13': 0 '14': 0 '15': 0 '16': 0 '17': 0 '18': 0 '19': 0 '20': 0 '21': 0 '22': 0 '23': 0 '24': 0 '25': 0 '26': 0 '27': 0 '28': 0 '29': 0 '30': 0 '31': 0 '32': 0 '33': 0 '34': 0 '35': 0 '36': 0 '37': 0 '38': 0 '39': 0 '40': 0 '41': 0 '42': 0 '43': 0 '44': 0 '45': 0 '46': 0 '47': 0 '48': 0 '49': 0 '50': 0 '51': 0 '52': 0 '53': 0 '54': 0 '55': 0 '56': 0 '57': 0 '58': 0 '59': 0 '60': 0 '61': 0 '62': 0 '63': 0 '64': 0 '65': 0 '66': 0 '67': 0 '68': 0 '69': 0 '70': 0 '71': 0 '72': 0 '73': 0 '74': 0 '75': 0 '76': 0 '77': 0 '78': 0 '79': 0 '80': 0 '81': 0 '82': 0 '83': 0 '84': 0 '85': 0 '86': 0 '87': 0 '88': 0 '89': 0 '90': 0 '91': 0 '92': 0 '93': 0 '94': 0 '95': 0 '96': 0 '97': 0 '98': 0 '99': 0 '100': 0 '101': 0 '102': 0 '103': 0 '104': 0 '105': 0 '106': 0 '107': 0 '108': 0 '109': 0 '110': 0 '111': 0 '112': 0 '113': 0 '114': 0 '115': 0 '116': 0 '117': 0 '118': 0 '119': 0 '120': 0 '121': 0 '122': 0 '123': 0 '124': 0 '125': 0 '126': 0 '127': 0 '128': 0 '129': 0 '130': 0 '131': 0 '132': 0 '133': 0 '134': 0 '135': 0 '136': 0 '137': 0 '138': 0 '139': 0 '140': 0 '141': 0 '142': 0 '143': 0 '144': 0 '145': 0 '146': 0 '147': 0 '148': 0 '149': 0 '150': 0 '151': 0 '152': 0 '153': 0 '154': 0 '155': 0 '156': 0 '157': 0 '158': 0 '159': 0 '160': 0 '161': 0 '162': 0 '163': 0 '164': 0 '165': 0 '166': 0 '167': 0 errorBudgetRemainChart: '0': 0 '1': 0 '2': 0 '3': 0 '4': 0 '5': 0 '6': 0 '7': 0 '8': 0 '9': 0 '10': 1 '11': 1 '12': 1 '13': 1 '14': 1 '15': 1 '16': 1 '17': 1 '18': 1 '19': 1 '20': 1 '21': 2 '22': 2 '23': 2 '24': 2 '25': 2 '26': 2 '27': 2 '28': 2 '29': 2 '30': 2 '31': 2 '32': 2 '33': 3 '34': 3 '35': 3 '36': 3 '37': 3 '38': 3 '39': 3 '40': 3 '41': 3 '42': 3 '43': 3 '44': 4 '45': 4 '46': 4 '47': 4 '48': 4 '49': 4 '50': 4 '51': 4 '52': 4 '53': 4 '54': 4 '55': 4 '56': 5 '57': 5 '58': 5 '59': 5 '60': 5 '61': 5 '62': 5 '63': 5 '64': 5 '65': 5 '66': 5 '67': 6 '68': 6 '69': 6 '70': 6 '71': 6 '72': 6 '73': 6 '74': 6 '75': 6 '76': 6 '77': 6 '78': 6 '79': 7 '80': 7 '81': 7 '82': 7 '83': 7 '84': 7 '85': 7 '86': 7 '87': 7 '88': 7 '89': 7 '90': 7 '91': 7 '92': 7 '93': 7 '94': 7 '95': 7 '96': 7 '97': 7 '98': 7 '99': 7 '100': 7 '101': 7 '102': 7 '103': 7 '104': 7 '105': 7 '106': 7 '107': 7 '108': 7 '109': 7 '110': 7 '111': 7 '112': 7 '113': 7 '114': 7 '115': 8 '116': 8 '117': 8 '118': 8 '119': 8 '120': 8 '121': 8 '122': 8 '123': 8 '124': 8 '125': 8 '126': 8 '127': 9 '128': 9 '129': 9 '130': 9 '131': 9 '132': 9 '133': 9 '134': 9 '135': 9 '136': 9 '137': 9 '138': 10 '139': 10 '140': 10 '141': 10 '142': 10 '143': 10 '144': 10 '145': 10 '146': 10 '147': 10 '148': 10 '149': 10 '150': 11 '151': 11 '152': 11 '153': 11 '154': 11 '155': 11 '156': 11 '157': 11 '158': 11 '159': 11 '160': 11 '161': 12 '162': 12 '163': 12 '164': 12 '165': 12 '166': 12 '167': 12 schema: type: array items: $ref: '#/components/schemas/SloReport' description: Fetched SLO Configuration Report Successfully '404': content: application/json: example: errors: - There is no SLO configuration for the given ID or the report hasn't been generated yet. schema: type: array items: type: string description: There is no SLO configuration for the given ID or the report hasn't been generated yet. security: - ApiKeyAuth: - Default summary: Generate Service Levels report tags: - Service Levels Objective(SLO) Report x-ibm-ahub-byok: true /api/synthetics/catalog: get: operationId: getSyntheticTagCatalog parameters: - in: query name: useCase required: true schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: example: tagTree: - label: Commonly Used description: null icon: null children: - label: Location Label tagName: synthetic.locationLabel type: TAG - label: Synthetic Type Label tagName: synthetic.typeLabel type: TAG - label: Tags tagName: synthetic.tags type: TAG type: LEVEL queryable: false - label: Application description: null icon: null children: - label: Application Id tagName: synthetic.applicationId type: TAG type: LEVEL queryable: false - label: Synthetic Test description: null icon: null children: - label: Errors tagName: synthetic.errors type: TAG - label: Synthetic Type tagName: synthetic.syntheticType type: TAG - label: Synthetic Type Label tagName: synthetic.typeLabel type: TAG - label: Tags tagName: synthetic.tags type: TAG - label: Test Active tagName: synthetic.testActive type: TAG - label: Test Id tagName: synthetic.testId type: TAG - label: Test Name tagName: synthetic.testName type: TAG type: LEVEL queryable: false - label: Location description: null icon: null children: - label: Location Id tagName: synthetic.locationId type: TAG - label: Location Label tagName: synthetic.locationLabel type: TAG - label: Location Type tagName: synthetic.locationType type: TAG type: LEVEL queryable: false tags: - name: synthetic.locationId label: Location Id type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.locationLabel label: Location Label type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.syntheticType label: Synthetic Type type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.typeLabel label: Synthetic Type Label type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.applicationId label: Application Id type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.tags label: Tags type: KEY_VALUE_PAIR description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.testId label: Test Id type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.testName label: Test Name type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.errors label: Errors type: STRING_LIST description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.testActive label: Test Active type: BOOLEAN description: null canApplyToSource: false canApplyToDestination: false idTag: false - name: synthetic.locationType label: Location Type type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false schema: $ref: '#/components/schemas/TagCatalog' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get synthetic tag catalog tags: - Synthetic Catalog x-ibm-ahub-byok: true /api/synthetics/catalog/metrics: get: operationId: getSyntheticCatalogMetrics responses: '200': content: application/json: example: - metricId: synthetic.metricResponseTime label: Response Time formatter: MILLIS description: Script response time in milliseconds aggregations: - MEAN - 25th - 50th - 75th - 90th - 95th - 98th - 99th - SUM defaultAggregation: null schema: type: array items: $ref: '#/components/schemas/MetricDescription' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get Metric catalog tags: - Synthetic Catalog x-ibm-ahub-byok: true /api/synthetics/metrics: post: description: |- API request to retrieve Synthetic Metrics. For more information on Synthetic Metrics please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-metrics. operationId: getMetricsResult requestBody: content: application/json: example: pagination: page: 1 pageSize: 3 metrics: - metric: synthetic.metricsResponseTime aggregation: SUM timeFrame: to: 0 windowSize: 3600000 groups: - groupbyTag: synthetic.applicationId - groupbyTag: synthetic.tags groupbyTagSecondLevelTag: region schema: $ref: '#/components/schemas/GetMetricsResult' responses: '200': content: application/json: example: metricsResult: - tests: - testId: 6GwdCuiMjGdMrtz8THjo testName: rumattach-BasicNavTest locationId: - f7cEoG61DJfVyWcDnWsc applicationId: application1 serviceId: serviceId1 metrics: - synthetic.metricsResponseTime: 1276 customMetrics: - region: region1 - tests: - testId: OCnmrLSlNgzntI68094j testName: test-javascript-bundled locationId: - wHICfVoIpiHbwawo5xQ6 applicationId: application2 serviceId: serviceId2 metrics: - synthetic.metricsResponseTime: 14 customMetrics: - location: location1 region: region2 - tests: - testId: 9i6gpys6whaYtN5k9VeD testName: My_Test_ReadFile locationId: - DemoPoP1_saas_instana_test applicationId: application3 serviceId: serviceid3 metrics: - synthetic.metricsResponseTime: 7 customMetrics: - location: location3 region: region3 page: 1 pageSize: 3 totalHits: 2212 schema: $ref: '#/components/schemas/MetricsResult' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get Synthetic Metrics tags: - Synthetic Metrics x-ibm-ahub-byok: true /api/synthetics/results: post: description: |- Get a list of aggregated playback results metrics for Synthetic tests matching the specified parameters For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getSyntheticResult requestBody: content: application/json: example: pagination: page: 1 pageSize: 3 metrics: - metric: synthetic.metricsResponseTime aggregation: SUM order: by: synthetic.startTime direction: DESC timeFrame: to: 0 windowSize: 144000000 schema: $ref: '#/components/schemas/GetTestResult' responses: '200': content: application/json: example: testResult: - testId: 6GwdCuiMjGdMrtz8THjo testName: rumattach-BasicNavTest locationId: - f7cEoG61DJfVyWcDnWsc metrics: - synthetic.metricsResponseTime: 1276 - testId: OCnmrLSlNgzntI68094j testName: test-javascript-bundled locationId: - wHICfVoIpiHbwawo5xQ6 metrics: - synthetic.metricsResponseTime: 14 - testId: 9i6gpys6whaYtN5k9VeD testName: My_Test_ReadFile locationId: - DemoPoP1_saas_instana_test metrics: - synthetic.metricsResponseTime: 7 page: 1 pageSize: 3 totalHits: 2212 schema: $ref: '#/components/schemas/TestResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get Synthetic test playback results tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true /api/synthetics/results/analytic: post: description: |- Get a list of playback results metrics for Synthetic tests matching the specified parameters for the specified analytic For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getSyntheticResultAnalytic requestBody: content: application/json: example: pagination: page: 1 pageSize: 3 syntheticMetrics: - synthetic.metricsResponseTime - status - synthetic.errors order: by: start_time direction: DESC timeFrame: to: 0 windowSize: 144000000 TagFilterExpression: type: EXPRESSION elements: - type: EXPRESSION elements: - name: synthetic.errors stringValue: Exception operator: CONTAINS logicalOperator: OR logicalOperator: OR analyticFunction: LAST_VALUE schema: $ref: '#/components/schemas/GetTestResultAnalytic' responses: '200': content: application/json: example: items: - testResultCommonProperties: testId: 9i6gpys6whaYtN5k9VeD testName: My_Test_ReadFile locationId: DemoPoP1_saas_instana_test clientId: saas_instana_test id: 8f3bedbb-e278-4584-81b8-6efe07286a55 errors: - |- {timeStamp=1706131087368, errorType=Exception, errorMessage=access to path /etc/pop/redispass/redis-password is denied, stackTrace=Error: access to path /etc/pop/redispass/redis-password is denied at /opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1750914 at Array.forEach () at s (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1750876) at Object.openSync (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1751693) at VM Wrapper.apply (vm/bridge.js:468:15) at /tmp/9i6gpys6whaYtN5k9VeD/script.js:7:13 at /tmp/9i6gpys6whaYtN5k9VeD/script.js:21:3 at VM Wrapper.apply (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1806330) at k.run (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1771939) at Object.e.exports.execute (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1739863) at process. (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:2197562) at Object.onceWrapper (node:events:628:26) at process.emit (node:events:513:28) at emit (node:internal/child_process:946:14) at processTicksAndRejections (node:internal/process/task_queues:84:21)} locationDisplayLabel: DemoPoP1(vm) metrics: response_time: - - 1706131087358 - 9 status: - - 1706131087358 - 0 - testResultCommonProperties: testId: QRN50tqvJPnwKIjn2qKx testName: Demo_IBM_simple_ping locationId: DemoPoP1_saas_instana_test clientId: saas_instana_test id: 7f503812-c428-4ea8-995d-dbdf97c145b7 errors: - '{timeStamp=1706131070262, errorType=Exception, errorMessage=Ping: http://httpbin.org/status/200%2C400 -> Expected a success status (status < 400) but got 400, stackTrace=}' locationDisplayLabel: DemoPoP1(vm) metrics: response_time: - - 1706131070111 - 149 status: - - 1706131070111 - 0 - testResultCommonProperties: testId: mfwdxHpvwXM1PGUBAFeP testName: test-disable-api-simple-jul17 locationId: f7cEoG61DJfVyWcDnWsc clientId: saas_instana_test id: a1a4ed1c-7c87-45d5-bf45-3f3c462445d7 errors: - |- {timeStamp=1706131069537, errorType=Exception, errorMessage=Unable to parse response body as JSON: Unexpected token < in JSON at position 0, stackTrace=Error: Unable to parse response body as JSON: Unexpected token < in JSON at position 0 at /opt/ibm/microservice/javascript-playback/bin/index.js:2:1057667 at k. (/opt/ibm/microservice/javascript-playback/bin/index.js:2:1058257) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:96:5)} locationDisplayLabel: Test-Pop-101 metrics: response_time: - - 1706131069036 - 490 status: - - 1706131069036 - 0 page: 1 pageSize: 3 totalHits: 14305 schema: $ref: '#/components/schemas/TestResultListResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get a list of Synthetic tests based on the specified analytic function tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true /api/synthetics/results/list: post: description: |- Get a list of playback results metrics for Synthetic tests matching the specified parameters For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getSyntheticResultList requestBody: content: application/json: example: pagination: page: 1 pageSize: 3 syntheticMetrics: - synthetic.metricsResponseTime - status - synthetic.errors order: by: start_time direction: DESC timeFrame: to: 0 windowSize: 144000000 TagFilterExpression: type: EXPRESSION elements: - type: EXPRESSION elements: - name: synthetic.errors stringValue: Exception operator: CONTAINS logicalOperator: OR logicalOperator: OR schema: $ref: '#/components/schemas/GetTestResultList' responses: '200': content: application/json: example: items: - testResultCommonProperties: testId: 9i6gpys6whaYtN5k9VeD testName: My_Test_ReadFile locationId: DemoPoP1_saas_instana_test clientId: saas_instana_test id: 8f3bedbb-e278-4584-81b8-6efe07286a55 errors: - |- {timeStamp=1706131087368, errorType=Exception, errorMessage=access to path /etc/pop/redispass/redis-password is denied, stackTrace=Error: access to path /etc/pop/redispass/redis-password is denied at /opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1750914 at Array.forEach () at s (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1750876) at Object.openSync (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1751693) at VM Wrapper.apply (vm/bridge.js:468:15) at /tmp/9i6gpys6whaYtN5k9VeD/script.js:7:13 at /tmp/9i6gpys6whaYtN5k9VeD/script.js:21:3 at VM Wrapper.apply (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1806330) at k.run (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1771939) at Object.e.exports.execute (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:1739863) at process. (/opt/ibm/microservice/javascript-playback/bin/vm/runner.bundle.js:2:2197562) at Object.onceWrapper (node:events:628:26) at process.emit (node:events:513:28) at emit (node:internal/child_process:946:14) at processTicksAndRejections (node:internal/process/task_queues:84:21)} locationDisplayLabel: DemoPoP1(vm) metrics: response_time: - - 1706131087358 - 9 status: - - 1706131087358 - 0 - testResultCommonProperties: testId: QRN50tqvJPnwKIjn2qKx testName: Demo_IBM_simple_ping locationId: DemoPoP1_saas_instana_test clientId: saas_instana_test id: 7f503812-c428-4ea8-995d-dbdf97c145b7 errors: - '{timeStamp=1706131070262, errorType=Exception, errorMessage=Ping: http://httpbin.org/status/200%2C400 -> Expected a success status (status < 400) but got 400, stackTrace=}' locationDisplayLabel: DemoPoP1(vm) metrics: response_time: - - 1706131070111 - 149 status: - - 1706131070111 - 0 - testResultCommonProperties: testId: mfwdxHpvwXM1PGUBAFeP testName: test-disable-api-simple-jul17 locationId: f7cEoG61DJfVyWcDnWsc clientId: saas_instana_test id: a1a4ed1c-7c87-45d5-bf45-3f3c462445d7 errors: - |- {timeStamp=1706131069537, errorType=Exception, errorMessage=Unable to parse response body as JSON: Unexpected token < in JSON at position 0, stackTrace=Error: Unable to parse response body as JSON: Unexpected token < in JSON at position 0 at /opt/ibm/microservice/javascript-playback/bin/index.js:2:1057667 at k. (/opt/ibm/microservice/javascript-playback/bin/index.js:2:1058257) at runMicrotasks () at processTicksAndRejections (node:internal/process/task_queues:96:5)} locationDisplayLabel: Test-Pop-101 metrics: response_time: - - 1706131069036 - 490 status: - - 1706131069036 - 0 page: 1 pageSize: 3 totalHits: 14305 schema: $ref: '#/components/schemas/TestResultListResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get a list of Synthetic test playback results tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true /api/synthetics/results/locationsummarylist: post: description: |- Get summary information for Synthetic locations matching the specified parameters For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getLocationSummaryList requestBody: content: application/json: example: timeFrame: to: null windowSize: 300000 pagination: page: 1 pageSize: 3 schema: $ref: '#/components/schemas/GetTestResultBase' responses: '200': content: application/json: example: items: - id: wFulJMRXA3bZgAlhCuZV label: test101-pop displayLabel: west-12(Idaho) type: Private status: Online linkedTests: 0 lastRunOn: 0 namespace: my-kedatest clusterName: test101-pop description: PoP in region test101 for my-kedatest popSnapshotId: null popVersion: 1.1.2 - id: 0po5d5MxSZx91moqCbri label: apminstana-pop displayLabel: apminstana-pop type: Private status: Online linkedTests: 12 lastRunOn: 0 namespace: redwood clusterName: apminstana-pop description: This is a Synthetic Point of Presence popSnapshotId: ZFOBIU_Stg9FWs4DMRVY7VTSmBs entityHealthInfo: maxSeverity: 0 openIssues: [] popVersion: 1.1.1 - id: c7sXV7jZcuiD2ewGAjYI label: Aggie displayLabel: Aggie popLoc type: Private status: Offline linkedTests: 9 lastRunOn: 0 namespace: poploc clusterName: instana-pop-deployment description: My City Kubecost popSnapshotId: null popVersion: 1.0.15 page: 1 pageSize: 3 totalHits: 47 schema: $ref: '#/components/schemas/TestResultListResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get a list of Synthetic locations with last run test on each location data tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true /api/synthetics/results/testsummarylist: post: description: |- Get a summary of the playback results metrics and success rate for Synthetic tests matching the specified parameters For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getTestSummaryList requestBody: content: application/json: example: metrics: - aggregation: MEAN metric: success_rate granularity: 600 TagFilterExpression: type: EXPRESSION elements: - name: synthetic.testActive booleanValue: true operator: EQUALS logicalOperator: AND timeFrame: to: 0 windowSize: 1800000 pagination: page: 1 pageSize: 3 schema: $ref: '#/components/schemas/GetTestSummaryResult' responses: '200': content: application/json: example: items: - testResultCommonProperties: testId: 0FzZz41QwOxPjOUE0VhU testName: 260-browserwebpage clientId: saas_instana_test testCommonProperties: id: 0FzZz41QwOxPjOUE0VhU label: 260-browserwebpage type: Webpage Simple frequency: 3 active: true locationIds: - KHphVmZqqRf9Kp2xSoud - cs1RvxTXJcavxnbQ6fBE locationLabels: - microk8s_PoP - mini_PoP2_BrowserTest locationDisplayLabels: - MicroK8s PoP - mini_PoP2_BrowserTest locationStatusList: - locationId: KHphVmZqqRf9Kp2xSoud totalTestRuns: 10 successRuns: 10 locationDisplayLabel: MicroK8s PoP successRate: 1 - locationId: cs1RvxTXJcavxnbQ6fBE totalTestRuns: 0 successRuns: 0 locationDisplayLabel: mini_PoP2_BrowserTest successRate: 0 createdAt: 1697175933150 modifiedAt: 1700456221719 metrics: total_test_runs: - - 1706132249095 - 10 successful_test_runs: - - 1706132249095 - 10 response_time: - - 1706132249095 - 372.9 success_rate: - - 1706132249095 - 1 - testResultCommonProperties: testId: 0OKldV7M44UfDxmNt1Ef testName: Syne2eHttpActionTest clientId: saas_instana_test testCommonProperties: id: 0OKldV7M44UfDxmNt1Ef label: Syne2eHttpActionTest type: API Simple frequency: 5 active: true locationIds: - 18WyhtDb5jpVOsjlNdeV locationLabels: - Syne2e locationDisplayLabels: - E2ETest PoP locationStatusList: - locationId: 18WyhtDb5jpVOsjlNdeV totalTestRuns: 6 successRuns: 6 locationDisplayLabel: E2ETest PoP successRate: 1 createdAt: 1703867554340 modifiedAt: 1703867554340 metrics: total_test_runs: - - 1706132249095 - 6 successful_test_runs: - - 1706132249095 - 6 response_time: - - 1706132249095 - 157.5 success_rate: - - 1706132249095 - 1 - testResultCommonProperties: testId: 0qB3qb9659JBJ86bflnf testName: Syne2eHttpActionTest clientId: saas_instana_test testCommonProperties: id: 0qB3qb9659JBJ86bflnf label: Syne2eHttpActionTest type: API Simple frequency: 5 active: true locationIds: - 18WyhtDb5jpVOsjlNdeV locationLabels: - Syne2e locationDisplayLabels: - E2ETest PoP locationStatusList: - locationId: 18WyhtDb5jpVOsjlNdeV totalTestRuns: 6 successRuns: 6 locationDisplayLabel: E2ETest PoP successRate: 1 createdAt: 1702269153825 modifiedAt: 1702269153825 metrics: total_test_runs: - - 1706132249095 - 6 successful_test_runs: - - 1706132249095 - 6 response_time: - - 1706132249095 - 178.66666666666666 success_rate: - - 1706132249095 - 1 page: 1 pageSize: 3 totalHits: 567 schema: $ref: '#/components/schemas/TestResultListResult' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get a list of Synthetic tests with success rate and average response time data tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true '/api/synthetics/results/{testid}/{testresultid}': get: description: |- Gets the list of detailed data file names associated to a Synthetic playback result For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getSyntheticResultMetadata parameters: - description: Test id of the test result detailed description to be retrieved example: AMl0Y7tsvpp8XXrXt1XO in: path name: testid required: true schema: type: string - description: Test result id of the test result detailed description to be retrieved example: 5623c161-31d6-49b8-b314-91d4fb598f55 in: path name: testresultid required: true schema: type: string - description: Start time of the test result detailed description example: 1730295066008 in: query name: startTime schema: type: integer format: int64 responses: '200': content: application/json: example: testId: AMl0Y7tsvpp8XXrXt1XO testResultId: 5623c161-31d6-49b8-b314-91d4fb598f55 startTime: 1730295066008 metadata: logs.tgz: - console.log schema: $ref: '#/components/schemas/TestResultMetadata' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get Synthetic test playback detail result description(metadata) tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true '/api/synthetics/results/{testid}/{testresultid}/detail': get: description: |- Download the contents of the Synthetic the playback result detail data file matching the specified file type For more information on Synthetic Test Playback Results please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-test-playback-results. operationId: getSyntheticResultDetailData parameters: - description: Test id of the test result detailed file contents to be retrieved example: AMl0Y7tsvpp8XXrXt1XO in: path name: testid required: true schema: type: string - description: Test result id of the test result detailed file to be retrieved example: 5623c161-31d6-49b8-b314-91d4fb598f55 in: path name: testresultid required: true schema: type: string - description: Type of the test result detailed file contents example: LOGS in: query name: type required: true schema: type: string enum: - HAR - LOGS - SUBTRANSACTIONS - description: 'Name of the test result detailed file, if more than one file available for the same type. Can be used when parameter type=LOGS' example: console.log in: query name: name schema: type: string - description: Start time of the test result detailed file contents example: 1730295066008 in: query name: startTime schema: type: integer format: int64 responses: '200': content: application/json: example: testId: AMl0Y7tsvpp8XXrXt1XO testResultId: 5623c161-31d6-49b8-b314-91d4fb598f55 logs: | 2024-01-18T19:55:02.162Z [SyntheticPoP] synthetic playback starts 2024-01-18T19:55:02.169Z [SyntheticPoP] http request undefined https://www.ibm.com/ 2024-01-18T19:55:02.319Z [SyntheticPoP] http response 303 for https://www.ibm.com/ 2024-01-18T19:55:02.430Z [SyntheticPoP] http response 200 for https://www.ibm.com/us-en 2024-01-18T19:55:02.478Z http request 1/2: 200 2024-01-18T19:56:01.103Z [SyntheticPoP] synthetic playback ends logFiles: console.log: | 2024-01-18T19:55:02.162Z [SyntheticPoP] synthetic playback starts 2024-01-18T19:55:02.169Z [SyntheticPoP] http request undefined https://www.ibm.com/ 2024-01-18T19:55:02.319Z [SyntheticPoP] http response 303 for https://www.ibm.com/ 2024-01-18T19:55:02.430Z [SyntheticPoP] http response 200 for https://www.ibm.com/us-en 2024-01-18T19:55:02.478Z http request 1/2: 200 2024-01-18T19:56:01.103Z [SyntheticPoP] synthetic playback ends schema: $ref: '#/components/schemas/TestResultDetailData' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get Synthetic test playback result detail data tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true '/api/synthetics/results/{testid}/{testresultid}/file': get: operationId: getSyntheticResultDetailDataFile parameters: - description: Test id of the test result detailed file to be retrieved example: AMl0Y7tsvpp8XXrXt1XO in: path name: testid required: true schema: type: string - description: Test result id of the test result detailed file to be retrieved example: 5623c161-31d6-49b8-b314-91d4fb598f55 in: path name: testresultid required: true schema: type: string - description: Type of the test result detailed file example: LOGS in: query name: type required: true schema: type: string enum: - HAR - IMAGES - LOGS - SUBTRANSACTIONS - VIDEOS - description: Start time of the test result detailed file example: 1730295066008 in: query name: startTime schema: type: integer format: int64 responses: '200': content: application/octet-stream: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Download the synthetic test playback result detail data file tags: - Synthetic Test Playback Results x-ibm-ahub-byok: true /api/synthetics/settings/credentials: get: description: |- API request to retrieve the names of all Synthetic Credentials. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticCredentialNames responses: '200': content: application/json: example: - kittyhawk_test2 - user1_password - user1_name - MyBearer - MY_CREDS333 - Test_Creds - credName5 - credName4 - credName3 - credName2 - credName1 - MY_CREDS1 - MY_PASS - USER_NAME_TEST schema: type: array items: type: string description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canUseSyntheticCredentials - canConfigureSyntheticTests summary: All Synthetic credential names tags: - Synthetic Settings x-ibm-ahub-byok: true post: description: |- API request to create a Synthetic Credential. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: createSyntheticCredential requestBody: content: application/json: example: credentialName: userPassword credentialValue: '123456' rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticCredential' required: true responses: '200': content: application/json: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticCredentials summary: Create a Synthetic credential tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/credentials/associations: get: description: |- API request to retrieve all Synthetic Credentials. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticCredentialAssociations responses: '200': content: application/json: example: - credentialName: password1 createdAt: 1717617206785 modifiedAt: 1717617206785 - credentialName: password2 applications: - f4KX5zd8RW2pERKKFUCZgQ applicationLabels: - All Services createdAt: 1717620972843 modifiedAt: 1717620972843 schema: type: array items: $ref: '#/components/schemas/SyntheticCredential' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canUseSyntheticCredentials - canConfigureSyntheticTests summary: All Synthetic credentials tags: - Synthetic Settings x-ibm-ahub-byok: true '/api/synthetics/settings/credentials/associations/{name}': get: description: |- API request to retrieve a Synthetic Credential with matching name. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getOneSyntheticCredentialAssociations parameters: - description: Name of the credential to be retrieved example: password4test in: path name: name required: true schema: type: string responses: '200': content: application/json: example: credentialName: password4test applications: - f4KX5zd8RW2pERKKFUCZgQ applicationLabels: - All Services createdAt: 1717620972843 modifiedAt: 1717620972843 schema: $ref: '#/components/schemas/SyntheticCredential' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canUseSyntheticCredentials - canConfigureSyntheticTests summary: A Synthetic credential tags: - Synthetic Settings x-ibm-ahub-byok: true '/api/synthetics/settings/credentials/{name}': delete: description: |- API request to delete a Synthetic Credential. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: deleteSyntheticCredential parameters: - description: Name of the credential to be deleted example: password4test in: path name: name required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticCredentials summary: Delete a Synthetic credential tags: - Synthetic Settings x-ibm-ahub-byok: true patch: operationId: patchSyntheticCredential parameters: - description: Name of the credential to be patched example: password4test in: path name: name required: true schema: type: string requestBody: content: application/json: example: credentialValue: password4test applications: - f4KX5zd8RW2pERKKFUCZgQ rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticCredential' required: true responses: '200': content: application/json: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canUseSyntheticCredentials - canConfigureSyntheticTests summary: Patch a Synthetic credential tags: - Synthetic Settings x-ibm-ahub-byok: true put: description: |- API request to update a Synthetic Credential. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: updateSyntheticCredential parameters: - description: Name of the credential to be updated example: password4db2 in: path name: name required: true schema: type: string requestBody: content: application/json: example: credentialName: password4db2 credentialValue: '123456' applications: - f4KX5zd8RW2pERKKFUCZgQ rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticCredential' required: true responses: '201': content: application/json: {} description: Successful - resource created '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticCredentials summary: Update a Synthetic credential tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/datacenters: get: description: |- API request to retrieve all Synthetic Datacenters. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticDatacenters responses: '200': content: application/json: example: - code: us-east-1 label: us-east-1(NVirginia) provider: aws countryName: USA cityName: NVirginia latitude: 37.22 longitude: -81.44 status: Active modifiedAt: 1728096600396 configuration: ipAddresses: - 34.226.13.189 locationLabel: instana-test-aws-us-east-1-NVirginia datacenterId: aws-us-east-1-NVirginia - code: eu-central-1 label: eu-central-1(Frankfurt) provider: aws countryName: DEU cityName: Frankfurt latitude: 50.11 longitude: 8.68 status: Active modifiedAt: 1710241599981 configuration: ipAddresses: - 3.122.151.177 locationLabel: instana-test-aws-eu-central-1-Frankfurt datacenterId: aws-eu-central-1-Frankfurt schema: type: array items: $ref: '#/components/schemas/SyntheticDatacenter' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticLocations summary: All Synthetic datacenters tags: - Synthetic Settings x-ibm-ahub-byok: true '/api/synthetics/settings/datacenters/{datacenterId}': get: description: |- API request to retrieve a Synthetic Datacenter with matching id. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticDatacenter parameters: - description: Id of the datacenter to be retrieved example: aws-us-east-1-NVirginia in: path name: datacenterId required: true schema: type: string responses: '200': content: application/json: example: code: us-east-1 label: us-east-1(NVirginia) provider: aws countryName: USA cityName: NVirginia latitude: 37.22 longitude: -81.44 status: Active modifiedAt: 1728096600396 configuration: ipAddresses: - 34.226.13.189 locationLabel: instana-test-aws-us-east-1-NVirginia datacenterId: aws-us-east-1-NVirginia schema: $ref: '#/components/schemas/SyntheticDatacenter' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticLocations summary: A Synthetic datacenter tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/locations: get: operationId: getSyntheticLocations parameters: - description: Defines the attribute by which the returned synthetic locations will be ordered by. Order using '+' means ASC and '-' means DESC example: +label in: query name: sort schema: type: string pattern: ' <+|->' - description: Used in conjunction with limit. Defines how many pages will be skipped before returning the synthetic locations example: 1 in: query name: offset schema: type: integer format: int64 - description: Defines the size of a page - the number of synthetic locations that will be returned by the query example: 10 in: query name: limit schema: type: integer format: int64 - description: Defines the attributes by which the returned synthetic locations will be filtered by. Multiple filter parameters are allowed. See 'Supported filter attributes and operators' for complete list of supported attributes and operators. example: '{locationType=Managed}' in: query name: filter schema: type: string pattern: ' {}' responses: '200': content: application/json: example: - id: 55bzhnXQ9uqwld4Ha3bD label: Austin displayLabel: AUTO popVersion: 1.1.2 description: My Location 101 locationType: Private playbackCapabilities: syntheticType: - HTTPAction - HTTPScript - BrowserScript - WebpageScript browserType: - firefox - chrome geoPoint: cityName: austin countryName: india latitude: 0 longitude: 0 totalTests: 1 configuration: namespace: syn-pop-tls customProperties: {} createdAt: 1698742890784 modifiedAt: 1702372728619 observedAt: 1704266105229 status: Offline - id: OjJPXWHmsE9deLzanNAW label: Dallas displayLabel: AUTOscaling popVersion: 1.1.1 description: My Location 101 locationType: Private playbackCapabilities: syntheticType: - HTTPAction - HTTPScript - BrowserScript - WebpageScript browserType: - firefox - chrome geoPoint: cityName: dallas countryName: india latitude: 0 longitude: 0 totalTests: 0 configuration: namespace: andy customProperties: {} createdAt: 1698988890723 modifiedAt: 1700116951600 observedAt: 1705556766316 status: Offline schema: type: array items: $ref: '#/components/schemas/SyntheticLocation' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - canViewSyntheticLocations summary: All Synthetic locations tags: - Synthetic Settings x-ibm-ahub-byok: true description: |+ This endpoint retrieves Synthetic Locations. ## Optional Parameters: - **filter** Filters the Synthetic Locations to retrieve only the ones that match the specified filter condition. Users are allowed to specify more than one filter parameter, and they will be combined in a single expression using logical operator 'AND'. The filter parameter is formatted as '**_{\\\ | < | \>= | <= | Example | |-|---|----|---|---|---|-|--------------------------------------------------------| | label | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={label=MyPoP} | | displayLabel | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={displayLabel=My PoP} | | popVersion | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={popVersion=1.1.9} | | description | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={description=My Test PoP} | | locationType | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={locationType=Private} | | playbackCapabilities.syntheticType | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={playbackCapabilities.syntheticType=HTTPAction} | | playbackCapabilities.browserType | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={playbackCapabilities.browserType=chrome} | | configuration.clusterName | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={configuration.clusterName=qa_cluster} | | configuration.namespace | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={configuration.namespace=test_pop} | | customProperties.\ | ✓ | ✓ | - | - | - | - | /api/ynthetics/settings/locations?filter={customProperty.usage=Test} | | createdAt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | /api/synthetics/settings/locations?filter={createdAt>1715190462000} | | modifiedAt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | /api/synthetics/settings/locations?filter={modifiedAt<=1715190462000} | | observerdAt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | /api/synthetics/settings/locations?filter={observedAt>=1715190462000} | '/api/synthetics/settings/locations/{id}': delete: operationId: deleteSyntheticLocation parameters: - description: Identifier of the location to be deleted example: 55bzhnXQ9uqwld4Ha3bD in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticLocations summary: Delete a Synthetic location tags: - Synthetic Settings x-ibm-ahub-byok: true description: |- This API endpoint deletes a synthetic location. Note: Users cannot use this API to delete managed locations. get: description: |- API request to retrieve a Synthetic Location with matching id. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticLocation parameters: - description: Identifier of the location to be retrieved example: OjJPXWHmsE9deLzanNAW in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: OjJPXWHmsE9deLzanNAW label: Austin displayLabel: AUTOscaling popVersion: 1.1.1 description: Test Location 101 locationType: Private playbackCapabilities: syntheticType: - HTTPAction - HTTPScript - BrowserScript - WebpageScript browserType: - firefox - chrome geoPoint: cityName: austin countryName: india latitude: 0 longitude: 0 totalTests: 0 configuration: namespace: andy customProperties: {} createdAt: 1698988890723 modifiedAt: 1700116951600 observedAt: 1705556766316 status: Offline schema: $ref: '#/components/schemas/SyntheticLocation' description: OK '401': description: Unauthorized access - requires user authentication. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canViewSyntheticLocations summary: A Synthetic location tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/tests: get: operationId: getSyntheticTests parameters: - description: 'Defines the application id by which the returned synthetic tests will be filtered by. ' example: pWoK4onRRN-POTz1RU62UQ in: query name: applicationId schema: type: string - description: 'Defines the location id by which the returned synthetic tests will be filtered by. ' example: 18WyhtDb5jpVOsjlNdeV in: query name: locationId schema: type: string - description: 'Defines the credential name by which the returned synthetic tests will be filtered by. ' example: adminPassword in: query name: credentialName schema: type: string - description: Defines the attribute by which the returned synthetic tests will be ordered by. Order using '+' means ASC and '-' means DESC example: +label in: query name: sort schema: type: string pattern: ' <+|->' - description: Used in conjunction with limit. Defines how many pages will be skipped before returning the synthetic tests example: 1 in: query name: offset schema: type: integer format: int64 - description: Defines the size of a page - the number of synthetic tests that will be returned by the query example: 10 in: query name: limit schema: type: integer format: int64 - description: Defines the attributes by which the returned synthetic tests will be filtered by. Multiple filter parameters are allowed. See 'Supported filter attributes and operators' for complete list of supported attributes and operators. example: '{label=MyTest}' in: query name: filter schema: type: string pattern: ' {}' responses: '200': content: application/json: example: - id: ic25Vt1T5dgKzi0K7812 tenantId: saas_instana_test label: 260-api-feature active: true testFrequency: 10 playbackMode: Simultaneous applicationId: UOGJ3jBOSMOgN2EBCoOghw applicationLabel: test_cb locations: - KHphVmZqqRf9Kp2xSoud - cs1RvxTXJcavxnbQ6fBE locationLabels: - microk8s_PoP - mini_PoP2_BrowserTest locationDisplayLabels: - MicroK8s PoP - mini_PoP2_BrowserTest configuration: syntheticType: HTTPScript markSyntheticCall: true retries: 1 retryInterval: 1 timeout: '' script: |- const assert = require('assert'); $got('https://www.ibm.com').then(response=>{ console.log('request 1/2:', response.statusCode); assert.equal(response.statusCode, 200, 'it should be 200') setTimeout(()=>{ $got('https://www.bing.com').then(response=>{ console.log('request 2/2:', response.statusCode); assert.equal(response.statusCode, 200, 'it should be 200') }) }, 70000); }); scriptType: Basic customProperties: {} createdAt: 1697175907759 modifiedAt: 1705915155144 - id: EFNRoPd39SgZBkULeQIf tenantId: saas_instana_test label: APITest_getApplication active: true testFrequency: 15 playbackMode: Simultaneous applicationId: UOGJ3jBOSMOgN2EBCoOghw applicationLabel: test_cb locations: - 18WyhtDb5jpVOsjlNdeV locationLabels: - Syne2e locationDisplayLabels: - E2ETest PoP configuration: syntheticType: HTTPScript markSyntheticCall: true retries: 2 retryInterval: 1 timeout: 10m script: |- const got = require('got'); const assert = require('assert'); // Define the API request configuration const apiConfig = { method: 'GET', url: 'https://test-instana.pink.instana.rocks/api/application-monitoring/settings/application/btg-B701Rx6o9QNXUS4TVw', headers: { 'Authorization': $secure.apiToken } }; // Function to perform the API test const performAPITest = async () => { const response = await got(apiConfig); console.info("Get one application API - GET, response code: " + response.statusCode); assert.ok(response.statusCode == 200, "GET status is " + response.statusCode + ", it should be 200"); const jsonBody = JSON.parse(response.body); assert.ok(jsonBody.id != "", "Application ID is not in the payload"); assert.ok(jsonBody.label != "", "Application label is not in the payload"); assert.ok(jsonBody.tagFilterExpression != null, "tagFilterExpression is not in the payload"); }; // Initial test performAPITest(); scriptType: Basic customProperties: test: '123' createdAt: 1696625954210 modifiedAt: 1701216106812 modifiedBy: Internal rbacTags: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/SyntheticTest' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canViewSyntheticTests summary: All Synthetic tests tags: - Synthetic Settings x-ibm-ahub-byok: true description: |+ This endpoint retrieves Synthetic Tests. ## Optional Parameters: - **locationId** Filters the Synthetic Tests to retrieve only the ones that are associated to the specified PoP location ID. - **filter** Filters the Synthetic Tests to retrieve only the ones that match the specified filter condition. Users are allowed to specify more than one filter parameter, and they will be combined in a single expression using logical operator 'AND'. The filter parameter is formatted as '**_{\\\ | < | \>= | <= | Example | |-|---|----|---|---|---|-|---------| | label | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={label=ABC} | | description | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={description=MyTest} | | active | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={active=true} | | testFrequency | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={testFrequency=5} | | applicationId | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={applicationId=APP_ID} | | locations | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={locations=POP_ID} | | locationLabels | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={locationLabels=MyPoP} | | locationDisplayLabels | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={locationDisplayLabels=My PoP} | | configuration.\ | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={configurtion.syntheticType=HTTPAction} | | customProperties.\ | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={customProperty.usage=Test} | | createdAt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | /api/synthetics/settings/tests?filter={createdAt>1715190462000} | | modifiedAt | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | /api/synthetics/settings/tests?filter={modifiedAt<=1715190462000} | post: operationId: createSyntheticTest requestBody: content: application/json: example: label: Test_SimplePing description: this is to test a simple ping API applicationId: applicationId001 active: true testFrequency: 1 playbackMode: Simultaneous locations: - saas_instana_test configuration: syntheticType: HTTPAction url: 'https://httpbin.org/post' operation: POST headers: Content-Type: text/plain body: Hello World! validationString: Hello World! customProperties: Team: DevTeam Purpose: Demo rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticTest' required: true responses: '201': content: application/json: example: id: ic25Vt1T5dgKzi0K7812 label: Test_SimplePing description: this is to test a simple ping API applicationId: applicationId001 active: true testFrequency: 1 playbackMode: Simultaneous locations: - saas_instana_test configuration: syntheticType: HTTPAction url: 'https://httpbin.org/post' operation: POST headers: Content-Type: text/plain body: Hello World! validationString: Hello World! customProperties: Team: DevTeam Purpose: Demo rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticTest' description: Successful - resource created '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Create a Synthetic test tags: - Synthetic Settings x-ibm-ahub-byok: true description: |- This API endpoint creates a Synthetic Test. ## Optional Parameters: - **id** Users are allowed to specify their own id for the test. A test id can contain letters, numbers, underscores, colons and hyphens. Maximum length is 128. ## Sample script and payload: - A sample script to create an API Simple test ``` curl -k -v -X POST \ https:///api/synthetics/settings/tests \ -H 'authorization: apiToken ' \ -H 'content-type: application/json' \ -d '{ "id":"test_id:12134-89", "label":"Test_SimplePing", "description":"this is to test a simple ping API", "serviceId":"serviceId001", "applicationId":"applicationId001", "active":true, "testFrequency":1, "playbackMode":"Simultaneous", "locations":[ "saas_instana_test" ], "configuration":{ "syntheticType":"HTTPAction", "url":"https://httpbin.org/post", "operation":"POST", "headers":{ "Content-Type":"text/plain" }, "body":"Hello World!", "validationString":"Hello World!" }, "customProperties":{ "Team":"DevTeam", "Purpose":"Demo" } }' ``` /api/synthetics/settings/tests/bulk-delete: post: description: API request to delete a list of Synthetic Tests. operationId: bulkDeleteSyntheticTests requestBody: content: application/json: example: - ic25Vt1T5dgKzi0K7812 - EFNRoPd39SgZBkULeQIf - kaj02pbxbW0XmQP9qu4b - FrhxAJzKdsXU6V4WxWrY schema: type: array items: type: string required: true responses: '200': content: application/json: example: - id: ic25Vt1T5dgKzi0K7812 status: 200 - Success - id: EFNRoPd39SgZBkULeQIf status: 404 - Not Found - id: kaj02pbxbW0XmQP9qu4b status: 401 - Forbidden - id: FrhxAJzKdsXU6V4WxWrY status: 500 - Internal Server Error schema: type: array items: $ref: '#/components/schemas/SyntheticBulkResponse' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Delete Synthetic tests tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/tests/bulk-update: post: description: API request to update a list of Synthetic Tests. operationId: bulkUpdateSyntheticTests requestBody: content: application/json: example: | { "ids" : [ "ic25Vt1T5dgKzi0K7812", "EFNRoPd39SgZBkULeQIf", "kaj02pbxbW0XmQP9qu4b", "FrhxAJzKdsXU6V4WxWrY" ], "locations": { "add": [ "hGyJAQCTnMbpmWrYfbq6", "RMtD8XkRHmxG5N0IT418" ], "remove": ["AOsPYuhGjpFHpNgWub90"], }, "applications": { "add": [ "XRVRqG3zLNDKlJUho90j" ] }, "configuration": { "timeout": "1s" }, "customProperties": { "add": { "property1": "Test" }, "remove": ["property2", "property3"], } { schema: $ref: '#/components/schemas/SyntheticTestUpdate' required: true responses: '200': content: application/json: example: - id: ic25Vt1T5dgKzi0K7812 status: 200 - Success - id: EFNRoPd39SgZBkULeQIf status: 404 - Not Found - id: kaj02pbxbW0XmQP9qu4b status: 401 - Forbidden - id: FrhxAJzKdsXU6V4WxWrY status: 500 - Internal Server Error schema: type: array items: $ref: '#/components/schemas/SyntheticBulkResponse' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Update Synthetic tests tags: - Synthetic Settings x-ibm-ahub-byok: true /api/synthetics/settings/tests/ci-cd: get: operationId: getSyntheticTestCICDs parameters: - description: Defines the attributes by which the returned synthetic test CI/CDs will be filtered by. Multiple filter parameters are allowed. See 'Supported filter attributes and operators' for complete list of supported attributes and operators. example: '{runType=OnDemand}' in: query name: filter schema: type: string pattern: ' {}' - description: Used in conjunction with limit. Defines how many pages will be skipped before returning the synthetic test CI/CDs example: 1 in: query name: offset schema: type: integer format: int64 - description: Defines the size of a page - the number of synthetic test CI/CDs that will be returned by the query example: 10 in: query name: limit schema: type: integer format: int64 responses: '200': content: application/json: example: - testResultId: e22aba08-e630-422d-8d7a-19b8a1c75d32 locationId: r4zo4DjbORqEAES2c8xj locationLabel: SynTest testId: 5ufGW4jOnZNhViGmIbnx testLabel: test testType: HTTPAction runType: OnDemand completed: false customization: configuration: retries: 1 timeout: 15s customProperties: tag: test - testResultId: 0cf1324b-3022-4116-ae03-6c868daa43d4 locationId: r4zo4DjbORqEAES2c8xj locationLabel: SynTest testId: 5ufGW4jOnZNhViGmIbnx testLabel: test testType: HTTPAction runType: OnDemand completed: false customization: configuration: retries: 2 timeout: 5s schema: type: array items: $ref: '#/components/schemas/SyntheticTestCICDItem' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: All Synthetic test CI/CDs tags: - Synthetic Settings x-ibm-ahub-byok: true description: | This endpoint retrieves Synthetic Test CI/CDs. ## Optional Parameters: - **filter** Filters the Synthetic Test CI/CDs to retrieve only the ones that match the specified filter condition. Users are allowed to specify more than one filter parameter, and they will be combined in a single expression using logical operator 'AND'. The filter parameter is formatted as '**_{\\\ | < | \>= | <= | Example | |-|---|----|---|---|---|-|-----------------------------------------------------------------------------| | locationId | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={locationId=9xblOq15RyzLj2koBWwc} | | testId | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/locations?filter={testId=m3P10zF5up6HJqp8JeVp} | | runType | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={runType=CI/CD} | | completed | ✓ | ✓ | - | - | - | - | /api/synthetics/settings/tests?filter={completed=true} | post: operationId: createSyntheticTestCICD requestBody: content: application/json: example: - testId: K331gkuCbelN1HI5y1wl customization: locations: - 8mCxCPOI7oEmMSee4ec0 - lalQTzq7MwO6hZ6c6xDd configuration: timeout: 100ms retries: 2 customProperties: Team: DevTeam Purpose: Demo schema: type: array items: $ref: '#/components/schemas/SyntheticTestCICD' required: true responses: '200': content: application/json: example: - testResultId: f078443e-468c-4e35-b614-979ad9200fe4 testId: K331gkuCbelN1HI5y1wl locationId: 8mCxCPOI7oEmMSee4ec0 - testResultId: 2cba4974-c73a-45ea-ad63-77c44c19bd36 testId: K331gkuCbelN1HI5y1wl locationId: lalQTzq7MwO6hZ6c6xDd schema: type: array items: $ref: '#/components/schemas/SyntheticTestCICDResponse' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Create a Synthetic test CI/CD tags: - Synthetic Settings x-ibm-ahub-byok: true description: |- This API endpoint creates an OnDemand Execution of Synthetic Tests to be used on CI/CD Integrations. ## Mandatory Parameters: - **testId** The id of the test to be executed upon request. - **customization.locations** The ids of the locations where the test needs to be executed. - ## Optional Parameters: - **customization.configuration** An configuration object with properties timeout, retries and retryInterval, used to override the test defined configuration. - **customization.customProperties** An object with name/value pairs to provide additional information to this Synthetic Test CI/CD execution. - ## Sample script and payload: - A sample script to create a Synthetic Test CI/CD ``` curl -k -v -X POST \ https:///api/synthetics/settings/tests/ci-cd \ -H 'authorization: apiToken ' \ -H 'content-type: application/json' \ -d '[ { "testId":"pdVai8bqov1ta9Wq0Fnw", "customization":{ "locations":[ "DNCYizgM3cju2Xnap24Z" ], "configuration":{ "timeout":"5s", "retryInterval":1, "retries":2 }, "customProperties" : { "type":"Build" } } } ]' ``` '/api/synthetics/settings/tests/ci-cd/{testResultId}': get: operationId: getSyntheticTestCICD parameters: - description: The synthetic test result id of the CI/CD to be retrieved example: 0cf1324b-3022-4116-ae03-6c868daa43d4 in: path name: testResultId required: true schema: type: string responses: '200': content: application/json: example: testResultId: 0cf1324b-3022-4116-ae03-6c868daa43d4 locationId: r4zo4DjbORqEAES2c8xj locationLabel: SynTest testId: 5ufGW4jOnZNhViGmIbnx testLabel: test testType: HTTPAction runType: OnDemand completed: false customization: configuration: retries: 2 timeout: 5s schema: $ref: '#/components/schemas/SyntheticTestCICDItem' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: A Synthetic test CI/CD. tags: - Synthetic Settings x-ibm-ahub-byok: true '/api/synthetics/settings/tests/{id}': delete: description: |- API request to delete a Synthetic Test. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: deleteSyntheticTest parameters: - description: Id of the synthetic test to be deleted example: ic25Vt1T5dgKzi0K7812 in: path name: id required: true schema: type: string responses: '204': description: Successful - no content to return. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Delete a Synthetic test tags: - Synthetic Settings x-ibm-ahub-byok: true get: description: |- API request to retrieve a Synthetic Test with matching id. For more information on Synthetic Settings please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Synthetic+Monitoring#synthetic-settings. operationId: getSyntheticTest parameters: - description: Id of the synthetic test to be retrieved example: EFNRoPd39SgZBkULeQIf in: path name: id required: true schema: type: string responses: '200': content: application/json: example: id: EFNRoPd39SgZBkULeQIf tenantId: saas_instana_test label: APITest_getApplication active: true testFrequency: 15 playbackMode: Simultaneous applicationId: UOGJ3jBOSMOgN2EBCoOghw applicationLabel: test_cb locations: - 18WyhtDb5jpVOsjlNdeV locationLabels: - Syne2e locationDisplayLabels: - E2ETest PoP configuration: syntheticType: HTTPScript markSyntheticCall: true retries: 2 retryInterval: 1 timeout: 10m script: |- const got = require('got'); const assert = require('assert'); // Define the API request configuration const apiConfig = { method: 'GET', url: 'https://test-instana.pink.instana.rocks/api/application-monitoring/settings/application/btg-B701Rx6o9QNXUS4TVw', headers: { 'Authorization': $secure.apiToken } }; // Function to perform the API test const performAPITest = async () => { const response = await got(apiConfig); console.info("Get one application API - GET, response code: " + response.statusCode); assert.ok(response.statusCode == 200, "GET status is " + response.statusCode + ", it should be 200"); const jsonBody = JSON.parse(response.body); assert.ok(jsonBody.id != "", "Application ID is not in the payload"); assert.ok(jsonBody.label != "", "Application label is not in the payload"); assert.ok(jsonBody.tagFilterExpression != null, "tagFilterExpression is not in the payload"); }; // Initial test performAPITest(); scriptType: Basic customProperties: test: '123' createdAt: 1696625954210 modifiedAt: 1701216106812 modifiedBy: Internal rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticTest' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - canViewSyntheticTests summary: A Synthetic test tags: - Synthetic Settings x-ibm-ahub-byok: true patch: operationId: patchSyntheticTest parameters: - description: Id of the synthetic test to be patched example: ic25Vt1T5dgKzi0K7812 in: path name: id required: true schema: type: string requestBody: content: application/json: example: active: true configuration: scripts: null script: //script goes here rbacTags: - id: test displayName: test schema: $ref: '#/components/schemas/SyntheticTest' required: true responses: '200': content: application/json: {} description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Patch a Synthetic test tags: - Synthetic Settings x-ibm-ahub-byok: true description: |- This API endpoint updates selected attributes of a Synthetic Test. - All attributes listed as in the schema, including the required ones, are optional for this call. - Synthetic Test configuration properties set to null will be removed from the configuration. - Patching an array attribute will replace the entire array with the full set of values provided. - For major updates to the Synthetic Test or to remove main attributes, see "Update a Synthetic test" ## Sample script and payload: - A sample script to patch a simple HTTP Script Test to enable it and to switch from multi-scripts to single script. ``` curl -k -v -X PATCH \ https:///api/synthetics/settings/tests/Ilfs9bW97KkTxuyGtxBF \ -H 'authorization: apiToken ' \ -H 'content-type: application/json' \ -d '{ "active" : true, "configuration" : { "scripts" : null, "script" : "//script goes here" } }' ``` put: operationId: updateSyntheticTest parameters: - description: Id of the synthetic test to be updated example: ic25Vt1T5dgKzi0K7812 in: path name: id required: true schema: type: string requestBody: content: application/json: example: id: ic25Vt1T5dgKzi0K7812 label: Test_SimplePing description: this is to test a simple ping API applicationId: applicationId001 active: true testFrequency: 1 playbackMode: Simultaneous locations: - saas_instana_test configuration: syntheticType: HTTPAction url: 'https://httpbin.org/post' operation: POST headers: Content-Type: text/plain body: Hello World! validationString: Hello World! customProperties: Team: DevTeam Purpose: Demo rbacTags: - id: JxrVZtRtTUGug71K1oYMcw displayName: tests schema: $ref: '#/components/schemas/SyntheticTest' required: true responses: '200': content: application/json: {} description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - canConfigureSyntheticTests summary: Update a Synthetic test tags: - Synthetic Settings x-ibm-ahub-byok: true /api/website-monitoring/analyze/beacon-groups: post: description: |- API request to get grouped website monitoring beacon metrics. For more information on Website Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Websites+&+Mobile+Apps. operationId: getBeaconGroups parameters: - in: query name: fillTimeSeries schema: type: boolean requestBody: content: application/json: example: metrics: - metric: beaconCount aggregation: SUM granularity: 60 group: groupByTag: beacon.page.name tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: beacon.website.name operator: EQUALS entity: NOT_APPLICABLE value: robot-shop - type: TAG_FILTER name: beacon.location.path operator: EQUALS entity: NOT_APPLICABLE value: /checkout timeFrame: to: null windowSize: 3600000 type: PAGELOAD schema: $ref: '#/components/schemas/GetWebsiteBeaconGroups' responses: '200': content: application/json: example: items: - name: Check Out earliestTimestamp: 1707019058453 cursor: '@class': .IngestionOffsetCursor ingestionTime: 1707022593250 offset: 1 metrics: beaconCount.sum.60: - - 1707019020000 - 1 - - 1707019080000 - 3 canLoadMore: false totalHits: 1 totalRepresentedItemCount: 1 totalRetainedItemCount: 1 adjustedTimeframe: windowSize: 3600000 to: 1707022620000 schema: $ref: '#/components/schemas/WebsiteBeaconGroupsResult' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get grouped beacon metrics tags: - Website Analyze x-ibm-ahub-byok: true /api/website-monitoring/analyze/beacons: post: description: |- API request to get all website monitoring beacons with matching type. For more information on Website Analyze please access the https://developer.ibm.com/apis/catalog/instana--instana-rest-api/Websites+&+Mobile+Apps. operationId: getBeacons requestBody: content: application/json: example: tagFilterExpression: type: TAG_FILTER name: beacon.website.name operator: EQUALS entity: NOT_APPLICABLE value: robot-shop timeFrame: to: null windowSize: 3600000 type: PAGELOAD schema: $ref: '#/components/schemas/GetWebsiteBeacons' responses: '200': content: application/json: example: items: - beacon: websiteId: Example website ID websiteLabel: robot-shop page: Products phase: pageLoad timestamp: 1707023459363 clockSkew: 356 duration: 240 batchSize: 1 accurateTimingsAvailable: true deprecations: [] pageLoadId: 0cea1830450a460 sessionId: 899e5d28e5c6402 beaconId: 00cea1830450a460 backendTraceId: ef968a97dd967268 type: pageLoad customEventName: '' meta: stage: production status: silver locationUrl: 'http://robotshop.instana.com/products' locationOrigin: 'http://robotshop.instana.com' locationPath: /products errorCount: 0 errorMessage: '' errorId: '' errorType: '' parsedStackTrace: [] componentStack: '' userIp: 195.140.0.0 userId: Example User Id userName: Example User Name userEmail: example@example.com userLanguages: - en-GB deviceType: '' connectionType: 4g browserName: Chrome browserVersion: '73' osName: Windows osVersion: '10' windowHidden: false windowWidth: 1149 windowHeight: 1008 latitude: 51.5088 longitude: -0.093 accuracyRadius: 20 city: London subdivision: England subdivisionCode: ENG country: United Kingdom countryCode: GB continent: Europe continentCode: EU httpCallUrl: '' httpCallOrigin: '' httpCallPath: '' httpCallMethod: '' httpCallStatus: -1 httpCallCorrelationAttempted: false httpCallAsynchronous: false initiator: html resourceType: document cacheInteraction: '' encodedBodySize: -1 decodedBodySize: -1 transferSize: -1 unloadTime: 0 redirectTime: 0 appCacheTime: 0 dnsTime: 0 tcpTime: 0 sslTime: 0 requestTime: 42 responseTime: 1 processingTime: -1 onLoadTime: 1 backendTime: 51 frontendTime: -1 domTime: -1 childrenTime: 5 firstPaintTime: 331 firstContentfulPaintTime: 331 largestContentfulPaintTime: 331 firstInputDelayTime: -1 cumulativeLayoutShift: -1 cspBlockedUri: '' cspEffectiveDirective: '' cspOriginalPolicy: '' cspDisposition: '' cspSample: '' cspSourceFile: '' cspLineNumber: -1 cspColumnNumber: -1 snippetVersion: '2' httpCallHeaders: {} cursor: '@class': .IngestionOffsetCursor ingestionTime: 1707023459959 offset: 1 schema: $ref: '#/components/schemas/WebsiteBeaconResult' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get all beacons tags: - Website Analyze x-ibm-ahub-byok: true /api/website-monitoring/catalog: get: operationId: getWebsiteTagCatalog parameters: - description: beaconType example: pageLoad in: query name: beaconType required: true schema: type: string - description: useCase example: GROUPING in: query name: useCase required: true schema: type: string enum: - GROUPING - FILTERING - SERVICE_MAPPING - SMART_ALERTS - SMART_ALERTS_LOGS - SMART_ALERTS_ADAPTIVE_BASELINE - SMART_ALERTS_CUSTOM_PAYLOAD - SLI_MANAGEMENT - APPLICATION_CONFIG - APPLICATION_CONFIG_BLUEPRINT - MAINTENANCE_WINDOWS - BIZOPS_CUSTOM_DASHBOARDS_FILTERING responses: '200': content: application/json: example: tagTree: - label: Commonly Used description: null icon: null children: - label: Website Label description: Name of the website as configured within the Instana user interface. tagName: beacon.website.name type: TAG tags: - name: beacon.type label: Beacon Type type: STRING description: null canApplyToSource: false canApplyToDestination: false idTag: false schema: $ref: '#/components/schemas/TagCatalog' description: OK '400': description: When the combination of beaconType and useCase is unsupported/unknown. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get website tag catalog tags: - Website Catalog x-ibm-ahub-byok: true /api/website-monitoring/catalog/metrics: get: operationId: getWebsiteCatalogMetrics responses: '200': content: application/json: example: - metricId: beaconDuration label: Beacon duration formatter: LATENCY description: The recorded duration for a beacon. aggregations: - P25 - MEAN - MAX - P95 - P90 - SUM - P98 - P99 - MIN - P75 - P50 defaultAggregation: null beaconTypes: - pageLoad - resourceLoad - custom - httpRequest pathToValueInBeacon: - duration tagName: beacon.duration - metricId: pageLoads label: Page loads formatter: NUMBER description: How often a full page load occurred. This typically requires retrieval of an HTML document from a server (unless cached) and then the full onLoad cycle. aggregations: - SUM defaultAggregation: null beaconTypes: - pageLoad pathToValueInBeacon: null tagName: null schema: type: array items: $ref: '#/components/schemas/WebsiteMonitoringMetricDescription' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Metric catalog tags: - Website Catalog x-ibm-ahub-byok: true description: | This endpoint retrieves all available metric definitions for website monitoring. /api/website-monitoring/catalog/tags: get: operationId: getWebsiteCatalogTags responses: '200': content: application/json: example: - name: beacon.sessionId type: STRING category: WEBSITE canApplyToSource: false canApplyToDestination: false sourceValueAvailableFrom: 0 schema: type: array items: $ref: '#/components/schemas/Tag' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get all existing website tags tags: - Website Catalog x-ibm-ahub-byok: true description: "This endpoint retrieves all available tags for your monitored system.\n\nThese tags can be used to group metric results.\n```\n\"group\": {\n \"groupbyTag\": \"beacon.page.name\"\n}\n```\n\nThese tags can be used to filter metric results.\n```\n\"tagFilters\": [{\n\t\"name\": \"beacon.website.name\",\n\t\"operator\": \"EQUALS\",\n\t\"value\": \"example\"\n}]\n```\n" /api/website-monitoring/config: get: description: API request to get all configured websites details. operationId: getWebsites responses: '200': content: application/json: example: - id: K3bP-bmCRkyimNai9vvq8o name: example_website appName: example_website rbacTags: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/Website' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get configured websites tags: - Website Configuration x-ibm-ahub-byok: true post: description: API request to add new website. operationId: createWebsite parameters: - in: query name: name schema: type: string requestBody: content: application/json: example: - id: test displayName: test schema: type: array items: type: object properties: displayName: type: string description: Name of team tag id: type: string description: ID of team tag responses: '200': content: application/json: example: id: K3bP-bmCRkyimNai9vvq8o name: example_website appName: example_website schema: $ref: '#/components/schemas/Website' description: Website successfully configured '400': description: Missing name query parameter or name already used for a configured website '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Configure new website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}': delete: description: API request to delete website. operationId: deleteWebsite parameters: - description: Website ID example: K3bP-bmCRkyimNai9vvq8o in: path name: websiteId required: true schema: type: string responses: '204': description: Website successfully removed '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Remove website tags: - Website Configuration x-ibm-ahub-byok: true get: description: API request to get configured website details for specified websiteId operationId: getWebsite parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string responses: '200': content: application/json: example: |2 { "id": "1ELrNt-eQ9SlK4D_EgLMiA", "name": "example_website", "appName": "example_website" "rbacTags: [{ "id": "test", "displayName": "test" }] } schema: $ref: '#/components/schemas/Website' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get configured website tags: - Website Configuration x-ibm-ahub-byok: true put: description: API request to rename website. operationId: renameWebsite parameters: - description: Website ID example: K3bP-bmCRkyimNai9vvq8o in: path name: websiteId required: true schema: type: string - in: query name: name schema: type: string responses: '200': content: application/json: example: id: K3bP-bmCRkyimNai9vvq8o name: example_website appName: example_website schema: $ref: '#/components/schemas/Website' description: Website successfully renamed '400': description: Missing name query parameter or name already used for a configured website '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Rename website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/geo-location': get: description: API request to get geo-location configuration of a website specified by its websiteId operationId: getWebsiteGeoLocationConfiguration parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string responses: '200': content: application/json: example: geoDetailRemoval: NO_REMOVAL geoMappingRules: [] schema: $ref: '#/components/schemas/GeoLocationConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Get geo location configuration for website tags: - Website Configuration x-ibm-ahub-byok: true put: description: API request to update geo location configuration for website. operationId: updateWebsiteGeoLocationConfiguration parameters: - description: Website ID example: iiLxP1zaTuCS7fyk9m4W0W in: path name: websiteId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/GeoLocationConfiguration' responses: '200': content: application/json: schema: $ref: '#/components/schemas/GeoLocationConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Update geo location configuration for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/geo-mapping-rules': get: description: API request to get custom geo mapping rules for website. operationId: getWebsiteGeoMappingRules parameters: - description: Website ID example: iiLxP1zaTuCS7fyk9m4W0W in: path name: websiteId required: true schema: type: string responses: '200': content: text/csv: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Get custom geo mapping rules for website tags: - Website Configuration x-ibm-ahub-byok: true put: description: API request to set custom geo mapping rules for website. operationId: setWebsiteGeoMappingRules parameters: - description: Website ID example: K3bP-bmCRkyimNai9vvq8o in: path name: websiteId required: true schema: type: string requestBody: content: text/csv: schema: type: string responses: '200': content: text/csv: {} description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '415': description: Unsupported Media Type. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Set custom geo mapping rules for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/ip-masking': get: description: API request to get IP masking configuration of a website specified by its websiteId operationId: getWebsiteIpMaskingConfiguration parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string responses: '200': content: application/json: example: ipMasking: DEFAULT schema: $ref: '#/components/schemas/IpMaskingConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Get IP masking configuration for website tags: - Website Configuration x-ibm-ahub-byok: true put: description: API request to update IP masking configuration for website. operationId: updateWebsiteIpMaskingConfiguration parameters: - description: Website ID example: iiLxP1zaTuCS7fyk9m4W0W in: path name: websiteId required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/IpMaskingConfiguration' responses: '200': content: application/json: schema: $ref: '#/components/schemas/IpMaskingConfiguration' description: OK '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Update IP masking configuration for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/sourcemap-upload': get: description: API request to get all sourcemap upload configurations for website. operationId: getWebsiteSourceMapUploadConfigurations parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string responses: '200': content: application/json: example: configs: - id: 67f84a0b117c99e description: websiteSourcemapUploadConfig1 createdAt: 1747978171.2347815 modifiedAt: 1747978171.2347815 metadata: [] schema: $ref: '#/components/schemas/SourceMapUploadConfigs' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. summary: Get all sourcemap upload configurations for website tags: - Website Configuration x-ibm-ahub-byok: true post: description: API request to add sourcemap upload configuration for website. operationId: postWebsiteSourceMapUploadConfig parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string requestBody: content: application/json: example: description: websiteSourcemapConfig2 schema: type: object description: Source map upload configuration properties: description: type: string description: Name of configuration responses: '200': content: application/json: example: id: 5894971d635094e7 description: websiteSourcemapConfig2 createdAt: 1747980062.6018546 modifiedAt: 1747980062.6018546 metadata: [] schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: Website sourcemap upload configuration added successfully '400': description: Missing description or description already used for a configuration. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '422': description: Unprocessable request - missing/invalid data. '500': description: Internal server error. summary: Add new sourcemap upload configuration for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/sourcemap-upload/{sourceMapConfigId}': delete: description: API request to delete sourcemap upload configuration for website. operationId: deleteWebsiteSourceMapUploadConfiguration parameters: - description: Website ID example: 1ELrNt-eQ9SlK4D_EgLMiA in: path name: websiteId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '204': description: Sourcemap configuration successfully deleted or sourcemap not found '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. summary: Delete sourcemap upload configuration for website tags: - Website Configuration x-ibm-ahub-byok: true get: description: API request to get sourcemap upload configuration for website. operationId: getWebsiteSourceMapUploadConfiguration parameters: - in: path name: websiteId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '200': content: application/json: example: id: 67f84a0b117c99e description: websiteSourcemapUploadConfig1 createdAt: 1747978171.2347815 modifiedAt: 1747978171.2347815 metadata: [] schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: OK '401': description: Unauthorized access - requires user authentication. '500': description: Internal server error. summary: Get sourcemap upload configurations for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/sourcemap-upload/{sourceMapConfigId}/clear': put: description: API request to clear source map files for sourcemap upload configuration. operationId: clearSourceMapUploadConfiguration parameters: - description: Website ID example: UhzF-fWORlyVLHDlvutYYQ in: path name: websiteId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string responses: '204': description: Source map files in the source map upload configuration successfully cleared '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Clear source map files for sourcemap upload configuration tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/sourcemap-upload/{sourceMapConfigId}/form': put: description: API request to upload sourcemap file for website. operationId: uploadSourceMapFile parameters: - description: Website ID example: UhzF-fWORlyVLHDlvutYYQ in: path name: websiteId required: true schema: type: string - description: Source Map Config ID example: 97e0ad312110d3ad in: path name: sourceMapConfigId required: true schema: type: string requestBody: content: multipart/form-data: schema: type: object properties: fileFormat: type: string sourceMap: type: string format: binary description: Local Source Map file path url: type: string description: URL of the website required: - sourceMap - url responses: '200': content: application/json: example: id: 67f84a0b117c99e description: websiteSourcemapUploadConfig1 createdAt: 1747978171.2347815 modifiedAt: 1747978171.2347815 metadata: [] schema: $ref: '#/components/schemas/SourceMapUploadConfig' description: OK '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '404': description: Resource not found. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Upload sourcemap file for website tags: - Website Configuration x-ibm-ahub-byok: true '/api/website-monitoring/config/{websiteId}/teams': put: description: API request to update teams of a website. operationId: updateWebsiteTeams parameters: - in: path name: websiteId required: true schema: type: string requestBody: content: application/json: example: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/ApiTag' responses: '200': content: application/json: example: - id: test displayName: test schema: type: array items: $ref: '#/components/schemas/ApiTag' description: Website successfully configured '400': description: Bad request. '401': description: Unauthorized access - requires user authentication. '403': description: Insufficient permissions. '500': description: Internal server error. security: - ApiKeyAuth: - CanConfigureEumApplications summary: Update teams assigned to the website tags: - Website Configuration x-ibm-ahub-byok: true /api/website-monitoring/metrics: post: deprecated: true description: API request to get website monitoring beacon metrics. operationId: getBeaconMetrics requestBody: content: application/json: schema: $ref: '#/components/schemas/GetWebsiteMetrics' responses: '200': content: application/json: schema: $ref: '#/components/schemas/WebsiteMetricResult' description: OK security: - ApiKeyAuth: - Default summary: Get beacon metrics tags: - Website Metrics x-ibm-ahub-byok: true '/api/website-monitoring/page-load{id}{timestamp}': get: description: API request to get website monitoring beacons for a page load. operationId: getPageLoad parameters: - description: Identifier of the page load to be retrieved example: 63f5b070e8d9a597 in: path name: id required: true schema: type: string style: matrix - description: Timestamp of the page load to be retrieved example: 1707012285674 in: path name: timestamp required: true schema: type: integer format: int64 style: matrix responses: '200': content: application/json: example: - websiteId: example website id websiteLabel: robot-shop page: Home phase: pageLoad timestamp: 1707012285674 clockSkew: 447 duration: 120 batchSize: 1 accurateTimingsAvailable: true deprecations: [] pageLoadId: 974bca2eb13047c sessionId: e995a184bb4b4e0 beaconId: 0974bca2eb13047c backendTraceId: c92e3ec967ef173f type: pageLoad customEventName: '' meta: stage: production status: bronze locationUrl: 'http://robotshop.instana.com/' locationOrigin: 'http://robotshop.instana.com' locationPath: / errorCount: 0 errorMessage: '' errorId: '' errorType: '' parsedStackTrace: [] componentStack: '' userIp: 87.191.0.0 userId: example user id userName: example user name userEmail: example@example.com userLanguages: - de-DE deviceType: '' connectionType: 4g browserName: Firefox browserVersion: '63' osName: Ubuntu osVersion: '18' windowHidden: false windowWidth: 1149 windowHeight: 1008 latitude: 50.8021 longitude: 8.7857 accuracyRadius: 200 city: Weidenhausen subdivision: Hesse subdivisionCode: HE country: Germany countryCode: DE continent: Europe continentCode: EU httpCallUrl: '' httpCallOrigin: '' httpCallPath: '' httpCallMethod: '' httpCallStatus: 400 httpCallCorrelationAttempted: false httpCallAsynchronous: false initiator: html resourceType: document cacheInteraction: '' encodedBodySize: -1 decodedBodySize: -1 transferSize: -1 unloadTime: 0 redirectTime: 0 appCacheTime: 0 dnsTime: 0 tcpTime: 0 sslTime: 0 requestTime: 42 responseTime: 1 processingTime: -1 onLoadTime: 1 backendTime: 51 frontendTime: -1 domTime: -1 childrenTime: 5 firstPaintTime: 331 firstContentfulPaintTime: 331 largestContentfulPaintTime: 331 firstInputDelayTime: -1 cumulativeLayoutShift: -1 cspBlockedUri: '' cspEffectiveDirective: '' cspOriginalPolicy: '' cspDisposition: '' cspSample: '' cspSourceFile: '' cspLineNumber: -1 cspColumnNumber: -1 snippetVersion: '2' httpCallHeaders: {} parentBeaconId: '' interactionNextPaint: -1 schema: type: array items: $ref: '#/components/schemas/WebsiteMonitoringBeacon' description: OK '400': description: Bad request. '404': description: Resource not found. security: - ApiKeyAuth: - Default summary: Get page load tags: - Website Metrics x-ibm-ahub-byok: true /api/website-monitoring/v2/metrics: post: description: API request to get website monitoring beacon metrics. operationId: getBeaconMetricsV2 requestBody: content: application/json: example: metrics: - metric: beaconCount aggregation: SUM tagFilterExpression: type: EXPRESSION logicalOperator: AND elements: - type: TAG_FILTER name: beacon.website.name operator: EQUALS entity: NOT_APPLICABLE value: robot-shop - type: TAG_FILTER name: beacon.location.path operator: EQUALS entity: NOT_APPLICABLE value: / timeFrame: to: null windowSize: 3600000 type: PAGELOAD schema: $ref: '#/components/schemas/GetWebsiteMetricsV2' responses: '200': content: application/json: example: metrics: beaconCount.sum: - - 1706856180000 - 100 adjustedTimeFrame: windowSize: 3540000 to: 1706856180000 schema: $ref: '#/components/schemas/MetricAPIResult' description: OK '401': description: Unauthorized access - requires user authentication. '404': description: Resource not found. '422': description: Unprocessable request - missing/invalid data. '500': description: Internal server error. security: - ApiKeyAuth: - Default summary: Get beacon metrics tags: - Website Metrics x-ibm-ahub-byok: true components: schemas: AbstractIntegration: type: object discriminator: mapping: BIDIRECTIONAL_MS_TEAMS: '#/components/schemas/BidirectionalMsTeamsAppIntegration' BIDIRECTIONAL_SLACK: '#/components/schemas/BidirectionalSlackAppIntegration' EMAIL: '#/components/schemas/EmailIntegration' GOOGLE_CHAT: '#/components/schemas/GoogleChatIntegration' OFFICE_365: '#/components/schemas/Office365Integration' OPS_GENIE: '#/components/schemas/OpsgenieIntegration' PAGER_DUTY: '#/components/schemas/PagerdutyIntegration' PROMETHEUS_WEBHOOK: '#/components/schemas/PrometheusWebhookIntegration' SALESFORCE: '#/components/schemas/SalesforceIntegration' SERVICE_NOW_APPLICATION: '#/components/schemas/ServiceNowEnhancedIntegration' SERVICE_NOW_WEBHOOK: '#/components/schemas/ServiceNowIntegration' SLACK: '#/components/schemas/SlackIntegration' SPLUNK: '#/components/schemas/SplunkIntegration' VICTOR_OPS: '#/components/schemas/VictorOpsIntegration' WATSON_AIOPS_WEBHOOK: '#/components/schemas/WatsonAIOpsWebhookIntegration' WEBEX_TEAMS_WEBHOOK: '#/components/schemas/WebexTeamsWebhookIntegration' WEB_HOOK: '#/components/schemas/WebhookIntegration' Z_CHATOPS: '#/components/schemas/ZChatOpsIntegration' propertyName: kind properties: id: type: string description: Unique ID of the returned Alert Channel kind: type: string description: The type of the Alerting Channel. name: type: string description: The name of the Alerting Channel. required: - id - kind - name AbstractRule: type: object discriminator: mapping: entity_count: '#/components/schemas/EntityCountRule' entity_count_verification: '#/components/schemas/EntityCountVerificationRule' entity_verification: '#/components/schemas/EntityVerificationRule' host_availability: '#/components/schemas/HostAvailabilityRule' system: '#/components/schemas/SystemRule' threshold: '#/components/schemas/ThresholdRule' propertyName: ruleType properties: ruleType: type: string severity: type: integer format: int32 required: - ruleType AccessLogEntry: type: object properties: action: type: string enum: - GRANT_TEMP_ACCESS - FIRST_LOGIN - LOGIN - ACCESS - FAILED_LOGIN - LOGOUT - CREATE_API_TOKEN_BY_POLICY - IDP_MAPPING email: type: string fullName: type: string message: type: string meta: type: object additionalProperties: type: object tenantId: type: string tenantUnitId: type: string timestamp: type: integer format: int64 minimum: 1118583367265 required: - action - email - fullName - tenantId AccessLogResponse: type: object properties: entries: type: array items: $ref: '#/components/schemas/AccessLogEntry' total: type: integer format: int64 AccessRule: type: object properties: accessType: type: string description: |+ Specifies the type of access permitted. `READ`: Only viewing Application Perspective is allowed. `READ_WRITE`: Both viewing and modifying Application Perspective are permitted. enum: - READ - READ_WRITE relatedId: type: string description: | An identifier that connects the access rule to a specific entity. For example, if the `relationType` is `USER`, the corresponding `relatedId` would be a user id. **Note**: when `relationType` is `GLOBAL`, `relatedId` is `null`. maxLength: 64 minLength: 0 relationType: type: string description: | Defines the type of relationship or subject to which the access rule applies. `USER`: Access is granted to an individual user. `API_TOKEN`: Access is granted to a specific API token. `ROLE`: Access is granted based on a user role, applying to any user with that role. `TEAM`: Access is granted to a team, likely applying to all team members. `GLOBAL`: Access is granted to every user or service. enum: - USER - API_TOKEN - ROLE - TEAM - GLOBAL required: - accessType - relationType Action: type: object description: 'Automation action definition. When this is used in policy creation request, only `id` should be specified.' properties: createdAt: type: string format: date-time description: Action created time. description: type: string description: Action description. maxLength: 512 minLength: 0 fields: type: array description: List of fields that describe an action. items: $ref: '#/components/schemas/Field' id: type: string description: Action identifier. maxLength: 128 minLength: 1 inputParameters: type: array description: List of inputs to the action. items: $ref: '#/components/schemas/Parameter' metadata: $ref: '#/components/schemas/MetaData' modifiedAt: type: string format: date-time description: Action modified time. name: type: string description: Action name. maxLength: 128 minLength: 1 tags: type: array description: List of tags added to the action. items: type: string description: List of tags added to the action. type: type: string description: 'Action type can be one of the following values: SCRIPT, HTTP, ANSIBLE, EXTERNAL, GITHUB, GITLAB, JIRA, MANUAL, DOC_LINK' enum: - SCRIPT - HTTP - ANSIBLE - EXTERNAL - GITHUB - GITLAB - JIRA - MANUAL - DOC_LINK maxLength: 128 minLength: 0 required: - createdAt - id - modifiedAt - name - type ActionConfiguration: type: object description: List of action configurations. properties: action: $ref: '#/components/schemas/Action' agentId: type: string description: Identifier of the agent host on which to run the action. inputParameterValues: type: array description: List of action input parameters. items: $ref: '#/components/schemas/ParameterValue' required: - action ActionInstance: type: object properties: actionDescription: type: string description: Action description of the action to run. actionId: type: string description: Action identifier of the action to run. actionInstanceId: type: string description: Action run identifier. readOnly: true actionName: type: string description: Action name of the action to run. actionSnapshot: type: string description: Snapshot of the action definition. readOnly: true actorId: type: string description: 'User identifier, API token or the policy identifier that started the action run.' actorName: type: string description: 'Name of the user, API token or the policy that started the action run.' actorType: type: string description: Type of Actor. Valid values are listed in the enum definition. enum: - ACTOR_UNKNOWN - USER - APITOKEN - POLICY createdDate: type: integer format: int64 description: Action run created timestamp. The timestamp at which the action run got submitted. endDate: type: integer format: int64 description: Action run end timestamp. The timestamp at which the action run ended on the agent host. errorMessage: type: string description: 'Error message, if any, of action run on the agent host.' eventEntityType: type: string description: Event entity type set in the event that triggered this action run. eventId: type: string description: Event identifier of the event that triggered this action run. eventSpecificationId: type: string description: Event specification identifier of the event that triggered this action run. externalSourceType: type: string description: If the action type is external this field contains the name of the external source. hostSnapshotId: type: string description: Host snapshot identifier of the agent on which the action ran. inputParameters: type: array description: List of input parameters to this action run. items: $ref: '#/components/schemas/ActionInstanceParameter' metadata: type: array description: List of metadata parameters set to this action run by sensors. items: $ref: '#/components/schemas/ActionInstanceMetadataEntry' output: type: string description: Action run output. policyId: type: string description: Identifier of the policy that triggered this action run. problemText: type: string description: Event problem text of the event that triggered this action run. returnCode: type: integer format: int32 description: Return code of action run on the agent host. startDate: type: integer format: int64 description: Action run start timestamp. The timestamp at which the action run started on the agent host. status: type: string description: Action run status. Valid values are listed in the enum definition. enum: - STATUS_UNKNOWN - SUBMITTED - IN_PROGRESS - SUCCESS - FAILED - READY - TIMEOUT targetSnapshotId: type: string description: Action target entity identifier set in the event that triggered this action run. This is the identifier of the entity on which an incident or issue was raised. type: type: string description: Action type. Valid values are listed in the enum definition. enum: - SCRIPT - HTTP - ANSIBLE - EXTERNAL - GITHUB - GITLAB - JIRA - MANUAL - DOC_LINK required: - actionId - actionName - type ActionInstanceMetadataEntry: type: object description: List of metadata parameters set to this action run by sensors. properties: name: type: string description: Metadata name. value: type: string description: Metadata value. required: - name ActionInstanceParameter: type: object description: List of input parameters to this action run. properties: displayName: type: string description: Parameter display name. name: type: string description: Parameter name. type: type: string description: 'Parameter type. Valid values are `static`, `dynamic` or `vault`' value: type: string description: Parameter value. required: - displayName - name ActionInstanceRequest: type: object properties: actionId: type: string description: Action identifier of the action to run. async: type: string description: '`"true"` if the action should be run in asynchronous mode `"false"` otherwise. Default is `"true"`.' eventId: type: string description: Event identifier (incident or issue) associated with the policy. hostId: type: string description: Agent host identifier on which to run the action. inputParameters: type: array description: Action run input parameters. items: $ref: '#/components/schemas/ActionInstanceRequestParameters' policyId: type: string description: Policy identifier that associates the action trigger (incident or issue) to the action to run. timeout: type: string description: Action run time out. Default is `30 seconds`. required: - actionId - hostId ActionInstanceRequestParameters: type: object description: Action run input parameters. properties: name: type: string description: Name of the input parameter. type: type: string description: 'Type of the input parameter. Valid values are `static`, `dynamic` or `vault`. Default is `static`.' value: type: string description: Value of the input parameter required: - name - value ActionMatch: type: object properties: action: $ref: '#/components/schemas/Action' aiEngine: type: string enum: - POLICY - EVENT_SIMILARITY - NLP - SUCCESS_RATE - TURBONOMIC - WATSONX confidence: type: string policy: $ref: '#/components/schemas/Policy' score: type: number format: double required: - aiEngine - confidence - score ActionSearchSpace: type: object properties: description: type: string description: The description of an incident or issue. entityType: type: string description: The entity type associated with the incident or issue. eventId: type: string description: The event identifier associated with the incident or issue. name: type: string description: The name of an incident or issue. required: - name AdaptiveBaseline: type: object allOf: - $ref: '#/components/schemas/Threshold' - type: object properties: deviationFactor: type: number format: double exclusiveMaximum: false exclusiveMinimum: false maximum: 16 minimum: 0.5 required: - operator AdaptiveThresholdRule: type: object allOf: - $ref: '#/components/schemas/ThresholdConfigRule' - type: object properties: deviationFactor: type: number format: double exclusiveMaximum: false exclusiveMinimum: false maximum: 16 minimum: 0.5 Addition: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperation' required: - left - right AdjustedTimeframe: type: object description: | Time frame provided in API request is slightly adjusted in response for faster API response. For example, In request payload, if timeframe is 08:03 - 14:03, which is a 6 hour window size. It is adjusted to 08:05 - 14:00 Another example, In request payload, if timeframe is 08:20 - 08:20 (next day) which is a 24h window size. It is adjusted to 08:30 - 08:00 (next day) properties: to: type: integer format: int64 description: 'end of timeframe expressed as the Unix epoch time in milliseconds. Eg: `ISO 8601` standard time `2024-06-27T05:05:55.615Z` can be represented as `1719464755615` in Unix epoch time in milliseconds.' windowSize: type: integer format: int64 description: windowSize in milliseconds minimum: 0 required: - to AgentConfigurationUpdate: type: object properties: remoteBranch: type: string maxLength: 256 minLength: 0 remoteName: type: string maxLength: 256 minLength: 0 remoteUri: type: string maxLength: 65536 minLength: 0 AlertingConfiguration: type: object properties: alertName: type: string description: Name of the Alert Configuration. maxLength: 256 minLength: 0 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/StaticStringField' maxItems: 20 minItems: 0 eventFilteringConfiguration: $ref: '#/components/schemas/EventFilteringConfiguration' id: type: string description: ID of the Alert Configuration. maxLength: 64 minLength: 0 includeEntityNameInLegacyAlerts: type: boolean description: To include the entity name in a legacy alert based on built-in/custom events. integrationIds: type: array description: List of Alert Channel IDs added in this Alert Configuration. items: type: string description: List of Alert Channel IDs added in this Alert Configuration. maxItems: 1024 minItems: 0 uniqueItems: true muteUntil: type: integer format: int64 description: 'Timer dictating how long the Alert Configuration will stay muted. A value of `0` means the Alert Configuration is currently enabled. Otherwise, the Alert Configuration is currently disabled (muted).' required: - alertName - customPayloadFields - eventFilteringConfiguration - id - integrationIds AlertingConfigurationWithLastUpdated: type: object properties: alertName: type: string description: Name of the Alert Configuration. maxLength: 256 minLength: 0 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/StaticStringField' maxItems: 20 minItems: 0 eventFilteringConfiguration: $ref: '#/components/schemas/EventFilteringConfiguration' id: type: string description: ID of the Alert Configuration. maxLength: 64 minLength: 0 includeEntityNameInLegacyAlerts: type: boolean description: To include the entity name in a legacy alert based on built-in/custom events. integrationIds: type: array description: List of Alert Channel IDs added in this Alert Configuration. items: type: string description: List of Alert Channel IDs added in this Alert Configuration. maxItems: 1024 minItems: 0 uniqueItems: true lastUpdated: type: integer format: int64 description: Unix timestamp representing the time the configuration was last updated. minimum: 1 muteUntil: type: integer format: int64 description: 'Timer dictating how long the Alert Configuration will stay muted. A value of `0` means the Alert Configuration is currently enabled. Otherwise, the Alert Configuration is currently disabled (muted).' required: - alertName - customPayloadFields - eventFilteringConfiguration - id - integrationIds AlertingTimeWindow: type: object properties: duration: type: integer format: int32 durationType: type: string enum: - millisecond - second - minute - hour - day - week - month durationUnit: type: string enum: - millisecond - second - minute - hour - day - week - month writeOnly: true required: - duration - durationType ApdexConfiguration: type: object properties: apdexEntity: $ref: '#/components/schemas/ApdexEntity' apdexName: type: string description: Name of the Apdex Configuration maxLength: 256 minLength: 0 createdAt: type: integer format: int64 description: Created Date of Apdex Configuration id: type: string description: Apdex Configuration ID maxLength: 64 minLength: 0 required: - apdexEntity - apdexName - id ApdexConfigurationInput: type: object properties: apdexEntity: $ref: '#/components/schemas/ApdexEntity' apdexName: type: string description: Name of the Apdex Configuration maxLength: 256 minLength: 0 required: - apdexEntity - apdexName ApdexEntity: type: object description: Entity which holds the information of Apdex Configuration discriminator: mapping: application: '#/components/schemas/ApplicationApdexEntity' website: '#/components/schemas/WebsiteApdexEntity' propertyName: apdexType properties: apdexType: type: string entityId: type: string tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: type: integer format: int32 minimum: 1 required: - apdexType - entityId - tagFilterExpression ApdexReport: type: object properties: apdexId: type: string description: Apdex Configuration ID apdexScore: type: array description: Apdex Score in different timestamps from starting to the ending point items: type: array description: Apdex Score in different timestamps from starting to the ending point items: type: number description: Apdex Score in different timestamps from starting to the ending point from: type: integer format: int64 description: 'Starting point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' to: type: integer format: int64 description: 'Ending point for the data retrieval, specified as 13 digit Unix Timestamp milliseconds' ApiCreateGroup: type: object properties: members: type: array items: $ref: '#/components/schemas/ApiMember' uniqueItems: true name: type: string permissionSet: $ref: '#/components/schemas/ApiPermissionSet' required: - members - name - permissionSet ApiCreateRole: type: object properties: members: type: array items: $ref: '#/components/schemas/ApiMember' uniqueItems: true name: type: string permissions: type: array items: type: string maxItems: 1024 minItems: 0 uniqueItems: true required: - name ApiGroup: type: object properties: id: type: string maxLength: 64 minLength: 0 members: type: array items: $ref: '#/components/schemas/ApiMember' uniqueItems: true name: type: string permissionSet: $ref: '#/components/schemas/ApiPermissionSet' required: - id - members - name - permissionSet ApiMember: type: object properties: email: type: string name: type: string userId: type: string required: - userId ApiPermissionSet: type: object properties: actionFilter: $ref: '#/components/schemas/ScopeBinding' applicationIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true businessPerspectiveIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true infraDfqFilter: $ref: '#/components/schemas/ScopeBinding' kubernetesClusterUUIDs: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true kubernetesNamespaceUIDs: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true mobileAppIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true permissions: type: array items: type: string maxItems: 1024 minItems: 0 uniqueItems: true restrictedApplicationFilter: $ref: '#/components/schemas/ApiRestrictedApplicationFilter' sloIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true syntheticCredentialKeys: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true syntheticTestIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true websiteIds: type: array items: $ref: '#/components/schemas/ScopeBinding' maxItems: 1024 minItems: 0 uniqueItems: true required: - applicationIds - businessPerspectiveIds - infraDfqFilter - kubernetesClusterUUIDs - kubernetesNamespaceUIDs - mobileAppIds - permissions - sloIds - syntheticCredentialKeys - syntheticTestIds - websiteIds ApiRestrictedApplicationFilter: type: object properties: label: type: string restrictingApplicationId: type: string scope: type: string enum: - INCLUDE_NO_DOWNSTREAM - INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING - INCLUDE_ALL_DOWNSTREAM tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' ApiRole: type: object properties: id: type: string members: type: array items: $ref: '#/components/schemas/ApiMember' uniqueItems: true name: type: string permissions: type: array items: type: string uniqueItems: true required: - id - members - name - permissions ApiTag: type: object properties: displayName: type: string maxLength: 256 minLength: 0 id: type: string maxLength: 64 minLength: 0 required: - displayName - id ApiTeam: type: object properties: id: type: string maxLength: 64 minLength: 0 info: $ref: '#/components/schemas/ApiTeamInfo' members: type: array items: $ref: '#/components/schemas/ApiTeamMember' uniqueItems: true scope: $ref: '#/components/schemas/ApiTeamScope' tag: type: string maxLength: 256 minLength: 0 required: - tag ApiTeamInfo: type: object properties: description: type: string maxLength: 2048 minLength: 0 ApiTeamMember: type: object properties: email: type: string name: type: string roles: type: array items: $ref: '#/components/schemas/ApiTeamRole' uniqueItems: true userId: type: string required: - userId ApiTeamRole: type: object properties: roleId: type: string roleName: type: string viaIdP: type: boolean required: - roleId ApiTeamScope: type: object properties: accessPermissions: type: array items: type: string enum: - LIMITED_APPLICATIONS_SCOPE - LIMITED_WEBSITES_SCOPE - LIMITED_KUBERNETES_SCOPE - LIMITED_MOBILE_APPS_SCOPE - LIMITED_INFRASTRUCTURE_SCOPE - LIMITED_SYNTHETICS_SCOPE - LIMITED_BIZOPS_SCOPE - LIMITED_GEN_AI_SCOPE - LIMITED_AUTOMATION_SCOPE - LIMITED_LOGS_SCOPE - LIMITED_ALERT_CHANNELS_SCOPE - LIMITED_VSPHERE_SCOPE - LIMITED_PHMC_SCOPE - LIMITED_POWERVC_SCOPE - LIMITED_ZHMC_SCOPE - LIMITED_PCF_SCOPE - LIMITED_OPENSTACK_SCOPE - LIMITED_SAP_SCOPE - LIMITED_NUTANIX_SCOPE - LIMITED_XENSERVER_SCOPE - LIMITED_WINDOWS_HYPERVISOR_SCOPE - LIMITED_LINUX_KVM_HYPERVISOR_SCOPE - LIMITED_AI_GATEWAY_SCOPE - LIMITED_SERVICE_LEVEL_SCOPE uniqueItems: true actionFilter: type: string applications: type: array items: type: string uniqueItems: true businessPerspectives: type: array items: type: string uniqueItems: true infraDfqFilter: type: string kubernetesClusters: type: array items: type: string uniqueItems: true kubernetesNamespaces: type: array items: type: string uniqueItems: true logFilter: type: string mobileApps: type: array items: type: string uniqueItems: true restrictedApplicationFilter: $ref: '#/components/schemas/ApiRestrictedApplicationFilter' sloIds: type: array items: type: string uniqueItems: true syntheticCredentials: type: array items: type: string uniqueItems: true syntheticTests: type: array items: type: string uniqueItems: true tagIds: type: array items: type: string uniqueItems: true websites: type: array items: type: string uniqueItems: true ApiToken: type: object properties: accessGrantingToken: type: string canConfigureAgentRunMode: type: boolean canConfigureAgents: type: boolean canConfigureAiAgents: type: boolean canConfigureApdex: type: boolean canConfigureApiTokens: type: boolean canConfigureApplicationSmartAlerts: type: boolean canConfigureApplications: type: boolean canConfigureAuthenticationMethods: type: boolean canConfigureAutomationActions: type: boolean canConfigureAutomationPolicies: type: boolean canConfigureBizops: type: boolean canConfigureDatabaseManagement: type: boolean canConfigureEumApplications: type: boolean canConfigureEventsAndAlerts: type: boolean canConfigureGlobalAlertPayload: type: boolean canConfigureGlobalApplicationSmartAlerts: type: boolean canConfigureGlobalInfraSmartAlerts: type: boolean canConfigureGlobalLogSmartAlerts: type: boolean canConfigureGlobalSyntheticSmartAlerts: type: boolean canConfigureIntegrations: type: boolean canConfigureLLM: type: boolean canConfigureLogManagement: type: boolean canConfigureLogRetentionPeriod: type: boolean canConfigureMaintenanceWindows: type: boolean canConfigureMobileAppMonitoring: type: boolean canConfigureMobileAppSmartAlerts: type: boolean canConfigurePersonalApiTokens: type: boolean canConfigureReleases: type: boolean canConfigureServiceLevelCorrectionWindows: type: boolean canConfigureServiceLevelSmartAlerts: type: boolean canConfigureServiceLevels: type: boolean canConfigureServiceMapping: type: boolean canConfigureSessionSettings: type: boolean canConfigureSubtraces: type: boolean canConfigureSyntheticCredentials: type: boolean canConfigureSyntheticLocations: type: boolean canConfigureSyntheticTests: type: boolean canConfigureTeams: type: boolean canConfigureUsers: type: boolean canConfigureWebsiteSmartAlerts: type: boolean canCreateHeapDump: type: boolean canCreatePublicCustomDashboards: type: boolean canCreateThreadDump: type: boolean canDeleteAutomationActionHistory: type: boolean canDeleteLogs: type: boolean canEditAllAccessibleCustomDashboards: type: boolean canInstallNewAgents: type: boolean canInvokeAlertChannel: type: boolean canManuallyCloseIssue: type: boolean canRunAutomationActions: type: boolean canUseSyntheticCredentials: type: boolean canViewAccountAndBillingInformation: type: boolean canViewAuditLog: type: boolean canViewBizAlerts: type: boolean canViewBusinessActivities: type: boolean canViewBusinessProcessDetails: type: boolean canViewBusinessProcesses: type: boolean canViewLogVolume: type: boolean canViewLogs: type: boolean canViewSyntheticLocations: type: boolean canViewSyntheticTestResults: type: boolean canViewSyntheticTests: type: boolean canViewTraceDetails: type: boolean createdBy: type: string createdOn: type: integer format: int64 expiresOn: type: integer format: int64 id: type: string internalId: type: string lastUsedOn: type: integer format: int64 limitedAiGatewayScope: type: boolean limitedAlertChannelsScope: type: boolean limitedApplicationsScope: type: boolean limitedAutomationScope: type: boolean limitedBizOpsScope: type: boolean limitedGenAIScope: type: boolean limitedInfrastructureScope: type: boolean limitedKubernetesScope: type: boolean limitedLinuxKVMHypervisorScope: type: boolean limitedLogsScope: type: boolean limitedMobileAppsScope: type: boolean limitedNutanixScope: type: boolean limitedOpenstackScope: type: boolean limitedPcfScope: type: boolean limitedPhmcScope: type: boolean limitedPvcScope: type: boolean limitedServiceLevelScope: type: boolean limitedSyntheticsScope: type: boolean limitedVsphereScope: type: boolean limitedWebsitesScope: type: boolean limitedWindowsHypervisorScope: type: boolean limitedXenServerScope: type: boolean limitedZhmcScope: type: boolean name: type: string required: - accessGrantingToken - internalId - name AppDataMetricConfiguration: type: object properties: aggregation: type: string description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int32 description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds' metric: type: string description: 'Set a particular metric, eg: `latency`.' numeratorTagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - aggregation - metric Application: type: object description: Returns a list of Application Perspectives. properties: boundaryScope: type: string description: 'Here, `ALL` Application Boundary Scope is considered.' entityType: type: string description: 'Since, this is an Application Perspective, it will be of type `APPLICATION`.' enum: - APPLICATION - SERVICE - ENDPOINT id: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' label: type: string description: 'Name of the Application Perspective. Eg: `app1`.' required: - boundaryScope - id - label ApplicationAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. applicationId: type: string writeOnly: true applications: type: object additionalProperties: $ref: '#/components/schemas/ApplicationNode' description: 'Selection of applications, services, and endpoints that this Smart Alert configuration is associated with. This selection is connected to the defined `tagFilterExpression` by the logical `AND` operator.' boundaryScope: type: string description: Determines the source of the application alert configuration. An `INBOUND` scope refers to consumer-made calls. An `ALL` scope refers to both consumer and internally made calls. enum: - ALL - INBOUND customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the application alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 evaluationType: type: string description: 'Determines whether calls of the aggregated metrics are grouped by the application, the service, or the endpoint. This also determines whether the resulting events are categorized as an issue on the respective entity of that group.' enum: - PER_AP - PER_AP_SERVICE - PER_AP_ENDPOINT gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints. ' name: type: string description: Name of the application alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/ApplicationAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdApplicationAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' uniqueItems: true writeOnly: true threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/ApplicationTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - alertChannelIds - applications - boundaryScope - customPayloadFields - description - evaluationType - granularity - name - tagFilterExpression - timeThreshold ApplicationAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. applicationId: type: string deprecated: true description: ID of the application that this Smart Alert configuration is applied to. maxLength: 64 minLength: 0 applications: type: object additionalProperties: $ref: '#/components/schemas/ApplicationNode' description: 'Selection of applications, services, and endpoints that this Smart Alert configuration is associated with. This selection is connected to the defined `tagFilterExpression` by the logical `AND` operator.' boundaryScope: type: string description: Determines the source of the application alert configuration. An `INBOUND` scope refers to consumer-made calls. An `ALL` scope refers to both consumer and internally made calls. enum: - ALL - INBOUND created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the application alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. evaluationType: type: string description: 'Determines whether calls of the aggregated metrics are grouped by the application, the service, or the endpoint. This also determines whether the resulting events are categorized as an issue on the respective entity of that group.' enum: - PER_AP - PER_AP_SERVICE - PER_AP_ENDPOINT gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 id: type: string description: 'ID of this Application App Alert Config. ' maxLength: 64 minLength: 0 includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints. ' initialCreated: type: integer format: int64 description: Unix timestamp representing the time of the initial revision. minimum: 1 name: type: string description: Name of the application alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Flag to indicate whether or not the configuration is read-only. Read-only access restricts modification of the config. rule: $ref: '#/components/schemas/ApplicationAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdApplicationAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' uniqueItems: true writeOnly: true threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/ApplicationTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - alertChannelIds - applications - boundaryScope - customPayloadFields - description - evaluationType - granularity - id - name - tagFilterExpression - timeThreshold ApplicationAlertRule: type: object discriminator: mapping: errorRate: '#/components/schemas/ErrorsApplicationAlertRule' errors: '#/components/schemas/ErrorsApplicationAlertRule' logs: '#/components/schemas/LogsApplicationAlertRule' slowness: '#/components/schemas/SlownessApplicationAlertRule' statusCode: '#/components/schemas/StatusCodeApplicationAlertRule' throughput: '#/components/schemas/ThroughputApplicationAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string metricName: type: string required: - alertType - metricName ApplicationApdexEntity: type: object allOf: - $ref: '#/components/schemas/ApdexEntity' - type: object properties: boundaryScope: type: string description: 'Application Boundary Scope, it could be ALL or INBOUND' enum: - ALL - INBOUND entityId: type: string description: Application ID includeInternal: type: boolean description: A boolean value indicating whether the SLO takes Internal calls into account includeSynthetic: type: boolean description: A boolean value indicating whether the SLO takes Synthetic calls into account threshold: type: integer format: int32 description: Value of the Apdex Threshold minimum: 1 required: - boundaryScope - entityId - tagFilterExpression ApplicationConfig: type: object properties: accessRules: type: array description: | Defines permissions and access relationships. items: $ref: '#/components/schemas/AccessRule' maxItems: 64 minItems: 1 boundaryScope: type: string description: | **INBOUND**: Inbound calls are calls initiated from outside the application and where the destination service is part of the selected application perspective. **ALL**: Results and metrics for not only calls at the application perspective boundary, but also those occurring within the application perspective. **DEFAULT**: Default value, for Application Perspectives created before the introduction of `ALL` and `INBOUND`. At present, whenever new Application Perspectives are created, there are only 2 options to select: `ALL` or `INBOUND`. It is recommended to use either `ALL` or `INBOUND` as `DEFAULT` is deprecated. `DEFAULT` is treated as `INBOUND`. enum: - ALL - INBOUND - DEFAULT id: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' maxLength: 128 minLength: 1 label: type: string description: 'Name of the Application Perspective. Eg: `app1`.' maxLength: 128 minLength: 1 matchSpecification: $ref: '#/components/schemas/MatchExpressionDTO' scope: type: string description: | **INCLUDE_NO_DOWNSTREAM** : Only the selected services from the filters are included (call this the core set). This is useful when you treat the services as opaque. An example would be the services that represent 3rd party APIs. **INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING** : Include the core set of services from the filters and then expand this core set to include the database and messaging services that the core set directly interacts with. This is useful if you are want to monitor a set of services and their direct dependencies. For example, a development team responsible for several micro-services. **INCLUDE_ALL_DOWNSTREAM** : It effortlessly and automatically includes all the services that form the entire end-to-end dependency chain of the core set of services. This is useful if the AP will be used for troubleshooting. enum: - INCLUDE_NO_DOWNSTREAM - INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING - INCLUDE_ALL_DOWNSTREAM tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - accessRules - boundaryScope - id - label - scope ApplicationEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: applicationId: type: string description: ID of the application. ApplicationItem: type: object properties: application: $ref: '#/components/schemas/Application' metrics: type: object additionalProperties: type: array items: type: array items: type: number required: - application - metrics ApplicationMetricResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' items: type: array items: $ref: '#/components/schemas/ApplicationItem' page: type: integer format: int32 description: Page Number minimum: 1 pageSize: type: integer format: int32 minimum: 1 totalHits: type: integer format: int64 minimum: 0 required: - items ApplicationNode: type: object description: 'Selection of applications, services, and endpoints that this Smart Alert configuration is associated with. This selection is connected to the defined `tagFilterExpression` by the logical `AND` operator.' properties: applicationId: type: string maxLength: 64 minLength: 0 inclusive: type: boolean services: type: object additionalProperties: $ref: '#/components/schemas/ServiceNode' required: - applicationId - services ApplicationResult: type: object properties: items: type: array description: Returns a list of Application Perspectives. items: $ref: '#/components/schemas/Application' page: type: integer format: int32 description: Page number you want to retrieve in a request / retrieved in a response. pageSize: type: integer format: int32 description: number of elements retrieved in a single query. totalHits: type: integer format: int32 description: 'The number of results returned. For eg: If `items` has 5 elements, `totalhits` will be 5' ApplicationScope: type: object description: The list of application perspectives where the release can be viewed. properties: name: type: string description: 'Name of the Application Perspective. Eg: `app1`.' maxLength: 256 minLength: 0 required: - name ApplicationScopeWithMetadata: type: object description: The list of application perspectives where the release can be viewed. properties: id: type: string description: 'Unique ID of the Application Perspective. Eg: `Av62RoIKQv-A3n6DbMQh9g`.' name: type: string description: 'Name of the Application Perspective. Eg: `app1`.' required: - id ApplicationSliEntity: type: object allOf: - $ref: '#/components/schemas/SliEntity' - type: object properties: applicationId: type: string description: Specifies the ID of the Application that is to be monitored by the SLO boundaryScope: type: string description: 'Defines the boundary of calls to be monitored, specifying whether to track all calls or only inbound calls' enum: - ALL - INBOUND endpointId: type: string description: Specifies the ID of the Endpoint to be monitored by the application SLO serviceId: type: string description: Identifies the service to be monitored by the application SLO required: - boundaryScope ApplicationSloEntity: type: object allOf: - $ref: '#/components/schemas/SloEntity' - type: object properties: applicationId: type: string description: The ID of the Application boundaryScope: type: string description: The Boundary Scope of the Application enum: - ALL - INBOUND endpointId: type: string description: The Endpoint ID of the Application includeInternal: type: boolean description: A boolean value indicating whether the SLO takes Internal calls into account includeSynthetic: type: boolean description: A boolean value indicating whether the SLO takes Synthetic calls into account serviceId: type: string description: The Service ID of the Application required: - applicationId - boundaryScope ApplicationTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: requestImpact: '#/components/schemas/TraceImpactApplicationTimeThreshold' violationsInPeriod: '#/components/schemas/ViolationsInPeriodApplicationTimeThreshold' violationsInSequence: '#/components/schemas/ViolationsInSequenceApplicationTimeThreshold' propertyName: type properties: timeWindow: type: integer format: int64 type: type: string required: - type ArithmeticConfiguration: type: object allOf: - $ref: '#/components/schemas/InfraMetricConfiguration' - type: object properties: operation: $ref: '#/components/schemas/ArithmeticOperation' ArithmeticOperand: type: object oneOf: - $ref: '#/components/schemas/SingleValue' - $ref: '#/components/schemas/MetricQuery' - $ref: '#/components/schemas/NestedOperation' ArithmeticOperation: type: object discriminator: mapping: ADDITION: '#/components/schemas/Addition' DIVISION: '#/components/schemas/Division' MULTIPLICATION: '#/components/schemas/Multiplication' SUBTRACTION: '#/components/schemas/Subtraction' propertyName: operator properties: left: $ref: '#/components/schemas/ArithmeticOperand' operator: type: string right: $ref: '#/components/schemas/ArithmeticOperand' required: - left - operator - right AuditLogEntry: type: object properties: action: type: string actor: $ref: '#/components/schemas/LogEntryActor' id: type: string message: type: string meta: type: object additionalProperties: type: object timestamp: type: integer format: int64 required: - action - actor - id - message - meta AuditLogUiResponse: type: object properties: entries: type: array items: $ref: '#/components/schemas/AuditLogEntry' total: type: integer format: int64 Author: type: object properties: id: type: string type: type: string enum: - API - USER - INSTANA - UNKNOWN AvailabilityBlueprintIndicator: type: object allOf: - $ref: '#/components/schemas/ServiceLevelIndicator' - type: object properties: threshold: type: number format: double description: Threshold Value for the Blueprint exclusiveMinimum: false minimum: 0 required: - type AvailabilitySliEntity: type: object allOf: - $ref: '#/components/schemas/SliEntity' - type: object properties: applicationId: type: string description: Specifies the ID of the Application that is to be monitored by the SLO badEventFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' badEventFilters: type: array description: Defines the logical expression to filter data and classify events as Bad Events items: $ref: '#/components/schemas/TagFilter' maxItems: 32 minItems: 1 boundaryScope: type: string description: 'Defines the boundary of calls to be monitored, specifying whether to track all calls or only inbound calls' enum: - ALL - INBOUND endpointId: type: string description: Specifies the ID of the Endpoint to be monitored by the availability-based application SLO goodEventFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' goodEventFilters: type: array description: Defines the logical expression to filter data and classify events as Good Events items: $ref: '#/components/schemas/TagFilter' maxItems: 32 minItems: 1 includeInternal: type: boolean description: Boolean value indicating whether internal calls should be included in the monitoring process includeSynthetic: type: boolean description: Boolean value indicating whether synthetic calls should be included in the monitoring process serviceId: type: string description: Identifies the service to be monitored by the availability-based application SLO required: - boundaryScope AvailableMetrics: type: object properties: metrics: type: array items: $ref: '#/components/schemas/MetricMetadata' uniqueItems: true AvailablePlugins: type: object properties: plugins: type: array items: type: string uniqueItems: true BackendTraceReference: type: object properties: traceId: type: string description: 'The corresponding trace ID. For eg: `07eaf10c1d051234` or `000000000000000007eaf10c1d051234`' required: - traceId BidirectionalMsTeamsAppIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: apiTokenId: type: string channelId: type: string channelName: type: string instanaUrl: type: string serviceUrl: type: string teamId: type: string teamName: type: string tenantId: type: string tenantName: type: string required: - apiTokenId - channelId - channelName - id - instanaUrl - kind - name - teamId - tenantId BidirectionalSlackAppIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: appId: type: string channelId: type: string channelName: type: string emojiRendering: type: boolean teamId: type: string teamName: type: string required: - id - kind - name BinaryOperatorDTO: type: object allOf: - $ref: '#/components/schemas/MatchExpressionDTO' - type: object properties: conjunction: type: string enum: - AND - OR left: $ref: '#/components/schemas/MatchExpressionDTO' right: $ref: '#/components/schemas/MatchExpressionDTO' required: - conjunction - left - right BrowserScriptConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: browser: type: string enum: - chrome - firefox fileName: type: string recordVideo: type: boolean script: type: string maxLength: 1048576 minLength: 0 scriptType: type: string enum: - Basic - Jest scripts: $ref: '#/components/schemas/MultipleScriptsConfiguration' required: - markSyntheticCall - syntheticType BrowserScriptConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: browser: type: string enum: - chrome - firefox fileName: type: string recordVideo: type: boolean script: type: string scriptType: type: string enum: - Basic - Jest scripts: $ref: '#/components/schemas/MultipleScriptsConfiguration' BuiltInEventSpecification: type: object properties: description: type: string description: Description of Built-in Event Specification maxLength: 2048 minLength: 0 enabled: type: boolean description: Flag to show whether the Built-in Event Specification is enabled hidden: type: boolean description: Flag to show whether the Built-in Event Specification is hidden hyperParams: type: array description: List of hyper parameters of the Built-in Event Specification items: $ref: '#/components/schemas/HyperParam' maxItems: 32 minItems: 0 id: type: string description: ID of Built-in Event Specification maxLength: 2048 minLength: 0 name: type: string description: Name of Built-in Event Specification maxLength: 256 minLength: 0 ruleInputs: type: array description: List of input rules of the Built-in Event Specification items: $ref: '#/components/schemas/RuleInput' maxItems: 32 minItems: 0 severity: type: integer format: int32 description: Severity level of Built-in Event Specification shortPluginId: type: string description: ID of short plugin of Built-in Event Specification maxLength: 64 minLength: 0 triggering: type: boolean description: Flag to show whether the Built-in Event Specification is triggering required: - hyperParams - id - name - ruleInputs - shortPluginId BuiltInEventSpecificationWithLastUpdated: type: object properties: description: type: string description: Description of Built-in Event Specification maxLength: 2048 minLength: 0 enabled: type: boolean description: Flag to show whether the Built-in Event Specification is enabled hidden: type: boolean description: Flag to show whether the Built-in Event Specification is hidden hyperParams: type: array description: List of hyper parameters of the Built-in Event Specification items: $ref: '#/components/schemas/HyperParam' maxItems: 32 minItems: 0 id: type: string description: ID of Built-in Event Specification maxLength: 2048 minLength: 0 lastUpdated: type: integer format: int64 minimum: 1 name: type: string description: Name of Built-in Event Specification maxLength: 256 minLength: 0 ruleInputs: type: array description: List of input rules of the Built-in Event Specification items: $ref: '#/components/schemas/RuleInput' maxItems: 32 minItems: 0 severity: type: integer format: int32 description: Severity level of Built-in Event Specification shortPluginId: type: string description: ID of short plugin of Built-in Event Specification maxLength: 64 minLength: 0 triggering: type: boolean description: Flag to show whether the Built-in Event Specification is triggering required: - hyperParams - id - name - ruleInputs - shortPluginId BusinessActivity: type: object properties: activityId: type: string description: Unique identifier for the activity generated by the source BPM tool example: ApproveInvoiceTask nullable: true activityName: type: string description: 'Name of the activity ' example: Approve Invoice nullable: true activityStart: type: integer format: int64 description: Unix timestamp representing the activity's start time example: 1680559706000 nullable: true activityType: type: string description: 'Type of the activity ' example: userTask callId: type: string writeOnly: true endpointIds: type: array items: type: string processDefinitionId: type: string description: The identifier of the process the activity is an instance of. example: 'invoice:2:aa2bbbcc-bb04-11ee-9d4e-0242ac110002' nullable: true processDefinitionName: type: string description: The name of the process that the activity is an instance of example: Invoice Approval nullable: true rootProcessInstanceId: type: string description: The id of the root process for the activity example: 486cbb3b-e633-11ee-8707-0242ac110002 nullable: true required: - activityType BusinessPerspectiveConfig: type: object properties: description: type: string maxLength: 300 minLength: 0 id: type: string maxLength: 128 minLength: 1 name: type: string maxLength: 100 minLength: 0 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - id CallGroupsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: cursor: $ref: '#/components/schemas/IngestionOffsetCursor' metrics: type: object additionalProperties: type: array description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. items: type: array description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. items: type: number description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. name: type: string description: Name of the group. timestamp: type: integer format: int64 description: Earliest timestamp of the call from the group minimum: 0 required: - cursor - metrics - name CallGroupsResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/CallGroupsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items CallRelation: type: object description: 'It shows from where the call is destined to. It includes destination service, its endpoint and list of technologies of the service.' properties: endpoint: $ref: '#/components/schemas/EndpointSimple' service: $ref: '#/components/schemas/ServiceSimple' technologies: type: array description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' items: type: string description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' ChangeSummary: type: object description: Brief summary of changes made in this config version. properties: author: $ref: '#/components/schemas/Author' changeType: type: string enum: - CREATE - UPDATE - DELETE - ENABLE - DISABLE - RESTORE - UNKNOWN required: - author - changeType CloudfoundryPhysicalContext: type: object description: | Contains physical context of Cloudfoundry. It contains the following information: 1. `application`: Application running within Cloud Foundry environment. 2. `cfInstanceIndex`: A unique ID of the container created and managed by Garden in the Cloud Foundry environment. 3. `organization`: Organization in the Cloud Foundry environment. 4. `space`: Space within an organization in Cloud Foundry environment. properties: application: $ref: '#/components/schemas/SnapshotPreview' cfInstanceIndex: type: string description: A unique ID of the container created and managed by Garden in the Cloud Foundry environment. organization: $ref: '#/components/schemas/SnapshotPreview' space: $ref: '#/components/schemas/SnapshotPreview' Condition: type: object description: This applies to only `automatic` policy type. A Dynamic Focus Query that selects a list of entities on which the policy is run. properties: query: type: string description: Dynamic Focus Query string that selects a list of entities on which the policy is run. ConfigVersion: type: object properties: changeSummary: $ref: '#/components/schemas/ChangeSummary' created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 deleted: type: boolean deprecated: true description: Flag to indicate whether or not the configuration was deleted. enabled: type: boolean deprecated: true description: Flag to indicate whether or not the configuration is enabled. id: type: string description: ID of this configuration version. maxLength: 64 minLength: 0 required: - id ContainerNode: type: object Correction: type: object properties: activeCorrectionConfigIds: type: array description: IDs of correction configs that are active items: type: string description: IDs of correction configs that are active uniqueItems: true correctionWindows: type: array description: List of Correction Windows items: $ref: '#/components/schemas/CorrectionWindow' from: type: string format: date-time description: Correction starting timestamp in milliseconds (13-digit) inActiveCorrectionConfigIds: type: array description: IDs of correction configs that are inactive items: type: string description: IDs of correction configs that are inactive uniqueItems: true to: type: string format: date-time description: Correction ending timestamp in milliseconds (13-digit) CorrectionConfiguration: type: object properties: active: type: boolean description: 'If value is true, then the correction window is active' createdDate: type: string format: date-time description: Created date of SLO Correction Window Configuration description: type: string description: Description of the SLO Correction Window Configuration id: type: string description: SLO Correction Window Configuration ID maxLength: 64 minLength: 0 lastUpdated: type: string format: date-time description: Last updated date of SLO Correction Window Configuration name: type: string description: Name of the SLO Correction Window Configuration scheduling: $ref: '#/components/schemas/CorrectionScheduling' sloIds: type: array description: This is the list of SLO configurations related to this Correction Window. items: type: string description: This is the list of SLO configurations related to this Correction Window. maxItems: 1024 minItems: 0 uniqueItems: true tags: type: array description: List of tags associated with SLO Correction Window Configuration items: type: string description: List of tags associated with SLO Correction Window Configuration uniqueItems: true required: - name - scheduling - sloIds - tags CorrectionScheduling: type: object description: Time scheduling of the SLO Correction Window configurations. properties: duration: type: integer format: int32 description: 'Duration of the correction window, defined by the count of time units.' durationUnit: type: string description: 'Unit for duration. Supported values: `MINUTE`, `HOUR`, `DAY`.' enum: - millisecond - second - minute - hour - day - week - month recurrent: type: boolean recurrentRule: type: string description: 'Recurrence Rule defines how the event recurs, using iCalendar RRULE format (e.g., `FREQ=DAILY;INTERVAL=1`).It supports fields like FREQ, INTERVAL, BYDAY, etc. Refer to RFC 5545: https://datatracker.ietf.org/doc/html/rfc5545#section-3.3.10' maxLength: 2048 minLength: 0 startTime: type: string format: date-time description: 'Start time of the correction window in milliseconds since epoch (UTC) (e.g., `1706713140000`).' required: - duration - durationUnit - startTime CorrectionWindow: type: object description: List of Correction Windows properties: correctionConfigs: type: array description: IDs of the Correction configurations in the Correction Window items: type: string description: IDs of the Correction configurations in the Correction Window uniqueItems: true from: type: string format: date-time description: Correction Window starting timestamp in milliseconds (13-digit) sloConfigs: type: array description: IDs of the SLO configurations in the Correction Window items: type: string description: IDs of the SLO configurations in the Correction Window uniqueItems: true to: type: string format: date-time description: Correction Window ending timestamp in milliseconds (13-digit) CrashMobileAppAlertRule: type: object allOf: - $ref: '#/components/schemas/MobileAppAlertRule' required: - metricName CursorPaginatedBusinessActivityItem: type: object properties: businessActivity: $ref: '#/components/schemas/BusinessActivity' cursor: $ref: '#/components/schemas/IngestionOffsetCursor' metrics: type: object additionalProperties: type: array items: type: array items: type: number required: - cursor CursorPagination: type: object description: | Details for controlling the pagination of the API response. This object allows you to define the starting point for retrieving records, how many records to skip, and the size of the result set. properties: ingestionTime: type: integer format: int64 description: | The timestamp indicating the starting point from which data was ingested. The format of the timestamp is in Unix epoch Time. For example, `Thursday, 5 September 2024 07:03:13 GMT` can be represented as `1725519793`. offset: type: integer format: int32 description: | The number of records to be skipped from the `ingestionTime`. For example: when `offset` is 20 and `ingestionTime` is 1725519793, the API response should have records starting from the 21st record after the specified `ingestionTime`. Note that if `offset` value is not empty, `ingestionTime` can't be empty. retrievalSize: type: integer format: int32 description: | The number of records to retrieve in a single request. For example, when retrievalSize is set to 30, offset is 20, and ingestionTime is 1725519793, the API request will fetch 30 records starting from the 21st record after the specified `ingestionTime`. Minimum value is 1 and maximum value is 200. maximum: 200 minimum: 1 CursorPaginationInfraExploreCursor: type: object properties: cursor: $ref: '#/components/schemas/InfraExploreCursor' retrievalSize: type: integer format: int32 description: number of values to return required: - retrievalSize CustomBlueprintIndicator: type: object allOf: - $ref: '#/components/schemas/ServiceLevelIndicator' - type: object properties: badEventInfraMetric: type: string badEventsFilter: $ref: '#/components/schemas/TagFilterExpressionElement' goodEventInfraMetric: type: string goodEventsFilter: $ref: '#/components/schemas/TagFilterExpressionElement' required: - goodEventsFilter - type CustomDashboard: type: object properties: accessRules: type: array items: $ref: '#/components/schemas/AccessRule' maxItems: 64 minItems: 1 id: type: string title: type: string widgets: type: array items: $ref: '#/components/schemas/Widget' maxItems: 128 minItems: 0 uniqueItems: true required: - accessRules - id - title - widgets CustomDashboardPreview: type: object properties: annotations: type: array items: type: string enum: - SHARED - WRITABLE maxItems: 8 minItems: 0 uniqueItems: true id: type: string maxLength: 64 minLength: 0 ownerId: type: string title: type: string required: - annotations - id - ownerId - title CustomDashboardWithUserSpecificInformation: type: object properties: accessRules: type: array items: $ref: '#/components/schemas/AccessRule' maxItems: 64 minItems: 1 id: type: string ownerId: type: string title: type: string widgets: type: array items: $ref: '#/components/schemas/Widget' maxItems: 128 minItems: 0 uniqueItems: true writable: type: boolean required: - accessRules - id - ownerId - title - widgets - writable CustomDependency: type: object properties: direction: type: string enum: - outgoing - incoming maxLength: 64 minLength: 1 entityType: type: string description: 'If entityType is set, the dependency will be added to the plugin for that entity type. Otherwise, the dependency will be applied to the custom entity itself.' maxLength: 64 minLength: 0 identifiers: type: array description: Will take the identifiers values for building the key of the dependency. items: type: string description: Will take the identifiers values for building the key of the dependency. maxItems: 512 minItems: 0 uniqueItems: true name: type: string maxLength: 256 minLength: 1 separator: type: string description: Separator between identifiers for building the key of the dependency. type: type: string enum: - in - is - to - of - connected - describes - of20 - to20 - dummy - parent maxLength: 8 minLength: 1 CustomEmailSubjectPrefix: type: object properties: agentMonitoringIssue: type: object additionalProperties: type: string description: A map containing the open and close email subject value of a given agent monitoring issue example: '{"openValue":"Open email subject prefix value","closeValue":"Close email subject prefix value"}' description: A map containing the open and close email subject value of a given agent monitoring issue example: closeValue: Close email subject prefix value openValue: Open email subject prefix value change: type: object additionalProperties: type: string description: A map containing the open and close email subject value of a given change event example: '{"changeValue":"Email subject prefix value"}' description: A map containing the open and close email subject value of a given change event example: changeValue: Email subject prefix value incident: type: object additionalProperties: type: string description: A map containing the open and close email subject value of a given incident example: '{"openValue":"Open email subject prefix value","closeValue":"Close email subject prefix value"}' description: A map containing the open and close email subject value of a given incident example: closeValue: Close email subject prefix value openValue: Open email subject prefix value issue: type: object additionalProperties: type: string description: A map containing the open and close email subject value of a given issue example: '{"openValue":"Open email subject prefix value","closeValue":"Close email subject prefix value"}' description: A map containing the open and close email subject value of a given issue example: closeValue: Close email subject prefix value openValue: Open email subject prefix value CustomEntityModel: type: object properties: dashboards: type: array items: $ref: '#/components/schemas/CustomDashboard' uniqueItems: true dependencies: type: array items: $ref: '#/components/schemas/CustomDependency' uniqueItems: true identifiers: type: array items: type: string label: type: string metrics: type: array items: $ref: '#/components/schemas/CustomMetric' uniqueItems: true tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - identifiers - label - tagFilterExpression CustomEntityWithMetadata: type: object properties: created: type: integer format: int64 data: $ref: '#/components/schemas/CustomEntityModel' id: type: string version: type: string required: - data - id CustomEventMobileAppAlertRule: type: object allOf: - $ref: '#/components/schemas/MobileAppAlertRule' - type: object properties: customEventName: type: string required: - aggregation - customEventName - metricName CustomEventSpecification: type: object properties: actions: type: array items: $ref: '#/components/schemas/Action' description: type: string maxLength: 32765 minLength: 0 enabled: type: boolean entityType: type: string maxLength: 64 minLength: 0 expirationTime: type: integer format: int64 name: type: string maxLength: 256 minLength: 0 query: type: string maxLength: 2048 minLength: 0 ruleLogicalOperator: type: string description: Set AND / OR enum: - AND - OR rules: type: array items: $ref: '#/components/schemas/AbstractRule' maxItems: 5 minItems: 1 transientEventAlertMuted: type: boolean transientEventEnabled: type: boolean transientEventThreshold: type: integer format: int64 triggering: type: boolean required: - entityType - name - rules CustomEventSpecificationWithLastUpdated: type: object properties: actions: type: array items: $ref: '#/components/schemas/Action' applicationAlertConfigId: type: string maxLength: 64 minLength: 0 deleted: type: boolean description: type: string maxLength: 32765 minLength: 0 enabled: type: boolean entityType: type: string maxLength: 64 minLength: 0 expirationTime: type: integer format: int64 id: type: string maxLength: 64 minLength: 0 lastUpdated: type: integer format: int64 minimum: 1 migrated: type: boolean name: type: string maxLength: 256 minLength: 0 query: type: string maxLength: 2048 minLength: 0 ruleLogicalOperator: type: string description: Set AND / OR enum: - AND - OR rules: type: array items: $ref: '#/components/schemas/AbstractRule' maxItems: 5 minItems: 1 transientEventAlertMuted: type: boolean transientEventEnabled: type: boolean transientEventThreshold: type: integer format: int64 triggering: type: boolean required: - entityType - id - name - rules CustomEventWebsiteAlertRule: type: object allOf: - $ref: '#/components/schemas/WebsiteAlertRule' - type: object properties: customEventName: type: string required: - aggregation - customEventName - metricName CustomMetric: type: object properties: aggregation: type: string description: Aggregation to apply on the metric for every member. enum: - AVG - SUM category: type: string description: Category of the metric in the catalog description: type: string description: Description to be used in the catalog formatter: type: string description: | | * NUMBER: Generic number * BYTES: Number of bytes * KILO_BYTES: Number of kilobytes * MEGA_BYTES: Number of megabytes * PERCENTAGE: Percentage in scale [0,1] * PERCENTAGE_100: Percentage in scale [0,100] * PERCENTAGE_NO_CAPPING: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * PERCENTAGE_100_NO_CAPPING: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * LATENCY: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * NANOS: Time in nanoseconds * MILLIS: Time in milliseconds * MICROS: Time in microseconds * SECONDS: Time in seconds * RATE: Number of occurrences per second * BYTE_RATE: Number of bytes per second * UNDEFINED: Metric value unit is not known enum: - NUMBER - BYTES - KILO_BYTES - MEGA_BYTES - PERCENTAGE - PERCENTAGE_100 - PERCENTAGE_NO_CAPPING - PERCENTAGE_100_NO_CAPPING - LATENCY - NANOS - MILLIS - MICROS - SECONDS - RATE - BYTE_RATE - UNDEFINED label: type: string description: Label to be used in the catalog name: type: string description: Name of the metric section: type: string description: Section of the metric in the catalog enum: - ACE - ALICLOUD - AWS - AZURE - CASSANDRA - CLOUD_FOUNDRY - CLR - COCKROACH - CONSUL - CONTAINER - COUCHBASE - DFQ - ELASTICSEARCH - GCP - HADOOP_YARN - HAZELCAST - IBM_CLOUD - IBM_DATAPOWER - IBM_I_SERIES - IBM_MQ - IBM_MQMFT - IBM_OPENSTACK - KAFKA_CONNECT - KUBERNETES - MONGO_DB - OTHERS - REDIS - SAP - SELF_MONITORING - SOLR - SPARK - TIBCOBW - TUXEDO - VSHPERE - WEBSPHERE - CUSTOM_ENTITY source: type: string description: Name of the source metric type: type: string description: Type of entity for the source metric CustomPayloadConfiguration: type: object properties: fields: type: array description: Required parameters for custom payload configuration. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 required: - fields CustomPayloadField: type: object description: Custom payload fields to send additional information in the alert notifications. Can be left empty. discriminator: mapping: dynamic: '#/components/schemas/DynamicField' staticString: '#/components/schemas/StaticStringField' propertyName: type properties: key: type: string description: A user-specified unique identifier or name for a custom payload entry. type: type: string required: - key - type CustomPayloadWithLastUpdated: type: object properties: fields: type: array description: Required parameters for custom payload configuration. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 lastUpdated: type: integer format: int64 description: Unix timestamp representing the time (in milliseconds) the configuration was last updated. minimum: 1 required: - fields CustomPayloadWithVersion: type: object properties: fields: type: array description: Required parameters for custom payload configuration. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 lastUpdated: type: integer format: int64 description: Unix timestamp representing the time (in milliseconds) the configuration was last updated. minimum: 1 version: type: integer format: int32 description: Global custom payloads version. required: - fields - version DNSConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: acceptCNAME: type: boolean lookup: type: string lookupServerName: type: boolean port: type: integer format: int32 queryTime: $ref: '#/components/schemas/DNSFilterQueryTime' queryType: type: string enum: - ALL - ALL_CONDITIONS - ANY - A - AAAA - CNAME - NS recursiveLookups: type: boolean server: type: string serverRetries: type: integer format: int32 targetValues: type: array items: $ref: '#/components/schemas/DNSFilterTargetValue' transport: type: string enum: - TCP - UDP required: - lookup - markSyntheticCall - server - syntheticType DNSConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: acceptCNAME: type: boolean lookup: type: string lookupServerName: type: boolean port: type: integer format: int32 queryTime: $ref: '#/components/schemas/DNSFilterQueryTime' queryType: type: string enum: - ALL - ALL_CONDITIONS - ANY - A - AAAA - CNAME - NS recursiveLookups: type: boolean server: type: string serverRetries: type: integer format: int32 targetValues: $ref: '#/components/schemas/SyntheticResourceUpdateListDNSFilterTargetValueListDNSFilterTargetValue' transport: type: string enum: - TCP - UDP DNSFilterQueryTime: type: object properties: key: type: string operator: type: string enum: - CONTAINS - EQUALS - GREATER_THAN - IS - LESS_THAN - MATCHES - NOT_MATCHES value: type: integer format: int64 required: - key - operator - value DNSFilterTargetValue: type: object properties: key: type: string enum: - ALL - ALL_CONDITIONS - ANY - A - AAAA - CNAME - NS operator: type: string enum: - CONTAINS - EQUALS - GREATER_THAN - IS - LESS_THAN - MATCHES - NOT_MATCHES value: type: string required: - key - operator - value DashboardApiToken: type: object properties: id: type: string name: type: string required: - id - name DatabaseIntegration: type: object properties: type: type: string url: type: string DeprecatedTagFilter: type: object properties: entity: type: string enum: - NOT_APPLICABLE - DESTINATION - SOURCE name: type: string operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH value: type: string required: - name - operator - value Division: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperation' required: - left - right Duration: type: object properties: amount: type: integer format: int64 minimum: 1 unit: type: string enum: - MINUTES - HOURS - DAYS required: - amount - unit DynamicField: type: object allOf: - $ref: '#/components/schemas/CustomPayloadField' - type: object properties: value: $ref: '#/components/schemas/DynamicFieldValue' required: - key - value DynamicFieldValue: type: object properties: key: type: string description: 'Key for selected dynamic tag: specifies which dictionary style value user is interested in.' tagName: type: string description: Each dynamic payload entry is associated with tag from Instana's tag catalog required: - tagName DynamicParameter: type: object description: List of dynamic parameters properties: key: type: string description: Parameter key name: type: string description: Parameter name resolvedValue: type: string description: Parameter value after resolution tagName: type: string description: 'The name of the tag. Eg: `call.name`' EditUser: type: object properties: fullName: type: string required: - fullName EmailIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: customEmailSubjectPrefix: $ref: '#/components/schemas/CustomEmailSubjectPrefix' emails: type: array items: type: string required: - emails - id - kind - name EmptyConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' required: - markSyntheticCall - syntheticType Endpoint: type: object properties: entityType: type: string description: 'Since, this is a Endpoint, it will be of type `ENDPOINT`.' enum: - APPLICATION - SERVICE - ENDPOINT id: type: string description: 'Unique ID of the Endpoint. Eg: `NCRq5oYnan5x-PkdTPQwLLUdu5M`.' isSynthetic: type: boolean writeOnly: true label: type: string description: 'Name of the Endpoint. Eg: `GET /api/fetch`.' serviceId: type: string description: The serviceId this endpoint belongs to. synthetic: type: boolean syntheticType: type: string enum: - NON_SYNTHETIC - SYNTHETIC - MIXED technologies: type: array description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' items: type: string description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' uniqueItems: true type: type: string description: The type of the Endpoint. enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE required: - id - label - serviceId - technologies - type EndpointConfig: type: object properties: endpointCase: type: string description: | This represents case sensitivity of endpoints of a service. Let's say in a service there are three endpoints, `user`, `Order` and `PAYMENT`: For example, if `endpointCase` is `UPPER`, then endpoint names are converted to `USER`, `ORDER` and `PAYMENT`. If `endpointCase` is `LOWER`, then endpoint names are converted to `user`, `order` and `payment`. If `endpointCase` is `ORIGINAL`, then endpoint names are converted to `user`, `Order` and `PAYMENT`. enum: - ORIGINAL - LOWER - UPPER endpointNameByCollectedPathTemplateRuleEnabled: type: boolean description: | The highest default precedence of endpoint rule is creating endpoint is based on path template. For example, ``` /hospital/1948/patient/291148 /hospital/728/patient/924892 /hospital/47/patient/25978 /hospital/108429/patient/1847 ``` can be considered as `/hospital/{hid}/patient/{pid}` if this rule is enabled. For most of the use cases, this rule should be enabled. endpointNameByFirstPathSegmentRuleEnabled: type: boolean description: | There are endpoint extraction rules in Instana which take the first path segment from the HTTP request and turn this into an endpoint name. For example, given the following URLs `/users/123/profile` and `/users/123/settings`, the extraction rule will only take the first segment. As a result endpoint name will be `users`. Although this is useful in cases where broad overview of monitoring is required, lot of use cases are more specified. Considering the above example, if this rule is enabled, Instana can't distinguish between `profile` or `settings` as endpoints. For use cases where endpoints has to be monitored at fine granular level, this flag should be set to `false`. rules: type: array description: Specify custom rule configuration apart from Instana predefined rules. This rule has the highest precedence. This is only available for HTTP endpoints. items: $ref: '#/components/schemas/HttpEndpointRule' maxItems: 500 minItems: 1 serviceId: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. required: - endpointCase - serviceId EndpointEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: applicationId: type: string description: ID of the application this endpoint is in scope of. endpointId: type: string description: ID of the endpoint. endpointServiceId: type: string description: ID service related to this endpoint. EndpointItem: type: object properties: endpoint: $ref: '#/components/schemas/Endpoint' metrics: type: object additionalProperties: type: array items: type: array items: type: number required: - endpoint - metrics EndpointMetricResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' items: type: array items: $ref: '#/components/schemas/EndpointItem' page: type: integer format: int32 description: Page Number minimum: 1 pageSize: type: integer format: int32 minimum: 1 totalHits: type: integer format: int64 minimum: 0 required: - items EndpointNode: type: object properties: endpointId: type: string maxLength: 64 minLength: 0 inclusive: type: boolean required: - endpointId EndpointResult: type: object properties: items: type: array items: $ref: '#/components/schemas/Endpoint' page: type: integer format: int32 description: Page number you want to retrieve in a request / retrieved in a response. pageSize: type: integer format: int32 description: number of elements retrieved in a single query. totalHits: type: integer format: int32 description: 'The number of results returned. For eg: If `items` has 5 elements, `totalhits` will be 5' EndpointSimple: type: object description: The destination service's endpoint where the call enters. properties: id: type: string description: 'Unique ID of the Endpoint. Eg: `NCRq5oYnan5x-PkdTPQwLLUdu5M`.' label: type: string description: 'Name of the Endpoint. Eg: `GET /api/fetch`.' type: type: string description: The type of the Endpoint. enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE EntityCountRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: conditionOperator: type: string enum: - '>' - '>=' - < - <= - = - '!=' conditionValue: type: number format: double required: - conditionOperator EntityCountVerificationRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: conditionOperator: type: string enum: - '>' - '>=' - < - <= - = - '!=' conditionValue: type: number format: double matchingEntityLabel: type: string maxLength: 2048 minLength: 0 matchingEntityType: type: string maxLength: 64 minLength: 0 matchingOperator: type: string enum: - is - contains - startsWith - endsWith required: - conditionOperator - matchingEntityLabel - matchingEntityType - matchingOperator EntityHealthInfo: type: object properties: maxSeverity: type: number format: double maximum: 10 minimum: 0 openIssues: type: array items: $ref: '#/components/schemas/Event' uniqueItems: true required: - openIssues EntityId: type: object properties: host: type: string pluginId: type: string description: Plugin name steadyId: type: string description: Steady identifier for the entity. required: - host - pluginId - steadyId EntityVerificationRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: matchingEntityLabel: type: string maxLength: 2048 minLength: 0 matchingEntityType: type: string maxLength: 64 minLength: 0 matchingOperator: type: string enum: - is - contains - startsWith - endsWith offlineDuration: type: integer format: int64 required: - matchingEntityLabel - matchingEntityType - matchingOperator ErrorBudgetAlertRule: type: object allOf: - $ref: '#/components/schemas/ServiceLevelsAlertRule' - type: object properties: metric: type: string description: 'This is the service levels metric type. Error budget alert uses BURNED_PERCENTAGE, BURN_RATE (Deprecated) or BURN_RATE_V2 metric.' enum: - BURN_RATE - BURNED_PERCENTAGE - BURN_RATE_V2 required: - metric ErrorsApplicationAlertRule: type: object allOf: - $ref: '#/components/schemas/ApplicationAlertRule' required: - metricName Event: type: object properties: end: type: integer format: int64 minimum: 1 endpointServiceId: type: string maxLength: 64 minLength: 0 entityId: type: string maxLength: 64 minLength: 0 entityType: type: string enum: - Entity10 - App20 - Service20 - Endpoint20 - Website - Synthetic - MobileApp - Log eventConfigurationType: type: string id: type: string maxLength: 64 minLength: 0 longFormPluginId: type: string metadata: type: object additionalProperties: type: object metricAccessId: type: string maxLength: 64 minLength: 0 plugin: type: string maxLength: 256 minLength: 0 problem: $ref: '#/components/schemas/Problem' rca: type: object additionalProperties: type: object shortCode: type: string maxLength: 64 minLength: 0 start: type: integer format: int64 minimum: 1 state: type: string maxLength: 8 minLength: 0 type: type: string maxLength: 64 minLength: 0 required: - entityId - id - plugin - state - type EventFilteringConfiguration: type: object description: Event Filter Configuration for supporting the scope of the Alert Configuration. Applies a filter based on the application perspective or selected entities. properties: applicationAlertConfigIds: type: array items: type: string maxItems: 1024 minItems: 0 uniqueItems: true eventTypes: type: array items: type: string enum: - incident - critical - warning - change - online - offline - agent_monitoring_issue - cve_issue - none maxItems: 1024 minItems: 0 uniqueItems: true query: type: string maxLength: 2048 minLength: 0 ruleIds: type: array items: type: string maxItems: 1024 minItems: 0 uniqueItems: true EventResult: type: object discriminator: mapping: APPLICATION: '#/components/schemas/ApplicationEventResult' ENDPOINT: '#/components/schemas/EndpointEventResult' INFRASTRUCTURE: '#/components/schemas/InfraEventResult' LOG: '#/components/schemas/LogEventResult' MOBILE_APP: '#/components/schemas/MobileAppEventResult' SERVICE: '#/components/schemas/ServiceEventResult' SYNTHETICS: '#/components/schemas/SyntheticsEventResult' WEBSITE: '#/components/schemas/WebsiteEventResult' propertyName: entityType properties: detail: type: string description: Details of the event. end: type: integer format: int64 description: A Unix timestamp representing the end time of the Event. entityLabel: type: string description: The label of the affected entity of the event. entityName: type: string description: The name or type of the affected entity of the event. entityType: type: string description: The category of the affected entity. eventId: type: string description: ID of this Event. eventSpecificationId: type: string description: ID of the configuration that created this event. fixSuggestion: type: string deprecated: true description: Details of the event. metrics: type: array description: List of metrics associated with the Event. items: type: object additionalProperties: type: object description: List of metrics associated with the Event. description: List of metrics associated with the Event. probableCause: type: object additionalProperties: type: object description: Metadata of the probable root cause for this event. Only present in case of specific "Incident" type events. description: Metadata of the probable root cause for this event. Only present in case of specific "Incident" type events. problem: type: string description: Main problem title of the Event. recentEvents: type: array description: List of related recent events. Only present in case of "Incident" type events. items: type: object additionalProperties: type: object description: List of related recent events. Only present in case of "Incident" type events. description: List of related recent events. Only present in case of "Incident" type events. severity: type: integer format: int32 description: The severity of the Event when triggered. shortCode: type: string description: A short code for the event snapshotId: type: string deprecated: true description: The snapshot ID of the affected entity of this event. start: type: integer format: int64 description: A Unix timestamp representing the start time of the Event. state: type: string description: 'The state of the Event, "open" or "close". ' type: type: string description: The type of Event. EventSpecificationInfo: type: object properties: description: type: string enabled: type: boolean entityType: type: string id: type: string maxLength: 64 minLength: 0 invalid: type: boolean migrated: type: boolean name: type: string maxLength: 256 minLength: 0 severity: type: integer format: int32 triggering: type: boolean type: type: string enum: - BUILT_IN - CUSTOM required: - entityType - id - name - type ExtendedService: type: object description: List of services in the topology. properties: applications: type: array items: type: string uniqueItems: true entityType: type: string description: 'Since, this is a Service, it will be of type `SERVICE`.' enum: - APPLICATION - SERVICE - ENDPOINT id: type: string description: 'Unique ID of the Service. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`.' label: type: string description: 'Name of the Service. Eg: `payment`.' maxSeverity: type: number format: double maximum: 10 minimum: 0 numberOfOpenIssues: type: integer format: int32 minimum: 0 snapshotIds: type: array description: A unique identifier the metrics are assigned to. items: type: string description: A unique identifier the metrics are assigned to. uniqueItems: true technologies: type: array description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' items: type: string description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' uniqueItems: true types: type: array description: 'Shows types of Endpoints a Service can consist of. It may be one or more. Eg: `HTTP` `OPENTELEMETRY` can be in 1 Service.' items: type: string description: 'Shows types of Endpoints a Service can consist of. It may be one or more. Eg: `HTTP` `OPENTELEMETRY` can be in 1 Service.' enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE uniqueItems: true required: - applications - id - label - snapshotIds - technologies - types FailureSyntheticAlertRule: type: object allOf: - $ref: '#/components/schemas/SyntheticAlertRule' required: - metricName Field: type: object description: List of fields that describe an action. properties: description: type: string encoding: type: string name: type: string secured: type: boolean value: type: string required: - encoding - name - value FixedHttpPathSegmentMatchingRule: type: object allOf: - $ref: '#/components/schemas/HttpPathSegmentMatchingRule' - type: object properties: name: type: string description: | Given `/api/{version}/users` URI, `FIXED` names are `api` and `users` in order. required: - name - type FixedTimeWindow: type: object allOf: - $ref: '#/components/schemas/TimeWindow' - type: object properties: startTimestamp: type: string format: date-time description: The timestamp at which the fixed time window of the SLO starts required: - duration - durationUnit - startTimestamp GenericInfraAlertRule: type: object allOf: - $ref: '#/components/schemas/InfraAlertRule' - type: object properties: metricGroupBy: type: array items: type: string maxItems: 1 minItems: 0 required: - aggregation - crossSeriesAggregation - entityType - metricGroupBy - metricName - metricTagFilterExpression GeoLocationConfiguration: type: object properties: geoDetailRemoval: type: string enum: - NO_REMOVAL - REMOVE_COORDINATES - REMOVE_CITY - REMOVE_ALL geoMappingRules: type: array items: $ref: '#/components/schemas/GeoMappingRule' maxItems: 512 minItems: 0 required: - geoDetailRemoval GeoMappingRule: type: object properties: accuracyRadius: type: integer format: int64 minimum: -1 cidr: type: string maxLength: 128 minLength: 0 city: type: string continent: type: string continentCode: type: string country: type: string countryCode: type: string latitude: type: number format: double leastSpecificSubdivision: $ref: '#/components/schemas/GeoSubdivision' longitude: type: number format: double subdivisions: type: array items: $ref: '#/components/schemas/GeoSubdivision' maxItems: 8 minItems: 0 required: - cidr - subdivisions GeoSubdivision: type: object properties: code: type: string maxLength: 32 minLength: 0 name: type: string maxLength: 256 minLength: 0 required: - name GetActivities: type: object properties: order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' timeframe: $ref: '#/components/schemas/TimeFrame' required: - order - pagination - timeFrame GetApplicationMetrics: type: object properties: includeInternal: type: boolean writeOnly: true includeSynthetic: type: boolean writeOnly: true metrics: type: array items: $ref: '#/components/schemas/AppDataMetricConfiguration' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics - timeFrame GetApplications: type: object properties: applicationBoundaryScope: type: string description: |- Use when querying calls of an application: `INBOUND`: only inbound calls `ALL`: all the calls to that application (inbound + internal) enum: - ALL - INBOUND applicationId: type: string description: | An Instana generated unique identifier for an Application. If specified, the list of results will be filtered for the specified Application ID. Eg: `Av62RoIKQv-A3n6DbMQh9g`. One can see the application id from Instana UI by going to an Application Perspective page. In the URL, there will be `appId=Av62RoIKQv-A3n6DbMQh9g`. Alternatively, one can use `Get applications` API endpoint to get the application id in `id` parameter. maxLength: 64 minLength: 0 endpointId: type: string description: | An Instana generated unique identifier for an Endpoint. If specified, the list of results will be filtered for the specified Endpoint ID. Eg `NCRq5oYnan5x-PkdTPQwLLUdu5M`. One can see the endpoint id from Instana UI by going to an Endpoint page. In the URL, there will be `endpointId=NCRq5oYnan5x-PkdTPQwLLUdu5M`. Alternatively, one can use `Get endpoints` API endpoint to get the endpoint id in `id` parameter. maxLength: 64 minLength: 0 endpointTypes: type: array items: type: string enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE uniqueItems: true writeOnly: true metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/AppDataMetricConfiguration' maxItems: 5 minItems: 1 nameFilter: type: string description: 'filter by name with `contains` semantic. Eg: Let''s say there are 2 names `app1` and `app2`, you can set `app`` here to include the two names' maxLength: 256 minLength: 0 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' serviceId: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. maxLength: 64 minLength: 0 technologies: type: array items: type: string uniqueItems: true writeOnly: true timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetAvailableMetricsQuery: type: object properties: query: type: string description: 'Search term used to filter results using fields such as label, description, tag name or keywords' maxLength: 200 minLength: 0 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string description: Entity type. Identifier for the monitored technology. required: - tagFilterExpression - timeFrame GetAvailablePluginsQuery: type: object properties: tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - tagFilterExpression - timeFrame GetCallGroups: type: object properties: group: $ref: '#/components/schemas/Group' includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints.' metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/MetricConfig' maxItems: 5 minItems: 1 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 10 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' required: - group - metrics GetCombinedMetrics: type: object properties: metrics: type: array description: 'Id of the exact metric you want to retrieve, eg. "cpu.user", "clientrequests.read.mean"' items: type: string description: 'Id of the exact metric you want to retrieve, eg. "cpu.user", "clientrequests.read.mean"' maxItems: 5 minItems: 1 uniqueItems: true plugin: type: string description: Plugin name example: host query: type: string description: Dynamic Focus Query example: 'entity.selfType:java' rollup: type: integer format: int32 description: Rollup value in seconds example: 5 snapshotIds: type: array description: Unique identifier the metrics are assigned to items: type: string description: Unique identifier the metrics are assigned to maxItems: 30 minItems: 1 uniqueItems: true timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics - plugin GetDynamicParameterValues: type: object properties: eventId: type: string description: Event identifier parameters: type: array description: List of dynamic parameters items: $ref: '#/components/schemas/DynamicParameter' timestamp: type: integer format: int64 description: The start of the timestamp expressed in Unix epoch time in milliseconds. required: - eventId - parameters - timestamp GetEndpoints: type: object properties: applicationBoundaryScope: type: string description: |- Use when querying calls of an application: `INBOUND`: only inbound calls `ALL`: all the calls to that application (inbound + internal) enum: - ALL - INBOUND applicationId: type: string description: | An Instana generated unique identifier for an Application. If specified, the list of results will be filtered for the specified Application ID. Eg: `Av62RoIKQv-A3n6DbMQh9g`. One can see the application id from Instana UI by going to an Application Perspective page. In the URL, there will be `appId=Av62RoIKQv-A3n6DbMQh9g`. Alternatively, one can use `Get applications` API endpoint to get the application id in `id` parameter. maxLength: 64 minLength: 0 endpointId: type: string description: | An Instana generated unique identifier for an Endpoint. If specified, the list of results will be filtered for the specified Endpoint ID. Eg `NCRq5oYnan5x-PkdTPQwLLUdu5M`. One can see the endpoint id from Instana UI by going to an Endpoint page. In the URL, there will be `endpointId=NCRq5oYnan5x-PkdTPQwLLUdu5M`. Alternatively, one can use `Get endpoints` API endpoint to get the endpoint id in `id` parameter. maxLength: 64 minLength: 0 endpointTypes: type: array description: 'A list of endpoint types, each of which is a string. An endpoint can specified for a database, an SDK, etc.' items: type: string description: 'A list of endpoint types, each of which is a string. An endpoint can specified for a database, an SDK, etc.' enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE maxItems: 8 minItems: 0 uniqueItems: true excludeSynthetic: type: boolean description: 'A variable used to specify whether synthetic endpoints should be excluded. If set to ''true'', synthetic endpoints will be excluded from the result.' metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/AppDataMetricConfiguration' maxItems: 5 minItems: 1 nameFilter: type: string description: 'filter by endpoint name with `contains` semantic. Eg: Let''s say there are 2 Endpoint names `GET /api/fetch` and `GET /api/update`, you can set `GET /api/` here to include the two Endpoints.' maxLength: 256 minLength: 0 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' serviceId: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. maxLength: 64 minLength: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetInfrastructureGroupsQuery: type: object properties: groupBy: type: array description: Entity grouping tag. Use the Instana Analyze Infrastructure dashboard to determine the entity grouping tag name. items: type: string description: Entity grouping tag. Use the Instana Analyze Infrastructure dashboard to determine the entity grouping tag name. maxItems: 5 minItems: 0 metrics: type: array items: $ref: '#/components/schemas/InfraMetricConfiguration' maxItems: 10 minItems: 0 missingPlaceholder: type: string order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPaginationInfraExploreCursor' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string description: Type of entities required: - groupBy - pagination - tagFilterExpression - timeFrame GetInfrastructureQuery: type: object properties: metrics: type: array items: $ref: '#/components/schemas/InfraMetricConfiguration' maxItems: 10 minItems: 0 missingPlaceholder: type: string order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPaginationInfraExploreCursor' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tags: type: array items: type: string maxItems: 5 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string description: Type of entities required: - pagination - tagFilterExpression - timeFrame GetMetricsResult: type: object properties: disableDefaultGroups: type: boolean writeOnly: true groups: type: array description: ' Grouping of data under `groupbyTag`, where `groupbyTagEntity` and `groupbyTagSecondLevelKey` are aspects of `groupbyTag`.' items: $ref: '#/components/schemas/SyntheticMetricTagGroup' includeAggregatedTestIds: type: boolean writeOnly: true metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/SyntheticMetricConfiguration' pagination: $ref: '#/components/schemas/Pagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetMobileAppBeaconGroups: type: object properties: group: $ref: '#/components/schemas/MobileAppBeaconTagGroup' metrics: type: array items: $ref: '#/components/schemas/MobileAppMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - SESSION_START - HTTP_REQUEST - CRASH - CUSTOM - VIEW_CHANGE - DROP_BEACON - PERF required: - group - metrics - type GetMobileAppBeacons: type: object properties: pagination: $ref: '#/components/schemas/CursorPagination' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - SESSION_START - HTTP_REQUEST - CRASH - CUSTOM - VIEW_CHANGE - DROP_BEACON - PERF required: - type GetMobileAppMetrics: type: object properties: metrics: type: array items: $ref: '#/components/schemas/MobileAppMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - SESSION_START - HTTP_REQUEST - CRASH - CUSTOM - VIEW_CHANGE - DROP_BEACON - PERF required: - metrics - type GetMobileAppMetricsV2: type: object properties: metrics: type: array items: $ref: '#/components/schemas/MobileAppMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - SESSION_START - HTTP_REQUEST - CRASH - CUSTOM - VIEW_CHANGE - DROP_BEACON - PERF required: - metrics - type GetPayloadKeysResult: type: object properties: payloadKeys: type: array description: Keys that can be used to retrieve plugin payloads. items: type: string description: Keys that can be used to retrieve plugin payloads. GetServices: type: object properties: applicationBoundaryScope: type: string description: |- Use when querying calls of an application: `INBOUND`: only inbound calls `ALL`: all the calls to that application (inbound + internal) enum: - ALL - INBOUND applicationId: type: string description: | An Instana generated unique identifier for an Application. If specified, the list of results will be filtered for the specified Application ID. Eg: `Av62RoIKQv-A3n6DbMQh9g`. One can see the application id from Instana UI by going to an Application Perspective page. In the URL, there will be `appId=Av62RoIKQv-A3n6DbMQh9g`. Alternatively, one can use `Get applications` API endpoint to get the application id in `id` parameter. maxLength: 64 minLength: 0 contextScope: type: string description: |- separate filtering and group by service id field - upstream is filtered on destination service and groups on source service - downstream is filtered on source service and groups on destination service - none is filtered on destination service and no grouping enum: - NONE - UPSTREAM - DOWNSTREAM metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/AppDataMetricConfiguration' maxItems: 5 minItems: 1 nameFilter: type: string description: 'filter by name with `contains` semantic. Eg: Let''s say there are 2 service names `ecomm-order` and `ecomm-deliver`, you can set `ecomm-` here to include the two Services.' maxLength: 256 minLength: 0 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' serviceId: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. maxLength: 64 minLength: 0 technologies: type: array description: 'A list of technologies to be used for filtering data. For example, technologies could include AWS ECS, Cassandra, DB2, JVM, Kafka, etc. A full list of available technologies can be found in X.' items: type: string description: 'A list of technologies to be used for filtering data. For example, technologies could include AWS ECS, Cassandra, DB2, JVM, Kafka, etc. A full list of available technologies can be found in X.' maxItems: 20 minItems: 0 uniqueItems: true timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetSnapshotsQuery: type: object properties: snapshotIds: type: array description: List of one or more snapshot ids. items: type: string description: List of one or more snapshot ids. maxItems: 1000 minItems: 0 uniqueItems: true timeFrame: $ref: '#/components/schemas/TimeFrame' required: - snapshotIds GetTestResult: type: object properties: applicationId: type: string maxLength: 64 minLength: 0 locationId: type: array items: type: string metrics: type: array items: $ref: '#/components/schemas/SyntheticMetricConfiguration' order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' serviceId: type: string maxLength: 64 minLength: 0 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' testId: type: array items: type: string timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetTestResultAnalytic: type: object properties: analyticFunction: type: string includeLocationIdGrouping: type: boolean writeOnly: true order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' syntheticMetrics: type: array items: type: string tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - analyticFunction - syntheticMetrics GetTestResultBase: type: object properties: order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' timeFrame: $ref: '#/components/schemas/TimeFrame' GetTestResultList: type: object properties: applicationId: type: string maxLength: 64 minLength: 0 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' syntheticMetrics: type: array items: type: string tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - syntheticMetrics GetTestSummaryResult: type: object properties: metrics: type: array items: $ref: '#/components/schemas/SyntheticMetricConfiguration' order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/Pagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' timeFrame: $ref: '#/components/schemas/TimeFrame' required: - metrics GetTraceDownloadResultItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: callCount: type: integer format: int64 description: Number of calls in a trace. cursor: $ref: '#/components/schemas/IngestionOffsetCursor' destination: $ref: '#/components/schemas/CallRelation' duration: type: integer format: int64 description: 'The total time taken for the entire operation of a call, from the moment the request was initiated to when the response was received. The time measured is in milliseconds. This is also known as latency of a call.' errorCount: type: integer format: int64 description: Represents whether the call is erroneous or not. 0 is not erroneous and 1 is erroneous. foreignParentId: type: string id: type: string description: 'The call ID. A unique identifier for an individual call. For example: `1bcad5c82338deaf`.' minSelfTime: type: integer format: int64 description: The smallest self time in the batch. May be null to indicate that `minSelfTime` is unknown when this node has only an exit span and no children. The time measured is in milliseconds. name: type: string description: 'Name of the call. For example: `GET /articles/:id`.' networkTime: type: integer format: int64 description: exit span duration - entry span duration parentId: type: string description: 'The parent call id, referring to another call in the same trace which triggered the processing associated with this call.' timestamp: type: integer format: int64 description: 'The timestamp when the call or request was initiated. For example, Unix epoch time in milliseconds `1735532879870` is `Monday, 30 December 2024 04:27:59.870 GMT`' GetTraceGroups: type: object properties: group: $ref: '#/components/schemas/Group' includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints.' metrics: type: array description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' items: $ref: '#/components/schemas/MetricConfig' maxItems: 5 minItems: 1 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' required: - group - metrics GetTraces: type: object properties: includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints.' order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' GetWebsiteBeaconGroups: type: object properties: group: $ref: '#/components/schemas/WebsiteBeaconTagGroup' metrics: type: array items: $ref: '#/components/schemas/WebsiteMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 order: $ref: '#/components/schemas/Order' pagination: $ref: '#/components/schemas/CursorPagination' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - PAGELOAD - RESOURCELOAD - HTTPREQUEST - ERROR - CUSTOM - PAGE_CHANGE required: - group - metrics - type GetWebsiteBeacons: type: object properties: pagination: $ref: '#/components/schemas/CursorPagination' tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - PAGELOAD - RESOURCELOAD - HTTPREQUEST - ERROR - CUSTOM - PAGE_CHANGE required: - type GetWebsiteMetrics: type: object properties: metrics: type: array items: $ref: '#/components/schemas/WebsiteMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 tagFilters: type: array items: $ref: '#/components/schemas/DeprecatedTagFilter' maxItems: 32 minItems: 0 timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - PAGELOAD - RESOURCELOAD - HTTPREQUEST - ERROR - CUSTOM - PAGE_CHANGE required: - metrics - type GetWebsiteMetricsV2: type: object properties: metrics: type: array items: $ref: '#/components/schemas/WebsiteMonitoringMetricsConfiguration' maxItems: 5 minItems: 1 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeFrame: $ref: '#/components/schemas/TimeFrame' type: type: string enum: - PAGELOAD - RESOURCELOAD - HTTPREQUEST - ERROR - CUSTOM - PAGE_CHANGE required: - metrics - type GlobalApplicationAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. applicationIds: type: array description: IDs of the applications that this Smart Alert is applied to. items: type: string description: IDs of the applications that this Smart Alert is applied to. uniqueItems: true applications: type: object additionalProperties: $ref: '#/components/schemas/ApplicationNode' description: 'Selection of applications, services, and endpoints that this Smart Alert configuration is associated with. This selection is connected to the defined `tagFilterExpression` by the logical `AND` operator.' boundaryScope: type: string description: Determines the source of the application alert configuration. An `INBOUND` scope refers to consumer-made calls. An `ALL` scope refers to both consumer and internally made calls. enum: - ALL - INBOUND builtIn: type: boolean description: 'Flag that indicates whether this configuration is a built-in Smart Alert. ' created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the application alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. evaluationType: type: string description: 'Determines whether calls of the aggregated metrics are grouped by the application, the service, or the endpoint. This also determines whether the resulting events are categorized as an issue on the respective entity of that group.' enum: - PER_AP - PER_AP_SERVICE - PER_AP_ENDPOINT gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 id: type: string description: ID of this Global Application Alert Configuration. maxLength: 64 minLength: 0 includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints. ' initialCreated: type: integer format: int64 description: Unix timestamp representing the time of the initial revision. minimum: 1 name: type: string description: Name of the application alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Flag to indicate whether or not the configuration is read-only. Read-only access restricts modification of the config. rule: $ref: '#/components/schemas/ApplicationAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdApplicationAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/ApplicationTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - alertChannelIds - applications - boundaryScope - customPayloadFields - description - evaluationType - granularity - id - name - tagFilterExpression - timeThreshold GlobalApplicationsAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. applications: type: object additionalProperties: $ref: '#/components/schemas/ApplicationNode' description: 'Selection of applications, services, and endpoints that this Smart Alert configuration is associated with. This selection is connected to the defined `tagFilterExpression` by the logical `AND` operator.' boundaryScope: type: string description: Determines the source of the application alert configuration. An `INBOUND` scope refers to consumer-made calls. An `ALL` scope refers to both consumer and internally made calls. enum: - ALL - INBOUND customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the application alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 evaluationType: type: string description: 'Determines whether calls of the aggregated metrics are grouped by the application, the service, or the endpoint. This also determines whether the resulting events are categorized as an issue on the respective entity of that group.' enum: - PER_AP - PER_AP_SERVICE - PER_AP_ENDPOINT gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 includeInternal: type: boolean description: Flag to include Internal Calls. These calls are work done inside a service and correspond to intermediate spans in custom tracing. includeSynthetic: type: boolean description: 'Flag to include Synthetic Calls. These calls have a synthetic endpoint as their destination, such as calls to health-check endpoints. ' name: type: string description: Name of the application alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/ApplicationAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdApplicationAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/ApplicationTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - alertChannelIds - applications - boundaryScope - customPayloadFields - description - evaluationType - granularity - name - tagFilterExpression - timeThreshold GoogleChatIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: webhookUrl: type: string required: - id - kind - name - webhookUrl GraphEdge: type: object properties: destination: type: string description: ID of the outgoing GraphEdge. relation: type: string description: Type of dependency between the source and the destination. enum: - in - is - to - of - connected - describes - of20 - to20 - dummy - parent source: type: string description: ID of the incoming GraphEdge. GraphNode: type: object properties: data: type: object additionalProperties: type: object entityId: $ref: '#/components/schemas/EntityId' id: type: string description: GraphNode ID. label: type: string description: Label of the entity plugin: type: string description: Name of the plugin Group: type: object description: ' Grouping of data under `groupbyTag`, where `groupbyTagEntity` and `groupbyTagSecondLevelKey` are aspects of `groupbyTag`.' properties: groupbyTag: type: string description: The name of the group tag (e.g. `agent.tag` or `docker.label`). maxLength: 256 minLength: 0 groupbyTagEntity: type: string description: | The entity by which the data should be grouped. This field supports three possible values: `NOT_APPLICABLE`, `DESTINATION`, and `SOURCE`. `SOURCE`: the tag filter should apply to the source entity. `DESTINATION`: the tag filter should apply to the destination entity. `NOT_APPLICABLE`: some tags are independent of source or destination, such as tags on the call itself, log tags or trace tags (only destination makes sense because the source is unknown for the root call). enum: - NOT_APPLICABLE - DESTINATION - SOURCE groupbyTagSecondLevelKey: type: string description: 'If present, it''s the 2nd level key part (e.g. `customKey` on `docker.label.customKey`)' maxLength: 256 minLength: 0 required: - groupbyTag - groupbyTagEntity GroupByTag: type: object description: The grouping tags used to group the metric results. properties: key: type: string tagName: type: string required: - tagName GroupMapping: type: object properties: groupId: type: string id: type: string maxLength: 64 minLength: 0 key: type: string maxLength: 65536 minLength: 0 teamId: type: string maxLength: 64 minLength: 5 value: type: string maxLength: 65536 minLength: 0 required: - groupId - key - value GroupMappingOverview: type: object properties: id: type: string key: type: string role: type: string team: type: string value: type: string HealthState: type: object properties: health: type: string enum: - RED - YELLOW - GREEN messages: type: array items: type: string HistoricBaseline: type: object allOf: - $ref: '#/components/schemas/Threshold' - type: object properties: baseline: type: array items: type: array items: type: number deviationFactor: type: number format: double exclusiveMaximum: false exclusiveMinimum: false maximum: 16 minimum: 0.5 lastUpdated: type: integer format: int64 minimum: 0 seasonality: type: string enum: - WEEKLY - DAILY required: - operator - seasonality HostAvailabilityRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: closeAfter: type: integer format: int64 maximum: 86400000 offlineDuration: type: integer format: int64 tagFilter: $ref: '#/components/schemas/TagFilter' HttpActionConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: allowInsecure: type: boolean body: type: string expectExists: type: array items: type: string expectJson: $ref: '#/components/schemas/ContainerNode' expectMatch: type: string expectNotEmpty: type: array items: type: string expectStatus: type: integer format: int32 followRedirect: type: boolean headers: type: object additionalProperties: type: string operation: type: string enum: - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT url: type: string maxLength: 2047 minLength: 0 validationString: type: string required: - markSyntheticCall - syntheticType - url HttpActionConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: allowInsecure: type: boolean body: type: string expectExists: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' expectJson: $ref: '#/components/schemas/ContainerNode' expectMatch: type: string expectNotEmpty: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' expectStatus: type: integer format: int32 followRedirect: type: boolean headers: $ref: '#/components/schemas/SyntheticResourceUpdateMapStringStringListString' operation: type: string enum: - DELETE - GET - HEAD - OPTIONS - PATCH - POST - PUT url: type: string validationString: type: string HttpEndpointConfig: type: object properties: endpointNameByCollectedPathTemplateRuleEnabled: type: boolean description: | The highest default precedence of endpoint rule is creating endpoint is based on path template. For example, ``` /hospital/1948/patient/291148 /hospital/728/patient/924892 /hospital/47/patient/25978 /hospital/108429/patient/1847 ``` can be considered as `/hospital/{hid}/patient/{pid}` if this rule is enabled. For most of the use cases, this rule should be enabled. endpointNameByFirstPathSegmentRuleEnabled: type: boolean description: | There are endpoint extraction rules in Instana which take the first path segment from the HTTP request and turn this into an endpoint name. For example, given the following URLs `/users/123/profile` and `/users/123/settings`, the extraction rule will only take the first segment. As a result endpoint name will be `users`. Although this is useful in cases where broad overview of monitoring is required, lot of use cases are more specified. Considering the above example, if this rule is enabled, Instana can't distinguish between `profile` or `settings` as endpoints. For use cases where endpoints has to be monitored at fine granular level, this flag should be set to `false`. rules: type: array description: Specify custom rule configuration apart from Instana predefined rules. This rule has the highest precedence. This is only available for HTTP endpoints. items: $ref: '#/components/schemas/HttpEndpointRule' maxItems: 500 minItems: 0 serviceId: type: string description: | An Instana generated unique identifier for a Service. If specified, the list of results will be filtered for the specified Service ID. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. One can see the service id from Instana UI by going to a Service page. In the URL, there will be `serviceId=3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. Alternatively, one can use `Get services` API endpoint to get the service id in `id` parameter. required: - rules - serviceId HttpEndpointRule: type: object description: Specify custom rule configuration apart from Instana predefined rules. This rule has the highest precedence. This is only available for HTTP endpoints. properties: enabled: type: boolean description: Set this flag to `true` if custom rule configurations has to be considered. pathSegments: type: array description: |+ A list of path segment matching rules, each defining how a segment of the HTTP path should be matched. Each object in this array represents a segment rule, allowing for fixed segments, dynamic parameters, wildcards, or unsupported segments. **UNSUPPORTED**: A path segment that is not recognized by the system. **FIXED**: This type represents a static, unchanging part of the URL path. For example, `/api/{version}/users`, `api` and `users` would be `FIXED` segment. **PARAMETER**: This type represents a variable part of the URL path, often used to capture specific parameters or IDs that change with each request. For example, `/api/{version}/users`, `version` would be `PARAMETER` segment. `version` can be `v1`, `v2`, `v3` etc. **MATCH_ALL**: This type represents a wildcard, capturing all remaining segments from this point onward in the URL path. For example, `/api/{version}/users/*` — Matches all paths like `/api/v1/users/123`. `/api/v3/users/456` etc. items: $ref: '#/components/schemas/HttpPathSegmentMatchingRule' maxItems: 16 minItems: 1 testCases: type: array description: | To validate whether the the defined custom endpoint rule configuration is working as expected. For example, given a query `/api/*/{version}`, the following test case `/api/anyName/123` will match, while `/otherApi/anyName/123` will not. items: type: string description: | To validate whether the the defined custom endpoint rule configuration is working as expected. For example, given a query `/api/*/{version}`, the following test case `/api/anyName/123` will match, while `/otherApi/anyName/123` will not. maxItems: 32 minItems: 0 required: - pathSegments HttpPathSegmentMatchingRule: type: object description: |+ A list of path segment matching rules, each defining how a segment of the HTTP path should be matched. Each object in this array represents a segment rule, allowing for fixed segments, dynamic parameters, wildcards, or unsupported segments. **UNSUPPORTED**: A path segment that is not recognized by the system. **FIXED**: This type represents a static, unchanging part of the URL path. For example, `/api/{version}/users`, `api` and `users` would be `FIXED` segment. **PARAMETER**: This type represents a variable part of the URL path, often used to capture specific parameters or IDs that change with each request. For example, `/api/{version}/users`, `version` would be `PARAMETER` segment. `version` can be `v1`, `v2`, `v3` etc. **MATCH_ALL**: This type represents a wildcard, capturing all remaining segments from this point onward in the URL path. For example, `/api/{version}/users/*` — Matches all paths like `/api/v1/users/123`. `/api/v3/users/456` etc. discriminator: mapping: FIXED: '#/components/schemas/FixedHttpPathSegmentMatchingRule' MATCH_ALL: '#/components/schemas/MatchAllHttpPathSegmentMatchingRule' PARAMETER: '#/components/schemas/PathParameterHttpPathSegmentMatchingRule' UNSUPPORTED: '#/components/schemas/UnsupportedHttpPathSegmentMatchingRule' propertyName: type properties: type: type: string enum: - UNSUPPORTED - FIXED - PARAMETER - MATCH_ALL required: - type HttpScriptConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: fileName: type: string script: type: string maxLength: 1048576 minLength: 0 scriptType: type: string enum: - Basic - Jest scripts: $ref: '#/components/schemas/MultipleScriptsConfiguration' required: - markSyntheticCall - syntheticType HttpScriptConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: fileName: type: string script: type: string scriptType: type: string enum: - Basic - Jest scripts: $ref: '#/components/schemas/MultipleScriptsConfiguration' HyperParam: type: object description: List of hyper parameters of the Built-in Event Specification properties: defaultValue: type: number format: double description: type: string maxLength: 2048 minLength: 0 id: type: string maxLength: 64 minLength: 0 maxValue: type: number format: double minValue: type: number format: double name: type: string maxLength: 256 minLength: 0 valueFormat: type: string description: | | * NUMBER: Generic number * BYTES: Number of bytes * KILO_BYTES: Number of kilobytes * MEGA_BYTES: Number of megabytes * PERCENTAGE: Percentage in scale [0,1] * PERCENTAGE_100: Percentage in scale [0,100] * PERCENTAGE_NO_CAPPING: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * PERCENTAGE_100_NO_CAPPING: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * LATENCY: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * NANOS: Time in nanoseconds * MILLIS: Time in milliseconds * MICROS: Time in microseconds * SECONDS: Time in seconds * RATE: Number of occurrences per second * BYTE_RATE: Number of bytes per second * UNDEFINED: Metric value unit is not known enum: - NUMBER - BYTES - KILO_BYTES - MEGA_BYTES - PERCENTAGE - PERCENTAGE_100 - PERCENTAGE_NO_CAPPING - PERCENTAGE_100_NO_CAPPING - LATENCY - NANOS - MILLIS - MICROS - SECONDS - RATE - BYTE_RATE - UNDEFINED required: - description - id - name IdentityProviderPatch: type: object properties: restrictEmptyIdpGroups: type: boolean ImpactedBeaconInfo: type: object properties: country: type: string label: type: string subdivision: type: string userEmail: type: string userName: type: string InfraAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the Infrastructure Smart Alert. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 evaluationType: type: string description: Determines whether we evaluate each infra entity independently or group of entities will be evaluated together. enum: - PER_ENTITY - CUSTOM gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 groupBy: type: array description: The grouping tags used to group the metric results. items: type: string description: The grouping tags used to group the metric results. maxItems: 5 minItems: 0 name: type: string description: Name of the Infrastructure Smart Alert. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/InfraAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdInfraAlertRule' maxItems: 5 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/InfraTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - customPayloadFields - description - granularity - groupBy - name - tagFilterExpression - timeThreshold InfraAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. created: type: integer format: int64 minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the Infrastructure Smart Alert. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean evaluationType: type: string description: Determines whether we evaluate each infra entity independently or group of entities will be evaluated together. enum: - PER_ENTITY - CUSTOM gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 groupBy: type: array description: The grouping tags used to group the metric results. items: type: string description: The grouping tags used to group the metric results. maxItems: 5 minItems: 0 id: type: string maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Infrastructure Smart Alert. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean rule: $ref: '#/components/schemas/InfraAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdInfraAlertRule' maxItems: 5 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/InfraTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - customPayloadFields - description - granularity - groupBy - id - name - tagFilterExpression - timeThreshold InfraAlertRule: type: object discriminator: mapping: genericRule: '#/components/schemas/GenericInfraAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string crossSeriesAggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE entityType: type: string metricGroupBy: type: array items: type: string metricName: type: string metricTagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' regex: type: boolean required: - alertType - metricName InfraEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: ibmMqFileTransfer: type: array description: 'IBM MQ file transfer information, if relevant for this entity and event.' items: type: object additionalProperties: type: object description: 'IBM MQ file transfer information, if relevant for this entity and event.' description: 'IBM MQ file transfer information, if relevant for this entity and event.' snapshotId: type: string description: ID of the snapshot. InfraExploreCursor: type: object description: cursor to use between successive queries InfraMetricConfiguration: type: object oneOf: - $ref: '#/components/schemas/SimpleMetricConfiguration' - $ref: '#/components/schemas/ArithmeticConfiguration' InfraSloEntity: type: object allOf: - $ref: '#/components/schemas/SloEntity' - type: object properties: infraType: type: string description: Infrastructure Type required: - infraType InfraTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: violationsInSequence: '#/components/schemas/ViolationsInSequenceInfraTimeThreshold' propertyName: type properties: timeWindow: type: integer format: int64 type: type: string required: - type InfrastructureEntitiesResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean items: type: array items: $ref: '#/components/schemas/InfrastructureItem' next: $ref: '#/components/schemas/InfraExploreCursor' totalHits: type: integer format: int64 description: represents the total number of results minimum: 0 required: - items InfrastructureGroup: type: object description: group of infrastructure entities properties: count: type: integer format: int64 description: number of entities in this group metrics: type: object additionalProperties: type: array description: 'map of metric keys to array of timestamp,value pairs' items: type: array description: 'map of metric keys to array of timestamp,value pairs' items: type: number description: 'map of metric keys to array of timestamp,value pairs' description: 'map of metric keys to array of timestamp,value pairs' pollRate: type: integer format: int64 description: max poll rate across this group tags: type: object additionalProperties: type: object description: tag keys and values for this group description: tag keys and values for this group InfrastructureGroupsResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean items: type: array items: $ref: '#/components/schemas/InfrastructureGroup' next: $ref: '#/components/schemas/InfraExploreCursor' totalHits: type: integer format: int64 description: represents the total number of results minimum: 0 required: - items InfrastructureItem: type: object properties: entityHealthInfo: $ref: '#/components/schemas/EntityHealthInfo' label: type: string metrics: type: object additionalProperties: type: array items: type: array items: type: number plugin: type: string snapshotId: type: string tags: type: object additionalProperties: type: string time: type: integer format: int64 description: Epoch time in milliseconds if the snapshot is offline. Set to 9223372036854775807 if the snapshot is online. InfrastructureMetricResult: type: object properties: items: type: array items: $ref: '#/components/schemas/MetricItem' IngestionOffsetCursor: type: object description: Cursor to use between successive queries InstanaVersionInfo: type: object properties: branch: type: string commit: type: string imageTag: type: string IntegrationOverview: type: object properties: id: type: string description: Unique ID of the alert channel kind: type: string description: The type of the Alerting Channel. name: type: string description: The name of the Alerting Channel. properties: type: object additionalProperties: type: string description: Properties of the alert channel in pairs of key/value description: Properties of the alert channel in pairs of key/value rbacTags: type: array description: Team Tags that's assigned to the Alerting Channel items: $ref: '#/components/schemas/ApiTag' uniqueItems: true required: - id - kind - name Invitation: type: object properties: email: type: string groupId: type: string message: type: string path: type: string required: - email - groupId InvitationResponse: type: object properties: invitationResults: type: array items: $ref: '#/components/schemas/InvitationResult' InvitationResult: type: object properties: invitationStatus: type: string enum: - SUCCESS - INTERNAL_ERROR - FAILURE_USER_ALREADY_EXISTS - FAILURE_USER_ALREADY_INVITED - FAILURE_ONLY_DEFAULT_GROUP_INVITATION_ALLOWED - FAILURE_TENANT_IDP_CONFIGURED userEmail: type: string IpMaskingConfiguration: type: object properties: ipMasking: type: string enum: - DEFAULT - STRICT - REMOVE_ALL_DETAILS required: - ipMasking JsStackTraceLine: type: object properties: column: type: integer format: int32 minimum: -1 file: type: string line: type: integer format: int32 minimum: -1 name: type: string translationExplanation: type: string translationStatus: type: integer format: int32 minimum: -1 required: - file Json: type: object JsonNode: type: object KubernetesPhysicalContext: type: object description: 'Contains physical context of Kubernetes which contains information about the cluster, namespace, node and pod.' properties: cluster: $ref: '#/components/schemas/SnapshotPreview' namespace: $ref: '#/components/schemas/SnapshotPreview' node: $ref: '#/components/schemas/SnapshotPreview' pod: $ref: '#/components/schemas/SnapshotPreview' LLMEgressGateway: type: object description: Custom handler definition. properties: aiModel: type: string configurations: $ref: '#/components/schemas/JsonNode' createdAt: type: string description: type: string enabled: type: boolean endpointApiKey: type: string endpointUrl: type: string id: type: string format: uuid instanaAgents: $ref: '#/components/schemas/JsonNode' metadata: $ref: '#/components/schemas/JsonNode' modifiedAt: type: string name: type: string prompt: type: string supports: $ref: '#/components/schemas/JsonNode' system: type: boolean tenantUnitId: type: string watsonxKey: type: string watsonxProject: type: string watsonxUrl: type: string required: - createdAt - id - modifiedAt - name - prompt - supports - tenantUnitId LatencyBlueprintIndicator: type: object allOf: - $ref: '#/components/schemas/ServiceLevelIndicator' - type: object properties: threshold: type: number format: double description: Threshold Value for the Blueprint exclusiveMinimum: false minimum: 0 required: - type LocationStatus: type: object properties: locationDisplayLabel: type: string locationId: type: string successRate: type: number format: double successRuns: type: integer format: int64 totalTestRuns: type: integer format: int64 required: - locationId LogAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the Log Smart Alert. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 groupBy: type: array description: The grouping tags used to group the metric results. items: $ref: '#/components/schemas/GroupByTag' maxItems: 1 minItems: 0 name: type: string description: Name of the Log Smart Alert. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdLogAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/LogTimeThreshold' required: - description - granularity - name - tagFilterExpression - timeThreshold LogAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. created: type: integer format: int64 minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the Log Smart Alert. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 groupBy: type: array description: The grouping tags used to group the metric results. items: $ref: '#/components/schemas/GroupByTag' maxItems: 1 minItems: 0 id: type: string maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Log Smart Alert. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdLogAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/LogTimeThreshold' required: - description - granularity - id - name - tagFilterExpression - timeThreshold LogAlertRule: type: object discriminator: mapping: logCount: '#/components/schemas/LogCountAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string metricName: type: string required: - alertType - metricName LogCountAlertRule: type: object allOf: - $ref: '#/components/schemas/LogAlertRule' required: - metricName LogEntryActor: type: object properties: email: type: string id: type: string name: type: string type: type: string enum: - USER - API_TOKEN - POLICY required: - id - name - type LogEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: snapshotId: type: string description: ID of the snapshot. LogTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: violationsInSequence: '#/components/schemas/ViolationsInSequenceLogTimeThreshold' propertyName: type properties: timeWindow: type: integer format: int64 type: type: string required: - type LogVolumeGroup: type: object properties: label: type: string maxLength: 256 minLength: 0 logVolume: type: integer format: int64 required: - label - logVolume LogVolumeUsageItem: type: object properties: logVolume: type: integer format: int64 numberOfMonth: type: integer format: int32 maximum: 12 minimum: 1 retentionPeriods: type: array items: $ref: '#/components/schemas/RetentionPeriod' required: - logVolume - retentionPeriods LogVolumeUsageResult: type: object properties: logVolumeUsageItems: type: array items: $ref: '#/components/schemas/LogVolumeUsageItem' required: - logVolumeUsageItems LogsApplicationAlertRule: type: object allOf: - $ref: '#/components/schemas/ApplicationAlertRule' - type: object properties: level: type: string enum: - WARN - ERROR - ANY loglevel: type: string enum: - WARN - ERROR - ANY writeOnly: true message: type: string operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH required: - level - metricName - operator MaintenanceConfig: type: object properties: id: type: string description: ID of the Maintenance Window Configuration. maxLength: 64 minLength: 0 name: type: string description: Name of the Maintenance Window Configuration. maxLength: 256 minLength: 0 query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 windows: type: array description: A set of time periods when the Maintenance Window Configuration is active. items: $ref: '#/components/schemas/MaintenanceWindow' maxItems: 1 minItems: 0 uniqueItems: true required: - id - name - query MaintenanceConfigScheduling: type: object description: Time scheduling of the Maintenance Window configurations. discriminator: mapping: ONE_TIME: '#/components/schemas/OneTimeMaintenanceWindow' RECURRENT: '#/components/schemas/RecurrentMaintenanceWindow' propertyName: type properties: duration: $ref: '#/components/schemas/Duration' start: type: integer format: int64 minimum: 1 type: type: string maxLength: 2048 minLength: 0 required: - duration - start - type MaintenanceConfigV2: type: object properties: id: type: string description: ID of the Maintenance Window configuration. maxLength: 64 minLength: 0 name: type: string description: Name of the Maintenance Window configuration. maxLength: 256 minLength: 0 paused: type: boolean description: Boolean flag to determine if the Maintenance Window configuration is paused or still live. query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 retriggerOpenAlertsEnabled: type: boolean description: 'Boolean flag to determine if we should retrigger open alerts to be sent out for any events that opened during this maintenance window, and continues to remain open after the window expires' scheduling: $ref: '#/components/schemas/MaintenanceConfigScheduling' tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilterExpressionEnabled: type: boolean description: Boolean flag to determine if the tagFilterExpression is enabled. required: - id - name - query - scheduling MaintenanceConfigV2WithStateAndOccurrence: type: object properties: id: type: string description: ID of the Maintenance Window configuration. maxLength: 64 minLength: 0 lastUpdated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Maintenance Window configuration. maxLength: 256 minLength: 0 occurrence: $ref: '#/components/schemas/Occurrence' paused: type: boolean description: Boolean flag to determine if the Maintenance Window configuration is paused or still live. query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 retriggerOpenAlertsEnabled: type: boolean description: 'Boolean flag to determine if we should retrigger open alerts to be sent out for any events that opened during this maintenance window, and continues to remain open after the window expires' scheduling: $ref: '#/components/schemas/MaintenanceConfigScheduling' state: type: string description: 'State of the Maintenance Window, it can be: UNSCHEDULED, SCHEDULED, ACTIVE, PAUSED, EXPIRED.' enum: - UNSCHEDULED - SCHEDULED - ACTIVE - PAUSED - EXPIRED tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilterExpressionEnabled: type: boolean description: Boolean flag to determine if the tagFilterExpression is enabled. required: - id - name - occurrence - query - scheduling MaintenanceConfigWithLastUpdated: type: object properties: id: type: string description: ID of the Maintenance Window Configuration. maxLength: 64 minLength: 0 lastUpdated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Maintenance Window Configuration. maxLength: 256 minLength: 0 query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 windows: type: array description: A set of time periods when the Maintenance Window Configuration is active. items: $ref: '#/components/schemas/MaintenanceWindow' maxItems: 1 minItems: 0 uniqueItems: true required: - id - name - query MaintenanceWindow: type: object description: A set of time periods when the Maintenance Window Configuration is active. properties: end: type: integer format: int64 minimum: 1 id: type: string maxLength: 64 minLength: 0 start: type: integer format: int64 minimum: 0 required: - id ManualAlertingChannelConfiguration: type: object properties: customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/StaticStringField' maxItems: 20 minItems: 0 eventId: type: string description: Id of the event to be notified about. maxLength: 256 minLength: 0 required: - customPayloadFields - eventId ManualCloseInfo: type: object properties: closeTimestamp: type: integer format: int64 description: The closing timestamp. disableEvent: type: boolean description: Flag to indicate whether to disable the event. eventIds: type: array description: 'The event IDs to manually close, in case of multi close.' items: type: string description: 'The event IDs to manually close, in case of multi close.' uniqueItems: true muteAlerts: type: boolean description: Flag to indicate whether to mute alerts. reasonForClosing: type: string description: The reason for manual closing. username: type: string description: The user name. maxLength: 256 minLength: 0 required: - reasonForClosing - username ManualServiceConfig: type: object properties: description: type: string description: A description of the manual service configuration. enabled: type: boolean description: Enable or disable the manual service configuration. By default it is enabled. existingServiceId: type: string description: The service ID of the existing monitored service to which the calls should be linked. id: type: string description: A unique id of the manual service configuration. maxLength: 128 minLength: 1 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' unmonitoredServiceName: type: string description: A service name if you want to map calls to an unmonitored service. required: - id - tagFilterExpression MatchAllHttpPathSegmentMatchingRule: type: object allOf: - $ref: '#/components/schemas/HttpPathSegmentMatchingRule' required: - type MatchExpressionDTO: type: object description: ' Specify the expression to match, For example, `endpoint.name contains health`.' discriminator: mapping: BINARY_OP: '#/components/schemas/BinaryOperatorDTO' LEAF: '#/components/schemas/TagMatcherDTO' propertyName: type properties: type: type: string required: - type MetaData: type: object description: Action metadata. properties: ai: type: array description: List of metadata for AI originated actions. items: type: object additionalProperties: type: object description: List of metadata for AI originated actions. description: List of metadata for AI originated actions. aiOriginated: type: boolean description: AI originated action flag. Value is `true` if action is AI generated `false` otherwise. builtIn: type: boolean description: Built-in out of the box action flag. Value is `true` if built-in action `false` otherwise. readOnly: type: boolean description: Read only action flag. Value is `true` if read only `false` otherwise. sensorImported: type: boolean description: Sensor imported action flag. Value is `true` if action is imported from sensor `false` otherwise. MetricAPIResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' metrics: type: object additionalProperties: type: array items: type: array items: type: number required: - metrics MetricConfig: type: object description: 'A list of objects each of which defines a metric and the (statistical) aggregation -- MEAN, SUM, MAX, etc -- that should be used to summarize it for the defined time frame. Eg: `[{ ''metric'': ''latency'', ''aggregation'': ''MEAN''}]`. To know more about supported metrics and its aggregation, See `Get Metric catalog`.' properties: aggregation: type: string description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int32 description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds' metric: type: string description: 'Set a particular metric, eg: `latency`.' required: - aggregation - metric MetricConfiguration: type: object description: 'Details regarding the metric to be configured, including the metric name, threshold, and aggregation method' properties: metricAggregation: type: string description: | Specifies the types of aggregations that can be applied to a series of values. For example, `P25` refers to the 25th percentile. Note that not all aggregation methods are available for every metric. For instance, the `Call count` metric supports only the `SUM` aggregation, whereas the `Error rate` metric only supports the `MEAN` aggregation. enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE metricName: type: string description: Defines the name of the metric to be monitored. Examples include `calls` and `latency` threshold: type: number format: double description: Specifies the threshold value for the metric being monitored exclusiveMinimum: true minimum: 0 required: - metricName MetricDescription: type: object properties: aggregations: type: array description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. items: type: string description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE uniqueItems: true defaultAggregation: type: string description: 'The preselected aggregation for a metric. For example, for `Call latency` the default aggregation is `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE description: type: string description: 'A description of the metric. For example, for `Call count` metric, the description would be something like `Number of received calls`' formatter: type: string description: | * `NUMBER`: Generic number * `BYTES`: Number of bytes * `KILO_BYTES`: Number of kilobytes * `MEGA_BYTES`: Number of megabytes * `PERCENTAGE`: Percentage in scale [0,1] * `PERCENTAGE_100`: Percentage in scale [0,100] * `PERCENTAGE_NO_CAPPING`: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * `PERCENTAGE_100_NO_CAPPING`: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * `LATENCY`: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * `NANOS`: Time in nanoseconds * `MILLIS`: Time in milliseconds * `MICROS`: Time in microseconds * `SECONDS`: Time in seconds * `RATE`: Number of occurrences per second * `BYTE_RATE`: Number of bytes per second * `UNDEFINED`: Metric value unit is not known label: type: string description: 'The name of the metric. For example, `Call count`, `Erroneous calls`, `Service count` etc.' metricId: type: string description: 'The unique id of the metric. For example, `calls`, `erroneousCalls`, `latency` etc.' required: - aggregations - formatter - label - metricId MetricInstance: type: object properties: custom: type: boolean description: type: string formatter: type: string description: | | * NUMBER: Generic number * BYTES: Number of bytes * KILO_BYTES: Number of kilobytes * MEGA_BYTES: Number of megabytes * PERCENTAGE: Percentage in scale [0,1] * PERCENTAGE_100: Percentage in scale [0,100] * PERCENTAGE_NO_CAPPING: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * PERCENTAGE_100_NO_CAPPING: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * LATENCY: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * NANOS: Time in nanoseconds * MILLIS: Time in milliseconds * MICROS: Time in microseconds * SECONDS: Time in seconds * RATE: Number of occurrences per second * BYTE_RATE: Number of bytes per second * UNDEFINED: Metric value unit is not known enum: - NUMBER - BYTES - KILO_BYTES - MEGA_BYTES - PERCENTAGE - PERCENTAGE_100 - PERCENTAGE_NO_CAPPING - PERCENTAGE_100_NO_CAPPING - LATENCY - NANOS - MILLIS - MICROS - SECONDS - RATE - BYTE_RATE - UNDEFINED label: type: string metricId: type: string pluginId: type: string required: - description - formatter - label - metricId - pluginId MetricItem: type: object properties: from: type: integer format: int64 description: Start of timeframe expressed as the Unix epoch time in milliseconds host: type: string description: Host name label: type: string description: Entitiy label metrics: type: object additionalProperties: type: array items: type: array items: type: number plugin: type: string description: Plugin name snapshotId: type: string description: 'Id of the exact metric you want to retrieve, eg. "cpu.user", "clientrequests.read.mean"' tags: type: array description: Entitiy tags items: type: string description: Entitiy tags to: type: integer format: int64 description: End of timeframe expressed as the Unix epoch time in milliseconds MetricMetadata: type: object properties: category: type: string description: Category of the metric crossSeriesAggregations: type: array description: Possible cross series aggregation the metric supports items: type: string description: Possible cross series aggregation the metric supports enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE uniqueItems: true description: type: string description: Description of the metric format: type: string description: | | * NUMBER: Generic number * BYTES: Number of bytes * KILO_BYTES: Number of kilobytes * MEGA_BYTES: Number of megabytes * PERCENTAGE: Percentage in scale [0,1] * PERCENTAGE_100: Percentage in scale [0,100] * PERCENTAGE_NO_CAPPING: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * PERCENTAGE_100_NO_CAPPING: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * LATENCY: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * NANOS: Time in nanoseconds * MILLIS: Time in milliseconds * MICROS: Time in microseconds * SECONDS: Time in seconds * RATE: Number of occurrences per second * BYTE_RATE: Number of bytes per second * UNDEFINED: Metric value unit is not known enum: - NUMBER - BYTES - KILO_BYTES - MEGA_BYTES - PERCENTAGE - PERCENTAGE_100 - PERCENTAGE_NO_CAPPING - PERCENTAGE_100_NO_CAPPING - LATENCY - NANOS - MILLIS - MICROS - SECONDS - RATE - BYTE_RATE - UNDEFINED id: type: string description: Identifier for the metric infraTagCategory: type: string description: Category of the entity enum: - ACE - ALICLOUD - AWS - AZURE - CASSANDRA - CLOUD_FOUNDRY - CLR - COCKROACH - CONSUL - CONTAINER - COUCHBASE - DFQ - ELASTICSEARCH - GCP - HADOOP_YARN - HAZELCAST - IBM_CLOUD - IBM_DATAPOWER - IBM_I_SERIES - IBM_MQ - IBM_MQMFT - IBM_OPENSTACK - KAFKA_CONNECT - KUBERNETES - MONGO_DB - OTHERS - REDIS - SAP - SELF_MONITORING - SOLR - SPARK - TIBCOBW - TUXEDO - VSHPERE - WEBSPHERE - CUSTOM_ENTITY label: type: string description: Label for the metric ownerType: type: string description: Type of the entity associated with the metric tags: type: array description: Metric tags items: type: string description: Metric tags required: - id - infraTagCategory - label - ownerType MetricPattern: type: object properties: operator: type: string enum: - is - contains - startsWith - endsWith - any placeholder: type: string postfix: type: string prefix: type: string required: - operator - prefix MetricQuery: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperand' - type: object properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE writeOnly: true crossSeriesAggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE writeOnly: true granularity: type: integer format: int64 writeOnly: true metric: type: string writeOnly: true regex: type: boolean writeOnly: true required: type: boolean writeOnly: true MetricsResult: type: object properties: metricsResult: type: array items: $ref: '#/components/schemas/MetricsResultItem' required: - metricsResult MetricsResultItem: type: object properties: customTags: type: object additionalProperties: type: string description: A map of custom properties composed of the custom property name and its value. This information will be included if the custom properties were requested or if the query was grouped and the grouping included one or more custom properties. description: A map of custom properties composed of the custom property name and its value. This information will be included if the custom properties were requested or if the query was grouped and the grouping included one or more custom properties. metrics: type: array description: 'A map of the requested metrics, composed of the metric name and its value.' items: type: object additionalProperties: type: object description: 'A map of the requested metrics, composed of the metric name and its value.' description: 'A map of the requested metrics, composed of the metric name and its value.' runType: type: string description: Indicates whether the test was scheduled to run or run now tests: type: array description: A description of the Synthetic test associated with the result item. This information will be included if the request was grouped by synthetic.testId or if includeAggregatedTestId was true on the request. items: $ref: '#/components/schemas/MetricsTestResultItem' required: - metrics MetricsTestResultItem: type: object description: A description of the Synthetic test associated with the result item. This information will be included if the request was grouped by synthetic.testId or if includeAggregatedTestId was true on the request. properties: applicationId: type: string description: An identifier of an application associated with the Synthetic test. This field is deprecated and will be replace by the applicationIds field. applicationIds: type: array description: A list of the applications associated with the Synthetic test. items: type: string description: A list of the applications associated with the Synthetic test. locationId: type: array description: A list of the locations associated with the Synthetic test. items: type: string description: A list of the locations associated with the Synthetic test. mobileApplicationIds: type: array description: A list of the mobile applications associated with the Synthetic test. items: type: string description: A list of the mobile applications associated with the Synthetic test. serviceId: type: string description: A service associated with the Synthetic test. testId: type: string description: The testId for the Synthetic test. testName: type: string description: The Synthetic test's name. websiteIds: type: array description: A list of the websites associated with the Synthetic test. items: type: string description: A list of the websites associated with the Synthetic test. required: - testId MobileApp: type: object properties: id: type: string maxLength: 128 minLength: 0 name: type: string maxLength: 128 minLength: 0 required: - id - name MobileAppAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. completeTagFilterExpression: $ref: '#/components/schemas/TagFilterExpression' customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the mobile app alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 mobileAppId: type: string description: ID of the mobile app that this Smart Alert configuration is applied to. maxLength: 64 minLength: 0 name: type: string description: Name of the mobile app alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/MobileAppAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdMobileAppAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/MobileAppTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - customPayloadFields - description - granularity - mobileAppId - name - tagFilterExpression - timeThreshold MobileAppAlertRule: type: object discriminator: mapping: crash: '#/components/schemas/CrashMobileAppAlertRule' customEvent: '#/components/schemas/CustomEventMobileAppAlertRule' slowness: '#/components/schemas/SlownessMobileAppAlertRule' statusCode: '#/components/schemas/StatusCodeMobileAppAlertRule' throughput: '#/components/schemas/ThroughputMobileAppAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string metricName: type: string required: - alertType - metricName MobileAppBeaconGroupsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: cursor: $ref: '#/components/schemas/IngestionOffsetCursor' earliestTimestamp: type: integer format: int64 minimum: 0 metrics: type: object additionalProperties: type: array items: type: array items: type: number name: type: string required: - cursor - metrics - name MobileAppBeaconGroupsResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/MobileAppBeaconGroupsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items MobileAppBeaconResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/MobileAppBeaconsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items MobileAppBeaconTagGroup: type: object properties: groupbyTag: type: string description: The name of the group tag (e.g. `agent.tag` or `docker.label`). maxLength: 256 minLength: 0 groupbyTagEntity: type: string description: | The entity by which the data should be grouped. This field supports three possible values: `NOT_APPLICABLE`, `DESTINATION`, and `SOURCE`. `SOURCE`: the tag filter should apply to the source entity. `DESTINATION`: the tag filter should apply to the destination entity. `NOT_APPLICABLE`: some tags are independent of source or destination, such as tags on the call itself, log tags or trace tags (only destination makes sense because the source is unknown for the root call). enum: - NOT_APPLICABLE - DESTINATION - SOURCE groupbyTagSecondLevelKey: type: string description: 'If present, it''s the 2nd level key part (e.g. `customKey` on `docker.label.customKey`)' maxLength: 256 minLength: 0 required: - groupbyTag - groupbyTagEntity MobileAppBeaconsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: beacon: $ref: '#/components/schemas/MobileAppMonitoringBeacon' cursor: $ref: '#/components/schemas/IngestionOffsetCursor' impactedBeaconInfo: $ref: '#/components/schemas/ImpactedBeaconInfo' required: - beacon - cursor MobileAppEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: mobileAppId: type: string description: ID of the mobile app. MobileAppMetricResult: type: object properties: empty: type: boolean MobileAppMonitoringBeacon: type: object properties: accuracyRadius: type: integer format: int64 minimum: -1 agentVersion: type: string maxLength: 128 minLength: 0 appBuild: type: string maxLength: 128 minLength: 0 appVersion: type: string maxLength: 128 minLength: 0 appVersionNumber: type: integer format: int64 minimum: -1 availableMb: type: integer format: int64 minimum: -1 backendTraceId: type: string maxLength: 128 minLength: 0 batchSize: type: integer format: int64 minimum: 1 beaconId: type: string maxLength: 128 minLength: 0 bundleIdentifier: type: string maxLength: 128 minLength: 0 bytesIngested: type: integer format: int64 carrier: type: string maxLength: 256 minLength: 0 city: type: string maxLength: 256 minLength: 0 clockSkew: type: integer format: int64 minimum: 0 coldStartTimeMs: type: integer format: int64 minimum: -1 connectionType: type: string maxLength: 16 minLength: 0 continent: type: string maxLength: 256 minLength: 0 continentCode: type: string maxLength: 64 minLength: 0 country: type: string maxLength: 256 minLength: 0 countryCode: type: string maxLength: 64 minLength: 0 currentAppState: type: string maxLength: 24 minLength: 0 customEventName: type: string maxLength: 256 minLength: 0 customMetric: type: number format: double decodedBodySize: type: integer format: int64 minimum: -1 deviceHardware: type: string maxLength: 128 minLength: 0 deviceManufacturer: type: string maxLength: 128 minLength: 0 deviceModel: type: string maxLength: 128 minLength: 0 dropView: type: string maxLength: 256 minLength: 0 duration: type: integer format: int64 minimum: 0 effectiveConnectionType: type: string maxLength: 16 minLength: 0 encodedBodySize: type: integer format: int64 minimum: -1 environment: type: string maxLength: 256 minLength: 0 errorCount: type: integer format: int64 minimum: 0 errorId: type: string maxLength: 128 minLength: 0 errorMessage: type: string maxLength: 16384 minLength: 0 errorType: type: string maxLength: 1024 minLength: 0 googlePlayServicesMissing: type: boolean hotStartTimeMs: type: integer format: int64 minimum: -1 httpCallHeaders: type: object additionalProperties: type: string httpCallMethod: type: string maxLength: 16 minLength: 0 httpCallOrigin: type: string maxLength: 1024 minLength: 0 httpCallPath: type: string maxLength: 4096 minLength: 0 httpCallStatus: type: integer format: int32 maximum: 599 minimum: -1 httpCallUrl: type: string maxLength: 4096 minLength: 0 ingestionTime: type: integer format: int64 minimum: 1 internalMeta: type: object additionalProperties: type: string label: type: string latitude: type: number format: double longitude: type: number format: double maxMb: type: integer format: int64 minimum: -1 meta: type: object additionalProperties: type: string mobileAppId: type: string maxLength: 64 minLength: 0 mobileAppLabel: type: string maxLength: 128 minLength: 0 osName: type: string maxLength: 128 minLength: 0 osVersion: type: string maxLength: 128 minLength: 0 parentBeaconId: type: string parsedStackTrace: type: string maxLength: 16384 minLength: 0 performanceSubtype: type: string maxLength: 24 minLength: 0 platform: type: string maxLength: 32 minLength: 0 rateLimitBeaconType: type: string maxLength: 128 minLength: 0 rateLimitCount: type: integer format: int64 minimum: 0 rateLimitCustomMetricVal: type: array items: type: number format: float rateLimitTimeMax: type: integer format: int64 minimum: 0 rateLimitTimeMin: type: integer format: int64 minimum: 0 region: type: string maxLength: 256 minLength: 0 rooted: type: boolean sessionId: type: string maxLength: 128 minLength: 0 stackTrace: type: string maxLength: 16384 minLength: 0 stackTraceKeyChecksum: type: string maxLength: 128 minLength: 0 stackTraceKeyInformation: type: string maxLength: 1024 minLength: 0 stackTraceLine: type: array items: $ref: '#/components/schemas/StackTraceLine' maxItems: 128 minItems: 0 stackTraceParsingStatus: type: integer format: int32 minimum: -1 subdivision: type: string maxLength: 256 minLength: 0 subdivisionCode: type: string maxLength: 64 minLength: 0 tenant: type: string maxLength: 256 minLength: 0 timestamp: type: integer format: int64 minimum: 1 transferSize: type: integer format: int64 minimum: -1 type: type: string maxLength: 24 minLength: 0 unit: type: string maxLength: 256 minLength: 0 useFeatures: type: array items: type: string maxItems: 15 minItems: 0 usedMb: type: integer format: int64 minimum: -1 userEmail: type: string maxLength: 128 minLength: 0 userId: type: string maxLength: 128 minLength: 0 userIp: type: string maxLength: 45 minLength: 0 userLanguages: type: array items: type: string maxItems: 5 minItems: 0 userName: type: string maxLength: 128 minLength: 0 userSessionId: type: string maxLength: 128 minLength: 0 view: type: string maxLength: 256 minLength: 0 viewportHeight: type: integer format: int32 minimum: -1 viewportWidth: type: integer format: int32 minimum: -1 warmStartTimeMs: type: integer format: int64 minimum: -1 required: - beaconId - mobileAppId - performanceSubtype - rateLimitBeaconType - type MobileAppMonitoringMetricDescription: type: object properties: aggregations: type: array description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. items: type: string description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE uniqueItems: true beaconTypes: type: array items: type: string uniqueItems: true defaultAggregation: type: string description: 'The preselected aggregation for a metric. For example, for `Call latency` the default aggregation is `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE description: type: string description: 'A description of the metric. For example, for `Call count` metric, the description would be something like `Number of received calls`' formatter: type: string description: | * `NUMBER`: Generic number * `BYTES`: Number of bytes * `KILO_BYTES`: Number of kilobytes * `MEGA_BYTES`: Number of megabytes * `PERCENTAGE`: Percentage in scale [0,1] * `PERCENTAGE_100`: Percentage in scale [0,100] * `PERCENTAGE_NO_CAPPING`: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * `PERCENTAGE_100_NO_CAPPING`: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * `LATENCY`: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * `NANOS`: Time in nanoseconds * `MILLIS`: Time in milliseconds * `MICROS`: Time in microseconds * `SECONDS`: Time in seconds * `RATE`: Number of occurrences per second * `BYTE_RATE`: Number of bytes per second * `UNDEFINED`: Metric value unit is not known label: type: string description: 'The name of the metric. For example, `Call count`, `Erroneous calls`, `Service count` etc.' metricId: type: string description: 'The unique id of the metric. For example, `calls`, `erroneousCalls`, `latency` etc.' pathToValueInBeacon: type: array items: type: string maxItems: 2147483647 minItems: 1 secondaryBeaconTypes: type: array items: type: string uniqueItems: true tagName: type: string required: - aggregations - beaconTypes - formatter - label - metricId MobileAppMonitoringMetricsConfiguration: type: object properties: aggregation: type: string description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int32 description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds' metric: type: string description: 'Set a particular metric, eg: `latency`.' numeratorTagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - aggregation - metric MobileAppTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: userImpactOfViolationsInSequence: '#/components/schemas/UserImpactMobileAppTimeThreshold' violationsInPeriod: '#/components/schemas/ViolationsInPeriodMobileAppTimeThreshold' violationsInSequence: '#/components/schemas/ViolationsInSequenceMobileAppTimeThreshold' propertyName: type properties: timeWindow: type: integer format: int64 type: type: string required: - type MonitoredEntitiesStats: type: object description: Statistics of monitored entities. properties: hostCount: type: integer format: int32 otelCount: type: integer format: int32 serverlessCount: type: integer format: int32 MonitoringState: type: object properties: hasEntities: type: boolean description: Has entities hostCount: type: integer format: int32 description: Count of hosts monitoredEntitiesStats: $ref: '#/components/schemas/MonitoredEntitiesStats' openTelemetryCount: type: integer format: int32 description: Count of open telemetry serverlessCount: type: integer format: int32 description: Count of serverless MultipleScriptsConfiguration: type: object properties: bundle: type: string scriptFile: type: string Multiplication: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperation' required: - left - right NestedOperation: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperand' - type: object properties: operation: $ref: '#/components/schemas/ArithmeticOperation' NewApplicationConfig: type: object properties: accessRules: type: array description: | Defines permissions and access relationships. items: $ref: '#/components/schemas/AccessRule' maxItems: 64 minItems: 1 boundaryScope: type: string description: | **INBOUND**: Inbound calls are calls initiated from outside the application and where the destination service is part of the selected application perspective. **ALL**: Results and metrics for not only calls at the application perspective boundary, but also those occurring within the application perspective. **DEFAULT**: Default value, for Application Perspectives created before the introduction of `ALL` and `INBOUND`. At present, whenever new Application Perspectives are created, there are only 2 options to select: `ALL` or `INBOUND`. It is recommended to use either `ALL` or `INBOUND` as `DEFAULT` is deprecated. `DEFAULT` is treated as `INBOUND`. enum: - ALL - INBOUND - DEFAULT label: type: string description: 'Name of the Application Perspective. Eg: `app1`.' maxLength: 128 minLength: 1 matchSpecification: $ref: '#/components/schemas/MatchExpressionDTO' scope: type: string description: | **INCLUDE_NO_DOWNSTREAM** : Only the selected services from the filters are included (call this the core set). This is useful when you treat the services as opaque. An example would be the services that represent 3rd party APIs. **INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING** : Include the core set of services from the filters and then expand this core set to include the database and messaging services that the core set directly interacts with. This is useful if you are want to monitor a set of services and their direct dependencies. For example, a development team responsible for several micro-services. **INCLUDE_ALL_DOWNSTREAM** : It effortlessly and automatically includes all the services that form the entire end-to-end dependency chain of the core set of services. This is useful if the AP will be used for troubleshooting. enum: - INCLUDE_NO_DOWNSTREAM - INCLUDE_IMMEDIATE_DOWNSTREAM_DATABASE_AND_MESSAGING - INCLUDE_ALL_DOWNSTREAM tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' required: - accessRules - boundaryScope - label - scope NewBusinessPerspectiveConfig: type: object properties: description: type: string maxLength: 300 minLength: 0 name: type: string maxLength: 100 minLength: 0 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' NewManualServiceConfig: type: object properties: description: type: string description: A description of the manual service configuration. enabled: type: boolean description: Enable or disable the manual service configuration. By default it is enabled. existingServiceId: type: string description: The service ID of the existing monitored service to which the calls should be linked. tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' unmonitoredServiceName: type: string description: A service name if you want to map calls to an unmonitored service. required: - tagFilterExpression OAuthConfig: type: object properties: additionalParameters: type: object additionalProperties: type: string clientId: type: string clientSecret: type: string grantType: type: string enum: - CLIENT_CREDENTIALS - PASSWORD password: type: string writeOnly: true tokenUrl: type: string username: type: string writeOnly: true required: - clientId - clientSecret - tokenUrl OAuthIntegration: type: object properties: config: $ref: '#/components/schemas/OAuthConfig' token: $ref: '#/components/schemas/OAuthToken' OAuthToken: type: object properties: accessToken: type: string createdAt: type: string format: date-time expiresAt: type: string format: date-time refreshToken: type: string status: type: string enum: - VALID - INVALID tokenType: type: string valid: type: boolean Occurrence: type: object description: Time window of the Maintence Window configuration occurrences. properties: end: type: integer format: int64 minimum: 1 start: type: integer format: int64 minimum: 0 Office365Integration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: webhookUrl: type: string required: - id - kind - name - webhookUrl OneTimeMaintenanceWindow: type: object allOf: - $ref: '#/components/schemas/MaintenanceConfigScheduling' required: - duration - start - type OpsgenieIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: alias: type: string apiKey: type: string region: type: string enum: - US - EU tags: type: string required: - apiKey - id - kind - name - region Order: type: object description: | Specifies the ordering of the results. It contains fields that define the sorting criteria, the collation for sorting, and the direction in which the results should be ordered. properties: by: type: string description: If the granularity is set to `1` you can use the metric name eg. `latency.p95` to order by that value. collation: type: string description: Language code used for sorting. Ignored for infrastructure queries. direction: type: string description: 'The order in which results will be sorted, either `ASC` for ascending or `DESC` for descending.' enum: - ASC - DESC required: - by - direction PagerdutyIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: serviceIntegrationKey: type: string required: - id - kind - name - serviceIntegrationKey PaginatedResult: type: object properties: items: type: array items: type: object page: type: integer format: int32 description: Page Number minimum: 1 pageSize: type: integer format: int32 minimum: 1 totalHits: type: integer format: int64 minimum: 0 required: - items Pagination: type: object properties: page: type: integer format: int32 description: 'Page number for a specific page in the results. For example, if you''d like to retrieve the 5th page out of 10 pages, the value would be 5.' minimum: 1 pageSize: type: integer format: int32 description: 'Set the number of items you want to return with one query. Eg: if you want to retrieve 10 items, the value would be 10.' maximum: 200 minimum: 1 Parameter: type: object description: List of inputs to the action. properties: description: type: string description: Parameter description. hidden: type: boolean description: Is parameter hidden or not. label: type: string description: Parameter label. name: type: string description: Parameter name. required: type: boolean description: Is parameter required or not. secured: type: boolean description: Is parameter secured or not. type: type: string description: 'Parameter type. Valid values are `static`, `dynamic`, or `vault`. Default value is `static`' value: type: string description: Parameter value. required: - label - name - type ParameterValue: type: object description: List of action input parameters. properties: name: type: string description: Parameter name. value: type: string description: Parameter value. required: - name - value PathParameterHttpPathSegmentMatchingRule: type: object allOf: - $ref: '#/components/schemas/HttpPathSegmentMatchingRule' - type: object properties: name: type: string description: | Given `/api/{version}/users` URI, `PARAMETER` name is `version`. required: - name - type PhysicalContext: type: object description: | The physical context of an entity. This is typically used to describe where a host, container or process fits into the infrastructure. 1. `cloudfoundry`: Contains physical context of Cloudfoundry. 2. `cluster`: Contains physical context of cluster like Hazelcast, Elasticsearch. 3. `container`: Contains physical context of container. 4. `host`: Contains physical context of host. 5. `kubernetes`: Contains physical context of Kubernetes. 6. `process`: Contains physical context of a process. properties: cloudfoundry: $ref: '#/components/schemas/CloudfoundryPhysicalContext' cluster: $ref: '#/components/schemas/SnapshotPreview' container: $ref: '#/components/schemas/SnapshotPreview' host: $ref: '#/components/schemas/SnapshotPreview' kubernetes: $ref: '#/components/schemas/KubernetesPhysicalContext' process: $ref: '#/components/schemas/SnapshotPreview' PluginResult: type: object properties: label: type: string description: Plugin name plugin: type: string description: Plugin ID Policy: type: object properties: description: type: string description: Policy description. maxLength: 512 minLength: 0 id: type: string description: Policy identifier. maxLength: 128 minLength: 1 readOnly: true name: type: string description: Policy name. maxLength: 128 minLength: 1 tags: type: array description: A list of policy tags. items: type: string description: A list of policy tags. trigger: $ref: '#/components/schemas/Trigger' typeConfigurations: type: array description: List of configurations that contains the list of actions to run and the mode (automatic or manual) in which the policy is run. items: $ref: '#/components/schemas/TypeConfiguration' required: - id - name - trigger - typeConfigurations PolicyRunnable: type: object description: Runnable associated with the policy. It can be a `workflow` or `action`. Currently only supports `action`. properties: id: type: string description: Action identifier. runConfiguration: $ref: '#/components/schemas/RunConfiguration' type: type: string description: Type of runnable. Supported value is `action`. enum: - action - workflow required: - id - runConfiguration - type PolicyScheduling: type: object description: Scheduling information for a scheduled policy. properties: recurrentRule: type: string description: 'Recurrent Rule defines how the policy recurs, using iCalendar RRULE format (e.g., `FREQ=DAILY;INTERVAL=1`).It supports fields like FREQ, INTERVAL, BYDAY. Refer to RFC 5545: https://datatracker.ietf.org/doc/html/rfc5545#section-3.3.10' startTime: type: string format: date-time description: 'The time to run the policy action in milliseconds since epoch (UTC) (e.g., `1706713140000`).' required: - startTime PostSnapshotsResult: type: object properties: items: type: array description: Detail information for requested snapshots. items: $ref: '#/components/schemas/SnapshotItem' notFoundSnapshotsIds: type: array description: Snapshot ids for snapshots that could not be retrieved. items: type: string description: Snapshot ids for snapshots that could not be retrieved. Problem: type: object properties: fixSuggestion: type: string maxLength: 65536 minLength: 0 id: type: string maxLength: 64 minLength: 0 problemText: type: string maxLength: 2048 minLength: 0 severity: type: integer format: int32 required: - id PrometheusWebhookIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: receiver: type: string webhookUrl: type: string required: - id - kind - name - webhookUrl RecurrentMaintenanceWindow: type: object allOf: - $ref: '#/components/schemas/MaintenanceConfigScheduling' - type: object properties: rrule: type: string timezoneId: type: string required: - duration - rrule - start - type Release: type: object properties: applications: type: array description: The list of application perspectives where the release can be viewed. items: $ref: '#/components/schemas/ApplicationScope' maxItems: 10 minItems: 0 name: type: string description: 'The name of the release. For example: `frontend/release-2000`.' maxLength: 256 minLength: 0 services: type: array description: The list of services where the release can be viewed. items: $ref: '#/components/schemas/ServiceScope' maxItems: 10 minItems: 0 start: type: integer format: int64 description: 'The timestamp for when the release is created. The time measured is in milliseconds. For example: `1742349976000` is `Wednesday, 19 March 2025 02:06:16 GMT`.' minimum: 1 required: - name - start ReleaseScope: type: object properties: applicationId: type: string applicationName: type: string serviceId: type: string serviceName: type: string ReleaseWithMetadata: type: object properties: applications: type: array description: The list of application perspectives where the release can be viewed. items: $ref: '#/components/schemas/ApplicationScopeWithMetadata' maxItems: 10 minItems: 0 id: type: string description: 'A unique id for a release. For example: `l1wgr3DsQkGLf8u18JiGsg`.' maxLength: 64 minLength: 0 lastUpdated: type: integer format: int64 description: 'The timestamp for when the same release is updated. The time measured is in milliseconds. For example: `1742369990000` is `Wednesday, 19 March 2025 07:39:50 GMT`.' minimum: 1 name: type: string description: 'The name of the release. For example: `frontend/release-2000`.' maxLength: 256 minLength: 0 scopes: type: array items: $ref: '#/components/schemas/ReleaseScope' writeOnly: true services: type: array description: The list of services where the release can be viewed. items: $ref: '#/components/schemas/ServiceScopeWithMetadata' maxItems: 10 minItems: 0 start: type: integer format: int64 description: 'The timestamp for when the release is created. The time measured is in milliseconds. For example: `1742349976000` is `Wednesday, 19 March 2025 02:06:16 GMT`.' minimum: 1 required: - id - name RetentionPeriod: type: object properties: logVolume: type: integer format: int64 logVolumeGroups: type: array items: $ref: '#/components/schemas/LogVolumeGroup' retentionDays: type: integer format: int32 maximum: 90 minimum: 7 required: - logVolume RollingTimeWindow: type: object allOf: - $ref: '#/components/schemas/TimeWindow' required: - duration - durationUnit RuleInput: type: object description: List of input rules of the Built-in Event Specification properties: inputKind: type: string enum: - METRIC - SNAPSHOT_FIELD - EVENT - DERIVED_METRIC - METRIC_PATTERN inputName: type: string maxLength: 256 minLength: 0 required: - inputKind - inputName RuleWithThresholdApplicationAlertRule: type: object description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. properties: rule: $ref: '#/components/schemas/ApplicationAlertRule' thresholdOperator: type: string enum: - '>' - '>=' - < - <= thresholds: type: object additionalProperties: $ref: '#/components/schemas/ThresholdConfigRule' required: - rule - thresholdOperator - thresholds RuleWithThresholdInfraAlertRule: type: object description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. properties: rule: $ref: '#/components/schemas/InfraAlertRule' thresholdOperator: type: string enum: - '>' - '>=' - < - <= thresholds: type: object additionalProperties: $ref: '#/components/schemas/ThresholdConfigRule' required: - rule - thresholdOperator - thresholds RuleWithThresholdLogAlertRule: type: object description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. properties: rule: $ref: '#/components/schemas/LogAlertRule' thresholdOperator: type: string enum: - '>' - '>=' - < - <= thresholds: type: object additionalProperties: $ref: '#/components/schemas/ThresholdConfigRule' required: - rule - thresholdOperator - thresholds RuleWithThresholdMobileAppAlertRule: type: object description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. properties: rule: $ref: '#/components/schemas/MobileAppAlertRule' thresholdOperator: type: string enum: - '>' - '>=' - < - <= thresholds: type: object additionalProperties: $ref: '#/components/schemas/ThresholdConfigRule' required: - rule - thresholdOperator - thresholds RuleWithThresholdWebsiteAlertRule: type: object description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. properties: rule: $ref: '#/components/schemas/WebsiteAlertRule' thresholdOperator: type: string enum: - '>' - '>=' - < - <= thresholds: type: object additionalProperties: $ref: '#/components/schemas/ThresholdConfigRule' required: - rule - thresholdOperator - thresholds RunConfiguration: type: object description: Action run configuration. properties: actions: type: array description: List of action configurations. items: $ref: '#/components/schemas/ActionConfiguration' required: - actions SLOConfigWithRBACTag: type: object properties: createdDate: type: string format: date-time description: Created date of Service Levels Objective Configuration entity: $ref: '#/components/schemas/SloEntity' id: type: string description: Service Levels Objective Configuration ID maxLength: 64 minLength: 0 indicator: $ref: '#/components/schemas/ServiceLevelIndicator' lastUpdated: type: string format: date-time description: Last updated date of Service Levels Objective Configuration name: type: string description: Name of the Service Levels Objective Configuration rbacTags: type: array items: $ref: '#/components/schemas/ApiTag' uniqueItems: true tags: type: array description: List of tags associated with Service Levels Objective Configuration items: type: string description: List of tags associated with Service Levels Objective Configuration target: type: number format: double description: Service Levels Objective Configuration Target exclusiveMaximum: false exclusiveMinimum: true maximum: 0.9999 minimum: 0 timeWindow: $ref: '#/components/schemas/TimeWindow' required: - entity - indicator - name - tags - target - timeWindow SSLCertificateConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: acceptSelfSignedCertificate: type: boolean daysRemainingCheck: type: integer format: int32 maximum: 365 minimum: 1 hostname: type: string maxLength: 2047 minLength: 0 port: type: integer format: int32 validationRules: type: array items: $ref: '#/components/schemas/SSLCertificateValidation' required: - daysRemainingCheck - hostname - markSyntheticCall - syntheticType SSLCertificateConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: acceptSelfSignedCertificate: type: boolean daysRemainingCheck: type: integer format: int32 hostname: type: string port: type: integer format: int32 validationRules: $ref: '#/components/schemas/SyntheticResourceUpdateListSSLCertificateValidationListSSLCertificateValidation' SSLCertificateValidation: type: object properties: key: type: string operator: type: string enum: - CONTAINS - EQUALS - GREATER_THAN - IS - LESS_THAN - MATCHES - NOT_MATCHES value: type: object required: - key - operator - value SalesforceIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: bearerToken: type: string clientId: type: string clientSecret: type: string salesforceUrl: type: string required: - clientId - clientSecret - id - kind - name - salesforceUrl SaturationBlueprintIndicator: type: object allOf: - $ref: '#/components/schemas/ServiceLevelIndicator' - type: object properties: metricName: type: string threshold: type: number format: double description: Threshold Value for the Blueprint exclusiveMinimum: false minimum: 0 required: - type ScopeBinding: type: object properties: scopeId: type: string maxLength: 64 minLength: 0 scopeRoleId: type: string maxLength: 64 minLength: 0 SearchFieldResult: type: object properties: context: type: string description: Field context enum: - entities - events - applications - services - endpoints - appdata_shared - default_field example: 'Entity data, trace data, even data' description: type: string description: Description of the keyword fixedValues: type: array description: Fixed value associated to the keyword items: type: string description: Fixed value associated to the keyword keyword: type: string description: Retrieved keyword termType: type: string description: Term type enum: - string - long - double - bool - key_value - id Service: type: object properties: entityType: type: string description: 'Since, this is a Service, it will be of type `SERVICE`.' enum: - APPLICATION - SERVICE - ENDPOINT id: type: string description: 'Unique ID of the Service. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`.' label: type: string description: 'Name of the Service. Eg: `payment`.' snapshotIds: type: array description: A unique identifier the metrics are assigned to. items: type: string description: A unique identifier the metrics are assigned to. uniqueItems: true technologies: type: array description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' items: type: string description: 'List of technologies: `Eg:["springbootApplicationContainer"]`' uniqueItems: true types: type: array description: 'Shows types of Endpoints a Service can consist of. It may be one or more. Eg: `HTTP` `OPENTELEMETRY` can be in 1 Service.' items: type: string description: 'Shows types of Endpoints a Service can consist of. It may be one or more. Eg: `HTTP` `OPENTELEMETRY` can be in 1 Service.' enum: - UNDEFINED - RPC - EVENT - GRAPHQL - BATCH - SHELL - HTTP - SDK - OPENTELEMETRY - INTERNAL - DATABASE - MESSAGING - PAGE - PAGE_RESOURCE uniqueItems: true required: - id - label - snapshotIds - technologies - types ServiceConfig: type: object properties: comment: type: string description: | A small description of the service configuration would be present in this field if it was provided during creation of the custom service rule. If it was not provided, this field will remain empty. It is considered as best practice to add a comment to document the reasoning behind creating the rule. maxLength: 2048 minLength: 0 enabled: type: boolean description: 'If enabled, calls will be mapped to the rule.' id: type: string description: 'A unique string for the service configuration. Eg: `G510hmXYSDysLZ5kuj0BaQ`' label: type: string description: | It contains the tags defined in `matchSpecification` concatenated with a dash. Eg: if the `matchSpecification` contains keys `kubernetes.namespace.name` and `docker.label`, `label` would be `kubernetes.namespace.name-docker.label`. matchSpecification: type: array description: Calls will be matched with the array of key-value tags present in this field. items: $ref: '#/components/schemas/ServiceMatchingRule' maxItems: 20 minItems: 0 name: type: string description: 'The name of the service configuration. Eg: `Rule ABC`' maxLength: 128 minLength: 1 required: - enabled - id - label - matchSpecification - name ServiceEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: applicationId: type: string description: ID of the application this service is in scope of. serviceId: type: string description: ID of the service. ServiceItem: type: object properties: metrics: type: object additionalProperties: type: array items: type: array items: type: number service: $ref: '#/components/schemas/Service' required: - metrics - service ServiceLevelIndicator: type: object description: 'Indicator of the Service Levels Objective Configuration, it indicates the type of metric by which the SLO should be evaluated' discriminator: mapping: availability: '#/components/schemas/AvailabilityBlueprintIndicator' custom: '#/components/schemas/CustomBlueprintIndicator' latency: '#/components/schemas/LatencyBlueprintIndicator' saturation: '#/components/schemas/SaturationBlueprintIndicator' traffic: '#/components/schemas/TrafficBlueprintIndicator' propertyName: blueprint properties: aggregation: type: string description: Aggregation Type for the Threshold Value enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE blueprint: type: string enum: - latency - availability - traffic - saturation - custom operator: type: string description: Operator for the Threshold Value enum: - '>' - '>=' - < - <= serviceLevelsMeasurement: type: string description: Defines Measurement Type of SLO enum: - eventBased - timeBased - erroneous - all threshold: type: number format: double description: Threshold Value for the Blueprint type: type: string enum: - eventBased - timeBased ServiceLevelObjectiveAlertRule: type: object allOf: - $ref: '#/components/schemas/ServiceLevelsAlertRule' - type: object properties: metric: type: string description: This is the service levels metric type. Service levels objective alerts using status metric. enum: - STATUS ServiceLevelsAlertConfig: type: object properties: alertChannelIds: type: array description: This is the list of channel IDs when alert triggered and sent to. items: type: string description: This is the list of channel IDs when alert triggered and sent to. maxItems: 1024 minItems: 0 uniqueItems: true burnRateConfig: type: array description: This is the burn rate alert configuration which defines alerting windows and corresponding thresholds. This configuration must to specified for BURN_RATE_V2 Alerts. items: $ref: '#/components/schemas/ServiceLevelsBurnRateConfig' uniqueItems: true burnRateTimeWindows: $ref: '#/components/schemas/ServiceLevelsBurnRateTimeWindows' customPayloadFields: type: array description: This is the custom name and value pairs to be sent along with the alert to the alert channels. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: The description of the alert. It is also the alert message content. maxLength: 65536 minLength: 0 name: type: string description: Name of the Service Levels Smart Alerts Configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/ServiceLevelsAlertRule' severity: type: integer format: int32 description: 'This is the severity of the alert. The value can be: 5: warning, 10: critical.' sloIds: type: array description: This is the list of SLO configurations related to this alert. items: type: string description: This is the list of SLO configurations related to this alert. maxItems: 1024 minItems: 0 uniqueItems: true threshold: $ref: '#/components/schemas/StaticThreshold' timeThreshold: $ref: '#/components/schemas/ServiceLevelsTimeThreshold' triggering: type: boolean description: 'Incident flag. If value is true, this alert will become an accident.' required: - alertChannelIds - customPayloadFields - description - name - rule - severity - sloIds - timeThreshold ServiceLevelsAlertRule: type: object description: This is the service levels alert type. It could be error budget alert or service levels object alert. discriminator: mapping: ERROR_BUDGET: '#/components/schemas/ErrorBudgetAlertRule' SERVICE_LEVELS_OBJECTIVE: '#/components/schemas/ServiceLevelObjectiveAlertRule' propertyName: alertType properties: alertType: type: string required: - alertType ServiceLevelsBurnRateConfig: type: object description: This is the burn rate alert configuration which defines alerting windows and corresponding thresholds. This configuration must to specified for BURN_RATE_V2 Alerts. properties: alertWindowType: type: string description: 'Specifies the Burn Rate Alerting Window type: SINGLE for single window/threshold alerts, or LONG and SHORT for multi-window/threshold alerts.' enum: - SINGLE - LONG - SHORT duration: type: integer format: int32 description: Duration of the Burn Rate Alerting Window. durationUnitType: type: string description: Duration Unit Type of the Burn Rate Alerting Window. enum: - millisecond - second - minute - hour - day - week - month threshold: $ref: '#/components/schemas/ServiceLevelsStaticThresholdConfig' required: - duration - durationUnitType - threshold ServiceLevelsBurnRateTimeWindows: type: object deprecated: true description: This is the short and long time window setting for the burn rate alerts. properties: longTimeWindow: $ref: '#/components/schemas/AlertingTimeWindow' shortTimeWindow: $ref: '#/components/schemas/AlertingTimeWindow' ServiceLevelsStaticThresholdConfig: type: object description: This threshold defines a static value to be evaluated with a specific operator for burn rate v2 alerts. properties: lastUpdated: type: integer format: int64 minimum: 0 operator: type: string enum: - '>' - '>=' - < - <= value: type: number format: double minimum: 0 required: - operator ServiceLevelsTimeThreshold: type: object description: This is the warm-up and cool-down setting to emit or stop alert event after threshold reached. properties: expiry: type: integer format: int64 description: This is the cooldown period when the active alert misses threshold and stop emitting notification. timeWindow: type: integer format: int64 description: This is the grace period when the threshold is reached and the alert becomes active to emit notification. required: - expiry - timeWindow ServiceLevelseAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array description: This is the list of channel IDs when alert triggered and sent to. items: type: string description: This is the list of channel IDs when alert triggered and sent to. maxItems: 1024 minItems: 0 uniqueItems: true burnRateConfig: type: array description: This is the burn rate alert configuration which defines alerting windows and corresponding thresholds. This configuration must to specified for BURN_RATE_V2 Alerts. items: $ref: '#/components/schemas/ServiceLevelsBurnRateConfig' uniqueItems: true burnRateTimeWindows: $ref: '#/components/schemas/ServiceLevelsBurnRateTimeWindows' created: type: integer format: int64 description: Created Date of the version of Service Levels Smart Alerts Configuration. minimum: 1 customPayloadFields: type: array description: This is the custom name and value pairs to be sent along with the alert to the alert channels. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: The description of the alert. It is also the alert message content. maxLength: 65536 minLength: 0 enabled: type: boolean description: Boolean Parameter specifying the enabled state of Service Levels Smart Alerts Configuration. id: type: string description: Unique ID of the Service Levels Smart Alerts Configuration. maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 description: Created Date of the Initial version of Service Levels Smart Alerts Configuration. minimum: 1 name: type: string description: Name of the Service Levels Smart Alerts Configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Boolean Parameter specifying the readonly access to Service Levels Smart Alerts Configuration. rule: $ref: '#/components/schemas/ServiceLevelsAlertRule' severity: type: integer format: int32 description: 'This is the severity of the alert. The value can be: 5: warning, 10: critical.' sloIds: type: array description: This is the list of SLO configurations related to this alert. items: type: string description: This is the list of SLO configurations related to this alert. maxItems: 1024 minItems: 0 uniqueItems: true threshold: $ref: '#/components/schemas/StaticThreshold' timeThreshold: $ref: '#/components/schemas/ServiceLevelsTimeThreshold' triggering: type: boolean description: 'Incident flag. If value is true, this alert will become an accident.' required: - alertChannelIds - customPayloadFields - description - id - name - rule - severity - sloIds - timeThreshold ServiceMap: type: object properties: connections: type: array description: A list which indicates which services are consumers and which are providers in the communication chain. items: $ref: '#/components/schemas/ServiceMapConnection' uniqueItems: true services: type: array description: List of services in the topology. items: $ref: '#/components/schemas/ExtendedService' uniqueItems: true required: - connections - services ServiceMapConnection: type: object description: A list which indicates which services are consumers and which are providers in the communication chain. properties: calls: type: integer format: int64 description: | The number of calls between the 2 services. Eg: The number of calls from `24558242fdeb52571cfb9fa42f1b334aa65d7e61` service to `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa` service over the mentioned timeframe is `200`. If no timeframe (`to` and `windowSize` in query paramter) is mentioned, the timeframe is taken as last hour. minimum: 0 errorRate: type: number format: double description: | The error rate of the calls between the 2 services. Eg: The error rate of calls from `24558242fdeb52571cfb9fa42f1b334aa65d7e61` service to `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa` service over the mentioned timeframe is `0.1`. The value is between 0 and 1. If no timeframe (`to` and `windowSize` in query paramter) is mentioned, the timeframe is taken as last hour. maximum: 1 minimum: 0 from: type: string description: | The service that initiates a request to another service. It contains a unique service id. Eg: `24558242fdeb52571cfb9fa42f1b334aa65d7e61`. latency: type: number format: double description: | The mean latency of the calls between the 2 services. Eg: The mean latency of calls from `24558242fdeb52571cfb9fa42f1b334aa65d7e61` service to `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa` service over the mentioned timeframe is `4.46`. The value is in milliseconds. If no timeframe (`to` and `windowSize` in query paramter) is mentioned, the timeframe is taken as last hour. minimum: 0 to: type: string description: | The service that receives the request sent by the source service. It contains a unique service id. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`. required: - from - to ServiceMatchingRule: type: object description: Calls will be matched with the array of key-value tags present in this field. properties: key: type: string description: | In Instana UI, this is shown as `Tag`. One can select a variety of pre-defined tags. Eg: `host.fqdn`, `container.label` etc. value: type: string description: | In Instana UI, this is known as 'key`. Eg: if one labels Docker containers such as com.acme.service-name:myservice, to map services from this label, the `key` aka `tag` would be `docker.label` and `value` aka `key` would be `com.acme.service-name`. required: - key - value ServiceMetricResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' items: type: array items: $ref: '#/components/schemas/ServiceItem' page: type: integer format: int32 description: Page Number minimum: 1 pageSize: type: integer format: int32 minimum: 1 totalHits: type: integer format: int64 minimum: 0 required: - items ServiceNode: type: object properties: endpoints: type: object additionalProperties: $ref: '#/components/schemas/EndpointNode' inclusive: type: boolean serviceId: type: string maxLength: 64 minLength: 0 required: - endpoints - serviceId ServiceNowEnhancedIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: autoCloseIncidents: type: boolean enableSendInstanaNotes: type: boolean enableSendServiceNowActivities: type: boolean enableSendServiceNowWorkNotes: type: boolean instanaUrl: type: string manuallyClosedIncidents: type: boolean password: type: string resolutionOfIncident: type: boolean serviceNowUrl: type: string snowStatusOnCloseEvent: type: integer format: int32 tenant: type: string unit: type: string username: type: string required: - id - kind - name - password - serviceNowUrl - tenant - unit - username ServiceNowIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: autoCloseIncidents: type: boolean password: type: string serviceNowUrl: type: string username: type: string required: - id - kind - name - password - serviceNowUrl - username ServiceResult: type: object properties: items: type: array items: $ref: '#/components/schemas/Service' page: type: integer format: int32 description: Page number you want to retrieve in a request / retrieved in a response. pageSize: type: integer format: int32 description: number of elements retrieved in a single query. totalHits: type: integer format: int32 description: 'The number of results returned. For eg: If `items` has 5 elements, `totalhits` will be 5' ServiceScope: type: object description: The list of services where the release can be viewed. properties: name: type: string description: 'Name of the Service. Eg: `payment`.' maxLength: 256 minLength: 0 scopedTo: $ref: '#/components/schemas/ServiceScopedTo' required: - name ServiceScopeWithMetadata: type: object description: The list of services where the release can be viewed. properties: id: type: string description: 'Unique ID of the Service. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`.' name: type: string description: 'Name of the Service. Eg: `payment`.' scopedTo: $ref: '#/components/schemas/ServiceScopedToWithMetadata' required: - id ServiceScopedTo: type: object description: 'The list of application perspectives where the service is present. ' properties: applications: type: array items: $ref: '#/components/schemas/ApplicationScope' maxItems: 10 minItems: 1 required: - applications ServiceScopedToWithMetadata: type: object description: The release marker would be present in the service but not for other services within the Application perspective. properties: applications: type: array description: 'The list of application perspectives where the service is present. ' items: $ref: '#/components/schemas/ApplicationScopeWithMetadata' maxItems: 10 minItems: 1 required: - applications ServiceSimple: type: object description: The destination service. properties: id: type: string description: 'Unique ID of the Service. Eg: `3feb3dcd206c166ef2b41c707e0cd38d7cd325aa`.' label: type: string description: 'Name of the Service. Eg: `payment`.' SessionSettings: type: object properties: idleTimeInMillis: type: integer format: int64 maximum: 28800000 minimum: 600000 tokenLifeTimeInMillis: type: integer format: int64 maximum: 604800000 minimum: 600000 SimpleMetricConfiguration: type: object allOf: - $ref: '#/components/schemas/InfraMetricConfiguration' - type: object properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE crossSeriesAggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int64 description: |2 * If granularity is not specified an aggregated value for the selected timeframe is returned. * If granularity is specified data points are returned with the specified granularity * The granularity should not be greater than the `windowSize` (important: `windowSize` is expressed in milliseconds) * The granularity should not be set too small relative to the `windowSize` to avoid creating an excessively large number of data points (max 600) title: granularity in milliseconds metric: type: string regex: type: boolean required: type: boolean description: 'When true, metric must be present with values' required: - aggregation - metric SingleValue: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperand' - type: object properties: value: type: number format: double SlackIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: channel: type: string emojiRendering: type: boolean iconUrl: type: string webhookUrl: type: string required: - id - kind - name - webhookUrl SliConfiguration: type: object properties: id: type: string description: Unique ID for each SLI maxLength: 64 minLength: 0 initialEvaluationTimestamp: type: integer format: int64 description: Initial evaluation timestamp in milliseconds (13-digit) metricConfiguration: $ref: '#/components/schemas/MetricConfiguration' sliEntity: $ref: '#/components/schemas/SliEntity' sliName: type: string description: The name of the Service Level Indicator (SLI) specified during its creation maxLength: 256 minLength: 0 required: - id - sliEntity - sliName SliConfigurationWithLastUpdated: type: object properties: id: type: string description: Unique ID for each SLI maxLength: 64 minLength: 0 initialEvaluationTimestamp: type: integer format: int64 description: Initial evaluation timestamp in milliseconds (13-digit) lastUpdated: type: integer format: int64 description: Last Updated timestamp in milliseconds (13-digit) minimum: 1 metricConfiguration: $ref: '#/components/schemas/MetricConfiguration' sliEntity: $ref: '#/components/schemas/SliEntity' sliName: type: string description: The name of the Service Level Indicator (SLI) specified during its creation maxLength: 256 minLength: 0 required: - id - sliEntity - sliName SliEntity: type: object description: Entity Type of the SLI Configuration discriminator: mapping: application: '#/components/schemas/ApplicationSliEntity' availability: '#/components/schemas/AvailabilitySliEntity' websiteEventBased: '#/components/schemas/WebsiteEventBasedSliEntity' websiteTimeBased: '#/components/schemas/WebsiteTimeBasedSliEntity' propertyName: sliType properties: sliType: type: string required: - sliType SliReport: type: object properties: errorBudgetRemaining: type: integer format: int64 description: This is the error budget remaining compared to the total error budget fromTimestamp: type: integer format: int64 description: from timestamp in milliseconds (13-digit) sli: type: number format: double description: 'Service Level Indicator: This indicates the actual performance measure of the service' slo: type: number format: double description: 'Service Level Objective: This is the target value that should be met by the SLI' toTimestamp: type: integer format: int64 description: to timestamp in milliseconds (13-digit) totalErrorBudget: type: integer format: int64 description: This is the total error budget available violationDistribution: type: object additionalProperties: type: integer format: int32 SloEntity: type: object description: 'Entity of the Service Levels Objective Configuration, it could be either Application nor Website' discriminator: mapping: application: '#/components/schemas/ApplicationSloEntity' infrastructure: '#/components/schemas/InfraSloEntity' synthetic: '#/components/schemas/SyntheticSloEntity' website: '#/components/schemas/WebsiteSloEntity' propertyName: type properties: tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' type: type: string required: - type SloReport: type: object properties: errorAccumulationChart: type: object additionalProperties: type: integer format: int32 description: Value of accumulated bad minutes/events of SLO configuration in different timestamps from starting to ending point description: Value of accumulated bad minutes/events of SLO configuration in different timestamps from starting to ending point errorBudgetRemainChart: type: object additionalProperties: type: integer format: int32 description: Error Budget Remain value of SLO configuration in different timestamps from starting to ending point description: Error Budget Remain value of SLO configuration in different timestamps from starting to ending point errorBudgetRemaining: type: integer format: int32 description: Latest Remaining Error Budget value of SLO Configuration errorBudgetSpent: type: integer format: int32 description: Spent Error Budget of SLO Configuration errorBurnRate: type: integer format: int32 description: Latest Burn Rate value of SLO Configuration errorBurnRateChart: type: object additionalProperties: type: integer format: int32 description: Budget Rate value of SLO configuration in different timestamps from starting to ending point description: Budget Rate value of SLO configuration in different timestamps from starting to ending point errorChart: type: object additionalProperties: type: integer format: int32 description: Value indicating presence of bad minutes/events of SLO configuration in different timestamps from starting to ending point description: Value indicating presence of bad minutes/events of SLO configuration in different timestamps from starting to ending point fromTimestamp: type: integer format: int64 description: 'Starting point of the data retrieval, specified as 13 digit Unix Timestamp milliseconds' sli: type: number format: double description: Latest Status value of SLO Configuration slo: type: number format: double description: Target status of SLO Configuration toTimestamp: type: integer format: int64 description: 'Ending point of the data retrieval, specified as 13 digit Unix Timestamp milliseconds' totalErrorBudget: type: integer format: int32 description: Latest Available Error Budget value of SLO Configuration violationDistribution: type: object additionalProperties: type: integer format: int32 description: Value indicating violation of SLO configuration in different timestamps from starting to ending point description: Value indicating violation of SLO configuration in different timestamps from starting to ending point SlownessApplicationAlertRule: type: object allOf: - $ref: '#/components/schemas/ApplicationAlertRule' required: - aggregation - metricName SlownessMobileAppAlertRule: type: object allOf: - $ref: '#/components/schemas/MobileAppAlertRule' required: - aggregation - metricName SlownessWebsiteAlertRule: type: object allOf: - $ref: '#/components/schemas/WebsiteAlertRule' required: - aggregation - metricName SnapshotItem: type: object description: Detail information for requested snapshots. properties: data: type: object additionalProperties: type: object from: type: integer format: int64 description: Start of timeframe expressed as the Unix epoch time in milliseconds host: type: string description: Host name label: type: string description: Friendly label for the entity plugin: type: string description: Plugin name example: host snapshotId: type: string description: Snapshot ID tags: type: array description: Tags which can be used to search for this entity items: type: string description: Tags which can be used to search for this entity to: type: integer format: int64 description: End of timeframe expressed as the Unix epoch time in milliseconds SnapshotPreview: type: object properties: data: type: object additionalProperties: type: object description: Subset of the data section of the plugin. In most cases this field will be null. description: Subset of the data section of the plugin. In most cases this field will be null. id: type: string description: This is a snapshot ID. A unique identifier the metrics are assigned to. label: type: string description: Name of the entity. plugin: type: string description: 'A short plugin ID. For example, `containerd`, `nginx` etc.' time: type: integer format: int64 description: 'Specifies the exact point at which the id, label and plugin are valid.' minimum: 1 required: - id SnapshotResult: type: object properties: items: type: array items: $ref: '#/components/schemas/SnapshotItem' SoftwareUser: type: object properties: container: type: string host: type: string process: type: string snapshotId: type: string SoftwareVersion: type: object properties: discoveryType: type: string enum: - NATIVE_SENSOR - REMOTE_SENSOR - PACKAGE_MANAGER - OTHER metadata: type: object additionalProperties: type: string name: type: string plugin: type: string softwareType: type: string enum: - DEPENDENCY - RUNTIME - DATABASE - MESSAGING - PLATFORM - PACKAGE - OS - CACHE - API_GATEWAY - OTHER - APPLICATION_FRAMEWORK usedBy: type: array items: $ref: '#/components/schemas/SoftwareUser' uniqueItems: true vendor: type: string version: type: string required: - discoveryType - name - plugin - softwareType - usedBy - vendor - version SourceMapFileBlob: type: object properties: blobIndex: type: integer format: int32 size: type: integer format: int64 sizeOnDisk: type: integer format: int64 SourceMapFileMeta: type: object properties: blobs: type: array items: $ref: '#/components/schemas/SourceMapFileBlob' format: type: string meta: type: string size: type: integer format: int64 sizeOnDisk: type: integer format: int64 type: type: string enum: - JS_MAP - JS - R8PG_MAP - DWARF url: type: string required: - format - type - url SourceMapUploadConfig: type: object properties: createdAt: type: string format: date-time description: type: string id: type: string metadata: type: array items: $ref: '#/components/schemas/SourceMapFileMeta' maxItems: 500 minItems: 0 modifiedAt: type: string format: date-time required: - id - metadata SourceMapUploadConfigs: type: object properties: config: type: array items: $ref: '#/components/schemas/SourceMapUploadConfig' writeOnly: true configs: type: array items: $ref: '#/components/schemas/SourceMapUploadConfig' maxItems: 1024 minItems: 0 required: - configs SpanExcerpt: type: object description: 'Information about the logs attached to the call, if available.' properties: data: type: object additionalProperties: type: object description: 'Some information about the span, like service name, if it is an http call, then some information about it like, path, method, host, errors etc.' description: 'Some information about the span, like service name, if it is an http call, then some information about it like, path, method, host, errors etc.' databaseIntegrations: type: array items: $ref: '#/components/schemas/DatabaseIntegration' duration: type: integer format: int64 description: 'The total time taken for the entire operation of a call, from the moment the request was initiated to when the response was received. The time measured is in milliseconds. This is also known as latency of a call.' minimum: 0 errorCount: type: integer format: int32 description: Represents whether the span is erroneous or not. 0 is not erroneous and 1 is erroneous. minimum: 0 foreignParentId: type: string id: type: string description: 'The call ID. A unique identifier for an individual call. For example: `1bcad5c82338deaf`.' kind: type: string description: | There are 4 types of span kind: 1. `ENTRY`: An entry span represents an incoming request into a traced service. 2. `EXIT`: An exit span represents an outgoing request that a service makes to some other service. 3. `INTERMEDIATE`: An intermediate span represents anything that happens inside a traced service where the flow of control neither enters nor leaves that service, but stays inside it. 4. `UNKNOWN`: Instana can't determine the span kind. enum: - UNKNOWN - ENTRY - EXIT - INTERMEDIATE name: type: string description: 'The technical type of the span. For example, `node.http.client` or `jdbc`.' parentId: type: string description: 'The parent call id, referring to another call in the same trace which triggered the processing associated with this call.' stackTrace: type: array description: 'For an erroneous call, if stack trace is available it will show a list of items containing file, method and line number of the code.' items: $ref: '#/components/schemas/StackTraceItem' start: type: integer format: int64 description: 'The timestamp when the call or request was initiated. For example, Unix epoch time in milliseconds `1735532879870` is `Monday, 30 December 2024 04:27:59.870 GMT`' minimum: 1 required: - data - id - kind - name - stackTrace SpanRelation: type: object description: | It shows from where the call is destined to. It includes the following information: 1. List of Application Perspectives from which the call is destined to. 2. Destination service and destination endpoint. 3. Physical context from the infrastructure point of view. properties: applications: type: array items: $ref: '#/components/schemas/Application' uniqueItems: true endpoint: $ref: '#/components/schemas/Endpoint' physicalContext: $ref: '#/components/schemas/PhysicalContext' service: $ref: '#/components/schemas/Service' required: - applications SpecificJsErrorsWebsiteAlertRule: type: object allOf: - $ref: '#/components/schemas/WebsiteAlertRule' - type: object properties: operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH value: type: string required: - metricName - operator SplunkIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: token: type: string url: type: string required: - id - kind - name - token - url StackTraceItem: type: object description: 'For an erroneous call, if stack trace is available it will show a list of items containing file, method and line number of the code.' properties: file: type: string description: The name of the file where the executed code resides. line: type: string description: The line number within the file where the error was thrown. method: type: string description: The name of the method or function being executed at the time the stack trace item was generated. StackTraceLine: type: object properties: column: type: integer format: int32 minimum: -1 file: type: string line: type: integer format: int32 minimum: -1 name: type: string translationExplanation: type: string translationStatus: type: integer format: int32 minimum: -1 required: - file StaticBaselineThresholdRule: type: object allOf: - $ref: '#/components/schemas/ThresholdConfigRule' - type: object properties: baseline: type: array items: type: array items: type: number deviationFactor: type: number format: double exclusiveMaximum: false exclusiveMinimum: false maximum: 16 minimum: 0.5 seasonality: type: string enum: - WEEKLY - DAILY required: - seasonality StaticStringField: type: object allOf: - $ref: '#/components/schemas/CustomPayloadField' - type: object properties: value: type: string description: Custom value for static type custom payload required: - key - value StaticThreshold: type: object allOf: - $ref: '#/components/schemas/Threshold' - type: object properties: lastUpdated: type: integer format: int64 minimum: 0 value: type: number format: double minimum: 0 description: This threshold defines a static value to be evaluated with a specific operator. required: - operator StaticThresholdRule: type: object allOf: - $ref: '#/components/schemas/ThresholdConfigRule' - type: object properties: value: type: number format: double minimum: 0 StatusCodeApplicationAlertRule: type: object allOf: - $ref: '#/components/schemas/ApplicationAlertRule' - type: object properties: statusCodeEnd: type: integer format: int32 minimum: 1 statusCodeStart: type: integer format: int32 minimum: 1 required: - metricName StatusCodeMobileAppAlertRule: type: object allOf: - $ref: '#/components/schemas/MobileAppAlertRule' - type: object properties: operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH value: type: string required: - metricName - operator - value StatusCodeWebsiteAlertRule: type: object allOf: - $ref: '#/components/schemas/WebsiteAlertRule' - type: object properties: operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH value: type: string required: - metricName - operator - value Subtraction: type: object allOf: - $ref: '#/components/schemas/ArithmeticOperation' required: - left - right SyntheticAlertConfig: type: object properties: alertChannelIds: type: array description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the synthetic alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' name: type: string description: Name of the synthetic alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/SyntheticAlertRule' severity: type: integer format: int32 description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 syntheticTestIds: type: array description: IDs of the synthetic tests that this Smart Alert configuration is applied to. items: type: string description: IDs of the synthetic tests that this Smart Alert configuration is applied to. uniqueItems: true tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeThreshold: $ref: '#/components/schemas/SyntheticTimeThreshold' required: - alertChannelIds - customPayloadFields - description - name - rule - syntheticTestIds - tagFilterExpression - timeThreshold SyntheticAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the synthetic alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' id: type: string description: 'ID of this Synthetic Alert Config. ' maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 description: Unix timestamp representing the time of the initial revision. minimum: 1 name: type: string description: Name of the synthetic alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Flag to indicate whether or not the configuration is read-only. Read-only access restricts modification of the config. rule: $ref: '#/components/schemas/SyntheticAlertRule' severity: type: integer format: int32 description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 syntheticTestIds: type: array description: IDs of the synthetic tests that this Smart Alert configuration is applied to. items: type: string description: IDs of the synthetic tests that this Smart Alert configuration is applied to. uniqueItems: true tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' timeThreshold: $ref: '#/components/schemas/SyntheticTimeThreshold' required: - alertChannelIds - customPayloadFields - description - id - name - rule - syntheticTestIds - tagFilterExpression - timeThreshold SyntheticAlertRule: type: object description: Indicates the type of rule this alert configuration is about. discriminator: mapping: failure: '#/components/schemas/FailureSyntheticAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string metricName: type: string required: - alertType - metricName SyntheticBulkResponse: type: object properties: errorMessage: type: string id: type: string status: type: string SyntheticCallConfig: type: object properties: customRules: type: array description: The list of custom rules for synthetic endpoints defined by the user. items: $ref: '#/components/schemas/SyntheticCallRule' maxItems: 500 minItems: 0 defaultRulesEnabled: type: boolean description: A flag to enable/disable the default synthetic endpoint configurations defined by Instana. required: - customRules SyntheticCallRule: type: object description: The list of custom rules for synthetic endpoints defined by the user. properties: description: type: string description: 'A description of the custom rule. For example, one can mention the reason behind having the custom rule.' maxLength: 2048 minLength: 0 enabled: type: boolean description: A flag to enable/disable the custom synthetic endpoint configurations defined by the user. matchSpecification: $ref: '#/components/schemas/MatchExpressionDTO' name: type: string description: The name of the custom rule for Synthetic endpoints. maxLength: 128 minLength: 1 required: - matchSpecification - name SyntheticCallWithDefaultsConfig: type: object properties: customRules: type: array description: The list of custom rules for synthetic endpoints defined by the user. items: $ref: '#/components/schemas/SyntheticCallRule' maxItems: 500 minItems: 0 defaultRules: type: array items: $ref: '#/components/schemas/SyntheticCallRule' defaultRulesEnabled: type: boolean description: A flag to enable/disable the default synthetic endpoint configurations defined by Instana. required: - customRules - defaultRules SyntheticConfiguration: type: object properties: retries: type: integer format: int32 maximum: 2 minimum: 0 retryInterval: type: integer format: int32 maximum: 10 minimum: 1 timeout: type: string SyntheticConfigurationUpdate: type: object properties: markSyntheticCall: type: boolean retries: type: integer format: int32 maximum: 2 minimum: 0 retryInterval: type: integer format: int32 maximum: 10 minimum: 1 timeout: type: string SyntheticCredential: type: object properties: applicationLabels: type: array items: type: string readOnly: true readOnly: true applications: type: array items: type: string createdAt: type: integer format: int64 readOnly: true createdBy: type: string maxLength: 128 minLength: 0 credentialName: type: string maxLength: 128 minLength: 1 credentialValue: type: string writeOnly: true mobileAppLabels: type: array items: type: string readOnly: true readOnly: true mobileApps: type: array items: type: string modifiedAt: type: integer format: int64 readOnly: true modifiedBy: type: string maxLength: 128 minLength: 0 rbacTags: type: array items: $ref: '#/components/schemas/ApiTag' uniqueItems: true websiteLabels: type: array items: type: string readOnly: true readOnly: true websites: type: array items: type: string required: - credentialName - credentialValue SyntheticDatacenter: type: object properties: cityName: type: string code: type: string maxLength: 128 minLength: 1 configuration: $ref: '#/components/schemas/SyntheticDatacenterConfiguration' countryName: type: string datacenterId: type: string expectedActiveAt: type: integer format: int64 label: type: string maxLength: 128 minLength: 1 latitude: type: number format: double locationLabel: type: string longitude: type: number format: double modifiedAt: type: integer format: int64 provider: type: string maxLength: 128 minLength: 1 status: type: string required: - cityName - code - countryName - label - provider SyntheticDatacenterConfiguration: type: object properties: ipAddresses: type: array items: type: string SyntheticGeoPoint: type: object properties: cityName: type: string countryName: type: string latitude: type: number format: double longitude: type: number format: double required: - cityName - countryName - latitude - longitude SyntheticLocation: type: object properties: configuration: $ref: '#/components/schemas/SyntheticLocationConfiguration' createdAt: type: integer format: int64 customProperties: type: object additionalProperties: type: string description: type: string maxLength: 512 minLength: 0 displayLabel: type: string maxLength: 128 minLength: 1 geoPoint: $ref: '#/components/schemas/SyntheticGeoPoint' id: type: string maxLength: 128 minLength: 0 label: type: string maxLength: 128 minLength: 1 locationType: type: string modifiedAt: type: integer format: int64 observedAt: type: integer format: int64 playbackCapabilities: $ref: '#/components/schemas/SyntheticPlaybackCapabilities' popVersion: type: string maxLength: 64 minLength: 1 status: type: string totalTests: type: integer format: int32 required: - geoPoint - label - locationType - playbackCapabilities SyntheticLocationConfiguration: type: object properties: clusterName: type: string namespace: type: string tenantType: type: string enum: - Multi - Single SyntheticMetricConfiguration: type: object properties: aggregation: type: string description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int32 description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds' metric: type: string description: 'Set a particular metric, eg: `latency`.' required: - aggregation - metric SyntheticMetricTagGroup: type: object description: ' Grouping of data under `groupbyTag`, where `groupbyTagEntity` and `groupbyTagSecondLevelKey` are aspects of `groupbyTag`.' properties: groupbyTag: type: string description: The name of the group tag (e.g. `agent.tag` or `docker.label`). maxLength: 256 minLength: 0 groupbyTagEntity: type: string description: | The entity by which the data should be grouped. This field supports three possible values: `NOT_APPLICABLE`, `DESTINATION`, and `SOURCE`. `SOURCE`: the tag filter should apply to the source entity. `DESTINATION`: the tag filter should apply to the destination entity. `NOT_APPLICABLE`: some tags are independent of source or destination, such as tags on the call itself, log tags or trace tags (only destination makes sense because the source is unknown for the root call). enum: - NOT_APPLICABLE - DESTINATION - SOURCE groupbyTagSecondLevelKey: type: string description: 'If present, it''s the 2nd level key part (e.g. `customKey` on `docker.label.customKey`)' maxLength: 256 minLength: 0 required: - groupbyTag - groupbyTagEntity SyntheticPlaybackCapabilities: type: object properties: browserType: type: array items: type: string enum: - chrome - firefox executionType: type: array items: type: string enum: - CI/CD syntheticType: type: array items: type: string required: - browserType - syntheticType SyntheticResourceUpdateListDNSFilterTargetValueListDNSFilterTargetValue: type: object properties: add: type: array items: $ref: '#/components/schemas/DNSFilterTargetValue' remove: type: array items: $ref: '#/components/schemas/DNSFilterTargetValue' SyntheticResourceUpdateListSSLCertificateValidationListSSLCertificateValidation: type: object properties: add: type: array items: $ref: '#/components/schemas/SSLCertificateValidation' remove: type: array items: $ref: '#/components/schemas/SSLCertificateValidation' SyntheticResourceUpdateListStringListString: type: object properties: add: type: array items: type: string remove: type: array items: type: string SyntheticResourceUpdateMapStringStringListString: type: object properties: add: type: object additionalProperties: type: string remove: type: array items: type: string SyntheticSloEntity: type: object allOf: - $ref: '#/components/schemas/SloEntity' - type: object properties: includeUnscheduledTestResults: type: boolean description: 'Only includes the scheduled test results. ' syntheticTestIds: type: array description: 'List of Unique Synthetic Tests IDs ' items: type: string description: 'List of Unique Synthetic Tests IDs ' uniqueItems: true required: - syntheticTestIds SyntheticTest: type: object properties: active: type: boolean applicationId: type: string maxLength: 512 minLength: 0 applicationLabel: type: string maxLength: 512 minLength: 0 readOnly: true applicationLabels: type: array items: type: string readOnly: true readOnly: true applications: type: array items: type: string configuration: $ref: '#/components/schemas/SyntheticTypeConfiguration' createdAt: type: integer format: int64 readOnly: true createdBy: type: string maxLength: 128 minLength: 0 customProperties: type: object additionalProperties: type: string description: type: string maxLength: 512 minLength: 0 id: type: string maxLength: 128 minLength: 1 label: type: string maxLength: 128 minLength: 1 locationDisplayLabels: type: array items: type: string readOnly: true readOnly: true locationLabels: type: array items: type: string readOnly: true readOnly: true locations: type: array items: type: string mobileAppLabels: type: array items: type: string readOnly: true readOnly: true mobileApps: type: array items: type: string modifiedAt: type: integer format: int64 modifiedBy: type: string maxLength: 128 minLength: 0 playbackMode: type: string enum: - Simultaneous - Staggered rbacTags: type: array items: $ref: '#/components/schemas/ApiTag' uniqueItems: true tenantId: type: string testFrequency: type: integer format: int32 maximum: 1440 minimum: 1 websiteLabels: type: array items: type: string readOnly: true readOnly: true websites: type: array items: type: string required: - active - configuration - label - locations - testFrequency SyntheticTestCICD: type: object properties: customization: $ref: '#/components/schemas/SyntheticTestCICDCustomization' runType: type: string testId: type: string required: - customization - testId SyntheticTestCICDCustomization: type: object properties: configuration: $ref: '#/components/schemas/SyntheticConfiguration' customProperties: type: object additionalProperties: type: string locations: type: array items: type: string required: - configuration SyntheticTestCICDItem: type: object properties: applications: type: array items: type: string completed: type: boolean customization: $ref: '#/components/schemas/SyntheticTestCICDCustomization' locationId: type: string locationLabel: type: string mobileApps: type: array items: type: string runType: type: string testId: type: string testLabel: type: string testResultId: type: string testType: type: string websites: type: array items: type: string required: - completed - customization - locationId - locationLabel - testId - testLabel - testResultId - testType SyntheticTestCICDResponse: type: object properties: locationId: type: string testId: type: string testResultId: type: string required: - locationId - testId - testResultId SyntheticTestDeepUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTestUpdate' - type: object properties: configuration: $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' required: - syntheticUpdateType SyntheticTestShallowUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTestUpdate' - type: object properties: configuration: $ref: '#/components/schemas/SyntheticConfigurationUpdate' required: - syntheticUpdateType SyntheticTestUpdate: type: object description: Identifies the type of the synthetic tests updated on this request. Valid types are Deep and Shallow. discriminator: mapping: Deep: '#/components/schemas/SyntheticTestDeepUpdate' Shallow: '#/components/schemas/SyntheticTestShallowUpdate' propertyName: syntheticUpdateType properties: active: type: boolean applications: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' customProperties: $ref: '#/components/schemas/SyntheticResourceUpdateMapStringStringListString' ids: type: array items: type: string lastModifiedAt: type: array items: type: integer format: int64 locations: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' mobileApps: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' modifiedBy: type: string shallowUpdate: type: boolean syntheticUpdateType: type: string description: | Indicates the type of update to apply to a set of tests of same syntheticType (Deep) or a mix of syntheticType values (Shallow). When Shallow is used, only the configuration properties retries, retryInterval and timeout can be updated enum: - Deep - Shallow testFrequency: type: integer format: int32 maximum: 1440 minimum: 1 websites: $ref: '#/components/schemas/SyntheticResourceUpdateListStringListString' required: - syntheticUpdateType SyntheticTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: violationsInSequence: '#/components/schemas/ViolationsInSequenceSyntheticTimeThreshold' propertyName: type properties: type: type: string violationsCount: type: integer format: int32 maximum: 12 minimum: 1 required: - type SyntheticTypeConfiguration: type: object description: |- Synthetic test configuration that is unique to a synthetic type. Valid types are BrowserScript, DNS, HTTPAction, HTTPScript, SSLCertificate, WebpageAction, and WebpageScript. discriminator: mapping: BrowserScript: '#/components/schemas/BrowserScriptConfiguration' DNS: '#/components/schemas/DNSConfiguration' HTTPAction: '#/components/schemas/HttpActionConfiguration' HTTPScript: '#/components/schemas/HttpScriptConfiguration' NotConfigured: '#/components/schemas/EmptyConfiguration' SSLCertificate: '#/components/schemas/SSLCertificateConfiguration' WebpageAction: '#/components/schemas/WebpageActionConfiguration' WebpageScript: '#/components/schemas/WebpageScriptConfiguration' propertyName: syntheticType properties: markSyntheticCall: type: boolean retries: type: integer format: int32 maximum: 2 minimum: 0 retryInterval: type: integer format: int32 maximum: 10 minimum: 1 syntheticType: type: string enum: - BrowserScript - DNS - HTTPAction - HTTPScript - SSLCertificate - WebpageAction - WebpageScript - NotConfigured timeout: type: string required: - markSyntheticCall - syntheticType SyntheticTypeConfigurationUpdate: type: object description: |- Synthetic test configuration that is unique to a synthetic type. Valid types are BrowserScript, DNS, HTTPAction, HTTPScript, SSLCertificate, WebpageAction, and WebpageScript. discriminator: mapping: BrowserScript: '#/components/schemas/BrowserScriptConfigurationUpdate' DNS: '#/components/schemas/DNSConfigurationUpdate' HTTPAction: '#/components/schemas/HttpActionConfigurationUpdate' HTTPScript: '#/components/schemas/HttpScriptConfigurationUpdate' SSLCertificate: '#/components/schemas/SSLCertificateConfigurationUpdate' WebpageAction: '#/components/schemas/WebpageActionConfigurationUpdate' WebpageScript: '#/components/schemas/WebpageScriptConfigurationUpdate' propertyName: syntheticType properties: markSyntheticCall: type: boolean retries: type: integer format: int32 maximum: 2 minimum: 0 retryInterval: type: integer format: int32 maximum: 10 minimum: 1 syntheticTest: type: string enum: - BrowserScript - DNS - HTTPAction - HTTPScript - SSLCertificate - WebpageAction - WebpageScript - NotConfigured writeOnly: true syntheticType: type: string enum: - BrowserScript - DNS - HTTPAction - HTTPScript - SSLCertificate - WebpageAction - WebpageScript - NotConfigured timeout: type: string SyntheticsEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: locationIds: type: array description: IDs of the locations. items: type: string description: IDs of the locations. syntheticTestId: type: string description: ID of the synthetic test. SystemRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: systemRuleId: type: string required: - systemRuleId SystemRuleLabel: type: object properties: id: type: string name: type: string required: - id - name Tag: type: object description: | List of queryable tags available in a tagTree. Eg: `call.erroneous`. Consider these tags as attributes of a tagTree. Eg: `Call` tagTree has have `Erroneous`, `Call name`, `Latency` etc as attributes. properties: aliases: type: array description: | List of other names that can refer to this tag items: type: string description: | List of other names that can refer to this tag uniqueItems: true availability: type: array description: | List of product areas this tag is available in items: type: string description: | List of product areas this tag is available in enum: - INFRASTRUCTURE_METRICS - APPLICATION - WEBSITE - MOBILE_APP - EUM - EUM_IMPACTED_BEACON - EVENT - SLI - SLO - SLO_PREVIEW - USAGE - LOG - SYNTHETICS - SYNTHETICS_DETAIL - APDEX - BIZOPS - BUSINESS_METRICS - SUBTRACE - UNKNOWN uniqueItems: true canApplyToDestination: type: boolean description: | Whether the tag is available for destination or not. If source and destination is false, it means the tag is independent of source and destination. Eg: of such tag is `call.http.path`. canApplyToSource: type: boolean description: | Whether the tag is available for source or not. If source and destination is false, it means the tag is independent of source and destination. Eg: of such tag is `call.http.path`. description: type: string description: The description of the tag if it is provided. idTag: type: boolean description: | Whether the Tag is a unique ID or not. Eg: `idTag` for `endpoint.id` is true but for `call.rpc.method` it is false. label: type: string description: 'The name of the tag which is seen in the UI. Eg: `Call name`' maxLength: 256 minLength: 0 name: type: string description: 'The name of the tag. Eg: `call.name`' type: type: string description: 'The data type of the tag. Eg: `call.name` accepts `STRING` value.' enum: - BOOLEAN - STRING - NUMBER - STRING_SET - STRING_LIST - KEY_VALUE_PAIR - FLOAT_LIST - KEY_NUMBER_PAIR required: - name - type TagCatalog: type: object properties: tagTree: type: array description: | The name of the tag dataset (tagTree) which can contain one or more tags as its attributes or children. Eg: `Call`. Consider this as the root of the tree where it has tags as attributes or children. items: $ref: '#/components/schemas/TagTreeLevel' tags: type: array description: | List of queryable tags available in a tagTree. Eg: `call.erroneous`. Consider these tags as attributes of a tagTree. Eg: `Call` tagTree has have `Erroneous`, `Call name`, `Latency` etc as attributes. items: $ref: '#/components/schemas/Tag' required: - tagTree - tags TagFilter: type: object allOf: - $ref: '#/components/schemas/TagFilterExpressionElement' - type: object properties: entity: type: string description: 'SOURCE or DESTINATION tag in case of a call tag. For Infrastructure, always set to NOT_APPLICABLE.' enum: - NOT_APPLICABLE - DESTINATION - SOURCE key: type: string description: Tag key in case of a key/value tag. maxLength: 512 minLength: 0 name: type: string description: Name of the tag. maxLength: 128 minLength: 0 operator: type: string enum: - EQUALS - CONTAINS - LESS_THAN - LESS_OR_EQUAL_THAN - GREATER_THAN - GREATER_OR_EQUAL_THAN - NOT_EMPTY - NOT_EQUAL - NOT_CONTAIN - IS_EMPTY - NOT_BLANK - IS_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - REGEX_MATCH value: type: object description: 'Tag value to filter on. Can be a string, number, or boolean value.' required: - entity - name - operator TagFilterExpression: type: object allOf: - $ref: '#/components/schemas/TagFilterExpressionElement' - type: object properties: elements: type: array items: $ref: '#/components/schemas/TagFilterExpressionElement' logicalOperator: type: string description: Set AND / OR enum: - AND - OR required: - elements - logicalOperator TagFilterExpressionElement: type: object description: Boolean expression of tag filters to define the scope of relevant calls. discriminator: mapping: EXPRESSION: '#/components/schemas/TagFilterExpression' TAG_FILTER: '#/components/schemas/TagFilter' propertyName: type properties: type: type: string required: - type TagMatcherDTO: type: object allOf: - $ref: '#/components/schemas/MatchExpressionDTO' - type: object properties: entity: type: string enum: - NOT_APPLICABLE - DESTINATION - SOURCE key: type: string operator: type: string enum: - EQUALS - NOT_EQUAL - CONTAINS - NOT_CONTAIN - IS_EMPTY - NOT_EMPTY - IS_BLANK - NOT_BLANK - STARTS_WITH - ENDS_WITH - NOT_STARTS_WITH - NOT_ENDS_WITH - GREATER_OR_EQUAL_THAN - LESS_OR_EQUAL_THAN - LESS_THAN - GREATER_THAN value: type: string required: - entity - key - operator TagTreeLevel: type: object description: | The name of the tag dataset (tagTree) which can contain one or more tags as its attributes or children. Eg: `Call`. Consider this as the root of the tree where it has tags as attributes or children. properties: children: type: array description: Children tags of tagTree items: $ref: '#/components/schemas/TagTreeNode' description: type: string description: 'The description provided, if any.' maxLength: 512 minLength: 0 icon: type: string description: | Each tag has an Icon which can be seen on the drop down list in Unbounded Analytics. If there is an icon, there will be a string associated with it. Eg: For for all `TAG` under `Call` tagTreeNode, the `icon` value is `lib_application_call`. maxLength: 128 minLength: 0 label: type: string description: 'The name of the tagTreeNode. Eg: `Commonly Used`, `Application`.' maxLength: 128 minLength: 0 queryable: type: boolean scoreBoost: type: integer format: int32 description: | By default it is `null` if it is not set explictily by IBM Instana. The purpose of this parameter is to rank the tagTree. For eg: some set of tags are frequently used. Tags under `Commonly used` is frequently used, so it will come up on top of the drop down list of `Query Builder` in `Unbounded Analytics`. Higher the scoreBoost, higher the ranking. type: type: string description: Type would be either `LEVEL` or `TAG` depending on whether the tag has any child tags or not respectively. required: - children - label TagTreeNode: type: object description: Children tags of tagTree discriminator: mapping: LEVEL: '#/components/schemas/TagTreeLevel' TAG: '#/components/schemas/TagTreeTag' propertyName: type properties: icon: type: string label: type: string type: type: string description: Type would be either `LEVEL` or `TAG` depending on whether the tag has any child tags or not respectively. TagTreeTag: type: object allOf: - $ref: '#/components/schemas/TagTreeNode' - type: object properties: description: type: string maxLength: 512 minLength: 0 hidden: type: boolean description: 'If true, the tag will not be available for query in Unbounded Analytics.' icon: type: string maxLength: 128 minLength: 0 label: type: string description: 'The name of the tagTreeNode. Eg: `Call Error Message`, `Endpoint Name`.' maxLength: 128 minLength: 0 queryable: type: boolean description: | queryable property can have 3 states which will be reflected in the drop down list in `Query Builder` of `Unbounded Analytics` of Instana UI: - true: the tag has been seen by IBM Instana and must be shown. - false: the tag could have been processed, but has not been seen by IBM Instana and could be hidden. - null: the tag has not been processed and should be shown. The purpose is to make it easier for customers to find the right tags in drop down list scoreBoost: type: integer format: int32 description: | By default it is `null` if it is not set explictily by IBM Instana. The purpose of this parameter is to rank the Tag. For eg: tags are frequently used within the tagTree For eg, assume there are 8 tags under `Commonly Used`. IBM Instana can set the ranking for each of these tags within `Commonly Used`. Higher the scoreBoost, higher the ranking. tagName: type: string maxLength: 128 minLength: 0 required: - label - tagName TestCommonProperties: type: object properties: active: type: boolean applicationId: type: string applicationIds: type: array items: type: string applicationLabel: type: string applicationLabels: type: array items: type: string createdAt: type: integer format: int64 frequency: type: integer format: int32 getWebsiteLabels: type: array items: type: string id: type: string label: type: string locationDisplayLabels: type: array items: type: string locationIds: type: array items: type: string locationLabels: type: array items: type: string locationStatusList: type: array items: $ref: '#/components/schemas/LocationStatus' mobileApplicationIds: type: array items: type: string mobileApplicationLabels: type: array items: type: string modifiedAt: type: integer format: int64 serviceId: type: string type: type: string websiteIds: type: array items: type: string websiteLabels: type: array items: type: string writeOnly: true required: - active - frequency - id - label - type TestLastError: type: object properties: errors: type: array items: type: string startTime: type: integer format: int64 TestResult: type: object properties: testResult: type: array items: $ref: '#/components/schemas/TestResultItem' testResultItems: type: array items: $ref: '#/components/schemas/TestResultItem' writeOnly: true TestResultCommonProperties: type: object properties: clientId: type: string customTags: type: object additionalProperties: type: string dnsQueryType: type: string dnsServerName: type: string errors: type: array items: type: string id: type: string ismDetails: type: object additionalProperties: type: string lastErrors: $ref: '#/components/schemas/TestLastError' locationDisplayLabel: type: string locationId: type: string runType: type: string sslDaysRemaining: type: string testCommonProperties: $ref: '#/components/schemas/TestCommonProperties' testId: type: string testLastError: $ref: '#/components/schemas/TestLastError' testName: type: string required: - clientId - testId TestResultDetailData: type: object properties: har: type: object additionalProperties: type: object imageFiles: type: object additionalProperties: type: array items: type: string format: byte logFiles: type: object additionalProperties: type: string logs: type: string subtransactionAvgMetrics: type: object additionalProperties: type: object subtransactions: type: array items: $ref: '#/components/schemas/TestResultSubtransaction' testId: type: string testResultId: type: string videos: type: array items: type: string format: byte TestResultItem: type: object properties: applicationId: type: string applicationIds: type: array items: type: string customTags: type: object additionalProperties: type: string locationId: type: array items: type: string metrics: type: array items: type: object additionalProperties: type: object mobileApplicationIds: type: array items: type: string serviceId: type: string testId: type: string testName: type: string websiteIds: type: array items: type: string required: - testId TestResultListItem: type: object properties: metrics: type: object additionalProperties: type: array items: type: array items: type: number testResultCommonProperties: $ref: '#/components/schemas/TestResultCommonProperties' required: - metrics - testResultCommonProperties TestResultListResult: type: object properties: items: type: array items: $ref: '#/components/schemas/TestResultListItem' page: type: integer format: int32 description: Page Number minimum: 1 pageSize: type: integer format: int32 minimum: 1 totalHits: type: integer format: int64 minimum: 0 required: - items TestResultMetadata: type: object properties: metadata: type: object additionalProperties: type: object startTime: type: integer format: int64 testId: type: string testResultId: type: string required: - testId TestResultSubtransaction: type: object properties: metrics: type: object additionalProperties: type: object properties: type: object additionalProperties: type: object required: - metrics - properties Threshold: type: object deprecated: true description: Indicates the type of threshold this alert rule is evaluated on. discriminator: mapping: adaptiveBaseline: '#/components/schemas/AdaptiveBaseline' historicBaseline: '#/components/schemas/HistoricBaseline' staticThreshold: '#/components/schemas/StaticThreshold' propertyName: type properties: operator: type: string enum: - '>' - '>=' - < - <= type: type: string required: - operator - type ThresholdConfigRule: type: object discriminator: mapping: adaptiveBaseline: '#/components/schemas/AdaptiveThresholdRule' historicBaseline: '#/components/schemas/StaticBaselineThresholdRule' staticThreshold: '#/components/schemas/StaticThresholdRule' propertyName: type properties: type: type: string required: - type ThresholdRule: type: object allOf: - $ref: '#/components/schemas/AbstractRule' - type: object properties: aggregation: type: string enum: - sum - avg - min - max - absolute_diff - relative_diff conditionOperator: type: string enum: - '>' - '>=' - < - <= - = - '!=' conditionValue: type: number format: double metricName: type: string maxLength: 512 minLength: 0 metricPattern: $ref: '#/components/schemas/MetricPattern' rollup: type: integer format: int64 window: type: integer format: int64 required: - conditionOperator ThroughputApplicationAlertRule: type: object allOf: - $ref: '#/components/schemas/ApplicationAlertRule' required: - metricName ThroughputMobileAppAlertRule: type: object allOf: - $ref: '#/components/schemas/MobileAppAlertRule' required: - metricName ThroughputWebsiteAlertRule: type: object allOf: - $ref: '#/components/schemas/WebsiteAlertRule' required: - metricName TimeFrame: type: object description: Time range for which the data should be retrieved. properties: to: type: integer format: int64 description: 'end of timeframe expressed as the Unix epoch time in milliseconds. Eg: `ISO 8601` standard time `2024-06-27T05:05:55.615Z` can be represented as `1719464755615` in Unix epoch time in milliseconds.' windowSize: type: integer format: int64 description: windowSize in milliseconds maximum: 2678400000 minimum: 0 TimeWindow: type: object description: 'Time Window type of the SLO, it could be Fixed or Rolling' discriminator: mapping: fixed: '#/components/schemas/FixedTimeWindow' rolling: '#/components/schemas/RollingTimeWindow' propertyName: type properties: duration: type: integer format: int32 description: Duration of the Time Window durationUnit: type: string description: Unit of the Time Window Duration enum: - millisecond - second - minute - hour - day - week - month timezone: type: string description: Timezone string type: type: string required: - duration - durationUnit - type Topology: type: object properties: edges: type: array items: $ref: '#/components/schemas/GraphEdge' nodes: type: array items: $ref: '#/components/schemas/GraphNode' Trace: type: object description: | 1. `service`: The service from where trace started. 2. `endpoint`: Endpoint of the service. properties: duration: type: integer format: int64 description: Total time taken for a trace to finish. minimum: 0 endpoint: $ref: '#/components/schemas/Endpoint' erroneous: type: boolean description: Flag which tells whether the trace is erroneous or not id: type: string description: 'The trace ID. All spans of the same trace must have the same trace ID. For example, `e93282c0d5018320`.' label: type: string description: Name of the trace. service: $ref: '#/components/schemas/Service' startTime: type: integer format: int64 description: The start time of the trace. minimum: 1 required: - id - label TraceActivityTreeNodeDetails: type: object properties: batchSelfTime: type: integer format: int64 description: | Sum of all self times in a batch of calls. For example, if 5 calls are in a batch and its self times are : `[1,2,3,4,5]` in milliseconds, then the batch self time would be sum of the self times, in this case, it will be 15 milliseconds. batchSize: type: integer format: int32 description: Number of calls in a batch. minimum: 0 destination: $ref: '#/components/schemas/SpanRelation' duration: type: integer format: int64 description: 'The total time taken for the entire operation of a call, from the moment the request was initiated to when the response was received. The time measured is in milliseconds. This is also known as latency of a call.' minimum: 0 errorCount: type: integer format: int32 description: Represents whether the call is erroneous or not. 0 is not erroneous and 1 is erroneous. minimum: 0 id: type: string description: 'The call ID. A unique identifier for an individual call. For example: `1bcad5c82338deaf`.' isSynthetic: type: boolean writeOnly: true label: type: string description: 'Name of the call. For example: `GET /articles/:id`.' maxLength: 128 minLength: 0 logs: type: array description: 'Information about the logs attached to the call, if available.' items: $ref: '#/components/schemas/SpanExcerpt' uniqueItems: true minSelfTime: type: integer format: int64 description: The smallest self time in the batch. May be null to indicate that `minSelfTime` is unknown when this node has only an exit span and no children. The time measured is in milliseconds. networkTime: type: integer format: int64 description: The time difference between the Exit Span Time of the caller and the Entry Span Time of the call. This value is measured in milliseconds and may be null if network time is not applicable. rawSpanLoadError: type: string description: Whether an error occurred loading raw spans from external storage. enum: - UNKNOWN_ERROR - NOT_FOUND - PERMISSION_DENIED - NO_ERROR source: $ref: '#/components/schemas/SpanRelation' spans: type: array description: Information about the spans from which the call is composed. items: $ref: '#/components/schemas/SpanExcerpt' maxItems: 2 minItems: 1 uniqueItems: true start: type: integer format: int64 description: 'The timestamp when the call or request was initiated. For example, Unix epoch time in milliseconds `1735532879870` is `Monday, 30 December 2024 04:27:59.870 GMT`' minimum: 1 synthetic: type: boolean required: - id - label - logs - spans TraceDownloadResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/GetTraceDownloadResultItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items TraceGroupsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: cursor: $ref: '#/components/schemas/IngestionOffsetCursor' metrics: type: object additionalProperties: type: array description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. items: type: array description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. items: type: number description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. description: | Grouped metric details like `errors.mean`, `calls.sum`. It is usually a array of key-value pair. Format of key is `metric.aggregation.granularity`, for example: `latency.p75.360`. Format of value is `[earliest timestamp, value of key]`, for example: `[1725602720000, 0.013141001434936938]`. name: type: string description: Name of the group. timestamp: type: integer format: int64 description: Earliest timestamp of the trace from the group minimum: 0 required: - cursor - metrics - name TraceGroupsResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/TraceGroupsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items TraceImpactApplicationTimeThreshold: type: object allOf: - $ref: '#/components/schemas/ApplicationTimeThreshold' - type: object properties: requests: type: integer format: int32 minimum: 1 TraceItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: cursor: $ref: '#/components/schemas/IngestionOffsetCursor' trace: $ref: '#/components/schemas/Trace' required: - cursor - trace TraceResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/TraceItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items TrafficBlueprintIndicator: type: object allOf: - $ref: '#/components/schemas/ServiceLevelIndicator' - type: object properties: threshold: type: number format: double description: Threshold Value for the Blueprint exclusiveMinimum: false minimum: 0 trafficType: type: string enum: - erroneous - all required: - trafficType - type Trigger: type: object description: The trigger is the Instana event or Smart Alert that defines the initial conditions that must be met for the policy to apply on the actions in `typeConfiguration`. properties: description: type: string description: A description for the trigger. id: type: string description: Trigger (Instana event or Smart Alert) identifier. name: type: string description: A name of the trigger (name of Instana event or Smart Alert). scheduling: $ref: '#/components/schemas/PolicyScheduling' type: type: string description: 'Instana event type, Smart Alert type, or ''schedule''. The type must be one of the enum values.' enum: - customEvent - builtinEvent - applicationSmartAlert - globalApplicationSmartAlert - websiteSmartAlert - infraSmartAlert - mobileAppSmartAlert - syntheticsSmartAlert - logSmartAlert - sloSmartAlert - schedule required: - type TypeConfiguration: type: object description: List of configurations that contains the list of actions to run and the mode (automatic or manual) in which the policy is run. properties: condition: $ref: '#/components/schemas/Condition' name: type: string description: The policy type determines how a policy is run. Value must be one of the enum values. Value `manual` means the policy is run manually when an event is raised. Value `automatic` means policy is run automatically when an event is raised. enum: - automatic - manual runnable: $ref: '#/components/schemas/PolicyRunnable' required: - name - runnable UnsupportedHttpPathSegmentMatchingRule: type: object allOf: - $ref: '#/components/schemas/HttpPathSegmentMatchingRule' - type: object properties: unsupportedType: type: string required: - type UpdatedBusinessPerspectiveConfig: type: object properties: description: type: string maxLength: 300 minLength: 0 name: type: string maxLength: 100 minLength: 0 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' UsageResult: type: object properties: items: type: array items: $ref: '#/components/schemas/UsageResultItems' time: type: integer format: int64 UsageResultItems: type: object properties: name: type: string sims: type: integer format: int64 UserBasicResult: type: object properties: email: type: string fullName: type: string id: type: string required: - email - fullName - id UserImpactMobileAppTimeThreshold: type: object allOf: - $ref: '#/components/schemas/MobileAppTimeThreshold' - type: object properties: impactMeasurementMethod: type: string enum: - AGGREGATED - PER_WINDOW userPercentage: type: number format: double exclusiveMaximum: false exclusiveMinimum: true maximum: 1 minimum: 0 users: type: integer format: int32 minimum: 1 required: - impactMeasurementMethod UserImpactWebsiteTimeThreshold: type: object allOf: - $ref: '#/components/schemas/WebsiteTimeThreshold' - type: object properties: impactMeasurementMethod: type: string enum: - AGGREGATED - PER_WINDOW userPercentage: type: number format: double exclusiveMaximum: false exclusiveMinimum: true maximum: 1 minimum: 0 users: type: integer format: int32 minimum: 1 required: - impactMeasurementMethod UserResult: type: object properties: email: type: string fullName: type: string groupCount: type: integer format: int64 id: type: string lastLoggedIn: type: integer format: int64 tfaEnabled: type: boolean required: - email - fullName - id UsersResult: type: object properties: invitations: type: array items: $ref: '#/components/schemas/InvitationResult' uniqueItems: true users: type: array items: $ref: '#/components/schemas/UserResult' uniqueItems: true ValidatedAlertingChannelInputInfo: type: object properties: enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. entityId: type: string description: 'The entity ID in case of Smart Alerts, such as for the application, website or mobile app.' eventTypes: type: array description: 'The selected event types, if applicable.' items: type: string description: 'The selected event types, if applicable.' enum: - incident - critical - warning - change - online - offline - agent_monitoring_issue - cve_issue - none maxItems: 6 minItems: 0 uniqueItems: true id: type: string description: ID of the alert configuration. maxLength: 64 minLength: 0 invalid: type: boolean description: Flag to indicate whether the specified query is invalid. label: type: string description: The name of the alert configuration. maxLength: 256 minLength: 0 query: type: string description: 'The DFQ used in the alert configuration, if applicable.' maxLength: 2048 minLength: 0 selectedEvents: type: integer format: int32 description: 'The number of selected events, if applicable.' type: type: string description: The alert type. enum: - Alert - WebsiteSmartAlert - MobileSmartAlert - ApplicationSmartAlert - GlobalApplicationSmartAlert - SyntheticSmartAlert - InfraSmartAlert - ServiceLevelSmartAlert - LogSmartAlert required: - id - label - type ValidatedAlertingConfiguration: type: object properties: alertChannelNames: type: array description: Set of Alert Channel names added in the Alert Configuration. items: type: string description: Set of Alert Channel names added in the Alert Configuration. uniqueItems: true alertName: type: string description: Name of the Alert Configuration. maxLength: 256 minLength: 0 applicationNames: type: array description: Set of Application Perspective names added in the Alert Configuration. items: type: string description: Set of Application Perspective names added in the Alert Configuration. uniqueItems: true customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/StaticStringField' maxItems: 20 minItems: 0 eventFilteringConfiguration: $ref: '#/components/schemas/EventFilteringConfiguration' id: type: string description: ID of the Alert Configuration. maxLength: 64 minLength: 0 includeEntityNameInLegacyAlerts: type: boolean description: To include the entity name in a legacy alert based on built-in/custom events. integrationIds: type: array description: List of Alert Channel IDs added in this Alert Configuration. items: type: string description: List of Alert Channel IDs added in this Alert Configuration. maxItems: 1024 minItems: 0 uniqueItems: true invalid: type: boolean description: Flag to show whether the Alert Configuration is valid. lastUpdated: type: integer format: int64 description: Unix timestamp representing the time the configuration was last updated. minimum: 1 muteUntil: type: integer format: int64 description: 'Timer dictating how long the Alert Configuration will stay muted. A value of `0` means the Alert Configuration is currently enabled. Otherwise, the Alert Configuration is currently disabled (muted).' required: - alertName - customPayloadFields - eventFilteringConfiguration - id - integrationIds ValidatedMaintenanceConfigV2WithStateAndOccurrence: type: object properties: applicationNames: type: array description: Name set of the Application Perspectives within the scope of the Maintenance Window items: type: string description: Name set of the Application Perspectives within the scope of the Maintenance Window uniqueItems: true id: type: string description: ID of the Maintenance Window configuration. maxLength: 64 minLength: 0 invalid: type: boolean description: Boolean flag that tells if the Dynamic Focus Query(DFQ) is invalid. lastUpdated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Maintenance Window configuration. maxLength: 256 minLength: 0 occurrence: $ref: '#/components/schemas/Occurrence' paused: type: boolean description: Boolean flag to determine if the Maintenance Window configuration is paused or still live. query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 retriggerOpenAlertsEnabled: type: boolean description: 'Boolean flag to determine if we should retrigger open alerts to be sent out for any events that opened during this maintenance window, and continues to remain open after the window expires' scheduling: $ref: '#/components/schemas/MaintenanceConfigScheduling' state: type: string description: 'State of the Maintenance Window, it can be: UNSCHEDULED, SCHEDULED, ACTIVE, PAUSED, EXPIRED.' enum: - UNSCHEDULED - SCHEDULED - ACTIVE - PAUSED - EXPIRED tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilterExpressionEnabled: type: boolean description: Boolean flag to determine if the tagFilterExpression is enabled. required: - id - name - occurrence - query - scheduling ValidatedMaintenanceConfigWithStatus: type: object properties: id: type: string description: ID of the Maintenance Window Configuration. maxLength: 64 minLength: 0 invalid: type: boolean description: Boolean flag that tells if the Dynamic Focus Query(DFQ) is invalid. lastUpdated: type: integer format: int64 minimum: 1 name: type: string description: Name of the Maintenance Window Configuration. maxLength: 256 minLength: 0 query: type: string description: Dynamic Focus Query that determines the scope of the Maintenance Window configuration. maxLength: 2048 minLength: 0 status: type: string description: 'Status of the Maintenance Window Configuration. It can be one of: UNSCHEDULED, SCHEDULED, ACTIVE, FINISHED, PAUSED.' enum: - UNSCHEDULED - SCHEDULED - ACTIVE - FINISHED - PAUSED windows: type: array description: A set of time periods when the Maintenance Window Configuration is active. items: $ref: '#/components/schemas/MaintenanceWindow' maxItems: 1 minItems: 0 uniqueItems: true required: - id - name - query - status VictorOpsIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: apiKey: type: string routingKey: type: string required: - apiKey - id - kind - name - routingKey ViolationsInPeriodApplicationTimeThreshold: type: object allOf: - $ref: '#/components/schemas/ApplicationTimeThreshold' - type: object properties: violations: type: integer format: int32 maximum: 12 minimum: 1 ViolationsInPeriodMobileAppTimeThreshold: type: object allOf: - $ref: '#/components/schemas/MobileAppTimeThreshold' - type: object properties: violations: type: integer format: int32 maximum: 12 minimum: 1 ViolationsInPeriodWebsiteTimeThreshold: type: object allOf: - $ref: '#/components/schemas/WebsiteTimeThreshold' - type: object properties: violations: type: integer format: int32 maximum: 12 minimum: 1 ViolationsInSequenceApplicationTimeThreshold: type: object allOf: - $ref: '#/components/schemas/ApplicationTimeThreshold' ViolationsInSequenceInfraTimeThreshold: type: object allOf: - $ref: '#/components/schemas/InfraTimeThreshold' ViolationsInSequenceLogTimeThreshold: type: object allOf: - $ref: '#/components/schemas/LogTimeThreshold' ViolationsInSequenceMobileAppTimeThreshold: type: object allOf: - $ref: '#/components/schemas/MobileAppTimeThreshold' ViolationsInSequenceSyntheticTimeThreshold: type: object allOf: - $ref: '#/components/schemas/SyntheticTimeThreshold' ViolationsInSequenceWebsiteTimeThreshold: type: object allOf: - $ref: '#/components/schemas/WebsiteTimeThreshold' WatsonAIOpsWebhookIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: headers: type: array items: type: string webhookUrl: type: string required: - id - kind - name - webhookUrl WebexTeamsWebhookIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: webhookUrl: type: string required: - id - kind - name - webhookUrl WebhookIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: headers: type: array items: type: string oauth: $ref: '#/components/schemas/OAuthIntegration' oauthEnabled: type: boolean transformationExpression: type: string webhookUrls: type: array items: type: string required: - id - kind - name - webhookUrls WebpageActionConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: browser: type: string enum: - chrome - firefox recordVideo: type: boolean url: type: string maxLength: 2047 minLength: 0 required: - markSyntheticCall - syntheticType - url WebpageActionConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: browser: type: string enum: - chrome - firefox recordVideo: type: boolean url: type: string WebpageScriptConfiguration: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfiguration' - type: object properties: browser: type: string enum: - chrome - firefox fileName: type: string recordVideo: type: boolean script: type: string maxLength: 1048576 minLength: 0 required: - markSyntheticCall - script - syntheticType WebpageScriptConfigurationUpdate: type: object allOf: - $ref: '#/components/schemas/SyntheticTypeConfigurationUpdate' - type: object properties: browser: type: string enum: - chrome - firefox fileName: type: string recordVideo: type: boolean script: type: string Website: type: object properties: appName: type: string id: type: string name: type: string required: - id - name WebsiteAlertConfig: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the website alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 name: type: string description: Name of the website alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 rule: $ref: '#/components/schemas/WebsiteAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdWebsiteAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' uniqueItems: true writeOnly: true threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/WebsiteTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. websiteId: type: string description: ID of the website that this Smart Alert configuration is applied to. maxLength: 64 minLength: 0 required: - customPayloadFields - description - granularity - name - tagFilterExpression - timeThreshold - websiteId WebsiteAlertConfigWithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the website alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 id: type: string description: 'ID of this Website Alert Config. ' maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 description: Unix timestamp representing the time of the initial revision. minimum: 1 name: type: string description: Name of the website alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Flag to indicate whether or not the configuration is read-only. Read-only access restricts modification of the config. rule: $ref: '#/components/schemas/WebsiteAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdWebsiteAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' tagFilters: type: array items: $ref: '#/components/schemas/TagFilter' uniqueItems: true writeOnly: true threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/WebsiteTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. websiteId: type: string description: ID of the website that this Smart Alert configuration is applied to. maxLength: 64 minLength: 0 required: - customPayloadFields - description - granularity - id - name - tagFilterExpression - timeThreshold - websiteId WebsiteAlertRule: type: object discriminator: mapping: customEvent: '#/components/schemas/CustomEventWebsiteAlertRule' slowness: '#/components/schemas/SlownessWebsiteAlertRule' specificJsError: '#/components/schemas/SpecificJsErrorsWebsiteAlertRule' statusCode: '#/components/schemas/StatusCodeWebsiteAlertRule' throughput: '#/components/schemas/ThroughputWebsiteAlertRule' propertyName: alertType properties: aggregation: type: string enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE alertType: type: string metricName: type: string required: - alertType - metricName WebsiteApdexEntity: type: object allOf: - $ref: '#/components/schemas/ApdexEntity' - type: object properties: beaconType: type: string description: Website Beacon Type enum: - pageLoad - resourceLoad - httpRequest - error - custom - pageChange entityId: type: string description: Website ID threshold: type: integer format: int32 description: Value of the Apdex Threshold minimum: 1 required: - beaconType - entityId - tagFilterExpression WebsiteBeaconGroupsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: cursor: $ref: '#/components/schemas/IngestionOffsetCursor' earliestTimestamp: type: integer format: int64 minimum: 0 metrics: type: object additionalProperties: type: array items: type: array items: type: number name: type: string required: - cursor - metrics - name WebsiteBeaconGroupsResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/WebsiteBeaconGroupsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items WebsiteBeaconResult: type: object properties: adjustedTimeframe: $ref: '#/components/schemas/AdjustedTimeframe' canLoadMore: type: boolean description: Determine if additional data is available when a new query is made using the cursor from the last item in the `items` list. items: type: array description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. items: $ref: '#/components/schemas/WebsiteBeaconsItem' totalHits: type: integer format: int64 description: The total number of items that match a given filter minimum: 0 totalRepresentedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, one row can represent multiple real items (batched call, sample multiplicity)' minimum: 0 totalRetainedItemCount: type: integer format: int64 description: 'For calls and EUM beacons, only a subset is retained for historic data. Each retained row can represent multiple real items due to batching.' minimum: 0 required: - items WebsiteBeaconTagGroup: type: object properties: groupbyTag: type: string description: The name of the group tag (e.g. `agent.tag` or `docker.label`). maxLength: 256 minLength: 0 groupbyTagEntity: type: string description: | The entity by which the data should be grouped. This field supports three possible values: `NOT_APPLICABLE`, `DESTINATION`, and `SOURCE`. `SOURCE`: the tag filter should apply to the source entity. `DESTINATION`: the tag filter should apply to the destination entity. `NOT_APPLICABLE`: some tags are independent of source or destination, such as tags on the call itself, log tags or trace tags (only destination makes sense because the source is unknown for the root call). enum: - NOT_APPLICABLE - DESTINATION - SOURCE groupbyTagSecondLevelKey: type: string description: 'If present, it''s the 2nd level key part (e.g. `customKey` on `docker.label.customKey`)' maxLength: 256 minLength: 0 required: - groupbyTag - groupbyTagEntity WebsiteBeaconsItem: type: object description: | Represents an array of call group item containing several attributes that describe its properties. The item includes fields such as cursor, metrics, name, and timestamp, which provide detailed information about the item. properties: beacon: $ref: '#/components/schemas/WebsiteMonitoringBeacon' cursor: $ref: '#/components/schemas/IngestionOffsetCursor' impactedBeaconInfo: $ref: '#/components/schemas/ImpactedBeaconInfo' required: - beacon - cursor WebsiteEventBasedSliEntity: type: object allOf: - $ref: '#/components/schemas/SliEntity' - type: object properties: badEventFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' beaconType: type: string description: Enum value to specify the type of beacons to be monitored enum: - pageLoad - resourceLoad - httpRequest - error - custom - pageChange goodEventFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' websiteId: type: string description: Specifies the ID of the Website required: - badEventFilterExpression - beaconType - goodEventFilterExpression WebsiteEventResult: type: object allOf: - $ref: '#/components/schemas/EventResult' - type: object properties: websiteId: type: string description: ID of the website. WebsiteMetricResult: type: object properties: empty: type: boolean WebsiteMonitoringBeacon: type: object properties: accuracyRadius: type: integer format: int64 minimum: -1 accurateTimingsAvailable: type: boolean agentVersion: type: string appCacheTime: type: integer format: int64 minimum: -1 backendTime: type: integer format: int64 minimum: -1 backendTraceId: type: string batchSize: type: integer format: int64 minimum: 1 beaconId: type: string browserName: type: string browserVersion: type: string bytesIngested: type: integer format: int64 cacheInteraction: type: string childrenTime: type: integer format: int64 minimum: -1 city: type: string clockSkew: type: integer format: int64 minimum: -1 componentStack: type: string connectionType: type: string continent: type: string continentCode: type: string country: type: string countryCode: type: string cspBlockedUri: type: string cspColumnNumber: type: integer format: int64 cspDisposition: type: string cspEffectiveDirective: type: string cspLineNumber: type: integer format: int64 cspOriginalPolicy: type: string cspSample: type: string cspSourceFile: type: string cumulativeLayoutShift: type: number format: double customEventName: type: string customMetric: type: number format: double decodedBodySize: type: integer format: int64 minimum: -1 deprecations: type: array items: type: string maxItems: 16 minItems: 0 uniqueItems: true deviceType: type: string dnsTime: type: integer format: int64 minimum: -1 domTime: type: integer format: int64 minimum: -1 duration: type: integer format: int64 minimum: 0 encodedBodySize: type: integer format: int64 minimum: -1 errorCount: type: integer format: int64 minimum: 0 errorId: type: string errorMessage: type: string errorType: type: string firstContentfulPaintTime: type: integer format: int64 minimum: -1 firstInputDelayTime: type: integer format: int64 minimum: -1 firstPaintTime: type: integer format: int64 minimum: -1 frontendTime: type: integer format: int64 minimum: -1 graphqlOperationName: type: string graphqlOperationType: type: string httpCallAsynchronous: type: boolean httpCallCorrelationAttempted: type: boolean httpCallHeaders: type: object additionalProperties: type: string httpCallMethod: type: string httpCallOrigin: type: string httpCallPath: type: string httpCallStatus: type: integer format: int32 maximum: 599 minimum: -1 httpCallUrl: type: string initiator: type: string interactionNextPaint: type: integer format: int64 internalMeta: type: object additionalProperties: type: string label: type: string largestContentfulPaintTime: type: integer format: int64 minimum: -1 latitude: type: number format: double locationOrigin: type: string locationPath: type: string locationUrl: type: string longitude: type: number format: double meta: type: object additionalProperties: type: string onLoadTime: type: integer format: int64 minimum: -1 osName: type: string osVersion: type: string page: type: string pageLoadId: type: string parentBeaconId: type: string parsedStackTrace: type: array items: $ref: '#/components/schemas/JsStackTraceLine' maxItems: 64 minItems: 0 phase: type: string processingTime: type: integer format: int64 minimum: -1 redirectTime: type: integer format: int64 minimum: -1 requestTime: type: integer format: int64 minimum: -1 resourceType: type: string responseTime: type: integer format: int64 minimum: -1 sessionId: type: string snippetVersion: type: string sslTime: type: integer format: int64 minimum: -1 stackTrace: type: string stackTraceParsingStatus: type: integer format: int32 minimum: -1 stackTraceReadability: type: integer format: int32 minimum: 0 subdivision: type: string subdivisionCode: type: string tcpTime: type: integer format: int64 minimum: -1 timestamp: type: integer format: int64 minimum: 1 transferSize: type: integer format: int64 minimum: -1 type: type: string unloadTime: type: integer format: int64 minimum: -1 useFeatures: type: array items: type: string maxItems: 15 minItems: 0 userEmail: type: string userId: type: string userIp: type: string userLanguages: type: array items: type: string maxItems: 5 minItems: 0 userName: type: string websiteId: type: string websiteLabel: type: string windowHeight: type: integer format: int32 minimum: -1 windowHidden: type: boolean windowWidth: type: integer format: int32 minimum: -1 required: - beaconId - locationOrigin - locationUrl - pageLoadId - type - websiteId - websiteLabel WebsiteMonitoringMetricDescription: type: object properties: aggregations: type: array description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. items: type: string description: | The types of aggregations that can be applied to a series of values. For example, `P25` is 25th percentile. Note that not all aggregations are available for metrics. For example, `Trace count` has only `SUM` as an aggregation whereas `Call Count` has two aggregations, `SUM` and `PER_SECOND`. enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE uniqueItems: true beaconTypes: type: array items: type: string uniqueItems: true defaultAggregation: type: string description: 'The preselected aggregation for a metric. For example, for `Call latency` the default aggregation is `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE description: type: string description: 'A description of the metric. For example, for `Call count` metric, the description would be something like `Number of received calls`' formatter: type: string description: | * `NUMBER`: Generic number * `BYTES`: Number of bytes * `KILO_BYTES`: Number of kilobytes * `MEGA_BYTES`: Number of megabytes * `PERCENTAGE`: Percentage in scale [0,1] * `PERCENTAGE_100`: Percentage in scale [0,100] * `PERCENTAGE_NO_CAPPING`: Percentage in scale [0,1] but value could exceed 1 for example when metric is aggregated * `PERCENTAGE_100_NO_CAPPING`: Percentage in scale [0,100] but value could exceed 100 for example when metric is aggregated * `LATENCY`: Time in milliseconds, with value of 0 should not be considered a a strict 0, but considered as < 1ms * `NANOS`: Time in nanoseconds * `MILLIS`: Time in milliseconds * `MICROS`: Time in microseconds * `SECONDS`: Time in seconds * `RATE`: Number of occurrences per second * `BYTE_RATE`: Number of bytes per second * `UNDEFINED`: Metric value unit is not known label: type: string description: 'The name of the metric. For example, `Call count`, `Erroneous calls`, `Service count` etc.' metricId: type: string description: 'The unique id of the metric. For example, `calls`, `erroneousCalls`, `latency` etc.' pathToValueInBeacon: type: array items: type: string maxItems: 2147483647 minItems: 1 tagName: type: string required: - aggregations - beaconTypes - formatter - label - metricId WebsiteMonitoringMetricsConfiguration: type: object properties: aggregation: type: string description: 'Set aggregation that can be applied to a series of values. Eg: `MEAN`.' enum: - SUM - MEAN - MAX - MIN - P25 - P50 - P75 - P90 - P95 - P98 - P99 - P99_9 - P99_99 - DISTINCT_COUNT - SUM_POSITIVE - PER_SECOND - INCREASE granularity: type: integer format: int32 description: 'If the granularity is set you will get data points with the specified granularity in seconds. Default: `1000` milliseconds' metric: type: string description: 'Set a particular metric, eg: `latency`.' required: - aggregation - metric WebsiteSloEntity: type: object allOf: - $ref: '#/components/schemas/SloEntity' - type: object properties: beaconType: type: string description: Type of Website Beacon to be considered for the SLO enum: - pageLoad - resourceLoad - httpRequest - error - custom - pageChange websiteId: type: string description: The ID of the Website required: - beaconType - websiteId WebsiteTimeBasedSliEntity: type: object allOf: - $ref: '#/components/schemas/SliEntity' - type: object properties: beaconType: type: string description: Enum value to specify the type of beacons to be monitored enum: - pageLoad - resourceLoad - httpRequest - error - custom - pageChange filterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' websiteId: type: string description: Specifies the ID of the Website required: - beaconType WebsiteTimeThreshold: type: object description: The type of threshold to define the criteria when the event and alert triggers and resolves. discriminator: mapping: userImpactOfViolationsInSequence: '#/components/schemas/UserImpactWebsiteTimeThreshold' violationsInPeriod: '#/components/schemas/ViolationsInPeriodWebsiteTimeThreshold' violationsInSequence: '#/components/schemas/ViolationsInSequenceWebsiteTimeThreshold' propertyName: type properties: timeWindow: type: integer format: int64 type: type: string required: - type Widget: type: object properties: config: type: object height: type: integer format: int32 minimum: 1 id: type: string maxLength: 64 minLength: 0 title: type: string type: type: string width: type: integer format: int32 maximum: 12 minimum: 1 x: type: integer format: int32 maximum: 11 minimum: 0 'y': type: integer format: int32 minimum: 0 required: - config - id - type WithMetadata: type: object properties: alertChannelIds: type: array deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. items: type: string deprecated: true description: List of IDs of alert channels defined in Instana. Can be left empty. maxItems: 1024 minItems: 0 uniqueItems: true alertChannels: type: object additionalProperties: type: array description: Set of alert channel IDs associated with the severity. items: type: string description: Set of alert channel IDs associated with the severity. uniqueItems: true description: Set of alert channel IDs associated with the severity. completeTagFilterExpression: $ref: '#/components/schemas/TagFilterExpression' created: type: integer format: int64 description: Unix timestamp representing the creation time of this revision. minimum: 1 customPayloadFields: type: array description: Custom payload fields to send additional information in the alert notifications. Can be left empty. items: $ref: '#/components/schemas/CustomPayloadField' maxItems: 20 minItems: 0 description: type: string description: Description of the mobile app alert configuration. Used as a template for the description of alert/event notifications triggered by this Smart Alert configuration. maxLength: 65536 minLength: 0 enabled: type: boolean description: Flag to indicate whether or not the configuration is enabled. gracePeriod: type: integer format: int64 description: 'The duration for which an alert remains open after conditions are no longer violated, with the alert auto-closing once the grace period expires.' granularity: type: integer format: int32 default: 600000 description: The evaluation granularity used for detection of violations of the defined threshold. Defines the size of the tumbling window used. enum: - 60000 - 300000 - 600000 - 900000 - 1200000 - 1800000 id: type: string description: 'ID of this Mobile App Alert Config. ' maxLength: 64 minLength: 0 initialCreated: type: integer format: int64 description: Unix timestamp representing the time of the initial revision. minimum: 1 mobileAppId: type: string description: ID of the mobile app that this Smart Alert configuration is applied to. maxLength: 64 minLength: 0 name: type: string description: Name of the mobile app alert configuration. Used as a template for the title of alert/event notifications triggered by this Smart Alert configuration. maxLength: 256 minLength: 0 readOnly: type: boolean description: Flag to indicate whether or not the configuration is read-only. Read-only access restricts modification of the config. rule: $ref: '#/components/schemas/MobileAppAlertRule' rules: type: array description: A list of rules where each rule is associated with multiple thresholds and their corresponding severity levels. This enables more complex alert configurations with validations to ensure consistent and logical threshold-severity combinations. items: $ref: '#/components/schemas/RuleWithThresholdMobileAppAlertRule' maxItems: 1 minItems: 1 severity: type: integer format: int32 deprecated: true description: 'The severity of the alert when triggered, which is either 5 (Warning), or 10 (Critical).' maximum: 10 minimum: 5 tagFilterExpression: $ref: '#/components/schemas/TagFilterExpressionElement' threshold: $ref: '#/components/schemas/Threshold' timeThreshold: $ref: '#/components/schemas/MobileAppTimeThreshold' triggering: type: boolean description: Optional flag to indicate whether an Incident is also triggered or not. required: - customPayloadFields - description - granularity - id - mobileAppId - name - tagFilterExpression - timeThreshold WithResolvedName: type: object allOf: - $ref: '#/components/schemas/Author' - type: object properties: fullName: type: string ZChatOpsIntegration: type: object allOf: - $ref: '#/components/schemas/AbstractIntegration' - type: object properties: bearerAuthToken: type: string channels: type: array items: type: string maxItems: 1 minItems: 0 zchatOpsIncidentsUrl: type: string required: - bearerAuthToken - id - kind - name - zchatOpsIncidentsUrl securitySchemes: ApiKeyAuth: in: header name: authorization type: apiKey description: | ## Example ```bash curl --request GET \ --url https://test-instana.instana.io/api/application-monitoring/catalog/metrics \ --header 'authorization: apiToken xxxxxxxxxxxxxxxx' ``` x-tagGroups: - name: Websites & Mobile Apps tags: - Website Metrics - Website Catalog - Website Analyze - Website Configuration - Mobile App Metrics - Mobile App Catalog - Mobile App Analyze - Mobile App Configuration - End User Monitoring - name: Applications tags: - Application Metrics - Application Resources - Application Catalog - Application Analyze - Application Settings - Application Topology - Application Alert Configuration - Global Application Alert Configuration - name: Infrastructure tags: - Infrastructure Analyze - Infrastructure Metrics - Infrastructure Resources - Infrastructure Catalog - Infrastructure Topology - name: Logging tags: - Logging Analyze - name: Synthetic Monitoring tags: - Synthetic Catalog - Synthetic Metrics - Synthetic Settings - Synthetic Test Playback Results - Synthetic Alert Configuration - name: Logs tags: - Log Alert Configuration - name: Events tags: - Events - Event Settings - name: Automation tags: - Action Catalog - Action History - Policies - name: Service Levels tags: - SLI Settings - SLI Report - Apdex Settings - Apdex Report - Service Levels Objective(SLO) Configurations - Service Levels Objective(SLO) Report - Service Levels Alert Configuration - SLO Correction Configurations - SLO Correction Windows - name: AI Management tags: - AI Management - name: Settings tags: - Custom Dashboards - User - Groups - Teams - Roles - Audit Log - API Token - Maintenance Configuration - Synthetic Calls - Session Settings - Automation Settings - Authentication - name: Open Beta Features tags: - Infrastructure Analyze - name: Closed Beta Features tags: - Infrastructure Alert Configuration - name: Instana tags: - Releases - Host Agent - Health - Usage