# Cloud Integrations ## List Cloud Integrations `magic_cloud_networking.cloud_integrations.list(CloudIntegrationListParams**kwargs) -> SyncSinglePage[CloudIntegrationListResponse]` **get** `/accounts/{account_id}/magic/cloud/providers` List Cloud Integrations (Closed Beta). ### Parameters - `account_id: str` - `cloudflare: Optional[bool]` - `desc: Optional[bool]` - `order_by: Optional[str]` One of ["updated_at", "id", "cloud_type", "name"]. - `status: Optional[bool]` ### Returns - `class CloudIntegrationListResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) page = client.magic_cloud_networking.cloud_integrations.list( account_id="account_id", ) page = page.result[0] print(page.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "cloud_type": "AWS", "friendly_name": "friendly_name", "last_updated": "last_updated", "lifecycle_state": "ACTIVE", "state": "UNSPECIFIED", "state_v2": "UNSPECIFIED", "aws_arn": "aws_arn", "azure_subscription_id": "azure_subscription_id", "azure_tenant_id": "azure_tenant_id", "description": "description", "gcp_project_id": "gcp_project_id", "gcp_service_account_email": "gcp_service_account_email", "status": { "discovery_progress": { "done": 0, "total": 0, "unit": "unit" }, "discovery_progress_v2": { "done": 0, "total": 0, "unit": "unit" }, "last_discovery_status": "UNSPECIFIED", "last_discovery_status_v2": "UNSPECIFIED", "regions": [ "string" ], "credentials_good_since": "credentials_good_since", "credentials_missing_since": "credentials_missing_since", "credentials_rejected_since": "credentials_rejected_since", "discovery_message": "discovery_message", "discovery_message_v2": "discovery_message_v2", "in_use_by": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "client_type": "MAGIC_WAN_CLOUD_ONRAMP", "name": "name" } ], "last_discovery_completed_at": "last_discovery_completed_at", "last_discovery_completed_at_v2": "last_discovery_completed_at_v2", "last_discovery_started_at": "last_discovery_started_at", "last_discovery_started_at_v2": "last_discovery_started_at_v2", "last_updated": "last_updated" } } ], "success": true } ``` ## Read Cloud Integration `magic_cloud_networking.cloud_integrations.get(strprovider_id, CloudIntegrationGetParams**kwargs) -> CloudIntegrationGetResponse` **get** `/accounts/{account_id}/magic/cloud/providers/{provider_id}` Read a Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` - `status: Optional[bool]` ### Returns - `class CloudIntegrationGetResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) cloud_integration = client.magic_cloud_networking.cloud_integrations.get( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(cloud_integration.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "cloud_type": "AWS", "friendly_name": "friendly_name", "last_updated": "last_updated", "lifecycle_state": "ACTIVE", "state": "UNSPECIFIED", "state_v2": "UNSPECIFIED", "aws_arn": "aws_arn", "azure_subscription_id": "azure_subscription_id", "azure_tenant_id": "azure_tenant_id", "description": "description", "gcp_project_id": "gcp_project_id", "gcp_service_account_email": "gcp_service_account_email", "status": { "discovery_progress": { "done": 0, "total": 0, "unit": "unit" }, "discovery_progress_v2": { "done": 0, "total": 0, "unit": "unit" }, "last_discovery_status": "UNSPECIFIED", "last_discovery_status_v2": "UNSPECIFIED", "regions": [ "string" ], "credentials_good_since": "credentials_good_since", "credentials_missing_since": "credentials_missing_since", "credentials_rejected_since": "credentials_rejected_since", "discovery_message": "discovery_message", "discovery_message_v2": "discovery_message_v2", "in_use_by": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "client_type": "MAGIC_WAN_CLOUD_ONRAMP", "name": "name" } ], "last_discovery_completed_at": "last_discovery_completed_at", "last_discovery_completed_at_v2": "last_discovery_completed_at_v2", "last_discovery_started_at": "last_discovery_started_at", "last_discovery_started_at_v2": "last_discovery_started_at_v2", "last_updated": "last_updated" } }, "success": true } ``` ## Create Cloud Integration `magic_cloud_networking.cloud_integrations.create(CloudIntegrationCreateParams**kwargs) -> CloudIntegrationCreateResponse` **post** `/accounts/{account_id}/magic/cloud/providers` Create a new Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `description: Optional[str]` - `forwarded: Optional[str]` ### Returns - `class CloudIntegrationCreateResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) cloud_integration = client.magic_cloud_networking.cloud_integrations.create( account_id="account_id", cloud_type="AWS", friendly_name="friendly_name", ) print(cloud_integration.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "cloud_type": "AWS", "friendly_name": "friendly_name", "last_updated": "last_updated", "lifecycle_state": "ACTIVE", "state": "UNSPECIFIED", "state_v2": "UNSPECIFIED", "aws_arn": "aws_arn", "azure_subscription_id": "azure_subscription_id", "azure_tenant_id": "azure_tenant_id", "description": "description", "gcp_project_id": "gcp_project_id", "gcp_service_account_email": "gcp_service_account_email", "status": { "discovery_progress": { "done": 0, "total": 0, "unit": "unit" }, "discovery_progress_v2": { "done": 0, "total": 0, "unit": "unit" }, "last_discovery_status": "UNSPECIFIED", "last_discovery_status_v2": "UNSPECIFIED", "regions": [ "string" ], "credentials_good_since": "credentials_good_since", "credentials_missing_since": "credentials_missing_since", "credentials_rejected_since": "credentials_rejected_since", "discovery_message": "discovery_message", "discovery_message_v2": "discovery_message_v2", "in_use_by": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "client_type": "MAGIC_WAN_CLOUD_ONRAMP", "name": "name" } ], "last_discovery_completed_at": "last_discovery_completed_at", "last_discovery_completed_at_v2": "last_discovery_completed_at_v2", "last_discovery_started_at": "last_discovery_started_at", "last_discovery_started_at_v2": "last_discovery_started_at_v2", "last_updated": "last_updated" } }, "success": true } ``` ## Update Cloud Integration `magic_cloud_networking.cloud_integrations.update(strprovider_id, CloudIntegrationUpdateParams**kwargs) -> CloudIntegrationUpdateResponse` **put** `/accounts/{account_id}/magic/cloud/providers/{provider_id}` Update a Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `friendly_name: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` ### Returns - `class CloudIntegrationUpdateResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) cloud_integration = client.magic_cloud_networking.cloud_integrations.update( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(cloud_integration.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "cloud_type": "AWS", "friendly_name": "friendly_name", "last_updated": "last_updated", "lifecycle_state": "ACTIVE", "state": "UNSPECIFIED", "state_v2": "UNSPECIFIED", "aws_arn": "aws_arn", "azure_subscription_id": "azure_subscription_id", "azure_tenant_id": "azure_tenant_id", "description": "description", "gcp_project_id": "gcp_project_id", "gcp_service_account_email": "gcp_service_account_email", "status": { "discovery_progress": { "done": 0, "total": 0, "unit": "unit" }, "discovery_progress_v2": { "done": 0, "total": 0, "unit": "unit" }, "last_discovery_status": "UNSPECIFIED", "last_discovery_status_v2": "UNSPECIFIED", "regions": [ "string" ], "credentials_good_since": "credentials_good_since", "credentials_missing_since": "credentials_missing_since", "credentials_rejected_since": "credentials_rejected_since", "discovery_message": "discovery_message", "discovery_message_v2": "discovery_message_v2", "in_use_by": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "client_type": "MAGIC_WAN_CLOUD_ONRAMP", "name": "name" } ], "last_discovery_completed_at": "last_discovery_completed_at", "last_discovery_completed_at_v2": "last_discovery_completed_at_v2", "last_discovery_started_at": "last_discovery_started_at", "last_discovery_started_at_v2": "last_discovery_started_at_v2", "last_updated": "last_updated" } }, "success": true } ``` ## Patch Cloud Integration `magic_cloud_networking.cloud_integrations.edit(strprovider_id, CloudIntegrationEditParams**kwargs) -> CloudIntegrationEditResponse` **patch** `/accounts/{account_id}/magic/cloud/providers/{provider_id}` Update a Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `friendly_name: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` ### Returns - `class CloudIntegrationEditResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) response = client.magic_cloud_networking.cloud_integrations.edit( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(response.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "cloud_type": "AWS", "friendly_name": "friendly_name", "last_updated": "last_updated", "lifecycle_state": "ACTIVE", "state": "UNSPECIFIED", "state_v2": "UNSPECIFIED", "aws_arn": "aws_arn", "azure_subscription_id": "azure_subscription_id", "azure_tenant_id": "azure_tenant_id", "description": "description", "gcp_project_id": "gcp_project_id", "gcp_service_account_email": "gcp_service_account_email", "status": { "discovery_progress": { "done": 0, "total": 0, "unit": "unit" }, "discovery_progress_v2": { "done": 0, "total": 0, "unit": "unit" }, "last_discovery_status": "UNSPECIFIED", "last_discovery_status_v2": "UNSPECIFIED", "regions": [ "string" ], "credentials_good_since": "credentials_good_since", "credentials_missing_since": "credentials_missing_since", "credentials_rejected_since": "credentials_rejected_since", "discovery_message": "discovery_message", "discovery_message_v2": "discovery_message_v2", "in_use_by": [ { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "client_type": "MAGIC_WAN_CLOUD_ONRAMP", "name": "name" } ], "last_discovery_completed_at": "last_discovery_completed_at", "last_discovery_completed_at_v2": "last_discovery_completed_at_v2", "last_discovery_started_at": "last_discovery_started_at", "last_discovery_started_at_v2": "last_discovery_started_at_v2", "last_updated": "last_updated" } }, "success": true } ``` ## Delete Cloud Integration `magic_cloud_networking.cloud_integrations.delete(strprovider_id, CloudIntegrationDeleteParams**kwargs) -> CloudIntegrationDeleteResponse` **delete** `/accounts/{account_id}/magic/cloud/providers/{provider_id}` Delete a Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` ### Returns - `class CloudIntegrationDeleteResponse: …` - `id: str` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) cloud_integration = client.magic_cloud_networking.cloud_integrations.delete( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(cloud_integration.id) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e" }, "success": true } ``` ## Run Discovery for All Integrations `magic_cloud_networking.cloud_integrations.discover_all(CloudIntegrationDiscoverAllParams**kwargs) -> CloudIntegrationDiscoverAllResponse` **post** `/accounts/{account_id}/magic/cloud/providers/discover` Run discovery for all Cloud Integrations in an account (Closed Beta). ### Parameters - `account_id: str` ### Returns - `class CloudIntegrationDiscoverAllResponse: …` - `errors: List[Error]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[ErrorMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[ErrorSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `messages: List[Message]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[MessageMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[MessageSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `success: bool` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) response = client.magic_cloud_networking.cloud_integrations.discover_all( account_id="account_id", ) print(response.errors) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "success": true } ``` ## Run Discovery `magic_cloud_networking.cloud_integrations.discover(strprovider_id, CloudIntegrationDiscoverParams**kwargs) -> CloudIntegrationDiscoverResponse` **post** `/accounts/{account_id}/magic/cloud/providers/{provider_id}/discover` Run discovery for a Cloud Integration (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` - `v2: Optional[bool]` ### Returns - `class CloudIntegrationDiscoverResponse: …` - `errors: List[Error]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[ErrorMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[ErrorSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `messages: List[Message]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[MessageMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[MessageSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `success: bool` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) response = client.magic_cloud_networking.cloud_integrations.discover( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(response.errors) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "success": true } ``` ## Get Cloud Integration Setup Config `magic_cloud_networking.cloud_integrations.initial_setup(strprovider_id, CloudIntegrationInitialSetupParams**kwargs) -> CloudIntegrationInitialSetupResponse` **get** `/accounts/{account_id}/magic/cloud/providers/{provider_id}/initial_setup` Get initial configuration to complete Cloud Integration setup (Closed Beta). ### Parameters - `account_id: str` - `provider_id: str` ### Returns - `CloudIntegrationInitialSetupResponse` - `class McnAwsTrustPolicy: …` - `aws_trust_policy: str` - `item_type: str` - `class McnAzureSetup: …` - `azure_consent_url: str` - `integration_identity_tag: str` - `item_type: str` - `tag_cli_command: str` - `class McnGcpSetup: …` - `integration_identity_tag: str` - `item_type: str` - `tag_cli_command: str` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) response = client.magic_cloud_networking.cloud_integrations.initial_setup( provider_id="182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", account_id="account_id", ) print(response) ``` #### Response ```json { "errors": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "messages": [ { "code": 1001, "message": "message", "documentation_url": "documentation_url", "meta": { "l10n_key": "l10n_key", "loggable_error": "loggable_error", "template_data": {}, "trace_id": "trace_id" }, "source": { "parameter": "parameter", "parameter_value_index": 0, "pointer": "pointer" } } ], "result": { "aws_trust_policy": "aws_trust_policy", "item_type": "item_type" }, "success": true } ``` ## Domain Types ### Cloud Integration List Response - `class CloudIntegrationListResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Cloud Integration Get Response - `class CloudIntegrationGetResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Cloud Integration Create Response - `class CloudIntegrationCreateResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Cloud Integration Update Response - `class CloudIntegrationUpdateResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Cloud Integration Edit Response - `class CloudIntegrationEditResponse: …` - `id: str` - `cloud_type: Literal["AWS", "AZURE", "GOOGLE", "CLOUDFLARE"]` - `"AWS"` - `"AZURE"` - `"GOOGLE"` - `"CLOUDFLARE"` - `friendly_name: str` - `last_updated: str` - `lifecycle_state: Literal["ACTIVE", "PENDING_SETUP", "RETIRED"]` - `"ACTIVE"` - `"PENDING_SETUP"` - `"RETIRED"` - `state: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `state_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `aws_arn: Optional[str]` - `azure_subscription_id: Optional[str]` - `azure_tenant_id: Optional[str]` - `description: Optional[str]` - `gcp_project_id: Optional[str]` - `gcp_service_account_email: Optional[str]` - `status: Optional[Status]` - `discovery_progress: StatusDiscoveryProgress` - `done: int` - `total: int` - `unit: str` - `discovery_progress_v2: StatusDiscoveryProgressV2` - `done: int` - `total: int` - `unit: str` - `last_discovery_status: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `last_discovery_status_v2: Literal["UNSPECIFIED", "PENDING", "DISCOVERING", 2 more]` - `"UNSPECIFIED"` - `"PENDING"` - `"DISCOVERING"` - `"FAILED"` - `"SUCCEEDED"` - `regions: List[str]` - `credentials_good_since: Optional[str]` - `credentials_missing_since: Optional[str]` - `credentials_rejected_since: Optional[str]` - `discovery_message: Optional[str]` - `discovery_message_v2: Optional[str]` - `in_use_by: Optional[List[StatusInUseBy]]` - `id: str` - `client_type: Literal["MAGIC_WAN_CLOUD_ONRAMP"]` - `"MAGIC_WAN_CLOUD_ONRAMP"` - `name: str` - `last_discovery_completed_at: Optional[str]` - `last_discovery_completed_at_v2: Optional[str]` - `last_discovery_started_at: Optional[str]` - `last_discovery_started_at_v2: Optional[str]` - `last_updated: Optional[str]` ### Cloud Integration Delete Response - `class CloudIntegrationDeleteResponse: …` - `id: str` ### Cloud Integration Discover All Response - `class CloudIntegrationDiscoverAllResponse: …` - `errors: List[Error]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[ErrorMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[ErrorSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `messages: List[Message]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[MessageMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[MessageSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `success: bool` ### Cloud Integration Discover Response - `class CloudIntegrationDiscoverResponse: …` - `errors: List[Error]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[ErrorMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[ErrorSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `messages: List[Message]` - `code: Literal[1001, 1002, 1003, 152 more]` - `1001` - `1002` - `1003` - `1004` - `1005` - `1006` - `1007` - `1008` - `1009` - `1010` - `1011` - `1012` - `1013` - `1014` - `1015` - `1016` - `1017` - `1018` - `2001` - `2002` - `2003` - `2004` - `2005` - `2006` - `2007` - `2008` - `2009` - `2010` - `2011` - `2012` - `2013` - `2014` - `2015` - `2016` - `2017` - `2018` - `2019` - `2020` - `2021` - `2022` - `3001` - `3002` - `3003` - `3004` - `3005` - `3006` - `3007` - `4001` - `4002` - `4003` - `4004` - `4005` - `4006` - `4007` - `4008` - `4009` - `4010` - `4011` - `4012` - `4013` - `4014` - `4015` - `4016` - `4017` - `4018` - `4019` - `4020` - `4021` - `4022` - `4023` - `5001` - `5002` - `5003` - `5004` - `102000` - `102001` - `102002` - `102003` - `102004` - `102005` - `102006` - `102007` - `102008` - `102009` - `102010` - `102011` - `102012` - `102013` - `102014` - `102015` - `102016` - `102017` - `102018` - `102019` - `102020` - `102021` - `102022` - `102023` - `102024` - `102025` - `102026` - `102027` - `102028` - `102029` - `102030` - `102031` - `102032` - `102033` - `102034` - `102035` - `102036` - `102037` - `102038` - `102039` - `102040` - `102041` - `102042` - `102043` - `102044` - `102045` - `102046` - `102047` - `102048` - `102049` - `102050` - `102051` - `102052` - `102053` - `102054` - `102055` - `102056` - `102057` - `102058` - `102059` - `102060` - `102061` - `102062` - `102063` - `102064` - `102065` - `102066` - `102067` - `102068` - `102069` - `102070` - `102071` - `102072` - `103001` - `103002` - `103003` - `103004` - `103005` - `103006` - `103007` - `103008` - `message: str` - `documentation_url: Optional[str]` - `meta: Optional[MessageMeta]` - `l10n_key: Optional[str]` - `loggable_error: Optional[str]` - `template_data: Optional[object]` - `trace_id: Optional[str]` - `source: Optional[MessageSource]` - `parameter: Optional[str]` - `parameter_value_index: Optional[int]` - `pointer: Optional[str]` - `success: bool` ### Cloud Integration Initial Setup Response - `CloudIntegrationInitialSetupResponse` - `class McnAwsTrustPolicy: …` - `aws_trust_policy: str` - `item_type: str` - `class McnAzureSetup: …` - `azure_consent_url: str` - `integration_identity_tag: str` - `item_type: str` - `tag_cli_command: str` - `class McnGcpSetup: …` - `integration_identity_tag: str` - `item_type: str` - `tag_cli_command: str`