{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/amazon-cloudwatch/json-schema/amazon-cloudwatch-get-integration-response-schema.json",
  "title": "GetIntegrationResponse",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/amazon-cloudwatch-integration-api-openapi.yml#/components/schemas/GetIntegrationResponse",
  "type": "object",
  "properties": {
    "integrationName": {
      "type": "string",
      "description": "The name of the integration."
    },
    "integrationType": {
      "type": "string",
      "enum": [
        "OPENSEARCH"
      ],
      "description": "The type of integration. Integrations with OpenSearch Service have the type OPENSEARCH."
    },
    "integrationStatus": {
      "type": "string",
      "enum": [
        "PROVISIONING",
        "ACTIVE",
        "FAILED"
      ],
      "description": "The current status of this integration."
    },
    "integrationDetails": {
      "$ref": "#/$defs/IntegrationDetails"
    }
  },
  "$defs": {
    "IntegrationDetails": {
      "type": "object",
      "properties": {
        "openSearchIntegrationDetails": {
          "$ref": "#/$defs/OpenSearchIntegrationDetails"
        }
      },
      "description": "Exactly one member is set."
    },
    "OpenSearchApplication": {
      "type": "object",
      "properties": {
        "applicationEndpoint": {
          "type": "string",
          "description": "The endpoint of the application."
        },
        "applicationArn": {
          "type": "string",
          "description": "The Amazon Resource Name (ARN) of the application."
        },
        "applicationId": {
          "type": "string",
          "description": "The ID of the application."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchCollection": {
      "type": "object",
      "properties": {
        "collectionEndpoint": {
          "type": "string",
          "description": "The endpoint of the collection."
        },
        "collectionArn": {
          "type": "string",
          "description": "The ARN of the collection."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchDataAccessPolicy": {
      "type": "object",
      "properties": {
        "policyName": {
          "type": "string",
          "description": "The name of the data access policy."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchDataSource": {
      "type": "object",
      "properties": {
        "dataSourceName": {
          "type": "string",
          "description": "The name of the OpenSearch Service data source."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchEncryptionPolicy": {
      "type": "object",
      "properties": {
        "policyName": {
          "type": "string",
          "description": "The name of the encryption policy."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchIntegrationDetails": {
      "type": "object",
      "properties": {
        "dataSource": {
          "$ref": "#/$defs/OpenSearchDataSource"
        },
        "application": {
          "$ref": "#/$defs/OpenSearchApplication"
        },
        "collection": {
          "$ref": "#/$defs/OpenSearchCollection"
        },
        "workspace": {
          "$ref": "#/$defs/OpenSearchWorkspace"
        },
        "encryptionPolicy": {
          "$ref": "#/$defs/OpenSearchEncryptionPolicy"
        },
        "networkPolicy": {
          "$ref": "#/$defs/OpenSearchNetworkPolicy"
        },
        "accessPolicy": {
          "$ref": "#/$defs/OpenSearchDataAccessPolicy"
        },
        "lifecyclePolicy": {
          "$ref": "#/$defs/OpenSearchLifecyclePolicy"
        }
      }
    },
    "OpenSearchLifecyclePolicy": {
      "type": "object",
      "properties": {
        "policyName": {
          "type": "string",
          "description": "The name of the lifecycle policy."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchNetworkPolicy": {
      "type": "object",
      "properties": {
        "policyName": {
          "type": "string",
          "description": "The name of the network policy."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    },
    "OpenSearchResourceStatus": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "ACTIVE",
            "NOT_FOUND",
            "ERROR"
          ],
          "description": "The current status of this resource."
        },
        "statusMessage": {
          "type": "string",
          "description": "A message with additional information about the status of this resource."
        }
      }
    },
    "OpenSearchWorkspace": {
      "type": "object",
      "properties": {
        "workspaceId": {
          "type": "string",
          "description": "The ID of this workspace."
        },
        "status": {
          "$ref": "#/$defs/OpenSearchResourceStatus"
        }
      }
    }
  }
}