---
title: Getting Started with Datadog
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > Infrastructure > Datadog Resource Catalog
---

# gcp_looker_instance{% #gcp_looker_instance %}

## `admin_settings`{% #admin_settings %}

**Type**: `STRUCT`**Provider name**: `adminSettings`**Description**: Looker Instance Admin settings.

- `allowed_email_domains`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `allowedEmailDomains`**Description**: Email domain allowlist for the instance.

## `ancestors`{% #ancestors %}

**Type**: `UNORDERED_LIST_STRING`

## `class_type`{% #class_type %}

**Type**: `STRING`**Provider name**: `classType`**Description**: Optional. Storage class of the instance.**Possible values**:

- `CLASS_TYPE_UNSPECIFIED` - Unspecified storage class.
- `R1` - Filestore.
- `P1` - PD SSD.

## `consumer_network`{% #consumer_network %}

**Type**: `STRING`**Provider name**: `consumerNetwork`**Description**: Network name in the consumer project. Format: `projects/{project}/global/networks/{network}`. Note that the consumer network may be in a different GCP project than the consumer project that is hosting the Looker Instance.

## `create_time`{% #create_time %}

**Type**: `TIMESTAMP`**Provider name**: `createTime`**Description**: Output only. The time when the Looker instance provisioning was first requested.

## `custom_domain`{% #custom_domain %}

**Type**: `STRUCT`**Provider name**: `customDomain`**Description**: Custom domain configuration for the instance.

- `domain`**Type**: `STRING`**Provider name**: `domain`**Description**: Domain name.
- `state`**Type**: `STRING`**Provider name**: `state`**Description**: Domain state.**Possible values**:
  - `CUSTOM_DOMAIN_STATE_UNSPECIFIED` - Unspecified state.
  - `UNVERIFIED` - DNS record is not created.
  - `VERIFIED` - DNS record is created.
  - `MODIFYING` - Calling SLM to update.
  - `AVAILABLE` - ManagedCertificate is ready.
  - `UNAVAILABLE` - ManagedCertificate is not ready.
  - `UNKNOWN` - Status is not known.

## `deny_maintenance_period`{% #deny_maintenance_period %}

**Type**: `STRUCT`**Provider name**: `denyMaintenancePeriod`**Description**: Maintenance denial period for this instance.

- `end_date`**Type**: `STRUCT`**Provider name**: `endDate`**Description**: Required. End date of the deny maintenance period.
  - `day`**Type**: `INT32`**Provider name**: `day`**Description**: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
  - `month`**Type**: `INT32`**Provider name**: `month`**Description**: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
  - `year`**Type**: `INT32`**Provider name**: `year`**Description**: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
- `start_date`**Type**: `STRUCT`**Provider name**: `startDate`**Description**: Required. Start date of the deny maintenance period.
  - `day`**Type**: `INT32`**Provider name**: `day`**Description**: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
  - `month`**Type**: `INT32`**Provider name**: `month`**Description**: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
  - `year`**Type**: `INT32`**Provider name**: `year`**Description**: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
- `time`**Type**: `STRUCT`**Provider name**: `time`**Description**: Required. Time in UTC when the period starts and ends.
  - `hours`**Type**: `INT32`**Provider name**: `hours`**Description**: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
  - `minutes`**Type**: `INT32`**Provider name**: `minutes`**Description**: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
  - `nanos`**Type**: `INT32`**Provider name**: `nanos`**Description**: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
  - `seconds`**Type**: `INT32`**Provider name**: `seconds`**Description**: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.

## `egress_public_ip`{% #egress_public_ip %}

**Type**: `STRING`**Provider name**: `egressPublicIp`**Description**: Output only. Public Egress IP (IPv4).

## `encryption_config`{% #encryption_config %}

**Type**: `STRUCT`**Provider name**: `encryptionConfig`**Description**: Encryption configuration (CMEK). Only set if CMEK has been enabled on the instance.

