# The CleanRoom object

## Attributes

- `name` (string)
  The name of the clean room.
   It should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).
  Example: `test-clean-room1`
- `remote_detailed_info` (object)
  Central clean room details. During creation, users need to specify
   cloud_vendor, region, and collaborators.global_metastore_id.
   This field will not be filled in the ListCleanRooms call.
  - `central_clean_room_id` (string)
    Central clean room ID.
    Example: `b5c8d856-ff41-4c5f-8ccd-2b13b44fec27`
  - `cloud_vendor` (string)
    Cloud vendor (aws,azure,gcp) of the central clean room.
    Example: `aws`
  - `region` (string)
    Region of the central clean room.
    Example: `us-west-2`
  - `collaborators` (array of object)
    Collaborators in the central clean room. There should one and only one collaborator
     in the list that satisfies the owner condition:
    
     1. It has the creator's global_metastore_id (determined by caller of CreateCleanRoom).
    
     2. Its invite_recipient_email is empty.
    - `global_metastore_id` (string)
      The global Unity Catalog metastore ID of the collaborator. The identifier is of format cloud:region:metastore-uuid.
      Example: `aws:us-west-2:aff56c64-a34e-4c1f-a24c-c2dd2889517a`
    - `organization_name` (string)
      [Organization name](:method:metastores/list#metastores-delta_sharing_organization_name)
       configured in the metastore
      Example: `acme corporation`
    - `invite_recipient_workspace_id` (int64)
      Workspace ID of the user who is receiving the clean room "invitation". Must be specified if
       invite_recipient_email is specified.
       It should be empty when the collaborator is the creator of the clean room.
      Example: `6822898386300992`
    - `invite_recipient_email` (string)
      Email of the user who is receiving the clean room "invitation". It should be empty
       for the creator of the clean room, and non-empty for the invitees of the clean room.
       It is only returned in the output when clean room creator calls GET
      Example: `john.doe@databricks.com`
    - `collaborator_alias` (string)
      Collaborator alias specified by the clean room creator. It is unique across all collaborators of this clean room, and used to derive
       multiple values internally such as catalog alias and clean room name for single metastore clean rooms.
       It should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).
      Example: `creator`
    - `display_name` (string)
      Generated display name for the collaborator. In the case of a single metastore clean room, it is the clean
       room name. For x-metastore clean rooms, it is the organization name of the metastore. It is not restricted to
       these values and could change in the future
      Example: `acme corporation`
  - `creator` (object)
    Collaborator who creates the clean room.
    - `global_metastore_id` (string)
      The global Unity Catalog metastore ID of the collaborator. The identifier is of format cloud:region:metastore-uuid.
      Example: `aws:us-west-2:aff56c64-a34e-4c1f-a24c-c2dd2889517a`
    - `organization_name` (string)
      [Organization name](:method:metastores/list#metastores-delta_sharing_organization_name)
       configured in the metastore
      Example: `acme corporation`
    - `invite_recipient_workspace_id` (int64)
      Workspace ID of the user who is receiving the clean room "invitation". Must be specified if
       invite_recipient_email is specified.
       It should be empty when the collaborator is the creator of the clean room.
      Example: `6822898386300992`
    - `invite_recipient_email` (string)
      Email of the user who is receiving the clean room "invitation". It should be empty
       for the creator of the clean room, and non-empty for the invitees of the clean room.
       It is only returned in the output when clean room creator calls GET
      Example: `john.doe@databricks.com`
    - `collaborator_alias` (string)
      Collaborator alias specified by the clean room creator. It is unique across all collaborators of this clean room, and used to derive
       multiple values internally such as catalog alias and clean room name for single metastore clean rooms.
       It should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).
      Example: `creator`
    - `display_name` (string)
      Generated display name for the collaborator. In the case of a single metastore clean room, it is the clean
       room name. For x-metastore clean rooms, it is the organization name of the metastore. It is not restricted to
       these values and could change in the future
      Example: `acme corporation`
  - `egress_network_policy` (object)
    Egress network policy to apply to the central clean room workspace.
    - `internet_access` (object)
      The access policy enforced for egress traffic to the internet.
      - `restriction_mode` (string)
        Possible values: `RESTRICTION_MODE_UNSPECIFIED`, `FULL_ACCESS`, `PRIVATE_ACCESS_ONLY`, `RESTRICTED_ACCESS`
      - `allowed_internet_destinations` (array of object)
      - `allowed_storage_destinations` (array of object)
      - `log_only_mode` (object)
        Optional. If not specified, assume the policy is enforced for all workloads.
  - `compliance_security_profile` (object)
    - `is_enabled` (boolean)
      Whether the compliance security profile is enabled.
    - `compliance_standards` (array of string)
      The list of compliance standards that the compliance security profile is configured to enforce.
      Possible values: `COMPLIANCE_STANDARD_UNSPECIFIED`, `NONE`, `HIPAA`, `PCI_DSS`, `FEDRAMP_MODERATE`, `IRAP_PROTECTED`, `FEDRAMP_HIGH`, `FEDRAMP_IL5`, `ITAR_EAR`, `CYBER_ESSENTIAL_PLUS`, `CANADA_PROTECTED_B`, `ISMAP`, `HITRUST`, `K_FSI`, `GERMANY_C5`, `GERMANY_TISAX`, `KSA_ECC_CCC_DCC`
  - `enable_shared_output` (boolean)
    Whether to enable shared output for the central clean room.
     When enabled, clean room task runs can write to the run-scoped shared output schema
     which is accessible by all collaborators.
    Example: `false`
  - `package_provider_collaborator_alias` (string)
    Alias of the provider collaborator. If set, packaged clean rooms mode is enabled.
     The consumer's experience is restricted: they can view notebook names and READMEs,
     add their own data assets, and trigger runs, but cannot view notebook code,
     provider data assets, or notebook run output.
