ThousandEyes Cloud Insights Integrations API

The Cloud Insights Integrations API lets you programmatically manage **AWS** and **Azure** monitoring integrations in ThousandEyes. ### What You Can Do - **List** all integrations. - **Get** details for a specific integration. - **Delete** an existing integration. - **Create** integrations for: - **AWS**: inventory monitoring and flow logs monitoring. - **Azure**: inventory monitoring and flow logs monitoring. - **Update** integrations for: - **Azure**: inventory monitoring and flow logs monitoring. - **Fetch AWS IAM policy documents** required to configure AWS inventory and flow-logs integrations. - **Retrieve** the current AWS and Azure integration policy settings to understand which AWS and Azure resource groups, AWS regions, Azure subscription rules are enabled and whether CloudTrail is enabled for Cloud Insights for inventory monitoring. - **Update** policy settings to change...

OpenAPI Specification

thousandeyes-cloud-insights-integrations-openapi.yml Raw ↑
openapi: 3.0.1
security:
- BearerAuth: []
servers:
- description: ThousandEyes API production URL
  url: https://api.thousandeyes.com/v7
info:
  version: 7.0.100
  title: Cloud Insights Integrations API
  description: "**Note:** All Cloud Insights APIs are not available for ThousandEyes for Government instance.\n\nThe Cloud\
    \ Insights Integrations API lets you programmatically manage **AWS** and **Azure** monitoring integrations in ThousandEyes.\n\
    \n\n### What You Can Do\n\n- **List** all integrations.\n\n- **Get** details for a specific integration.\n\n- **Delete**\
    \ an existing integration.\n\n- **Create** integrations for:\n\n  - **AWS**: inventory monitoring and flow logs monitoring.\n\
    \  \n  - **Azure**: inventory monitoring and flow logs monitoring.\n\n- **Update** integrations for:\n\n  - **Azure**:\
    \ inventory monitoring and flow logs monitoring.\n  \n- **Fetch AWS IAM policy documents** required to configure AWS inventory\
    \ and flow-logs integrations.\n\n- **Retrieve** the current AWS and Azure integration policy settings to understand which\
    \ AWS and Azure resource groups, AWS regions, Azure subscription rules are enabled and whether CloudTrail is enabled for\
    \ Cloud Insights for inventory monitoring.\n\n- **Update** policy settings to change the approved AWS resource groups,\
    \ AWS regions, and Azure subscription rules that ThousandEyes should inventory.\n\n\n### Scope and Tenancy\n\nAll operations\
    \ are scoped to the authenticated account group. Responses include only resources associated with that group.\n\n\n###\
    \ Payloads and formats\n\n- **Requests:** `application/json`\n\n- **Responses:** primarily `application/hal+json` for\
    \ resource representations and `application/json` for policy documents.\n\n- HAL responses include `_links` with a `self`\
    \ relation for direct navigation.\n\n\n### Integration Types\n\n- **Inventory monitoring**\n\n  - AWS: reads inventory\
    \ and network topology via read-only IAM permissions.\n  \n  - Azure: authenticates with a Service Principal to read inventory\
    \ and network topology.\n  \n- **Flow logs monitoring**\n\n  - AWS: reads flow logs from S3 buckets and uses SNS for notifications.\n\
    \  \n  - Azure: reads flow logs via **Service Bus Queue** (`serviceBusQueueUrl`).\n  \n\n### Policy Helpers (AWS)\n\n\
    Dedicated endpoints return **Trusted Policy**, **Permissions Policy**, and **SNS Topic Access Policy** documents to simplify\
    \ role setup for inventory and flow logs integrations.\n\n\n### Notes\n\n- All example values in this specification are\
    \ **fictitious**.\n\n\nFor more information about Cloud Insights, see [Cloud Insights](https://docs.thousandeyes.com/product-documentation/cloud-insights).\n"
  x-provenance:
    method: harvested
    authored_by: Cisco ThousandEyes
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    provider_published: true
    source_host: pubhub.devnetcloud.com
    note: 27 OpenAPI 3.0 documents (26 per-area plus a unified 326-operation document) served anonymously from Cisco's DevNet
      CDN. api.thousandeyes.com itself 401s every path, so the contract is public while the API host is gated.
  x-evidence:
  - type: source
    url: https://pubhub.devnetcloud.com/media/000-v7-apis/docs/reference/
  - type: source
    url: https://developer.cisco.com/docs/thousandeyes/
tags:
- name: Cloud Insights Integrations
  description: Manage Cloud Insights integrations for AWS and Azure.
- name: Cloud Insights Integration Policy Settings
  description: Manage Cloud Insights integration policy settings for AWS and Azure.