- `kms_key_name`**Type**: `STRING`**Provider name**: `kmsKeyName`**Description**: Name of the CMEK key in KMS (input parameter).
- `kms_key_name_version`**Type**: `STRING`**Provider name**: `kmsKeyNameVersion`**Description**: Output only. Full name and version of the CMEK key currently in use to encrypt Looker data. Format: `projects/{project}/locations/{location}/keyRings/{ring}/cryptoKeys/{key}/cryptoKeyVersions/{version}`. Empty if CMEK is not configured in this instance.
- `kms_key_state`**Type**: `STRING`**Provider name**: `kmsKeyState`**Description**: Output only. Status of the CMEK key.**Possible values**:
  - `KMS_KEY_STATE_UNSPECIFIED` - CMEK status not specified.
  - `VALID` - CMEK key is currently valid.
  - `REVOKED` - CMEK key is currently revoked (instance should in restricted mode).

## `fips_enabled`{% #fips_enabled %}

**Type**: `BOOLEAN`**Provider name**: `fipsEnabled`**Description**: Optional. Whether FIPS is enabled on the Looker instance.

## `gemini_enabled`{% #gemini_enabled %}

**Type**: `BOOLEAN`**Provider name**: `geminiEnabled`**Description**: Optional. Whether Gemini feature is enabled on the Looker instance or not.

## `ingress_private_ip`{% #ingress_private_ip %}

**Type**: `STRING`**Provider name**: `ingressPrivateIp`**Description**: Output only. Private Ingress IP (IPv4).

## `ingress_public_ip`{% #ingress_public_ip %}

**Type**: `STRING`**Provider name**: `ingressPublicIp`**Description**: Output only. Public Ingress IP (IPv4).

## `labels`{% #labels %}

**Type**: `UNORDERED_LIST_STRING`

## `last_deny_maintenance_period`{% #last_deny_maintenance_period %}

**Type**: `STRUCT`**Provider name**: `lastDenyMaintenancePeriod`**Description**: Output only. Last computed maintenance denial period for this instance.

- `end_date`**Type**: `STRUCT`**Provider name**: `endDate`**Description**: Required. End date of the deny maintenance period.
  - `day`**Type**: `INT32`**Provider name**: `day`**Description**: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
  - `month`**Type**: `INT32`**Provider name**: `month`**Description**: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
  - `year`**Type**: `INT32`**Provider name**: `year`**Description**: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
- `start_date`**Type**: `STRUCT`**Provider name**: `startDate`**Description**: Required. Start date of the deny maintenance period.
  - `day`**Type**: `INT32`**Provider name**: `day`**Description**: Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
  - `month`**Type**: `INT32`**Provider name**: `month`**Description**: Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
  - `year`**Type**: `INT32`**Provider name**: `year`**Description**: Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
- `time`**Type**: `STRUCT`**Provider name**: `time`**Description**: Required. Time in UTC when the period starts and ends.
  - `hours`**Type**: `INT32`**Provider name**: `hours`**Description**: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
  - `minutes`**Type**: `INT32`**Provider name**: `minutes`**Description**: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
  - `nanos`**Type**: `INT32`**Provider name**: `nanos`**Description**: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
  - `seconds`**Type**: `INT32`**Provider name**: `seconds`**Description**: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.

## `linked_lsp_project_number`{% #linked_lsp_project_number %}

**Type**: `INT64`**Provider name**: `linkedLspProjectNumber`**Description**: Optional. Linked Google Cloud Project Number for Looker Studio Pro.

## `looker_uri`{% #looker_uri %}

**Type**: `STRING`**Provider name**: `lookerUri`**Description**: Output only. Looker instance URI which can be used to access the Looker Instance UI.

## `looker_version`{% #looker_version %}

**Type**: `STRING`**Provider name**: `lookerVersion`**Description**: Output only. The Looker version that the instance is using.

## `maintenance_schedule`{% #maintenance_schedule %}

**Type**: `STRUCT`**Provider name**: `maintenanceSchedule`**Description**: Maintenance schedule for this instance.

- `end_time`**Type**: `TIMESTAMP`**Provider name**: `endTime`**Description**: The scheduled end time for the maintenance.
- `start_time`**Type**: `TIMESTAMP`**Provider name**: `startTime`**Description**: The scheduled start time for the maintenance.

## `maintenance_window`{% #maintenance_window %}

**Type**: `STRUCT`**Provider name**: `maintenanceWindow`**Description**: Maintenance window for this instance.