- `owner` (string)
  This is the <Databricks> username of the owner of the local clean room securable for permission management.
  Example: `alice@example.com`
- `comment` (string)
  Example: `This is a clean room for demo`
  Constraints: `<= 1000 characters`
- `created_at` (int64)
  When the clean room was created, in epoch milliseconds.
  Example: `1716424663321`
- `updated_at` (int64)
  When the clean room was last updated, in epoch milliseconds.
  Example: `1716424663321`
- `status` (string)
  Clean room status.
  Possible values: `ENUM_UNSPECIFIED`, `ACTIVE`, `PROVISIONING`, `DELETED`, `FAILED`
- `local_collaborator_alias` (string)
  The alias of the collaborator tied to the local clean room.
  Example: `creator`
- `output_catalog` (object)
  Output catalog of the clean room. It is an output only field. Output catalog is manipulated
   using the separate CreateCleanRoomOutputCatalog API.
  - `status` (string)
    Possible values: `OUTPUT_CATALOG_STATUS_UNSPECIFIED`, `NOT_ELIGIBLE`, `NOT_CREATED`, `CREATED`
  - `catalog_name` (string)
    The name of the output catalog in UC.
     It should follow [UC securable naming requirements](https://docs.databricks.com/en/data-governance/unity-catalog/index.html#securable-object-naming-requirements).
     The field will always exist if status is CREATED.
- `access_restricted` (string)
  Whether clean room access is restricted due to [CSP](https://docs.databricks.com/en/security/privacy/security-profile.html)
  Possible values: `NO_RESTRICTION`, `CSP_MISMATCH`
- `enable_shared_output` (boolean)
  Whether allow task to write to shared output schema.
   When enabled, clean room task runs triggered by the current collaborator
   can write to the run-scoped shared output schema which is accessible by all collaborators.
  Example: `false`

## Example

```json
{
  "name": "test-clean-room1",
  "remote_detailed_info": {
    "central_clean_room_id": "b5c8d856-ff41-4c5f-8ccd-2b13b44fec27",
    "cloud_vendor": "aws",
    "region": "us-west-2",
    "collaborators": [
      {}
    ],
    "creator": {},
    "egress_network_policy": {},
    "compliance_security_profile": {},
    "enable_shared_output": false,
    "package_provider_collaborator_alias": "string"
  },
  "owner": "alice@example.com",
  "comment": "This is a clean room for demo",
  "created_at": 1716424663321,
  "updated_at": 1716424663321,
  "status": "string",
  "local_collaborator_alias": "creator",
  "output_catalog": {
    "status": "string",
    "catalog_name": "string"
  },
  "access_restricted": "string",
  "enable_shared_output": false
}
```


