instana service has 23 resource kinds, each listed below with its endpoints, fields, and dependencies. Values resolve late, so you reference another resource with ${kind.ref_name}. For defaults, validation rules, and examples, run wxctl explain <kind>.
YAML envelope & reference syntax
YAML envelope & reference syntax
- Envelope: A config is one or more YAML documents separated by
---. Each has top-levelkindandref_name, then the fields below at the top level (not nested underspec). ref_name: Unique handle for this resource within the config. Used to reference it from other resources, then stripped before the API call (not a schema field).- References: Reference another resource by its ref_name:
${<kind>.<ref_name>}resolves to its id,${<kind>.<ref_name>.<field>}to a specific field. Values resolve late, at plan/apply time.
instana_alert
An Instana alerting configuration (AlertingConfiguration, /api/events/settings/alerts) routes events that match an event filter to one or more alerting channels, the only API mechanism for delivering custom-event notifications to an external channel.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/alerts/{id} |
| Read | GET | /api/events/settings/alerts/{id} |
| List | GET | /api/events/settings/alerts |
| Update | PUT | /api/events/settings/alerts/{id} |
| Delete | DELETE | /api/events/settings/alerts/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | CLIENT-SUPPLIED alerting-configuration id. Required in the AlertingConfiguration PUT body AND the get_by_id discovery id_source (delete.rs/update.rs substitute it into /{id}). Immutable, a different id is a different configuration. |
alertName | string | Required | Alerting-configuration display name. |
integrationIds | array<string> | Required | Ids of the alerting channels matched events route to. references on this top-level array field produces a DAG edge (build.rs edges any field with a references block, scalar or array) → channels are ordered before this configuration and each ${instana_alerting_channel.<ref>.id} element resolves. Proven pattern: alertChannelIds on the four alert-config kinds. |
eventFilteringConfiguration | object | Required | EventFilteringConfiguration selecting which events trigger this configuration. ruleIds scopes to specific custom event specifications; eventTypes/query/applicationAlertConfigIds narrow further. |
customPayloadFields | array<object> | Optional | Custom key/value fields attached to routed events. API-required, but default: [] (with schema required:false, per the agent.yaml pattern) lets configs omit it, always sent as [] on the wire. Rides the PUT body; the default update path would prune it, so update is handler-owned. |
muteUntil | integer | Optional | Absolute epoch-MILLISECONDS timestamp until which this configuration is muted, NOT a duration. 0 = enabled (not muted). The declarative on-stage mute knob: set to a far-future epoch to silence delivery, revert to 0 to resume. |
includeEntityNameInLegacyAlerts | boolean | Optional | Include the entity name in legacy alert payloads (server default). |
integrationIds→instana_alerting_channel(required)eventFilteringConfiguration.ruleIds→instana_custom_event_spec(optional)
instana_alerting_channel
An Instana alerting channel (AbstractIntegration) is a notification target, email, Slack, generic webhook, PagerDuty, Opsgenie, Splunk, and more, that smart-alert configs route events to.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/alertingChannels |
| Read | GET | /api/events/settings/alertingChannels/{id} |
| List | GET | /api/events/settings/alertingChannels |
| Update | PUT | /api/events/settings/alertingChannels/{id} |
| Delete | DELETE | /api/events/settings/alertingChannels/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | CLIENT-SUPPLIED alerting-channel id (Instana 3.319 rejects id-less creates with a 500). Immutable, a different id is a different channel. |
channel_type | string | Required | Channel-type discriminator selecting which per-type fields apply (sent as the wire field kind). |
name | string | Required | Channel display name; Instana’s human identifier (matched on during discovery). |
emails | array<string> | Optional | EMAIL, recipient addresses. |
webhookUrl | string | Optional | SLACK / single-URL webhook, incoming webhook URL (credential; redacted at emission). |
webhookUrls | array<string> | Optional | WEB_HOOK, generic webhook target URLs (credentials; redacted at emission). |
channel | string | Optional | SLACK, target channel name. |
iconUrl | string | Optional | SLACK, message icon URL. |
headers | array<string> | Optional | WEB_HOOK, extra HTTP headers sent with the webhook call. |
url | string | Optional | SPLUNK / generic, endpoint URL. |
token | string | Optional | SPLUNK, HEC token (credential; redacted at emission). |
apiKey | string | Optional | OPS_GENIE / VICTOR_OPS, API key (credential; redacted at emission). |
region | string | Optional | OPS_GENIE, API region. |
tags | string | Optional | OPS_GENIE, comma-separated alert tags. |
serviceIntegrationKey | string | Optional | PAGER_DUTY, service integration key (credential; redacted at emission). |
routingKey | string | Optional | VICTOR_OPS, routing key (credential; redacted at emission). |
appId | string | Optional | BIDIRECTIONAL_MS_TEAMS, Teams app id. |
tenantId | string | Optional | BIDIRECTIONAL_MS_TEAMS, Teams tenant id. |
clientId | string | Optional | OAuth-based channels (Teams / Salesforce), client id. |
clientSecret | string | Optional | OAuth-based channels, client secret (credential; redacted at emission). |
username | string | Optional | SALESFORCE / SERVICE_NOW, account username. |
password | string | Optional | SALESFORCE / SERVICE_NOW, account password (credential; redacted at emission). |
salesforceUrl | string | Optional | SALESFORCE, instance URL. |
serviceNowUrl | string | Optional | SERVICE_NOW, instance URL. |
instana_alert→.integrationIds(required)instana_application_alert_config→.alertChannelIds(required)instana_infra_alert_config→.alertChannelIds(optional)instana_log_alert_config→.alertChannelIds(optional)instana_slo_alert_config→.alertChannelIds(required)instana_synthetic_alert_config→.alertChannelIds(required)instana_website_alert_config→.alertChannelIds(optional)
instana_api_token
An Instana API token (ApiToken) created via /api/settings/api-tokens; the identity is a CLIENT-SUPPLIED internalId (also the path param), the human identifier is name.
Runs on SaaS + Software · ID field internalId
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/settings/api-tokens |
| Read | GET | /api/settings/api-tokens/{internalId} |
| List | GET | /api/settings/api-tokens |
| Update | PUT | /api/settings/api-tokens/{internalId} |
| Delete | DELETE | /api/settings/api-tokens/{internalId} |
| Field | Type | Required | Description |
|---|---|---|---|
internalId | string | Required | CLIENT-SUPPLIED api-token id (path identity / id_field). Immutable — a different internalId is a different token. |
name | string | Required | Token display name; Instana’s human identifier (matched on during discovery). |
accessGrantingToken | string | Required | The token’s secret bearer value (credential; redacted at emission). Supply via ${env:INSTANA_APITOKEN_GRANT} in examples, never inline. |
expiresOn | integer | Optional | Token expiry, epoch milliseconds. Omit for a non-expiring token. |
canConfigureAgentRunMode | boolean | Optional | Can configure agent run mode. |
canConfigureAgents | boolean | Optional | Can configure agents. |
canConfigureAiAgents | boolean | Optional | Can configure AI agents. |
canConfigureApdex | boolean | Optional | Can configure apdex. |
canConfigureApiTokens | boolean | Optional | Can configure API tokens. |
canConfigureApplicationSmartAlerts | boolean | Optional | Can configure application smart alerts. |
canConfigureApplications | boolean | Optional | Can configure applications. |
canConfigureAuthenticationMethods | boolean | Optional | Can configure authentication methods. |
canConfigureAutomationActions | boolean | Optional | Can configure automation actions. |
canConfigureAutomationPolicies | boolean | Optional | Can configure automation policies. |
canConfigureBizops | boolean | Optional | Can configure BizOps. |
canConfigureDatabaseManagement | boolean | Optional | Can configure database management. |
canConfigureEumApplications | boolean | Optional | Can configure EUM applications. |
canConfigureEventsAndAlerts | boolean | Optional | Can configure events and alerts. |
canConfigureGlobalAlertPayload | boolean | Optional | Can configure global alert payload. |
canConfigureGlobalApplicationSmartAlerts | boolean | Optional | Can configure global application smart alerts. |
canConfigureGlobalInfraSmartAlerts | boolean | Optional | Can configure global infra smart alerts. |
canConfigureGlobalLogSmartAlerts | boolean | Optional | Can configure global log smart alerts. |
canConfigureGlobalSyntheticSmartAlerts | boolean | Optional | Can configure global synthetic smart alerts. |
canConfigureIntegrations | boolean | Optional | Can configure integrations. |
canConfigureLLM | boolean | Optional | Can configure LLM. |
canConfigureLogManagement | boolean | Optional | Can configure log management. |
canConfigureLogRetentionPeriod | boolean | Optional | Can configure log retention period. |
canConfigureMaintenanceWindows | boolean | Optional | Can configure maintenance windows. |
canConfigureMobileAppMonitoring | boolean | Optional | Can configure mobile app monitoring. |
canConfigureMobileAppSmartAlerts | boolean | Optional | Can configure mobile app smart alerts. |
canConfigurePersonalApiTokens | boolean | Optional | Can configure personal API tokens. |
canConfigureReleases | boolean | Optional | Can configure releases. |
canConfigureServiceLevelCorrectionWindows | boolean | Optional | Can configure service level correction windows. |
canConfigureServiceLevelSmartAlerts | boolean | Optional | Can configure service level smart alerts. |
canConfigureServiceLevels | boolean | Optional | Can configure service levels. |
canConfigureServiceMapping | boolean | Optional | Can configure service mapping. |
canConfigureSessionSettings | boolean | Optional | Can configure session settings. |
canConfigureSubtraces | boolean | Optional | Can configure subtraces. |
canConfigureSyntheticCredentials | boolean | Optional | Can configure synthetic credentials. |
canConfigureSyntheticLocations | boolean | Optional | Can configure synthetic locations. |
canConfigureSyntheticTests | boolean | Optional | Can configure synthetic tests. |
canConfigureTeams | boolean | Optional | Can configure teams. |
canConfigureUsers | boolean | Optional | Can configure users. |
canConfigureWebsiteSmartAlerts | boolean | Optional | Can configure website smart alerts. |
canCreateHeapDump | boolean | Optional | Can create heap dump. |
canCreatePublicCustomDashboards | boolean | Optional | Can create public custom dashboards. |
canCreateThreadDump | boolean | Optional | Can create thread dump. |
canDeleteAutomationActionHistory | boolean | Optional | Can delete automation action history. |
canDeleteLogs | boolean | Optional | Can delete logs. |
canEditAllAccessibleCustomDashboards | boolean | Optional | Can edit all accessible custom dashboards. |
canInstallNewAgents | boolean | Optional | Can install new agents. |
canInvokeAlertChannel | boolean | Optional | Can invoke alert channel. |
canManuallyCloseIssue | boolean | Optional | Can manually close issue. |
canRunAutomationActions | boolean | Optional | Can run automation actions. |
canUseSyntheticCredentials | boolean | Optional | Can use synthetic credentials. |
canViewAccountAndBillingInformation | boolean | Optional | Can view account and billing information. |
canViewAuditLog | boolean | Optional | Can view audit log. |
canViewBizAlerts | boolean | Optional | Can view biz alerts. |
canViewBusinessActivities | boolean | Optional | Can view business activities. |
canViewBusinessProcessDetails | boolean | Optional | Can view business process details. |
canViewBusinessProcesses | boolean | Optional | Can view business processes. |
canViewLogVolume | boolean | Optional | Can view log volume. |
canViewLogs | boolean | Optional | Can view logs. |
canViewSyntheticLocations | boolean | Optional | Can view synthetic locations. |
canViewSyntheticTestResults | boolean | Optional | Can view synthetic test results. |
canViewSyntheticTests | boolean | Optional | Can view synthetic tests. |
canViewTraceDetails | boolean | Optional | Can view trace details. |
limitedAiGatewayScope | boolean | Optional | Restrict token to AI Gateway scope. |
limitedAlertChannelsScope | boolean | Optional | Restrict token to alert channels scope. |
limitedApplicationsScope | boolean | Optional | Restrict token to applications scope. |
limitedAutomationScope | boolean | Optional | Restrict token to automation scope. |
limitedBizOpsScope | boolean | Optional | Restrict token to biz ops scope. |
limitedGenAIScope | boolean | Optional | Restrict token to gen AI scope. |
limitedInfrastructureScope | boolean | Optional | Restrict token to infrastructure scope. |
limitedKubernetesScope | boolean | Optional | Restrict token to kubernetes scope. |
limitedLinuxKVMHypervisorScope | boolean | Optional | Restrict token to linux KVM hypervisor scope. |
limitedLogsScope | boolean | Optional | Restrict token to logs scope. |
limitedMobileAppsScope | boolean | Optional | Restrict token to mobile apps scope. |
limitedNutanixScope | boolean | Optional | Restrict token to nutanix scope. |
limitedOpenstackScope | boolean | Optional | Restrict token to openstack scope. |
limitedPcfScope | boolean | Optional | Restrict token to PCF (Pivotal Cloud Foundry) scope. |
limitedPhmcScope | boolean | Optional | Restrict token to PowerVM HMC scope. |
limitedPvcScope | boolean | Optional | Restrict token to PVC scope. |
limitedServiceLevelScope | boolean | Optional | Restrict token to service level scope. |
limitedSyntheticsScope | boolean | Optional | Restrict token to synthetics scope. |
limitedVsphereScope | boolean | Optional | Restrict token to vsphere scope. |
limitedWebsitesScope | boolean | Optional | Restrict token to websites scope. |
limitedWindowsHypervisorScope | boolean | Optional | Restrict token to windows hypervisor scope. |
limitedXenServerScope | boolean | Optional | Restrict token to XenServer scope. |
limitedZhmcScope | boolean | Optional | Restrict token to zHMC scope. |
id.
instana_application_alert_config
An Instana application smart alert (ApplicationAlertConfig) evaluates a rule (erroneous-call-rate, latency, throughput, …) over an application perspective’s calls and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/application-alert-configs |
| Read | GET | /api/events/settings/application-alert-configs/{id} |
| List | GET | /api/events/settings/application-alert-configs |
| Update | POST | /api/events/settings/application-alert-configs/{id} |
| Delete | DELETE | /api/events/settings/application-alert-configs/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
alertChannelIds | array<string> | Required | Ids of the alerting channels triggered events route to. references on this array field DOES produce a DAG edge (build.rs edges any field with a references block, scalar or array) → channels are ordered before this alert and each ${instana_alerting_channel.<ref>.id} element resolves. |
applications | object | Optional | Scoping map keyed by application-perspective id. OMIT this field and scope via the top-level applicationId instead: the live API requires exactly one entry whose KEY equals the value’s applicationId, map keys cannot carry ${…} references (the resolver templates values only), and the server derives this map from applicationId automatically. Excluded from state_fields (server-derived). |
applicationId | string | Optional | Optional single-perspective scope. Carries the app-alert -> perspective DAG edge (the top-level scalar the graph can edge, unlike the applications map). Optional: the example may instead scope via the applications map. |
boundaryScope | string | Required | Trace boundary scope the rule evaluates over. |
evaluationType | string | Required | Granularity at which the rule is evaluated. |
granularity | integer | Required | Evaluation window in milliseconds. |
tagFilterExpression | object | Required | Tag-filter selector narrowing which calls the rule applies to. Server-normalized on read, so excluded from state_fields. |
timeThreshold | object | Required | ApplicationTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
customPayloadFields | array<object> | Required | Custom key/value fields attached to triggered events (may be an empty array). Server-normalized on read, so excluded from state_fields. |
rule | object | Optional | Single ApplicationAlertRule (throughput / errorRate / latency / …). Server-normalized on read, so excluded from state_fields. |
rules | array<object> | Optional | Multi-rule variant (RuleWithThreshold entries). Server-normalized on read, so excluded from state_fields. |
threshold | object | Optional | Static/adaptive threshold for the rule. Excluded from state_fields. |
severity | integer | Optional | Event severity (server may default). Optional → excluded from state_fields. REQUIRED by the live API whenever rule+threshold are used (422 “threshold, rule and severity has to be defined when rules field is not provided”), the config-level required: false stays, since the multi-rules variant doesn’t need it. |
gracePeriod | integer | Optional | Grace period in ms before re-triggering. Optional → excluded from state_fields. |
triggering | boolean | Optional | Whether the alert also opens an incident. Optional → excluded from state_fields. |
includeInternal | boolean | Optional | Include internal calls in evaluation. |
includeSynthetic | boolean | Optional | Include synthetic calls in evaluation. |
id.
Depends on
alertChannelIds→instana_alerting_channel(required)applicationId→instana_application_perspective(optional)
instana_application_perspective
An Instana application perspective is a saved, filter-defined view of an application’s traces and calls, the top-level unit Instana groups service monitoring, smart alerts, and SLOs around.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/application-monitoring/settings/application |
| Read | GET | /api/application-monitoring/settings/application/{id} |
| List | GET | /api/application-monitoring/settings/application |
| Update | PUT | /api/application-monitoring/settings/application/{id} |
| Delete | DELETE | /api/application-monitoring/settings/application/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
label | string | Required | Application-perspective display name; Instana’s human identifier for the perspective (matched on during discovery). |
boundaryScope | string | Required | Trace boundary scope for the perspective. |
scope | string | Required | Downstream inclusion scope for the perspective. |
tagFilterExpression | object | Optional | Tag-filter selector defining which calls belong to this perspective, the modern selector; never the deprecated matchSpecification. Writable on create; server-normalized on read, so excluded from state_fields to avoid phantom drift. |
accessRules | array<object> | Required | Access rules controlling perspective visibility. Writable on create; server-enriched on read, so excluded from state_fields to avoid phantom drift. |
id.
Consumers
instana_application_alert_config→.applicationId(optional)
instana_automation_action
An Instana automation action (Action) is a runnable script/HTTP/etc.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/automation/actions |
| Read | GET | /api/automation/actions/{id} |
| List | GET | /api/automation/actions |
| Delete | DELETE | /api/automation/actions/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Action display name; the identity discovery matches on. |
type | string | Optional | Action type (read-model; e.g. script/http). Optional -> excluded from state_fields. |
description | string | Optional | Free-text action description (read-model). |
id.
instana_automation_policy
An Instana automation policy (Policy) binds a trigger (a customEvent / builtinEvent / smart-alert type, referencing an event spec by id) to one or more type configurations that run automation actions or workflows.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/automation/policies |
| Read | GET | /api/automation/policies/{id} |
| List | GET | /api/automation/policies |
| Update | PUT | /api/automation/policies/{id} |
| Delete | DELETE | /api/automation/policies/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Policy display name; Instana’s human identifier (matched on during discovery). |
description | string | Optional | Free-text policy description. |
tags | array<string> | Optional | Policy tags. |
trigger | object | Required | Trigger selector (type = customEvent / builtinEvent / *SmartAlert / schedule; id = the referenced event-spec id, a NESTED ref that makes no DAG edge, order with depends_on and resolve with ${…}). Server-normalized on read, so excluded from state_fields. |
typeConfigurations | array<object> | Required | TypeConfiguration entries (name = automatic/manual + a runnable that references an automation action or workflow by NESTED id, no DAG edge; resolve with ${…}). Server-normalized on read, so excluded from state_fields. |
id.
instana_builtin_event_spec
An Instana BUILT-IN event specification (BuiltInEventSpecification) is a shipped, catalog-defined event rule.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/event-specifications/built-in |
| Read | GET | /api/events/settings/event-specifications/built-in/{id} |
| List | GET | /api/events/settings/event-specifications/built-in |
| Update | POST | /api/events/settings/event-specifications/built-in/{id} |
| Delete | DELETE | /api/events/settings/event-specifications/built-in/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | The built-in event id (user-supplied; the adopt key + get_by_id id_source). Pick it from GET /api/events/settings/event-specifications/built-in. |
enabled | boolean | Optional | Desired enabled state (default true). The only writable field; converged via POST /{id}/enable | /{id}/disable by BuiltinEventSpecHandler. |
name | string | Optional | Built-in display name (read-model). Optional -> excluded from state_fields. |
description | string | Optional | Built-in description (read-model). Optional -> excluded from state_fields. |
severity | integer | Optional | Event severity (read-model). Optional -> excluded from state_fields. |
triggering | boolean | Optional | Whether the event also opens an incident (read-model). Optional -> excluded from state_fields. |
instana_custom_dashboard
An Instana custom dashboard (CustomDashboard) is a titled board of widgets with access rules.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/custom-dashboard |
| Read | GET | /api/custom-dashboard/{id} |
| List | GET | /api/custom-dashboard |
| Update | PUT | /api/custom-dashboard/{id} |
| Delete | DELETE | /api/custom-dashboard/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Required | Dashboard title; Instana’s human identifier (matched on during discovery). |
accessRules | array<object> | Required | AccessRule entries (accessType READ/READ_WRITE + relationType USER/API_TOKEN/ROLE/TEAM/GLOBAL). Server-normalized on read, so excluded from state_fields. |
widgets | array<object> | Required | Widget entries (id + type + config + layout). Excluded from state_fields: live-probed 2026-07-14, the backend’s PUT does not apply content edits to an existing widget id (see the resource description above) — comparing this field would report an Update that can never converge. |
id.
instana_custom_event_spec
An Instana custom event specification raises events (and optionally incidents, via triggering) when a rule over an entity type’s metrics matches, threshold breaches, entity verification, entity count, and the other AbstractRule variants.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/event-specifications/custom |
| Read | GET | /api/events/settings/event-specifications/custom/{id} |
| List | GET | /api/events/settings/event-specifications/custom |
| Update | PUT | /api/events/settings/event-specifications/custom/{id} |
| Delete | DELETE | /api/events/settings/event-specifications/custom/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Event-specification display name; Instana’s human identifier for the spec (matched on during discovery). |
entityType | string | Required | Plugin/entity type the rules evaluate against (e.g. host, ibmMqQueue, ibmiActiveJobsInfo). Metric rules fire per entity of this type. |
rules | array<object> | Required | 1-5 AbstractRule objects (discriminated by ruleType: threshold, system, entity_verification, entity_count, …). A threshold rule carries severity (5 warning / 10 critical), metricName (or metricPattern), aggregation, conditionOperator, conditionValue, and window (ms). Combined with ruleLogicalOperator when more than one. |
description | string | Optional | Free-text description shown on the event. |
query | string | Optional | Optional Dynamic Focus query scoping which entities the rules are evaluated on (e.g. entity.ibmmq.queue.name:"CC.PAYMENTS.IN"). |
ruleLogicalOperator | string | Optional | How multiple rules combine (AND / OR). |
enabled | boolean | Optional | Whether the specification is active (server default true). |
triggering | boolean | Optional | Whether a matching event also raises an incident (server default false). |
expirationTime | integer | Optional | Grace period in ms before an open event auto-closes; multiple of 1000 in [5000, 86400000]. Optional in the OpenAPI spec but REQUIRED by self-hosted 1.11.0 backends (a missing value 422s as “grace period … invalid”). |
transientEventEnabled | boolean | Optional | Emit transient events for short-lived violations (server default). |
transientEventAlertMuted | boolean | Optional | Mute alerting on transient events (server default). |
transientEventThreshold | integer | Optional | Threshold (ms) below which a violation counts as transient (server default). |
id.
Consumers
instana_alert→.eventFilteringConfiguration.ruleIds(optional)
instana_custom_payload_configuration
The Instana GLOBAL custom payload configuration (CustomPayloadConfiguration), a tenant-wide set of custom key/type fields attached to every triggered event.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/custom-payload-configurations |
| Read | GET | /api/events/settings/custom-payload-configurations |
| Delete | DELETE | /api/events/settings/custom-payload-configurations |
| Field | Type | Required | Description |
|---|---|---|---|
fields | array<object> | Required | The tenant-global custom payload fields (CustomPayloadField entries: required key + type, e.g. staticString / dynamic tag). PUT replaces the whole set. Server round-trips it with an added version; kept out of state_fields (see the Phase-3 probe note above). |
id.
instana_infra_alert_config
An Instana infrastructure smart alert (InfraAlertConfig) evaluates a rule (entityType + metricName + aggregation, narrowed by a tag filter) over infrastructure entities and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/infra-alert-configs |
| Read | GET | /api/events/settings/infra-alert-configs/{id} |
| List | GET | /api/events/settings/infra-alert-configs |
| Update | POST | /api/events/settings/infra-alert-configs/{id} |
| Delete | DELETE | /api/events/settings/infra-alert-configs/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
alertChannelIds | array<string> | Optional | Ids of the alerting channels triggered events route to (optional in the infra-alert API). references on this array field produces a DAG edge; each ${instana_alerting_channel.<ref>.id} element resolves at apply. |
granularity | integer | Required | Evaluation window in milliseconds. |
groupBy | array<string> | Required | Metric grouping keys (required by the InfraAlertConfig contract). Live content is confirmed in Phase 3; may be an empty array. |
tagFilterExpression | object | Required | Tag-filter selector narrowing which infrastructure entities the rule applies to. Server-normalized on read, so excluded from state_fields. |
timeThreshold | object | Required | InfraTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
customPayloadFields | array<object> | Required | Custom key/value fields attached to triggered events (may be an empty array). Server-normalized on read, so excluded from state_fields. |
rule | object | Optional | Single InfraAlertRule (entityType + metricName + aggregation). Server-normalized on read, so excluded from state_fields. |
rules | array<object> | Optional | Multi-rule variant. Server-normalized on read, so excluded from state_fields. |
threshold | object | Optional | Static/adaptive threshold for the rule. Excluded from state_fields. |
severity | integer | Optional | Event severity (server may default). Optional -> excluded from state_fields. |
gracePeriod | integer | Optional | Grace period in ms before re-triggering. Optional -> excluded from state_fields. |
evaluationType | string | Optional | How the rule is evaluated across entities. Optional -> excluded from state_fields. |
triggering | boolean | Optional | Whether the alert also opens an incident. Optional -> excluded from state_fields. |
id.
Depends on
alertChannelIds→instana_alerting_channel(optional)
instana_log_alert_config
An Instana log smart alert (LogAlertConfig) evaluates a rule over log events (narrowed by a tag filter) and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/global-alert-configs/logs |
| Read | GET | /api/events/settings/global-alert-configs/logs/{id} |
| List | GET | /api/events/settings/global-alert-configs/logs |
| Update | POST | /api/events/settings/global-alert-configs/logs/{id} |
| Delete | DELETE | /api/events/settings/global-alert-configs/logs/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
alertChannelIds | array<string> | Optional | Ids of the alerting channels triggered events route to (optional in the log-alert API). references on this array field produces a DAG edge; each ${instana_alerting_channel.<ref>.id} element resolves at apply. |
granularity | integer | Required | Evaluation window in milliseconds. |
tagFilterExpression | object | Required | Tag-filter selector narrowing which log events the rule applies to. Server-normalized on read, so excluded from state_fields. |
timeThreshold | object | Required | LogTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
groupBy | array<string> | Optional | Metric grouping keys (OPTIONAL for LogAlertConfig, unlike infra). May be an empty array. Excluded from state_fields. |
customPayloadFields | array<object> | Optional | Custom key/value fields attached to triggered events (OPTIONAL for LogAlertConfig, unlike infra; may be an empty array). Excluded from state_fields. |
rules | array<object> | Optional | LogAlertRule entries (with thresholds). Server-normalized on read, so excluded from state_fields. |
threshold | object | Optional | Static/adaptive threshold for the rule. Excluded from state_fields. |
alertChannels | object | Optional | Legacy severity->channel-ids map form. Optional -> excluded from state_fields. |
severity | integer | Optional | Event severity (server may default). Optional -> excluded from state_fields. |
gracePeriod | integer | Optional | Grace period in ms before re-triggering. Optional -> excluded from state_fields. |
id.
Depends on
alertChannelIds→instana_alerting_channel(optional)
instana_maintenance_window
An Instana maintenance window (MaintenanceConfigV2) suppresses alerting for the entities matched by its query during a scheduled window.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/settings/v2/maintenance/{id} |
| Read | GET | /api/settings/v2/maintenance/{id} |
| List | GET | /api/settings/v2/maintenance |
| Update | PUT | /api/settings/v2/maintenance/{id} |
| Delete | DELETE | /api/settings/v2/maintenance/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
id | string | Required | CLIENT-SUPPLIED maintenance-window id. Required in the MaintenanceConfigV2 PUT body AND the get_by_id discovery id_source (delete.rs/update.rs substitute it into /{id}). Immutable, a different id is a different window. |
name | string | Required | Maintenance-window display name. |
query | string | Required | Instana entity query selecting the entities whose alerts are suppressed. |
scheduling | object | Required | MaintenanceConfigScheduling (start, duration, recurrence, …). Server-normalized on read (derives occurrence), so excluded from state_fields to avoid phantom Update{} drift. |
paused | boolean | Optional | Whether the window is paused (server default). Optional → excluded from state_fields. |
retriggerOpenAlertsEnabled | boolean | Optional | Re-trigger open alerts when the window ends (server default). Optional → excluded from state_fields. |
tagFilterExpression | object | Optional | Optional tag-filter selector further narrowing the window’s scope. Server-normalized on read, so excluded from state_fields. |
tagFilterExpressionEnabled | boolean | Optional | Whether the tag-filter expression is applied (server default). Optional → excluded from state_fields. |
instana_rbac_group
An Instana RBAC access group (ApiGroup) binds members to a permission set (ApiPermissionSet: a permissions string array plus optional scope filters).
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/settings/rbac/groups |
| Read | GET | /api/settings/rbac/groups/{id} |
| List | GET | /api/settings/rbac/groups |
| Update | PUT | /api/settings/rbac/groups/{id} |
| Delete | DELETE | /api/settings/rbac/groups/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Group display name; Instana’s human identifier (matched on during discovery). |
description | string | Optional | Group description (the backend returns it on read; the writable scalar used for the K4 update round-trip). If the live round-trip proves it does not persist, narrow state_fields to [name] and cite K1-K3,K5 for this kind. |
members | array<object> | Required | ApiMember entries (userId/email/name). Server-normalized on read (adds display name), so excluded from state_fields. May be an empty array; if the backend rejects empty members, supply a userId via ${env:} in the example. |
permissionSet | object | Required | ApiPermissionSet (permissions string array + scope filters). Server- defaulted/normalized on read, so excluded from state_fields to avoid drift. |
id.
instana_rbac_team
An Instana RBAC team (ApiTeam) groups members under a scope for scoped access.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/settings/rbac/teams |
| Read | GET | /api/settings/rbac/teams/{id} |
| List | GET | /api/settings/rbac/teams |
| Update | PUT | /api/settings/rbac/teams/{id} |
| Delete | DELETE | /api/settings/rbac/teams/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
tag | string | Required | Team tag; Instana’s human identifier for a team (matched on during discovery, there is no name). |
info | object | Optional | ApiTeamInfo ({description}). Small writable object; in state_fields so the K4 update round-trip can edit info.description. If it phantom-drifts on read, narrow state_fields to [tag] and cite K1-K3,K5 for this kind. |
members | array<object> | Optional | ApiTeamMember entries. Server-normalized on read, so excluded from state_fields. |
scope | object | Optional | ApiTeamScope (access-permission + filter arrays). Server-normalized on read, so excluded from state_fields. |
id.
instana_release
An Instana release (Release) marks a deployment boundary on the timeline, optionally scoped to applications and services, so events and analytics can be correlated to a rollout.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/releases |
| Read | GET | /api/releases/{id} |
| List | GET | /api/releases |
| Update | PUT | /api/releases/{id} |
| Delete | DELETE | /api/releases/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Release display name; Instana’s human identifier (matched on during discovery). |
start | integer | Required | Release start time in epoch milliseconds (required by the Release contract). Live-probed 2026-07-14: the backend rejects a start more than 10 minutes in the future (422 “Start must not be more than 10 minutes in the future”) — opposite of instana_maintenance_window’s “must not be in the past” rule. Any past epoch is accepted indefinitely, so committed examples use a fixed past timestamp (a release marks a deployment that already happened), not a future one. |
applications | array<object> | Optional | ApplicationScope entries ({name}) the release is scoped to. Server- normalized on read (ApplicationScopeWithMetadata), so excluded from state_fields. |
services | array<object> | Optional | ServiceScope entries ({name, scopedTo}) the release is scoped to. Server- normalized on read (ServiceScopeWithMetadata), so excluded from state_fields. |
id.
instana_slo_alert_config
An Instana SLO smart alert (ServiceLevelsAlertConfig) evaluates a rule (status / error-budget / burn-rate) over one or more SLO configs and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/global-alert-configs/service-levels |
| Read | GET | /api/events/settings/global-alert-configs/service-levels/{id} |
| List | GET | /api/events/settings/global-alert-configs/service-levels |
| Update | POST | /api/events/settings/global-alert-configs/service-levels/{id} |
| Delete | DELETE | /api/events/settings/global-alert-configs/service-levels/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
alertChannelIds | array<string> | Required | Ids of the alerting channels triggered events route to. references on this array field produces a DAG edge; each ${instana_alerting_channel.<ref>.id} element resolves at apply. |
sloIds | array<string> | Required | Ids of the SLO configs this alert evaluates. references on this array field produces a DAG edge → SLO configs are ordered before this alert and each ${instana_slo_config.<ref>.id} element resolves at apply. |
rule | object | Required | ServiceLevelsAlertRule (status / error-budget / burn-rate). Server-normalized on read, so excluded from state_fields. |
severity | integer | Required | Event severity (required in the SLO-alert API; round-trips → in state_fields). |
timeThreshold | object | Required | ServiceLevelsTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
customPayloadFields | array<object> | Required | Custom key/value fields attached to triggered events (may be an empty array). Server-normalized on read, so excluded from state_fields. |
threshold | object | Optional | StaticThreshold for the rule. Server-normalized on read, so excluded from state_fields. |
burnRateConfig | array<object> | Optional | Burn-rate window configs. Server-normalized on read, so excluded from state_fields. |
burnRateTimeWindows | object | Optional | Burn-rate time windows. Server-normalized on read, so excluded from state_fields. |
triggering | boolean | Optional | Whether the alert also opens an incident. Optional → excluded from state_fields. |
id.
Depends on
alertChannelIds→instana_alerting_channel(required)sloIds→instana_slo_config(required)
instana_slo_config
An Instana SLO config (SLOConfigWithRBACTag) defines a service-level objective: a target attainment over a time window for a chosen entity and indicator.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/settings/slo |
| Read | GET | /api/settings/slo/{id} |
| List | GET | /api/settings/slo |
| Update | PUT | /api/settings/slo/{id} |
| Delete | DELETE | /api/settings/slo/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | SLO display name; Instana’s human identifier (matched on during discovery). |
target | float | Required | SLO target attainment (fraction, e.g. 0.99). |
tags | array<string> | Required | SLO tags. |
entity | object | Required | SloEntity selector (application/service/endpoint scope). The application id is nested here, so it makes no DAG edge, order with depends_on and resolve the value with ${…} interpolation. Server-normalized on read, so excluded from state_fields to avoid phantom drift. |
indicator | object | Required | ServiceLevelIndicator (availability / latency / custom). Server-normalized on read, so excluded from state_fields to avoid phantom drift. |
timeWindow | object | Required | Rolling or fixed evaluation window. Server-normalized on read, so excluded from state_fields to avoid phantom drift. |
id.
Consumers
instana_slo_alert_config→.sloIds(required)
instana_synthetic_alert_config
An Instana synthetic smart alert (SyntheticAlertConfig) evaluates a rule over one or more synthetic tests’ results and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/global-alert-configs/synthetics |
| Read | GET | /api/events/settings/global-alert-configs/synthetics/{id} |
| List | GET | /api/events/settings/global-alert-configs/synthetics |
| Update | POST | /api/events/settings/global-alert-configs/synthetics/{id} |
| Delete | DELETE | /api/events/settings/global-alert-configs/synthetics/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
alertChannelIds | array<string> | Required | Ids of the alerting channels triggered events route to. references on this array field produces a DAG edge; each ${instana_alerting_channel.<ref>.id} element resolves at apply. |
syntheticTestIds | array<string> | Required | Ids of the synthetic tests this alert evaluates. references on this array field produces a DAG edge → tests are ordered before this alert and each ${instana_synthetic_test.<ref>.id} element resolves at apply. |
rule | object | Required | SyntheticAlertRule (e.g. failure rate). Server-normalized on read, so excluded from state_fields. |
tagFilterExpression | object | Required | Tag-filter selector narrowing which test runs the rule applies to. Server-normalized on read, so excluded from state_fields. |
timeThreshold | object | Required | SyntheticTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
customPayloadFields | array<object> | Required | Custom key/value fields attached to triggered events (may be an empty array). Server-normalized on read, so excluded from state_fields. |
severity | integer | Optional | Event severity (server may default). Optional → excluded from state_fields. |
gracePeriod | integer | Optional | Grace period in ms before re-triggering. Optional → excluded from state_fields. |
id.
Depends on
alertChannelIds→instana_alerting_channel(required)syntheticTestIds→instana_synthetic_test(required)
instana_synthetic_test
An Instana synthetic test (SyntheticTest) runs a scripted or HTTP probe from one or more PoP locations on a schedule.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/synthetics/settings/tests |
| Read | GET | /api/synthetics/settings/tests/{id} |
| List | GET | /api/synthetics/settings/tests |
| Update | PUT | /api/synthetics/settings/tests/{id} |
| Delete | DELETE | /api/synthetics/settings/tests/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
label | string | Required | Synthetic-test display name; Instana’s human identifier (matched on during discovery). |
active | boolean | Required | Whether the test is enabled. |
testFrequency | integer | Required | Run frequency in minutes. |
locations | array<string> | Required | PoP location ids the test runs from. Server-normalized on read, so excluded from state_fields to avoid phantom drift. On self-hosted Standard Edition a deployed PoP id is required (Phase 5 prerequisite). |
configuration | object | Required | SyntheticTypeConfiguration, e.g. {syntheticType: HTTPAction, url, …}. Server-normalized on read, so excluded from state_fields to avoid phantom drift. |
description | string | Optional | Free-text description. |
applicationId | string | Optional | Application perspective to associate results with. |
playbackMode | string | Optional | How multi-location runs are scheduled. |
customProperties | object | Optional | User-defined key/value metadata. Server-normalized on read, so excluded from state_fields to avoid phantom drift. |
id.
Consumers
instana_synthetic_alert_config→.syntheticTestIds(required)
instana_website_alert_config
An Instana website smart alert (WebsiteAlertConfig) evaluates a rule over an end-user-monitored website’s beacons and routes triggered events to alerting channels.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/events/settings/website-alert-configs |
| Read | GET | /api/events/settings/website-alert-configs/{id} |
| List | GET | /api/events/settings/website-alert-configs |
| Update | POST | /api/events/settings/website-alert-configs/{id} |
| Delete | DELETE | /api/events/settings/website-alert-configs/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Smart-alert display name; Instana’s human identifier (matched on during discovery). |
description | string | Required | Alert description shown on triggered events. |
websiteId | string | Required | Id of the website (EUM config) this alert scopes to. references produces the website -> website-alert DAG edge; the Phase 5 example resolves it with ${instana_website_config.<ref>.id} interpolation. |
alertChannelIds | array<string> | Optional | Ids of the alerting channels triggered events route to (optional in the website-alert API). references on this array field produces a DAG edge; each ${instana_alerting_channel.<ref>.id} element resolves at apply. |
granularity | integer | Required | Evaluation window in milliseconds. |
tagFilterExpression | object | Required | Tag-filter selector narrowing which beacons the rule applies to. Server-normalized on read, so excluded from state_fields. |
timeThreshold | object | Required | WebsiteTimeThreshold, how long/often the condition must hold to trigger. Server-normalized on read, so excluded from state_fields. |
customPayloadFields | array<object> | Required | Custom key/value fields attached to triggered events (may be an empty array). Server-normalized on read, so excluded from state_fields. |
rule | object | Optional | Single WebsiteAlertRule. Server-normalized on read, so excluded from state_fields. |
rules | array<object> | Optional | Multi-rule variant. Server-normalized on read, so excluded from state_fields. |
threshold | object | Optional | Static/adaptive threshold for the rule. Excluded from state_fields. |
severity | integer | Optional | Event severity (server may default). Optional → excluded from state_fields. |
gracePeriod | integer | Optional | Grace period in ms before re-triggering. Optional → excluded from state_fields. |
triggering | boolean | Optional | Whether the alert also opens an incident. Optional → excluded from state_fields. |
id.
Depends on
websiteId→instana_website_config(required)alertChannelIds→instana_alerting_channel(optional)
instana_website_config
An Instana website (End-User Monitoring config) is the top-level unit Instana groups browser/EUM beacons and website smart alerts around.
Runs on SaaS + Software · ID field id
Endpoints
| Operation | Method | Path |
|---|---|---|
| Create | POST | /api/website-monitoring/config |
| Read | GET | /api/website-monitoring/config/{id} |
| List | GET | /api/website-monitoring/config |
| Update | PUT | /api/website-monitoring/config/{id} |
| Delete | DELETE | /api/website-monitoring/config/{id} |
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Required | Website display name; Instana’s human identifier (matched on during discovery) and the value WebsiteConfigHandler passes as the ?name= query param on create. |
id, appName.
Consumers
instana_website_alert_config→.websiteId(required)