- `day_of_week`**Type**: `STRING`**Provider name**: `dayOfWeek`**Description**: Required. Day of the week for this MaintenanceWindow (in UTC).**Possible values**:
  - `DAY_OF_WEEK_UNSPECIFIED` - The day of the week is unspecified.
  - `MONDAY` - Monday
  - `TUESDAY` - Tuesday
  - `WEDNESDAY` - Wednesday
  - `THURSDAY` - Thursday
  - `FRIDAY` - Friday
  - `SATURDAY` - Saturday
  - `SUNDAY` - Sunday
- `start_time`**Type**: `STRUCT`**Provider name**: `startTime`**Description**: Required. Time in UTC when the period starts. Maintenance will be scheduled within 60 minutes.
  - `hours`**Type**: `INT32`**Provider name**: `hours`**Description**: Hours of a day in 24 hour format. Must be greater than or equal to 0 and typically must be less than or equal to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time.
  - `minutes`**Type**: `INT32`**Provider name**: `minutes`**Description**: Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.
  - `nanos`**Type**: `INT32`**Provider name**: `nanos`**Description**: Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.
  - `seconds`**Type**: `INT32`**Provider name**: `seconds`**Description**: Seconds of a minute. Must be greater than or equal to 0 and typically must be less than or equal to 59. An API may allow the value 60 if it allows leap-seconds.

## `name`{% #name %}

**Type**: `STRING`**Provider name**: `name`**Description**: Output only. Format: `projects/{project}/locations/{location}/instances/{instance}`.

## `oauth_config`{% #oauth_config %}

**Type**: `STRUCT`**Provider name**: `oauthConfig`**Description**: Looker instance OAuth login settings.

- `client_id`**Type**: `STRING`**Provider name**: `clientId`**Description**: Input only. Client ID from an external OAuth application. This is an input-only field, and thus will not be set in any responses.
- `client_secret`**Type**: `STRING`**Provider name**: `clientSecret`**Description**: Input only. Client secret from an external OAuth application. This is an input-only field, and thus will not be set in any responses.

## `organization_id`{% #organization_id %}

**Type**: `STRING`

## `parent`{% #parent %}

**Type**: `STRING`

## `platform_edition`{% #platform_edition %}

**Type**: `STRING`**Provider name**: `platformEdition`**Description**: Platform edition.**Possible values**:

- `PLATFORM_EDITION_UNSPECIFIED` - Platform edition is unspecified.
- `LOOKER_CORE_TRIAL` - Trial.
- `LOOKER_CORE_STANDARD` - Standard.
- `LOOKER_CORE_STANDARD_ANNUAL` - Subscription Standard.
- `LOOKER_CORE_ENTERPRISE_ANNUAL` - Subscription Enterprise.
- `LOOKER_CORE_EMBED_ANNUAL` - Subscription Embed.
- `LOOKER_CORE_NONPROD_STANDARD_ANNUAL` - Nonprod Subscription Standard.
- `LOOKER_CORE_NONPROD_ENTERPRISE_ANNUAL` - Nonprod Subscription Enterprise.
- `LOOKER_CORE_NONPROD_EMBED_ANNUAL` - Nonprod Subscription Embed.
- `LOOKER_CORE_TRIAL_STANDARD` - Trial Standard.
- `LOOKER_CORE_TRIAL_ENTERPRISE` - Trial Enterprise.
- `LOOKER_CORE_TRIAL_EMBED` - Trial Embed.

## `private_ip_enabled`{% #private_ip_enabled %}

**Type**: `BOOLEAN`**Provider name**: `privateIpEnabled`**Description**: Whether private IP is enabled on the Looker instance.

## `project_id`{% #project_id %}

**Type**: `STRING`

## `project_number`{% #project_number %}

**Type**: `STRING`

## `psc_config`{% #psc_config %}

**Type**: `STRUCT`**Provider name**: `pscConfig`**Description**: Optional. PSC configuration. Used when `psc_enabled` is true.