paths:
  /cloud-insights/integration/aws:
    get:
      tags:
      - Cloud Insights Integrations
      summary: List AWS integrations
      operationId: getAllAWSMonitoringIntegrations
      description: Retrieves all AWS inventory and flow logs monitoring integrations configured for the authenticated account
        group in ThousandEyes.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: 'The response is an array of integration objects, where each object represents either an Inventory
            Monitoring or Flow Logs Monitoring integration. Each integration includes metadata such as: id — the unique identifier
            of the integration; name — the user-defined name of the integration; roleArn — the AWS IAM role ARN that ThousandEyes
            assumes to access your AWS resources; externalId — the external identifier used for secure cross-account role
            assumption; monitoringType — specifies whether the integration monitors AWS inventory (inventory-monitoring) or
            flow logs (flow-logs-monitoring); snsTopicsArns — a list of SNS topic ARNs used for flow logs monitoring (only
            present for flow logs monitoring integrations); links — HAL-style link relations that provide the "self" URL for
            retrieving integration details. This endpoint can be used to: audit all existing AWS integrations configured for
            Cloud Insights, identify which integrations are set up for inventory versus flow logs monitoring, and retrieve
            integration IDs for further API operations such as inspection (GET /cloud-insights/integration/aws/{integrationId})
            or deletion (DELETE). The response is returned as a JSON array conforming to the AwsMonitoringIntegration schema.

            '
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringIntegrations'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/{integrationId}:
    get:
      tags:
      - Cloud Insights Integrations
      summary: Get AWS integration
      operationId: getAWSMonitoringIntegration
      description: Retrieves details for a specific AWS inventory or flow logs monitoring integration associated with the
        authenticated account group using the unique integration ID.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      responses:
        '200':
          description: 'The response contains a single integration object representing either: AWS inventory monitoring integration
            or AWS flow logs monitoring integration. Each integration includes metadata that defines its configuration: id
            — the unique identifier of the integration; name — the user-defined name of the integration; roleArn — the AWS
            IAM role ARN that ThousandEyes assumes to access your AWS resources; externalId — the external identifier used
            for secure cross-account role assumption; monitoringType — identifies whether the integration monitors AWS inventory
            (inventory-monitoring) or flow logs (flow-logs-monitoring); snsTopicsArns — a list of SNS topic ARNs associated
            with flow logs monitoring (only present for flow-logs-monitoring integrations); links — HAL-style link relations
            that include a self URL pointing to this integration resource. This endpoint is typically used to: retrieve detailed
            configuration information for a specific AWS integration, verify that the integration is correctly set up and
            associated with the expected AWS IAM role, and obtain integration details before performing deletion or troubleshooting
            operations.

            '
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringIntegration'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
    delete:
      tags:
      - Cloud Insights Integrations
      summary: Delete AWS integration
      operationId: deleteAwsMonitoringIntegration
      description: Deletes a specific AWS inventory or flow logs monitoring integration using the AWS integration ID.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      responses:
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/inventory:
    post:
      tags:
      - Cloud Insights Integrations
      summary: Create AWS inventory monitoring integration
      operationId: createAWSInventoryMonitoringIntegration
      description: Creates a new AWS inventory monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AwsInventoryIntegrationRequest'
      responses:
        '201':
          description: AWS inventory monitoring integration created successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/flow-logs:
    post:
      tags:
      - Cloud Insights Integrations
      summary: Create AWS flow logs monitoring integration
      operationId: createAWSFlowLogsMonitoringIntegration
      description: Creates a new AWS flow logs monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AwsFlowLogsIntegrationRequest'
      responses:
        '201':
          description: AWS flow logs monitoring integration created successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/inventory/policies:
    get:
      tags:
      - Cloud Insights Integrations
      summary: Get AWS inventory monitoring IAM policies
      operationId: getAWSInventoryMonitoringIntegrationPolicies
      description: Retrieves the AWS IAM policies required to configure an AWS inventory monitoring integration in JSON string
        format for the authenticated account group.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: 'The response includes a JSON object containing two key policy documents: 1) Trusted Policy — defines
            the trust relationship that allows ThousandEyes to assume a specified AWS IAM role through sts:AssumeRole. This
            policy includes the Principal ARN for ThousandEyes and the required ExternalId condition; 2) Permissions Policy
            — lists the AWS service-level read permissions needed by ThousandEyes Cloud Insights to inventory network resources.
            These permissions cover services such as EC2, VPC, Transit Gateway, Direct Connect, CloudFront, ELB, CloudTrail,
            ECS/EKS, and S3. Use these policies when creating or updating the IAM role that ThousandEyes will use for inventory
            monitoring. The response is returned as a JSON string in the policies object.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringPoliciesJsonString'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/flow-logs/policies:
    get:
      tags:
      - Cloud Insights Integrations
      summary: Get AWS flow logs monitoring IAM policies
      operationId: getAWSFlowlogsMonitoringIntegrationPolicies
      description: Retrieves the AWS IAM policies required to configure an AWS flow logs monitoring integration in JSON string
        format for the authenticated account group.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: 'The response contains a JSON object with the following policy documents under the policies key: 1)
            Trusted Policy — defines the trust relationship that allows ThousandEyes to assume a specified AWS IAM role via
            sts:AssumeRole. This includes the Principal ARN for ThousandEyes and the required ExternalId condition for secure
            cross-account access; 2) Permissions Policy — grants ThousandEyes read-only access to the Amazon S3 buckets where
            flow logs are stored. The policy includes permissions such as s3:GetObject and s3:ListBucket, scoped to the relevant
            flow log S3 bucket ARNs; 3) SNS Topic Access Policy — allows ThousandEyes to subscribe to Amazon SNS topics that
            receive flow log delivery notifications. It also enables the S3 service to publish events to those topics, ensuring
            ThousandEyes can be notified of new log data. This policy includes permissions for both SNS:Subscribe (for ThousandEyes)
            and SNS:Publish (for S3 event notifications). Use these policies when configuring the IAM role and SNS topic permissions
            required by ThousandEyes Cloud Insights to collect and monitor AWS flow logs data across your account. The response
            is returned as a JSON string in the policies object.

            '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AwsMonitoringPoliciesJsonString'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure:
    get:
      tags:
      - Cloud Insights Integrations
      summary: List Azure integrations
      operationId: getAllAzureMonitoringIntegrations
      description: Retrieves all Azure inventory and flow logs monitoring integrations configured for the authenticated account
        group in ThousandEyes.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: 'The response is an array of integration objects, where each object represents either an Azure Inventory
            Monitoring or Azure Flow Logs Monitoring integration. Each integration includes metadata such as: id — the unique
            identifier of the integration; name — the user-defined name of the integration; appId / clientId — the Azure Application
            (client) ID of the service principal used for authentication; password / clientSecret — the client secret value
            associated with the service principal (note: for security reasons, the actual secret is never returned. The response
            includes a masked value ("********") instead); azureTenantId — the Azure Active Directory tenant ID associated
            with the integration; serviceBusQueueUrl — the Service Bus queue URL used for flow logs monitoring (only present
            for azure-flow-logs-monitoring integrations); monitoringType — specifies whether the integration monitors Azure
            resources (azure-inventory-monitoring) or Azure flow logs (azure-flow-logs-monitoring); links — HAL-style link
            relations that provide the "self" URL for retrieving integration details. This endpoint can be used to: audit
            all existing Azure integrations configured for Cloud Insights, identify which integrations are configured for
            inventory versus flow logs monitoring, and retrieve integration IDs for further API operations such as inspection
            (GET /cloud-insights/integration/azure/{integrationId}) or deletion (DELETE). The response is returned as a JSON
            array conforming to the AwsMonitoringIntegration schema.

            '
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegrations'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/{integrationId}:
    get:
      tags:
      - Cloud Insights Integrations
      summary: Get Azure integration
      operationId: getAzureMonitoringIntegration
      description: Retrieves details for a specific Azure inventory or flow logs monitoring integration associated with the
        authenticated account group using the unique integration ID.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      responses:
        '200':
          description: 'The response contains a single integration object representing either: Azure Inventory Monitoring
            integration or Azure Flow Logs Monitoring integration. Each integration includes metadata that defines its configuration:
            id — the unique identifier of the integration; name — the user-defined name of the integration; appId / clientId
            — the Azure Application (client) ID of the service principal used for authentication; password / clientSecret
            — the client secret value associated with the service principal (note: for security reasons, the actual secret
            is never returned. The response includes a masked value ("********") instead; azureTenantId — the Azure Active
            Directory tenant ID for the integration; serviceBusQueueUrl — the Service Bus queue URL used for receiving Flow
            Logs (only present for azure-flow-logs-monitoring integrations); monitoringType — identifies whether the integration
            monitors Azure resources (azure-inventory-monitoring) or flow logs (azure-flow-logs-monitoring); links — HAL-style
            link relations that include a "self" URL pointing to this integration resource. This endpoint is typically used
            to: retrieve detailed configuration information for a specific Azure integration, validate that the integration
            credentials and type (inventory or flow logs) are correctly configured, and obtain integration details before
            performing update or deletion operations.

            '
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegration'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
    delete:
      tags:
      - Cloud Insights Integrations
      summary: Delete Azure integration
      operationId: deleteAzureMonitoringIntegration
      description: Deletes a specific Azure inventory or flow logs monitoring integration using the Azure integration ID.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      responses:
        '204':
          $ref: '#/components/responses/204'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/inventory:
    post:
      tags:
      - Cloud Insights Integrations
      summary: Create Azure inventory monitoring integration
      operationId: createAzureInventoryMonitoringIntegration
      description: Creates a new Azure inventory monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureInventoryIntegrationRequest'
      responses:
        '201':
          description: Azure inventory monitoring integration created successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/flow-logs:
    post:
      tags:
      - Cloud Insights Integrations
      summary: Create Azure flow logs monitoring integration
      operationId: createAzureFlowLogsMonitoringIntegration
      description: Creates a new Azure flow logs monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureFlowLogsIntegrationRequest'
      responses:
        '201':
          description: Azure flow logs monitoring integration created successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/inventory/{integrationId}:
    put:
      tags:
      - Cloud Insights Integrations
      summary: Update Azure inventory monitoring integration
      operationId: updateAzureInventoryMonitoringIntegration
      description: Updates an existing Azure inventory monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureInventoryIntegrationRequest'
      responses:
        '200':
          description: Azure inventory monitoring integration updated successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/flow-logs/{integrationId}:
    put:
      tags:
      - Cloud Insights Integrations
      summary: Update Azure flow logs monitoring integration
      operationId: updateAzureFlowLogsMonitoringIntegration
      description: Updates an existing Azure flow logs monitoring integration.
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      - $ref: '#/components/parameters/IntegrationId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureFlowLogsIntegrationRequest'
      responses:
        '200':
          description: Azure flow logs monitoring integration updated successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureMonitoringIntegration'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/aws/policy/settings:
    get:
      tags:
      - Cloud Insights Integration Policy Settings
      summary: Get AWS integration policy settings
      operationId: getAWSIntegrationPolicySettings
      description: 'Retrieves the AWS integration policy settings for the authenticated account group. Use this endpoint to
        audit which AWS resource group types and AWS regions are enabled, and whether CloudTrail is enabled, for Cloud Insights
        inventory monitoring.

        '
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: AWS integration policy settings returned successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsIntegrationPolicySetting'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
    put:
      tags:
      - Cloud Insights Integration Policy Settings
      summary: Update AWS integration policy settings
      operationId: updateAWSIntegrationPolicySettings
      description: 'Updates the AWS integration policy settings for the authenticated account group. This endpoint lets you
        enable or disable specific AWS resource group types, adjust the set of AWS regions to inventory, and control whether
        CloudTrail is enabled for inventory monitoring.

        '
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AwsIntegrationPolicySetting'
      responses:
        '200':
          description: AWS integration policy settings updated successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AwsIntegrationPolicySetting'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
  /cloud-insights/integration/azure/policy/settings:
    get:
      tags:
      - Cloud Insights Integration Policy Settings
      summary: Get Azure integration policy settings
      operationId: getAzureIntegrationPolicySettings
      description: 'Retrieves the Azure integration policy settings for the authenticated account group. Use this endpoint
        to review which Azure resource group types are monitored and inspect the subscriptions policy rules that gate which
        subscriptions ThousandEyes inventories.

        '
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      responses:
        '200':
          description: Azure integration policy settings returned successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureIntegrationPolicySetting'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
    put:
      tags:
      - Cloud Insights Integration Policy Settings
      summary: Update Azure integration policy settings
      operationId: updateAzureIntegrationPolicySettings
      description: 'Updates the Azure integration policy settings for the authenticated account group. This endpoint lets
        you enable or disable Azure resource group types and manage the subscriptions policy (rules plus default action) that
        controls which Azure subscriptions are inventoried.

        '
      parameters:
      - $ref: '#/components/parameters/AccountGroupId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AzureIntegrationPolicySetting'
      responses:
        '200':
          description: Azure integration policy settings updated successfully.
          content:
            application/hal+json:
              schema:
                $ref: '#/components/schemas/AzureIntegrationPolicySetting'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '429':
          $ref: '#/components/responses/429'
        '500':
          $ref: '#/components/responses/500'
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Bearer authentication token
  parameters:
    IntegrationId:
      name: integrationId
      in: path
      description: The unique ID of the AWS or Azure inventory or flow logs monitoring integration.
      example: e9c3bf02-a48c-4aa8-9e5f-898800d6f569
      required: true
      schema:
        type: string
        format: uuid
    AccountGroupId:
      name: aid
      in: query
      description: A unique identifier associated with your account group. You can retrieve your `AccountGroupId` from the
        `/account-groups` endpoint. Note that you must be assigned to the target account group. Specifying this parameter
        without being assigned to the target account group will result in an error response.
      required: false
      schema:
        type: string
        example: '1234'
  schemas:
    AwsInventoryIntegrationRequest:
      required:
      - name
      - roleArn
      type: object
      properties:
        name:
          type: string
          description: The name of the AWS inventory monitoring integration.
          example: integration name
        roleArn:
          type: string
          description: The ARN of the AWS role to be monitored.
          example: arn:aws:iam::0123456

# --- truncated at 32 KB (49 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/thousandeyes/refs/heads/main/openapi/thousandeyes-cloud-insights-integrations-openapi.yml