- `allowed_vpcs`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `allowedVpcs`**Description**: Optional. List of VPCs that are allowed ingress into looker. Format: projects/{project}/global/networks/{network}
- `looker_service_attachment_uri`**Type**: `STRING`**Provider name**: `lookerServiceAttachmentUri`**Description**: Output only. URI of the Looker service attachment.
- `service_attachments`**Type**: `UNORDERED_LIST_STRUCT`**Provider name**: `serviceAttachments`**Description**: Optional. List of egress service attachment configurations.
  - `connection_status`**Type**: `STRING`**Provider name**: `connectionStatus`**Description**: Output only. Connection status.**Possible values**:
    - `UNKNOWN` - Connection status is unspecified.
    - `ACCEPTED` - Connection is established and functioning normally.
    - `PENDING` - Connection is not established (Looker tenant project hasn't been allowlisted).
    - `REJECTED` - Connection is not established (Looker tenant project is explicitly in reject list).
    - `NEEDS_ATTENTION` - Issue with target service attachment, e.g. NAT subnet is exhausted.
    - `CLOSED` - Target service attachment does not exist. This status is a terminal state.
  - `failure_reason`**Type**: `STRING`**Provider name**: `failureReason`**Description**: Output only. Reason the service attachment creation failed. This value will only be populated if the service attachment encounters an issue during provisioning.
  - `local_fqdn`**Type**: `STRING`**Provider name**: `localFqdn`**Description**: Optional. Fully qualified domain name that will be used in the private DNS record created for the service attachment.
  - `local_fqdns`**Type**: `UNORDERED_LIST_STRING`**Provider name**: `localFqdns`**Description**: Optional. List of fully qualified domain names that will be used in the private DNS record created for the service attachment.
  - `target_service_attachment_uri`**Type**: `STRING`**Provider name**: `targetServiceAttachmentUri`**Description**: Required. URI of the service attachment to connect to. Format: projects/{project}/regions/{region}/serviceAttachments/{service_attachment}

## `psc_enabled`{% #psc_enabled %}

**Type**: `BOOLEAN`**Provider name**: `pscEnabled`**Description**: Optional. Whether to use Private Service Connect (PSC) for private IP connectivity. If true, neither `public_ip_enabled` nor `private_ip_enabled` can be true.

## `public_ip_enabled`{% #public_ip_enabled %}

**Type**: `BOOLEAN`**Provider name**: `publicIpEnabled`**Description**: Whether public IP is enabled on the Looker instance.

## `region_id`{% #region_id %}

**Type**: `STRING`

## `reserved_range`{% #reserved_range %}

**Type**: `STRING`**Provider name**: `reservedRange`**Description**: Name of a reserved IP address range within the Instance.consumer_network, to be used for private services access connection. May or may not be specified in a create request.

## `resource_name`{% #resource_name %}

**Type**: `STRING`

## `satisfies_pzi`{% #satisfies_pzi %}

**Type**: `BOOLEAN`**Provider name**: `satisfiesPzi`**Description**: Output only. Reserved for future use.

## `satisfies_pzs`{% #satisfies_pzs %}

**Type**: `BOOLEAN`**Provider name**: `satisfiesPzs`**Description**: Output only. Reserved for future use.

## `state`{% #state %}

**Type**: `STRING`**Provider name**: `state`**Description**: Output only. The state of the instance.**Possible values**:

- `STATE_UNSPECIFIED` - State is unspecified.
- `ACTIVE` - Instance is active and ready for use.
- `CREATING` - Instance provisioning is in progress.
- `FAILED` - Instance is in a failed state.
- `SUSPENDED` - Instance was suspended.
- `UPDATING` - Instance update is in progress.
- `DELETING` - Instance delete is in progress.
- `EXPORTING` - Instance is being exported.
- `IMPORTING` - Instance is importing data.

## `tags`{% #tags %}

**Type**: `UNORDERED_LIST_STRING`

## `update_time`{% #update_time %}

**Type**: `TIMESTAMP`**Provider name**: `updateTime`**Description**: Output only. The time when the Looker instance was last updated.

## `user_metadata`{% #user_metadata %}

**Type**: `STRUCT`**Provider name**: `userMetadata`**Description**: Optional. User metadata.

- `additional_developer_user_count`**Type**: `INT32`**Provider name**: `additionalDeveloperUserCount`**Description**: Optional. The number of additional developer users the instance owner has purchased.
- `additional_standard_user_count`**Type**: `INT32`**Provider name**: `additionalStandardUserCount`**Description**: Optional. The number of additional standard users the instance owner has purchased.
- `additional_viewer_user_count`**Type**: `INT32`**Provider name**: `additionalViewerUserCount`**Description**: Optional. The number of additional viewer users the instance owner has purchased.

## `zone_id`{% #zone_id %}

**Type**: `STRING`
