{
  "rootUrl": "https://connectors.googleapis.com/",
  "discoveryVersion": "v1",
  "kind": "discovery#restDescription",
  "protocol": "rest",
  "title": "Connectors API",
  "mtlsRootUrl": "https://connectors.mtls.googleapis.com/",
  "ownerDomain": "google.com",
  "parameters": {
    "oauth_token": {
      "type": "string",
      "description": "OAuth 2.0 token for the current user.",
      "location": "query"
    },
    "upload_protocol": {
      "location": "query",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "type": "string"
    },
    "prettyPrint": {
      "location": "query",
      "description": "Returns response with indentations and line breaks.",
      "type": "boolean",
      "default": "true"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "description": "V1 error format.",
      "type": "string",
      "location": "query",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ]
    },
    "fields": {
      "type": "string",
      "location": "query",
      "description": "Selector specifying which fields to include in a partial response."
    },
    "callback": {
      "type": "string",
      "description": "JSONP",
      "location": "query"
    },
    "key": {
      "type": "string",
      "location": "query",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token."
    },
    "quotaUser": {
      "location": "query",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "type": "string"
    },
    "access_token": {
      "type": "string",
      "location": "query",
      "description": "OAuth access token."
    },
    "uploadType": {
      "type": "string",
      "location": "query",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    }
  },
  "basePath": "",
  "canonicalName": "Connectors",
  "version": "v1",
  "revision": "20260921",
  "documentationLink": "https://cloud.google.com/apigee/docs/api-platform/connectors/about-connectors",
  "endpoints": [
    {
      "endpointUrl": "https://connectors.us-central1.rep.googleapis.com/",
      "location": "us-central1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://connectors.us-east1.rep.googleapis.com/",
      "description": "Regional Endpoint",
      "location": "us-east1"
    },
    {
      "description": "Regional Endpoint",
      "endpointUrl": "https://connectors.us-east4.rep.googleapis.com/",
      "location": "us-east4"
    },
    {
      "endpointUrl": "https://connectors.us-east5.rep.googleapis.com/",
      "location": "us-east5",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://connectors.us-south1.rep.googleapis.com/",
      "location": "us-south1",
      "description": "Regional Endpoint"
    },
    {
      "endpointUrl": "https://connectors.us-west1.rep.googleapis.com/",
      "description": "Regional Endpoint",
      "location": "us-west1"
    },
    {
      "location": "us-west2",
      "description": "Regional Endpoint",
      "endpointUrl": "https://connectors.us-west2.rep.googleapis.com/"
    },
    {
      "description": "Regional Endpoint",
      "endpointUrl": "https://connectors.us-west3.rep.googleapis.com/",
      "location": "us-west3"
    },
    {
      "endpointUrl": "https://connectors.us-west4.rep.googleapis.com/",
      "description": "Regional Endpoint",
      "location": "us-west4"
    }
  ],
  "description": "Enables users to create and manage connections to Google Cloud services and third-party business applications using the Connectors interface.",
  "batchPath": "batch",
  "version_module": true,
  "id": "connectors:v1",
  "fullyEncodeReservedExpansion": true,
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
        }
      }
    }
  },
  "servicePath": "",
  "ownerName": "Google",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "name": "connectors",
  "baseUrl": "https://connectors.googleapis.com/",
  "schemas": {
    "UserPassword": {
      "id": "UserPassword",
      "type": "object",
      "description": "Parameters to support Username and Password Authentication.",
      "properties": {
        "username": {
          "description": "Optional. Username.",
          "type": "string"
        },
        "password": {
          "description": "Optional. Secret version reference containing the password.",
          "$ref": "Secret"
        }
      }
    },
    "EndUserAuthenticationEndUserAuthenticationStatus": {
      "properties": {
        "state": {
          "enumDescriptions": [
            "Default state.",
            "EndUserAuthentication is in Active state.",
            "EndUserAuthentication is in Error state."
          ],
          "type": "string",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "ERROR"
          ],
          "readOnly": true,
          "description": "Output only. State of Event Subscription resource."
        },
        "description": {
          "type": "string",
          "description": "Output only. Description of the state.",
          "readOnly": true
        }
      },
      "description": "EndUserAuthentication Status denotes the status of the EndUserAuthentication resource.",
      "type": "object",
      "id": "EndUserAuthenticationEndUserAuthenticationStatus"
    },
    "DestinationConfig": {
      "description": "Define the Connectors target endpoint.",
      "id": "DestinationConfig",
      "properties": {
        "destinations": {
          "items": {
            "$ref": "Destination"
          },
          "description": "Optional. The destinations for the key.",
          "type": "array"
        },
        "key": {
          "description": "Optional. The key is the destination identifier that is supported by the Connector.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "PublishStatus": {
      "type": "object",
      "id": "PublishStatus",
      "properties": {
        "publishedAs": {
          "description": "Output only. Partner connector name. Will be set on the custom connector. Format: providers/partner/connectors//versions/",
          "type": "string",
          "readOnly": true
        },
        "publishTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Publish time.",
          "readOnly": true
        },
        "publishState": {
          "type": "string",
          "enumDescriptions": [
            "State Unspecified.",
            "Connector version has been published as partner connector version.",
            "Connector version is in the process of being published as partner connector version.",
            "Connector version has been unpublished as partner connector version"
          ],
          "enum": [
            "PUBLISH_STATE_UNSPECIFIED",
            "PUBLISHED",
            "PUBLISH_IN_PROGRESS",
            "UNPUBLISHED"
          ],
          "readOnly": true,
          "description": "Output only. Publish state of the custom connector."
        },
        "publishedSource": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Custom connector name. Will be set on the partner connector. Format: providers/customconnectors/connectors//versions/"
        }
      },
      "description": "Publish status of a custom connector."
    },
    "SearchConnectionInstance": {
      "id": "SearchConnectionInstance",
      "description": "SearchConnectionInstance represents an instance of connector with specific fields",
      "type": "object",
      "properties": {
        "connection": {
          "$ref": "Connection",
          "description": "Output only. Connection details",
          "readOnly": true
        },
        "actionSchema": {
          "$ref": "RuntimeActionSchema",
          "description": "Output only. Schema of a runtime action.",
          "readOnly": true
        },
        "entitySchema": {
          "readOnly": true,
          "$ref": "RuntimeEntitySchema",
          "description": "Output only. Schema of a runtime entity."
        }
      }
    },
    "ConnectorVersion": {
      "type": "object",
      "description": "ConnectorVersion indicates a specific version of a connector.",
      "properties": {
        "authOverrideEnabled": {
          "readOnly": true,
          "description": "Output only. Flag to mark the dynamic auth override.",
          "type": "boolean"
        },
        "vpcscConfig": {
          "readOnly": true,
          "description": "Output only. VPCSC config for the connector.",
          "$ref": "VpcscConfig"
        },
        "connectorInfraConfig": {
          "$ref": "ConnectorInfraConfig",
          "readOnly": true,
          "description": "Output only. Infra configs supported by Connector."
        },
        "configVariableTemplates": {
          "type": "array",
          "description": "Output only. List of config variables needed to create a connection.",
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "readOnly": true
        },
        "isCustomEntitiesSupported": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Is custom entities supported."
        },
        "launchStage": {
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "readOnly": true,
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "type": "string",
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ]
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Created time.",
          "readOnly": true
        },
        "supportedStandardEntities": {
          "type": "array",
          "readOnly": true,
          "description": "Output only. Supported standard entities.",
          "items": {
            "$ref": "StandardEntity"
          }
        },
        "supportedStandardActions": {
          "type": "array",
          "description": "Output only. Supported standard actions.",
          "items": {
            "$ref": "StandardAction"
          },
          "readOnly": true
        },
        "roleGrant": {
          "description": "Output only. Role grant configuration for this config variable. It will be DEPRECATED soon.",
          "readOnly": true,
          "$ref": "RoleGrant"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "isCustomActionsSupported": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Is custom actions supported."
        },
        "destinationConfigTemplates": {
          "items": {
            "$ref": "DestinationConfigTemplate"
          },
          "description": "Output only. List of destination configs needed to create a connection.",
          "type": "array",
          "readOnly": true
        },
        "eventingConfigTemplate": {
          "readOnly": true,
          "$ref": "EventingConfigTemplate",
          "description": "Output only. Eventing configuration supported by the Connector."
        },
        "egressControlConfig": {
          "$ref": "EgressControlConfig",
          "description": "Output only. Configuration for Egress Control.",
          "readOnly": true
        },
        "name": {
          "description": "Output only. Resource name of the Version. Format: projects/{project}/locations/{location}/providers/{provider}/connectors/{connector}/versions/{version} Only global location is supported for Connector resource.",
          "type": "string",
          "readOnly": true
        },
        "supportedRuntimeFeatures": {
          "$ref": "SupportedRuntimeFeatures",
          "readOnly": true,
          "description": "Output only. Information about the runtime features supported by the Connector."
        },
        "labels": {
          "type": "object",
          "readOnly": true,
          "description": "Output only. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "additionalProperties": {
            "type": "string"
          }
        },
        "releaseVersion": {
          "type": "string",
          "description": "Output only. ReleaseVersion of the connector, for example: \"1.0.1-alpha\".",
          "readOnly": true
        },
        "unsupportedConnectionTypes": {
          "type": "array",
          "items": {
            "enumDescriptions": [
              "Connection type is unspecified.",
              "Connection with eventing.",
              "Only connection.",
              "Only eventing."
            ],
            "enum": [
              "CONNECTION_TYPE_UNSPECIFIED",
              "CONNECTION_WITH_EVENTING",
              "ONLY_CONNECTION",
              "ONLY_EVENTING"
            ],
            "type": "string"
          },
          "description": "Output only. Unsupported connection types.",
          "readOnly": true
        },
        "authConfigTemplates": {
          "type": "array",
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "description": "Output only. List of auth configs supported by the Connector Version.",
          "readOnly": true
        },
        "schemaRefreshConfig": {
          "$ref": "SchemaRefreshConfig",
          "description": "Connection Schema Refresh Config"
        },
        "roleGrants": {
          "type": "array",
          "items": {
            "$ref": "RoleGrant"
          },
          "readOnly": true,
          "description": "Output only. Role grant configurations for this connector version."
        },
        "sslConfigTemplate": {
          "readOnly": true,
          "$ref": "SslConfigTemplate",
          "description": "Output only. Ssl configuration supported by the Connector."
        },
        "displayName": {
          "description": "Output only. Display name.",
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "ConnectorVersion"
    },
    "EndUserAuthenticationConfigSshPublicKey": {
      "properties": {
        "certType": {
          "description": "Format of SSH Client cert.",
          "type": "string"
        },
        "sshClientCertPass": {
          "description": "Required. Password (passphrase) for ssh client certificate if it has one.",
          "$ref": "EUASecret"
        },
        "sshClientCert": {
          "$ref": "EUASecret",
          "description": "Required. SSH Client Cert. It should contain both public and private key."
        },
        "username": {
          "type": "string",
          "description": "The user account used to authenticate."
        }
      },
      "description": "Parameters to support Ssh public key Authentication.",
      "type": "object",
      "id": "EndUserAuthenticationConfigSshPublicKey"
    },
    "EncryptionConfig": {
      "description": "Regional encryption config for CMEK details.",
      "properties": {
        "kmsKeyName": {
          "description": "Optional. KMS crypto key. This field accepts identifiers of the form `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/ {crypto_key}`",
          "type": "string"
        },
        "encryptionType": {
          "enum": [
            "ENCRYPTION_TYPE_UNSPECIFIED",
            "GMEK",
            "CMEK"
          ],
          "enumDescriptions": [
            "Encryption type unspecified.",
            "Google managed encryption keys",
            "Customer managed encryption keys."
          ],
          "description": "Optional. Encryption type for the region.",
          "type": "string"
        }
      },
      "id": "EncryptionConfig",
      "type": "object"
    },
    "Connection": {
      "id": "Connection",
      "properties": {
        "serviceAccount": {
          "description": "Optional. Service account needed for runtime plane to access Google Cloud resources.",
          "type": "string"
        },
        "sslConfig": {
          "$ref": "SslConfig",
          "description": "Optional. Ssl config of a connection"
        },
        "host": {
          "description": "Output only. The name of the Hostname of the Service Directory service with TLS.",
          "readOnly": true,
          "type": "string"
        },
        "eventingEnablementType": {
          "type": "string",
          "enumDescriptions": [
            "Eventing Enablement Type Unspecifeied.",
            "Both connection and eventing.",
            "Only Eventing."
          ],
          "description": "Optional. Eventing enablement type. Will be nil if eventing is not enabled.",
          "enum": [
            "EVENTING_ENABLEMENT_TYPE_UNSPECIFIED",
            "EVENTING_AND_CONNECTION",
            "ONLY_EVENTING"
          ]
        },
        "tlsServiceDirectory": {
          "readOnly": true,
          "description": "Output only. The name of the Service Directory service with TLS.",
          "type": "string"
        },
        "authConfig": {
          "$ref": "AuthConfig",
          "description": "Optional. Configuration for establishing the connection's authentication with an external system."
        },
        "imageLocation": {
          "description": "Output only. GCR location where the runtime image is stored. formatted like: gcr.io/{bucketName}/{imageName}",
          "type": "string",
          "readOnly": true
        },
        "eventingConfig": {
          "description": "Optional. Eventing config of a connection",
          "$ref": "EventingConfig"
        },
        "billingConfig": {
          "readOnly": true,
          "description": "Output only. Billing config for the connection.",
          "$ref": "BillingConfig"
        },
        "destinationConfigs": {
          "description": "Optional. Configuration of the Connector's destination. Only accepted for Connectors that accepts user defined destination(s).",
          "type": "array",
          "items": {
            "$ref": "DestinationConfig"
          }
        },
        "logConfig": {
          "$ref": "ConnectorsLogConfig",
          "description": "Optional. Log configuration for the connection."
        },
        "configVariables": {
          "description": "Optional. Configuration for configuring the connection with an external system.",
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          }
        },
        "subscriptionType": {
          "enum": [
            "SUBSCRIPTION_TYPE_UNSPECIFIED",
            "PAY_G",
            "PAID"
          ],
          "type": "string",
          "readOnly": true,
          "enumDescriptions": [
            "Unspecified subscription type.",
            "PayG subscription.",
            "Paid Subscription."
          ],
          "description": "Output only. This subscription type enum states the subscription type of the project."
        },
        "connectionRevision": {
          "readOnly": true,
          "format": "int64",
          "description": "Output only. Connection revision. This field is only updated when the connection is created or updated by User.",
          "type": "string"
        },
        "suspended": {
          "type": "boolean",
          "description": "Optional. Suspended indicates if a user has suspended a connection or not."
        },
        "euaOauthAuthConfig": {
          "$ref": "AuthConfig",
          "description": "Optional. Additional Oauth2.0 Auth config for EUA. If the connection is configured using non-OAuth authentication but OAuth needs to be used for EUA, this field can be populated with the OAuth config. This should be a OAuth2AuthCodeFlow Auth type only."
        },
        "authOverrideEnabled": {
          "type": "boolean",
          "description": "Optional. Auth override enabled for the connection. If Auth Override is enabled, Connection allows the backend service auth to be overridden in the entities/actions API."
        },
        "asyncOperationsEnabled": {
          "description": "Optional. Async operations enabled for the connection. If Async Operations is enabled, Connection allows the customers to initiate async long running operations using the actions API.",
          "type": "boolean"
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "name": {
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/connections/{connection}",
          "readOnly": true,
          "type": "string"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources"
        },
        "isTrustedTester": {
          "description": "Output only. Is trusted tester program enabled for the project.",
          "readOnly": true,
          "type": "boolean"
        },
        "envoyImageLocation": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. GCR location where the envoy image is stored. formatted like: gcr.io/{bucketName}/{imageName}"
        },
        "connectorVersionInfraConfig": {
          "readOnly": true,
          "$ref": "ConnectorVersionInfraConfig",
          "description": "Output only. Infra configs supported by Connector Version."
        },
        "connectorVersionLaunchStage": {
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "type": "string"
        },
        "lockConfig": {
          "description": "Optional. Configuration that indicates whether or not the Connection can be edited.",
          "$ref": "LockConfig"
        },
        "trafficShapingConfigs": {
          "type": "array",
          "description": "Optional. Traffic shaping configuration for the connection.",
          "items": {
            "$ref": "TrafficShapingConfig"
          }
        },
        "adminFilters": {
          "type": "array",
          "description": "Optional. Admin filters for the connection. These are used by Gemini Enterprise.",
          "items": {
            "$ref": "AdminFilters"
          }
        },
        "connectorVersion": {
          "type": "string",
          "description": "Required. Connector version on which the connection is created. The format is: projects/*/locations/*/providers/*/connectors/*/versions/* Only global location is supported for ConnectorVersion resource."
        },
        "nodeConfig": {
          "description": "Optional. Node configuration for the connection.",
          "$ref": "NodeConfig"
        },
        "createTime": {
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. Created time.",
          "type": "string"
        },
        "fallbackOnAdminCredentials": {
          "description": "Optional. Fallback on admin credentials for the connection. If this both auth_override_enabled and fallback_on_admin_credentials are set to true, the connection will use the admin credentials if the dynamic auth header is not present during auth override.",
          "type": "boolean"
        },
        "status": {
          "description": "Output only. Current status of the connection.",
          "$ref": "ConnectionStatus",
          "readOnly": true
        },
        "eventingRuntimeData": {
          "readOnly": true,
          "description": "Output only. Eventing Runtime Data.",
          "$ref": "EventingRuntimeData"
        },
        "updateTime": {
          "format": "google-datetime",
          "description": "Output only. Updated time.",
          "readOnly": true,
          "type": "string"
        },
        "serviceDirectory": {
          "type": "string",
          "description": "Output only. The name of the Service Directory service name. Used for Private Harpoon to resolve the ILB address. e.g. \"projects/cloud-connectors-e2e-testing/locations/us-central1/namespaces/istio-system/services/istio-ingressgateway-connectors\"",
          "readOnly": true
        }
      },
      "description": "Connection represents an instance of connector.",
      "type": "object"
    },
    "ListRuntimeActionSchemasResponse": {
      "type": "object",
      "properties": {
        "runtimeActionSchemas": {
          "items": {
            "$ref": "RuntimeActionSchema"
          },
          "type": "array",
          "description": "Runtime action schemas."
        },
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        }
      },
      "id": "ListRuntimeActionSchemasResponse",
      "description": "Response message for ConnectorsService.ListRuntimeActionSchemas."
    },
    "SloMetadata": {
      "id": "SloMetadata",
      "description": "SloMetadata contains resources required for proper SLO classification of the instance.",
      "type": "object",
      "properties": {
        "tier": {
          "description": "Name of the SLO tier the Instance belongs to. This name will be expected to match the tiers specified in the service SLO configuration. Field is mandatory and must not be empty.",
          "type": "string"
        },
        "perSliEligibility": {
          "$ref": "PerSliSloEligibility",
          "description": "Optional. Multiple per-instance SLI eligibilities which apply for individual SLIs."
        },
        "nodes": {
          "items": {
            "$ref": "NodeSloMetadata"
          },
          "type": "array",
          "description": "Optional. List of nodes. Some producers need to use per-node metadata to calculate SLO. This field allows such producers to publish per-node SLO meta data, which will be consumed by SSA Eligibility Exporter and published in the form of per node metric to Monarch."
        }
      }
    },
    "MultipleSelectConfig": {
      "properties": {
        "allowCustomValues": {
          "description": "Optional. Allow custom values.",
          "type": "boolean"
        },
        "valueSeparator": {
          "description": "Required. Value separator. Only \",\" can be used for OAuth auth code flow scope field.",
          "type": "string"
        },
        "multipleSelectOptions": {
          "items": {
            "$ref": "MultipleSelectOption"
          },
          "description": "Required. Multiple select options.",
          "type": "array"
        }
      },
      "id": "MultipleSelectConfig",
      "description": "MultipleSelectConfig represents the multiple options for a config variable.",
      "type": "object"
    },
    "FetchConnectionToolspecOverrideResponse": {
      "type": "object",
      "id": "FetchConnectionToolspecOverrideResponse",
      "properties": {
        "toolspecOverride": {
          "description": "Toolspec overrides for the connection.",
          "$ref": "ToolspecOverride"
        }
      },
      "description": "Response message for FetchConnectionToolspecOverride API."
    },
    "EventingRuntimeData": {
      "properties": {
        "eventsListenerEndpoint": {
          "description": "Output only. Events listener endpoint. The value will populated after provisioning the events listener.",
          "readOnly": true,
          "type": "string"
        },
        "webhookSubscriptions": {
          "description": "Output only. Webhook subscriptions.",
          "$ref": "WebhookSubscriptions",
          "readOnly": true
        },
        "webhookData": {
          "description": "Output only. Webhook data.",
          "$ref": "WebhookData",
          "readOnly": true
        },
        "eventsListenerPscSa": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Events listener PSC Service attachment. The value will be populated after provisioning the events listener with private connectivity enabled."
        },
        "status": {
          "description": "Output only. Current status of eventing.",
          "$ref": "EventingStatus",
          "readOnly": true
        }
      },
      "id": "EventingRuntimeData",
      "description": "Eventing runtime data has the details related to eventing managed by the system.",
      "type": "object"
    },
    "ListCustomConnectorsResponse": {
      "description": "Response message for Connectors.ListCustomConnectors.",
      "properties": {
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "customConnectors": {
          "items": {
            "$ref": "CustomConnector"
          },
          "description": "A list of customConnectors.",
          "type": "array"
        }
      },
      "id": "ListCustomConnectorsResponse",
      "type": "object"
    },
    "EventingConfig": {
      "id": "EventingConfig",
      "type": "object",
      "description": "Eventing Configuration of a connection next: 21",
      "properties": {
        "enrichmentEnabled": {
          "type": "boolean",
          "description": "Optional. Enrichment Enabled."
        },
        "globalEventFilter": {
          "description": "Optional. Filter to be applied on the events to be received by the connection.",
          "type": "string"
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "type": "array",
          "description": "Optional. Additional eventing related field values"
        },
        "deadLetterConfig": {
          "description": "Optional. Dead letter configuration for eventing of a connection.",
          "$ref": "DeadLetterConfig"
        },
        "enrichmentConfig": {
          "$ref": "EnrichmentConfig",
          "description": "Optional. Data enrichment configuration."
        },
        "eventsListenerIngressEndpoint": {
          "type": "string",
          "description": "Output only. Ingress endpoint of the event listener. This is used only when private connectivity is enabled.",
          "readOnly": true
        },
        "privateConnectivityAllowlistedProjects": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. List of projects to be allowlisted for the service attachment created in the tenant project for eventing ingress."
        },
        "sslConfig": {
          "$ref": "SslConfig",
          "description": "Optional. Ssl config of a connection"
        },
        "authConfig": {
          "description": "Optional. Auth details for the webhook adapter.",
          "$ref": "AuthConfig"
        },
        "listenerAuthConfig": {
          "description": "Optional. Auth details for the event listener.",
          "$ref": "AuthConfig"
        },
        "privateConnectivityEnabled": {
          "description": "Optional. Private Connectivity Enabled.",
          "type": "boolean"
        },
        "allowedEventTypes": {
          "description": "Optional. List of allowed event types for the connection.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "registrationDestinationConfig": {
          "description": "Optional. Registration endpoint for auto registration.",
          "$ref": "DestinationConfig"
        },
        "proxyDestinationConfig": {
          "description": "Optional. Proxy for Eventing auto-registration.",
          "$ref": "DestinationConfig"
        }
      }
    },
    "ResourceLimits": {
      "type": "object",
      "id": "ResourceLimits",
      "description": "Resource limits defined for connection pods of a given connector type.",
      "properties": {
        "memory": {
          "readOnly": true,
          "description": "Output only. Memory limit.",
          "type": "string"
        },
        "cpu": {
          "description": "Output only. CPU limit.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "MultipleSelectOption": {
      "properties": {
        "key": {
          "description": "Required. Key of the option.",
          "type": "string"
        },
        "preselected": {
          "description": "Optional. Indicates if the option is preselected.",
          "type": "boolean"
        },
        "description": {
          "type": "string",
          "description": "Optional. Value of the option."
        },
        "displayName": {
          "description": "Required. Display name of the option.",
          "type": "string"
        }
      },
      "description": "MultiplSelecteOption represents the single option for a config variable.",
      "id": "MultipleSelectOption",
      "type": "object"
    },
    "Oauth2JwtBearer": {
      "id": "Oauth2JwtBearer",
      "type": "object",
      "description": "Parameters to support JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication. See https://tools.ietf.org/html/rfc7523 for more details.",
      "properties": {
        "clientKey": {
          "description": "Optional. Secret version reference containing a PKCS#8 PEM-encoded private key associated with the Client Certificate. This private key will be used to sign JWTs used for the jwt-bearer authorization grant. Specified in the form as: `projects/*/secrets/*/versions/*`.",
          "$ref": "Secret"
        },
        "jwtClaims": {
          "description": "Optional. JwtClaims providers fields to generate the token.",
          "$ref": "JwtClaims"
        }
      }
    },
    "ListEndUserAuthenticationsResponse": {
      "properties": {
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "endUserAuthentications": {
          "items": {
            "$ref": "EndUserAuthentication"
          },
          "type": "array",
          "description": "Subscriptions."
        }
      },
      "description": "Response message for ConnectorsService.ListEndUserAuthentications",
      "type": "object",
      "id": "ListEndUserAuthenticationsResponse"
    },
    "ConnectorInfraConfig": {
      "description": "This cofiguration provides infra configs like rate limit threshold which need to be configurable for every connector version",
      "properties": {
        "provisionCloudSpanner": {
          "description": "Indicate whether cloud spanner is required for connector job.",
          "type": "boolean"
        },
        "alwaysAllocateCpu": {
          "type": "boolean",
          "description": "Indicates that the Cloud Run CPU should always be allocated."
        },
        "ratelimitThreshold": {
          "format": "int64",
          "description": "Max QPS supported by the connector version before throttling of requests.",
          "type": "string"
        },
        "migrateTls": {
          "description": "Indicate whether connector is being migrated to TLS.",
          "type": "boolean"
        },
        "publicNetworkIngressEnabled": {
          "description": "Indicate whether public network ingress should be enabled.",
          "type": "boolean"
        },
        "hpaConfig": {
          "description": "HPA autoscaling config.",
          "$ref": "HPAConfig"
        },
        "networkEgressModeOverride": {
          "$ref": "NetworkEgressModeOverride",
          "description": "Network egress mode override to migrate to direct VPC egress."
        },
        "resourceLimits": {
          "description": "System resource limits.",
          "$ref": "ResourceLimits"
        },
        "maxInstanceRequestConcurrency": {
          "format": "int32",
          "type": "integer",
          "description": "Max Instance Request Conncurrency for Cloud Run service."
        },
        "connectionRatelimitWindowSeconds": {
          "type": "string",
          "description": "The window used for ratelimiting runtime requests to connections.",
          "format": "int64"
        },
        "resourceRequests": {
          "description": "System resource requests.",
          "$ref": "ResourceRequests"
        },
        "sharedDeployment": {
          "type": "string",
          "description": "The name of shared connector deployment."
        },
        "deploymentModel": {
          "type": "string",
          "enum": [
            "DEPLOYMENT_MODEL_UNSPECIFIED",
            "GKE_MST",
            "CLOUD_RUN_MST"
          ],
          "enumDescriptions": [
            "Deployment model is not specified.",
            "Default model gke mst.",
            "Cloud run mst."
          ],
          "description": "Indicate whether connector is deployed on GKE/CloudRun"
        },
        "connectorVersioningEnabled": {
          "description": "Indicate whether connector versioning is enabled.",
          "type": "boolean"
        },
        "provisionMemstore": {
          "description": "Indicate whether memstore is required for connector job.",
          "type": "boolean"
        },
        "internalclientRatelimitThreshold": {
          "description": "Max QPS supported for internal requests originating from Connd.",
          "format": "int64",
          "type": "string"
        },
        "connectionServiceAccountEnabled": {
          "description": "Indicate whether connection service account is enabled. If false, the common runtime service agent is used.",
          "type": "boolean"
        },
        "migrateDeploymentModel": {
          "type": "boolean",
          "description": "Indicate whether connector is being migrated to cloud run deployment model."
        }
      },
      "id": "ConnectorInfraConfig",
      "type": "object"
    },
    "ResourceRequests": {
      "type": "object",
      "id": "ResourceRequests",
      "description": "Resource requests defined for connection pods of a given connector type.",
      "properties": {
        "memory": {
          "type": "string",
          "description": "Output only. Memory request.",
          "readOnly": true
        },
        "cpu": {
          "description": "Output only. CPU request.",
          "type": "string",
          "readOnly": true
        }
      }
    },
    "ListManagedZonesResponse": {
      "type": "object",
      "id": "ListManagedZonesResponse",
      "properties": {
        "managedZones": {
          "items": {
            "$ref": "ManagedZone"
          },
          "type": "array",
          "description": "ManagedZones."
        },
        "unreachable": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "description": "Response message for ConnectorsService.ListManagedZones"
    },
    "JwtClaims": {
      "type": "object",
      "properties": {
        "subject": {
          "description": "Optional. Value for the \"sub\" claim.",
          "type": "string"
        },
        "audience": {
          "description": "Optional. Value for the \"aud\" claim.",
          "type": "string"
        },
        "issuer": {
          "description": "Optional. Value for the \"iss\" claim.",
          "type": "string"
        }
      },
      "description": "JWT claims used for the jwt-bearer authorization grant.",
      "id": "JwtClaims"
    },
    "SshPublicKey": {
      "properties": {
        "username": {
          "description": "Optional. The user account used to authenticate.",
          "type": "string"
        },
        "sshClientCertPass": {
          "$ref": "Secret",
          "description": "Optional. Password (passphrase) for ssh client certificate if it has one."
        },
        "sshClientCert": {
          "$ref": "Secret",
          "description": "Optional. SSH Client Cert. It should contain both public and private key."
        },
        "certType": {
          "description": "Optional. Format of SSH Client cert.",
          "type": "string"
        }
      },
      "description": "Parameters to support Ssh public key Authentication.",
      "type": "object",
      "id": "SshPublicKey"
    },
    "OAuthTokenData": {
      "description": "pass only at create and not update using updateMask Auth Code Data",
      "properties": {
        "refreshToken": {
          "$ref": "EUASecret",
          "description": "Optional. Refresh token for the connection."
        },
        "expiry": {
          "type": "string",
          "format": "google-duration",
          "description": "Optional. Time in seconds when the access token expires."
        },
        "createTime": {
          "type": "string",
          "format": "google-datetime",
          "description": "Optional. Timestamp when the access token was created."
        },
        "accessToken": {
          "$ref": "EUASecret",
          "description": "Optional. Access token for the connection."
        }
      },
      "id": "OAuthTokenData",
      "type": "object"
    },
    "RuntimeEntitySchema": {
      "id": "RuntimeEntitySchema",
      "description": "Schema of a runtime entity.",
      "type": "object",
      "properties": {
        "entity": {
          "readOnly": true,
          "description": "Output only. Name of the entity.",
          "type": "string"
        },
        "fields": {
          "items": {
            "$ref": "Field"
          },
          "readOnly": true,
          "description": "Output only. List of fields in the entity.",
          "type": "array"
        },
        "jsonSchema": {
          "$ref": "JsonSchema",
          "readOnly": true,
          "description": "Output only. JsonSchema representation of this entity's metadata"
        },
        "operations": {
          "description": "List of operations supported by this entity",
          "type": "array",
          "items": {
            "type": "string",
            "enumDescriptions": [
              "Operation unspecified.",
              "This operation means entity type supports LIST entities.",
              "This operation means entity type supports GET entity.",
              "This operation means entity type supports CREATE entity.",
              "This operation means entity type supports UPDATE entity.",
              "This operation means entity type supports DELETE entity."
            ],
            "enum": [
              "OPERATION_UNSPECIFIED",
              "LIST",
              "GET",
              "CREATE",
              "UPDATE",
              "DELETE"
            ]
          }
        }
      }
    },
    "ExtractionRules": {
      "type": "object",
      "properties": {
        "extractionRule": {
          "type": "array",
          "items": {
            "$ref": "ExtractionRule"
          },
          "description": "Collection of Extraction Rule."
        }
      },
      "id": "ExtractionRules",
      "description": "Extraction Rules to identity the backends from customer provided configuration in Connection resource."
    },
    "Date": {
      "id": "Date",
      "type": "object",
      "properties": {
        "year": {
          "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.",
          "format": "int32",
          "type": "integer"
        },
        "day": {
          "format": "int32",
          "type": "integer",
          "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": "integer",
          "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.",
          "format": "int32"
        }
      },
      "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp"
    },
    "EndPoint": {
      "properties": {
        "headers": {
          "items": {
            "$ref": "Header"
          },
          "type": "array",
          "description": "Optional. List of Header to be added to the Endpoint."
        },
        "endpointUri": {
          "description": "Optional. The URI of the Endpoint.",
          "type": "string"
        }
      },
      "id": "EndPoint",
      "description": "Endpoint message includes details of the Destination endpoint.",
      "type": "object"
    },
    "TestIamPermissionsResponse": {
      "type": "object",
      "properties": {
        "permissions": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed."
        }
      },
      "id": "TestIamPermissionsResponse",
      "description": "Response message for `TestIamPermissions` method."
    },
    "AuthObject": {
      "id": "AuthObject",
      "description": "AuthObject defines a JSON schema of an authentication type.",
      "properties": {
        "description": {
          "description": "Description of the object.",
          "type": "string"
        },
        "authType": {
          "description": "Auth type of the object.",
          "type": "string"
        },
        "additionalProperties": {
          "type": "boolean",
          "description": "Whether the object has additional properties."
        },
        "properties": {
          "additionalProperties": {
            "$ref": "AuthProperty"
          },
          "type": "object",
          "description": "Properties of the object."
        },
        "type": {
          "type": "string",
          "description": "Type of the object."
        },
        "authKey": {
          "type": "string",
          "description": "Auth key of the object."
        },
        "isDefault": {
          "type": "boolean",
          "description": "Whether the object is the default one."
        }
      },
      "type": "object"
    },
    "Schedule": {
      "id": "Schedule",
      "description": "Configure the schedule.",
      "type": "object",
      "properties": {
        "startTime": {
          "description": "Time within the window to start the operations.",
          "$ref": "TimeOfDay"
        },
        "duration": {
          "format": "google-duration",
          "description": "Output only. Duration of the time window, set by service producer.",
          "type": "string"
        },
        "day": {
          "enum": [
            "DAY_OF_WEEK_UNSPECIFIED",
            "MONDAY",
            "TUESDAY",
            "WEDNESDAY",
            "THURSDAY",
            "FRIDAY",
            "SATURDAY",
            "SUNDAY"
          ],
          "enumDescriptions": [
            "The day of the week is unspecified.",
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday",
            "Sunday"
          ],
          "description": "Allows to define schedule that runs specified day of the week.",
          "type": "string"
        }
      }
    },
    "EventSubscription": {
      "id": "EventSubscription",
      "description": "represents the Connector's EventSubscription resource",
      "properties": {
        "eventTypeId": {
          "type": "string",
          "description": "Optional. Event type id of the event of current EventSubscription."
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Created time.",
          "readOnly": true
        },
        "destinations": {
          "$ref": "EventSubscriptionDestination",
          "description": "Optional. The destination to hit when we receive an event"
        },
        "jms": {
          "description": "Optional. JMS is the source for the event listener.",
          "$ref": "JMS"
        },
        "status": {
          "description": "Optional. Status indicates the status of the event subscription resource",
          "$ref": "EventSubscriptionStatus"
        },
        "subscriberLink": {
          "description": "Optional. Link for Subscriber of the current EventSubscription.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "type": "string",
          "readOnly": true
        },
        "triggerConfigVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. Configuration for configuring the trigger",
          "type": "array"
        },
        "filter": {
          "type": "string",
          "description": "Optional. Filter for the event subscription. Incoming events are filtered based on the filter expression."
        },
        "name": {
          "type": "string",
          "description": "Required. Identifier. Resource name of the EventSubscription. Format: projects/{project}/locations/{location}/connections/{connection}/eventSubscriptions/{event_subscription}"
        },
        "subscriber": {
          "description": "Optional. name of the Subscriber for the current EventSubscription.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListOperationsResponse": {
      "id": "ListOperationsResponse",
      "properties": {
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations."
        },
        "operations": {
          "description": "A list of operations that matches the specified filter in the request.",
          "type": "array",
          "items": {
            "$ref": "Operation"
          }
        },
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        }
      },
      "description": "The response message for Operations.ListOperations.",
      "type": "object"
    },
    "UpdatePolicy": {
      "properties": {
        "window": {
          "description": "Optional. Maintenance window that is applied to resources covered by this policy.",
          "$ref": "MaintenanceWindow"
        },
        "denyMaintenancePeriods": {
          "items": {
            "$ref": "DenyMaintenancePeriod"
          },
          "type": "array",
          "description": "Deny Maintenance Period that is applied to resource to indicate when maintenance is forbidden. The protocol supports zero-to-many such periods, but the current SLM Rollout implementation only supports zero-to-one."
        },
        "channel": {
          "enum": [
            "UPDATE_CHANNEL_UNSPECIFIED",
            "EARLIER",
            "LATER",
            "WEEK1",
            "WEEK2",
            "WEEK5"
          ],
          "enumDescriptions": [
            "Unspecified channel.",
            "Early channel within a customer project.",
            "Later channel within a customer project.",
            "! ! The follow channels can ONLY be used if you adopt the new MW system! ! ! NOTE: all WEEK channels are assumed to be under a weekly window. ! There is currently no dedicated channel definitions for Daily windows. ! If you use Daily window, the system will assume a 1d (24Hours) advanced ! notification period b/w EARLY and LATER. ! We may consider support more flexible daily channel specifications in ! the future. WEEK1 == EARLIER with minimum 7d advanced notification. {7d, 14d} The system will treat them equally and will use WEEK1 whenever it can. New customers are encouraged to use this channel annotation.",
            "WEEK2 == LATER with minimum 14d advanced notification {14d, 21d}.",
            "WEEK5 == 40d support. minimum 35d advanced notification {35d, 42d}."
          ],
          "description": "Optional. Relative scheduling channel applied to resource.",
          "type": "string"
        }
      },
      "id": "UpdatePolicy",
      "description": "Maintenance policy applicable to instance updates.",
      "type": "object"
    },
    "Destination": {
      "properties": {
        "host": {
          "description": "For publicly routable host.",
          "type": "string"
        },
        "serviceAttachment": {
          "type": "string",
          "description": "PSC service attachments. Format: projects/*/regions/*/serviceAttachments/*",
          "deprecated": true
        },
        "port": {
          "format": "int32",
          "description": "Optional. The port is the target port number that is accepted by the destination.",
          "type": "integer"
        }
      },
      "type": "object",
      "id": "Destination"
    },
    "Policy": {
      "id": "Policy",
      "properties": {
        "version": {
          "type": "integer",
          "description": "Specifies the format of the policy. Valid values are `0`, `1`, and `3`. Requests that specify an invalid value are rejected. Any operation that affects conditional role bindings must specify version `3`. This requirement applies to the following operations: * Getting a policy that includes a conditional role binding * Adding a conditional role binding to a policy * Changing a conditional role binding in a policy * Removing any role binding, with or without a condition, from a policy that includes conditions **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost. If a policy does not include any conditions, operations on that policy may specify any valid version or leave the field unset. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
          "format": "int32"
        },
        "bindings": {
          "items": {
            "$ref": "Binding"
          },
          "type": "array",
          "description": "Associates a list of `members`, or principals, with a `role`. Optionally, may specify a `condition` that determines how and when the `bindings` are applied. Each of the `bindings` must contain at least one principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; up to 250 of these principals can be Google groups. Each occurrence of a principal counts towards these limits. For example, if the `bindings` grant 50 different roles to `user:alice@example.com`, and not to any other principal, then you can add another 1,450 principals to the `bindings` in the `Policy`."
        },
        "etag": {
          "format": "byte",
          "type": "string",
          "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. **Important:** If you use IAM Conditions, you must include the `etag` field whenever you call `setIamPolicy`. If you omit this field, then IAM allows you to overwrite a version `3` policy with a version `1` policy, and all of the conditions in the version `3` policy are lost."
        },
        "auditConfigs": {
          "type": "array",
          "description": "Specifies cloud audit logging configuration for this policy.",
          "items": {
            "$ref": "AuditConfig"
          }
        }
      },
      "type": "object",
      "description": "An Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A `Policy` is a collection of `bindings`. A `binding` binds one or more `members`, or principals, to a single `role`. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A `role` is a named list of permissions; each `role` can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a `binding` can also specify a `condition`, which is a logical expression that allows access to a resource only if the expression evaluates to `true`. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** ``` { \"bindings\": [ { \"role\": \"roles/resourcemanager.organizationAdmin\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-project-id@appspot.gserviceaccount.com\" ] }, { \"role\": \"roles/resourcemanager.organizationViewer\", \"members\": [ \"user:eve@example.com\" ], \"condition\": { \"title\": \"expirable access\", \"description\": \"Does not grant access after Sep 2020\", \"expression\": \"request.time \u003c timestamp('2020-10-01T00:00:00.000Z')\", } } ], \"etag\": \"BwWWja0YfJA=\", \"version\": 3 } ``` **YAML example:** ``` bindings: - members: - user:mike@example.com - group:admins@example.com - domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.com role: roles/resourcemanager.organizationViewer condition: title: expirable access description: Does not grant access after Sep 2020 expression: request.time \u003c timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, see the [IAM documentation](https://cloud.google.com/iam/docs/)."
    },
    "Binding": {
      "description": "Associates `members`, or principals, with a `role`.",
      "id": "Binding",
      "properties": {
        "members": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Specifies the principals requesting access for a Google Cloud resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a user that has been recently deleted. For example, `alice@example.com?uid=123456789012345678901`. If the user is recovered, this value reverts to `user:{emailid}` and the recovered user retains the role in the binding. * `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a service account that has been recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the service account is undeleted, this value reverts to `serviceAccount:{emailid}` and the undeleted service account retains the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email address (plus unique identifier) representing a Google group that has been recently deleted. For example, `admins@example.com?uid=123456789012345678901`. If the group is recovered, this value reverts to `group:{emailid}` and the recovered group retains the role in the binding. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`."
        },
        "condition": {
          "description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
          "$ref": "Expr"
        },
        "role": {
          "description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "NetworkEgressModeOverride": {
      "properties": {
        "networkEgressMode": {
          "enum": [
            "NETWORK_EGRESS_MODE_UNSPECIFIED",
            "SERVERLESS_VPC_ACCESS_CONNECTOR",
            "DIRECT_VPC_EGRESS"
          ],
          "description": "Determines the VPC Egress mode for the connector.",
          "enumDescriptions": [
            "Network Egress mode is not specified.",
            "Default model VPC Access Connector.",
            "Direct VPC Egress."
          ],
          "type": "string"
        },
        "isEventingOverrideEnabled": {
          "description": "boolean should be set to true to make sure only eventing enabled connections are migrated to direct vpc egress.",
          "type": "boolean"
        },
        "isJobsOverrideEnabled": {
          "description": "boolean should be set to true to make sure only async operations enabled connections are migrated to direct vpc egress.",
          "type": "boolean"
        }
      },
      "description": "NetworkEgressModeOverride provides the network egress mode override for a connector.",
      "id": "NetworkEgressModeOverride",
      "type": "object"
    },
    "ModifyConnectionToolspecOverrideResponse": {
      "description": "Response message for ModifyConnectionToolspecOverride API.",
      "properties": {
        "toolspecOverrides": {
          "description": "Toolspec overrides for the connection.",
          "$ref": "ToolspecOverride"
        }
      },
      "type": "object",
      "id": "ModifyConnectionToolspecOverrideResponse"
    },
    "SchemaRefreshConfig": {
      "description": "Config for connection schema refresh",
      "properties": {
        "useSynchronousSchemaRefresh": {
          "description": "Whether to use synchronous schema refresh.",
          "type": "boolean"
        },
        "useActionDisplayNames": {
          "description": "Whether to use displayName for actions in UI.",
          "type": "boolean"
        }
      },
      "id": "SchemaRefreshConfig",
      "type": "object"
    },
    "WebhookData": {
      "type": "object",
      "properties": {
        "id": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. ID to uniquely identify webhook."
        },
        "updateTime": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Timestamp when the webhook was last updated.",
          "format": "google-datetime"
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Timestamp when the webhook was created.",
          "readOnly": true
        },
        "eventTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "description": "Output only. List of event types for the webhook. This is the event types subscribed by the current webhook."
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Output only. Additional webhook related field values.",
          "readOnly": true,
          "type": "array"
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Name of the Webhook"
        },
        "nextRefreshTime": {
          "type": "string",
          "readOnly": true,
          "format": "google-datetime",
          "description": "Output only. Next webhook refresh time. Will be null if refresh is not supported."
        },
        "eventSubscriptions": {
          "description": "Output only. List of event subscriptions which are using the webhook.",
          "readOnly": true,
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "description": "WebhookData has details of webhook configuration.",
      "id": "WebhookData"
    },
    "EndUserAuthenticationNotifyEndpointDestinationEndPoint": {
      "type": "object",
      "description": "Endpoint message includes details of the Destination endpoint.",
      "properties": {
        "headers": {
          "description": "Optional. List of Header to be added to the Endpoint.",
          "items": {
            "$ref": "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader"
          },
          "type": "array"
        },
        "endpointUri": {
          "type": "string",
          "description": "Required. The URI of the Endpoint."
        }
      },
      "id": "EndUserAuthenticationNotifyEndpointDestinationEndPoint"
    },
    "AuthSchema": {
      "type": "object",
      "description": "AuthSchema defines the schema of an authentication type.",
      "properties": {
        "isDefault": {
          "description": "Whether the auth schema is the default one.",
          "type": "boolean"
        },
        "description": {
          "type": "string",
          "description": "Description of the schema."
        },
        "authType": {
          "enum": [
            "AUTH_TYPE_UNSPECIFIED",
            "USER_PASSWORD",
            "OAUTH2_JWT_BEARER",
            "OAUTH2_CLIENT_CREDENTIALS",
            "SSH_PUBLIC_KEY",
            "OAUTH2_AUTH_CODE_FLOW",
            "GOOGLE_AUTHENTICATION",
            "OAUTH2_AUTH_CODE_FLOW_GOOGLE_MANAGED"
          ],
          "enumDescriptions": [
            "Authentication type not specified.",
            "Username and Password Authentication.",
            "JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication",
            "Oauth 2.0 Client Credentials Grant Authentication",
            "SSH Public Key Authentication",
            "Oauth 2.0 Authorization Code Flow",
            "Google authentication",
            "Oauth 2.0 Authorization Code Flow with Google Provided OAuth Client"
          ],
          "type": "string",
          "description": "Auth type of the schema."
        },
        "displayName": {
          "description": "Display name of the schema.",
          "type": "string"
        },
        "authFields": {
          "type": "array",
          "items": {
            "$ref": "AuthField"
          },
          "description": "List of AuthFields."
        },
        "authKey": {
          "type": "string",
          "description": "Auth key of the schema."
        }
      },
      "id": "AuthSchema"
    },
    "InputParameter": {
      "id": "InputParameter",
      "description": "Metadata of an input parameter.",
      "type": "object",
      "properties": {
        "defaultValue": {
          "type": "any",
          "description": "The following field specifies the default value of the Parameter provided by the external system if a value is not provided."
        },
        "description": {
          "description": "A brief description of the Parameter.",
          "type": "string"
        },
        "parameter": {
          "description": "Name of the Parameter.",
          "type": "string"
        },
        "dataType": {
          "enumDescriptions": [
            "Data type is not specified.",
            "DEPRECATED! Use DATA_TYPE_INTEGER.",
            "Short integer(int16) data type.",
            "Double data type.",
            "Date data type.",
            "DEPRECATED! Use DATA_TYPE_TIMESTAMP.",
            "Time data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "DEPRECATED! Use DATA_TYPE_BIGINT.",
            "Boolean data type.",
            "Decimal data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "UNSUPPORTED! Binary data type.",
            "Bit data type.",
            "Small integer(int8) data type.",
            "Integer(int32) data type.",
            "Long integer(int64) data type.",
            "Float data type.",
            "Real data type.",
            "Numeric data type.",
            "Char data type.",
            "Varchar data type.",
            "Longvarchar data type.",
            "Timestamp data type.",
            "Nchar data type.",
            "Nvarchar data type.",
            "Longnvarchar data type.",
            "Null data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Row id data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Variable binary data type.",
            "UNSUPPORTED! Long variable binary data type.",
            "UNSUPPORTED! NCLOB data type.",
            "UNSUPPORTED! SQL XML data type is not supported.",
            "UNSUPPORTED! Cursor reference type is not supported.",
            "UNSUPPORTED! Use TIME or TIMESTAMP instead.",
            "UNSUPPORTED! Use TIMESTAMP instead."
          ],
          "description": "The data type of the Parameter.",
          "enumDeprecated": [
            false,
            true,
            false,
            false,
            false,
            true,
            false,
            true,
            true,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "enum": [
            "DATA_TYPE_UNSPECIFIED",
            "DATA_TYPE_INT",
            "DATA_TYPE_SMALLINT",
            "DATA_TYPE_DOUBLE",
            "DATA_TYPE_DATE",
            "DATA_TYPE_DATETIME",
            "DATA_TYPE_TIME",
            "DATA_TYPE_STRING",
            "DATA_TYPE_LONG",
            "DATA_TYPE_BOOLEAN",
            "DATA_TYPE_DECIMAL",
            "DATA_TYPE_UUID",
            "DATA_TYPE_BLOB",
            "DATA_TYPE_BIT",
            "DATA_TYPE_TINYINT",
            "DATA_TYPE_INTEGER",
            "DATA_TYPE_BIGINT",
            "DATA_TYPE_FLOAT",
            "DATA_TYPE_REAL",
            "DATA_TYPE_NUMERIC",
            "DATA_TYPE_CHAR",
            "DATA_TYPE_VARCHAR",
            "DATA_TYPE_LONGVARCHAR",
            "DATA_TYPE_TIMESTAMP",
            "DATA_TYPE_NCHAR",
            "DATA_TYPE_NVARCHAR",
            "DATA_TYPE_LONGNVARCHAR",
            "DATA_TYPE_NULL",
            "DATA_TYPE_OTHER",
            "DATA_TYPE_JAVA_OBJECT",
            "DATA_TYPE_DISTINCT",
            "DATA_TYPE_STRUCT",
            "DATA_TYPE_ARRAY",
            "DATA_TYPE_CLOB",
            "DATA_TYPE_REF",
            "DATA_TYPE_DATALINK",
            "DATA_TYPE_ROWID",
            "DATA_TYPE_BINARY",
            "DATA_TYPE_VARBINARY",
            "DATA_TYPE_LONGVARBINARY",
            "DATA_TYPE_NCLOB",
            "DATA_TYPE_SQLXML",
            "DATA_TYPE_REF_CURSOR",
            "DATA_TYPE_TIME_WITH_TIMEZONE",
            "DATA_TYPE_TIMESTAMP_WITH_TIMEZONE"
          ],
          "type": "string"
        },
        "nullable": {
          "type": "boolean",
          "description": "Specifies whether a null value is allowed."
        },
        "jsonSchema": {
          "$ref": "JsonSchema",
          "description": "JsonSchema representation of this action's parameter"
        }
      }
    },
    "ValidateCustomConnectorSpecResponse": {
      "type": "object",
      "properties": {
        "errorMessage": {
          "description": "Error message. The spec is valid if the error message is empty.",
          "type": "string"
        }
      },
      "description": "Response message for ConnectorsService.ValidateCustomConnectorSpec",
      "id": "ValidateCustomConnectorSpecResponse"
    },
    "WebhookSubscriptions": {
      "type": "object",
      "description": "WebhookSubscriptions has details of webhook subscriptions.",
      "id": "WebhookSubscriptions",
      "properties": {
        "webhookData": {
          "type": "array",
          "description": "Output only. Webhook data.",
          "readOnly": true,
          "items": {
            "$ref": "WebhookData"
          }
        }
      }
    },
    "MaintenanceSettings": {
      "type": "object",
      "id": "MaintenanceSettings",
      "description": "Maintenance settings associated with instance. Allows service producers and end users to assign settings that controls maintenance on this instance.",
      "properties": {
        "isRollback": {
          "description": "Optional. If the update call is triggered from rollback, set the value as true.",
          "type": "boolean"
        },
        "exclude": {
          "type": "boolean",
          "description": "Optional. Exclude instance from maintenance. When true, rollout service will not attempt maintenance on the instance. Rollout service will include the instance in reported rollout progress as not attempted."
        },
        "maintenancePolicies": {
          "description": "Optional. The MaintenancePolicies that have been attached to the instance. The key must be of the type name of the oneof policy name defined in MaintenancePolicy, and the embedded policy must define the same policy type. For details, please refer to go/mr-user-guide. Should not be set if maintenance_policy_names is set. If only the name is needed, then only populate MaintenancePolicy.name.",
          "additionalProperties": {
            "$ref": "MaintenancePolicy"
          },
          "type": "object"
        }
      }
    },
    "GenerateConnectionToolspecOverrideRequest": {
      "id": "GenerateConnectionToolspecOverrideRequest",
      "type": "object",
      "properties": {
        "toolNames": {
          "items": {
            "$ref": "ToolName"
          },
          "type": "array",
          "description": "Required. List of tools for which the tool spec override is to be generated."
        }
      },
      "description": "Request message for GenerateConnectionToolspecOverride API."
    },
    "Source": {
      "type": "object",
      "description": "Source to extract the backend from.",
      "properties": {
        "fieldId": {
          "description": "Field identifier. For example config variable name.",
          "type": "string"
        },
        "sourceType": {
          "enum": [
            "SOURCE_TYPE_UNSPECIFIED",
            "CONFIG_VARIABLE",
            "AUTH_CONFIG_VARIABLE"
          ],
          "enumDescriptions": [
            "Default SOURCE.",
            "Config Variable source type.",
            "Auth Config Variable source type."
          ],
          "description": "Type of the source.",
          "type": "string"
        }
      },
      "id": "Source"
    },
    "EgressControlConfig": {
      "id": "EgressControlConfig",
      "type": "object",
      "properties": {
        "accessMode": {
          "type": "string",
          "enumDescriptions": [
            "The default value. Per best practices (go/protodosdonts#unspecified-enum), the first value should be UNSPECIFIED and have a tag of 0. Application logic should treat this the same as RESTRICTED.",
            "Enforce the allowlist. Only projects in 'allowlisted_project_numbers' are permitted.",
            "Allow all projects. 'allowlisted_project_numbers' is ignored."
          ],
          "description": "Optional. Access mode for egress control.",
          "enum": [
            "ACCESS_MODE_UNSPECIFIED",
            "RESTRICTED",
            "ALLOW_ALL"
          ]
        },
        "extractionRules": {
          "$ref": "ExtractionRules",
          "description": "Extractions Rules to extract the backends from customer provided configuration.",
          "deprecated": true
        },
        "launchEnvironment": {
          "description": "Launch environment for egress control.",
          "enumDescriptions": [
            "Default value. If not specified, the launch environment will default to AUTOPUSH.",
            "Autopush environment.",
            "Staging environment.",
            "Prod environment."
          ],
          "enum": [
            "LAUNCH_ENVIRONMENT_UNSPECIFIED",
            "AUTOPUSH",
            "STAGING",
            "PROD"
          ],
          "type": "string"
        },
        "backends": {
          "description": "Static Comma separated backends which are common for all Connection resources. Supported formats for each backend are host:port or just host (host can be ip address or domain name).",
          "type": "string"
        },
        "additionalExtractionRules": {
          "description": "Additional extraction rules to identity the backends from customer provided configuration in Connection resource. These rules are applied in addition to the ones specified in `oneof_backends`.",
          "$ref": "ExtractionRules"
        },
        "allowlistedProjectNumbers": {
          "items": {
            "type": "string"
          },
          "description": "Optional. Used when access_mode is RESTRICTED or ACCESS_MODE_UNSPECIFIED.",
          "type": "array"
        }
      },
      "description": "Egress control config for connector runtime. These configurations define the rules to identify which outbound domains/hosts needs to be whitelisted. It may be a static information for a particular connector version or it is derived from the configurations provided by the customer in Connection resource."
    },
    "HPAConfig": {
      "type": "object",
      "description": "Autoscaling config for connector deployment system metrics.",
      "id": "HPAConfig",
      "properties": {
        "cpuUtilizationThreshold": {
          "description": "Output only. Percent CPU utilization where HPA triggers autoscaling.",
          "readOnly": true,
          "format": "int64",
          "type": "string"
        },
        "memoryUtilizationThreshold": {
          "readOnly": true,
          "description": "Output only. Percent Memory utilization where HPA triggers autoscaling.",
          "format": "int64",
          "type": "string"
        }
      }
    },
    "ExtractionRule": {
      "type": "object",
      "description": "Extraction Rule.",
      "id": "ExtractionRule",
      "properties": {
        "extractionRegex": {
          "description": "Regex used to extract backend details from source. If empty, whole source value will be used.",
          "type": "string"
        },
        "source": {
          "description": "Source on which the rule is applied.",
          "$ref": "Source"
        },
        "formatString": {
          "description": "Format string used to format the extracted backend details. If empty, extracted backend details will be returned as it is.",
          "type": "string"
        }
      }
    },
    "StandardAction": {
      "type": "object",
      "id": "StandardAction",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the standard action."
        }
      },
      "description": "Standard action"
    },
    "SslConfig": {
      "id": "SslConfig",
      "description": "SSL Configuration of a connection",
      "type": "object",
      "properties": {
        "privateServerCertificate": {
          "description": "Optional. Private Server Certificate. Needs to be specified if trust model is `PRIVATE`.",
          "$ref": "Secret"
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. Additional SSL related field values",
          "type": "array"
        },
        "clientCertType": {
          "enumDescriptions": [
            "Cert type unspecified.",
            "Privacy Enhanced Mail (PEM) Type"
          ],
          "type": "string",
          "enum": [
            "CERT_TYPE_UNSPECIFIED",
            "PEM"
          ],
          "description": "Optional. Type of Client Cert (PEM/JKS/.. etc.)"
        },
        "useSsl": {
          "description": "Optional. Bool for enabling SSL",
          "type": "boolean"
        },
        "serverCertType": {
          "enum": [
            "CERT_TYPE_UNSPECIFIED",
            "PEM"
          ],
          "description": "Optional. Type of Server Cert (PEM/JKS/.. etc.)",
          "enumDescriptions": [
            "Cert type unspecified.",
            "Privacy Enhanced Mail (PEM) Type"
          ],
          "type": "string"
        },
        "type": {
          "type": "string",
          "enum": [
            "SSL_TYPE_UNSPECIFIED",
            "TLS",
            "MTLS"
          ],
          "enumDescriptions": [
            "No SSL configuration required.",
            "TLS Handshake",
            "mutual TLS (MTLS) Handshake"
          ],
          "description": "Optional. Controls the ssl type for the given connector version."
        },
        "clientCertificate": {
          "description": "Optional. Client Certificate",
          "$ref": "Secret"
        },
        "clientPrivateKey": {
          "description": "Optional. Client Private Key",
          "$ref": "Secret"
        },
        "clientPrivateKeyPass": {
          "description": "Optional. Secret containing the passphrase protecting the Client Private Key",
          "$ref": "Secret"
        },
        "trustModel": {
          "enumDescriptions": [
            "Public Trust Model. Takes the Default Java trust store.",
            "Private Trust Model. Takes custom/private trust store.",
            "Insecure Trust Model. Accept all certificates."
          ],
          "enum": [
            "PUBLIC",
            "PRIVATE",
            "INSECURE"
          ],
          "description": "Optional. Trust Model of the SSL connection",
          "type": "string"
        }
      }
    },
    "ListEventSubscriptionsResponse": {
      "type": "object",
      "id": "ListEventSubscriptionsResponse",
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        },
        "eventSubscriptions": {
          "type": "array",
          "items": {
            "$ref": "EventSubscription"
          },
          "description": "Subscriptions."
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached.",
          "type": "array"
        }
      },
      "description": "Response message for ConnectorsService.ListEventSubscriptions"
    },
    "AuditLogConfig": {
      "properties": {
        "exemptedMembers": {
          "description": "Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "logType": {
          "type": "string",
          "enumDescriptions": [
            "Default case. Should never be this.",
            "Admin reads. Example: CloudIAM getIamPolicy",
            "Data writes. Example: CloudSQL Users create",
            "Data reads. Example: CloudSQL Users list"
          ],
          "description": "The log type that this config enables.",
          "enum": [
            "LOG_TYPE_UNSPECIFIED",
            "ADMIN_READ",
            "DATA_WRITE",
            "DATA_READ"
          ]
        }
      },
      "id": "AuditLogConfig",
      "description": "Provides the configuration for logging a type of permissions. Example: { \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ logging.",
      "type": "object"
    },
    "Oauth2ClientCredentials": {
      "type": "object",
      "description": "Parameters to support Oauth 2.0 Client Credentials Grant Authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details.",
      "id": "Oauth2ClientCredentials",
      "properties": {
        "clientSecret": {
          "$ref": "Secret",
          "description": "Optional. Secret version reference containing the client secret."
        },
        "clientId": {
          "description": "Optional. The client identifier.",
          "type": "string"
        }
      }
    },
    "RefreshConnectionSchemaMetadataRequest": {
      "type": "object",
      "description": "Request message for ConnectorsService.RefreshConnectionSchemaMetadata.",
      "properties": {},
      "id": "RefreshConnectionSchemaMetadataRequest"
    },
    "DeprecateCustomConnectorVersionRequest": {
      "description": "Request message for ConnectorsService.DeprecateCustomConnectorVersion",
      "type": "object",
      "id": "DeprecateCustomConnectorVersionRequest",
      "properties": {}
    },
    "ListConnectorsResponse": {
      "description": "Response message for Connectors.ListConnectors.",
      "properties": {
        "connectors": {
          "items": {
            "$ref": "Connector"
          },
          "description": "A list of connectors.",
          "type": "array"
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached.",
          "type": "array"
        },
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        }
      },
      "type": "object",
      "id": "ListConnectorsResponse"
    },
    "WeeklyCycle": {
      "properties": {
        "schedule": {
          "description": "User can specify multiple windows in a week. Minimum of 1 window.",
          "items": {
            "$ref": "Schedule"
          },
          "type": "array"
        }
      },
      "description": "Time window specified for weekly operations.",
      "type": "object",
      "id": "WeeklyCycle"
    },
    "ResultMetadata": {
      "properties": {
        "nullable": {
          "description": "Specifies whether a null value is allowed.",
          "type": "boolean"
        },
        "dataType": {
          "description": "The data type of the field.",
          "enumDeprecated": [
            false,
            true,
            false,
            false,
            false,
            true,
            false,
            true,
            true,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "enumDescriptions": [
            "Data type is not specified.",
            "DEPRECATED! Use DATA_TYPE_INTEGER.",
            "Short integer(int16) data type.",
            "Double data type.",
            "Date data type.",
            "DEPRECATED! Use DATA_TYPE_TIMESTAMP.",
            "Time data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "DEPRECATED! Use DATA_TYPE_BIGINT.",
            "Boolean data type.",
            "Decimal data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "UNSUPPORTED! Binary data type.",
            "Bit data type.",
            "Small integer(int8) data type.",
            "Integer(int32) data type.",
            "Long integer(int64) data type.",
            "Float data type.",
            "Real data type.",
            "Numeric data type.",
            "Char data type.",
            "Varchar data type.",
            "Longvarchar data type.",
            "Timestamp data type.",
            "Nchar data type.",
            "Nvarchar data type.",
            "Longnvarchar data type.",
            "Null data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Row id data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Variable binary data type.",
            "UNSUPPORTED! Long variable binary data type.",
            "UNSUPPORTED! NCLOB data type.",
            "UNSUPPORTED! SQL XML data type is not supported.",
            "UNSUPPORTED! Cursor reference type is not supported.",
            "UNSUPPORTED! Use TIME or TIMESTAMP instead.",
            "UNSUPPORTED! Use TIMESTAMP instead."
          ],
          "enum": [
            "DATA_TYPE_UNSPECIFIED",
            "DATA_TYPE_INT",
            "DATA_TYPE_SMALLINT",
            "DATA_TYPE_DOUBLE",
            "DATA_TYPE_DATE",
            "DATA_TYPE_DATETIME",
            "DATA_TYPE_TIME",
            "DATA_TYPE_STRING",
            "DATA_TYPE_LONG",
            "DATA_TYPE_BOOLEAN",
            "DATA_TYPE_DECIMAL",
            "DATA_TYPE_UUID",
            "DATA_TYPE_BLOB",
            "DATA_TYPE_BIT",
            "DATA_TYPE_TINYINT",
            "DATA_TYPE_INTEGER",
            "DATA_TYPE_BIGINT",
            "DATA_TYPE_FLOAT",
            "DATA_TYPE_REAL",
            "DATA_TYPE_NUMERIC",
            "DATA_TYPE_CHAR",
            "DATA_TYPE_VARCHAR",
            "DATA_TYPE_LONGVARCHAR",
            "DATA_TYPE_TIMESTAMP",
            "DATA_TYPE_NCHAR",
            "DATA_TYPE_NVARCHAR",
            "DATA_TYPE_LONGNVARCHAR",
            "DATA_TYPE_NULL",
            "DATA_TYPE_OTHER",
            "DATA_TYPE_JAVA_OBJECT",
            "DATA_TYPE_DISTINCT",
            "DATA_TYPE_STRUCT",
            "DATA_TYPE_ARRAY",
            "DATA_TYPE_CLOB",
            "DATA_TYPE_REF",
            "DATA_TYPE_DATALINK",
            "DATA_TYPE_ROWID",
            "DATA_TYPE_BINARY",
            "DATA_TYPE_VARBINARY",
            "DATA_TYPE_LONGVARBINARY",
            "DATA_TYPE_NCLOB",
            "DATA_TYPE_SQLXML",
            "DATA_TYPE_REF_CURSOR",
            "DATA_TYPE_TIME_WITH_TIMEZONE",
            "DATA_TYPE_TIMESTAMP_WITH_TIMEZONE"
          ],
          "type": "string"
        },
        "jsonSchema": {
          "$ref": "JsonSchema",
          "description": "JsonSchema representation of this action's result"
        },
        "field": {
          "type": "string",
          "description": "Name of the result field."
        },
        "defaultValue": {
          "type": "any",
          "description": "The following field specifies the default value of the Parameter provided by the external system if a value is not provided."
        },
        "description": {
          "type": "string",
          "description": "A brief description of the field."
        }
      },
      "description": "Metadata of result field.",
      "type": "object",
      "id": "ResultMetadata"
    },
    "AuthConfig": {
      "properties": {
        "userPassword": {
          "description": "UserPassword.",
          "$ref": "UserPassword"
        },
        "authType": {
          "type": "string",
          "description": "Optional. The type of authentication configured.",
          "enum": [
            "AUTH_TYPE_UNSPECIFIED",
            "USER_PASSWORD",
            "OAUTH2_JWT_BEARER",
            "OAUTH2_CLIENT_CREDENTIALS",
            "SSH_PUBLIC_KEY",
            "OAUTH2_AUTH_CODE_FLOW",
            "GOOGLE_AUTHENTICATION",
            "OAUTH2_AUTH_CODE_FLOW_GOOGLE_MANAGED"
          ],
          "enumDescriptions": [
            "Authentication type not specified.",
            "Username and Password Authentication.",
            "JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication",
            "Oauth 2.0 Client Credentials Grant Authentication",
            "SSH Public Key Authentication",
            "Oauth 2.0 Authorization Code Flow",
            "Google authentication",
            "Oauth 2.0 Authorization Code Flow with Google Provided OAuth Client"
          ]
        },
        "authKey": {
          "description": "Optional. Identifier key for auth config",
          "type": "string"
        },
        "sshPublicKey": {
          "$ref": "SshPublicKey",
          "description": "SSH Public Key."
        },
        "oauth2AuthCodeFlowGoogleManaged": {
          "$ref": "Oauth2AuthCodeFlowGoogleManaged",
          "description": "Oauth2AuthCodeFlowGoogleManaged."
        },
        "oauth2JwtBearer": {
          "$ref": "Oauth2JwtBearer",
          "description": "Oauth2JwtBearer."
        },
        "additionalVariables": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. List containing additional auth configs."
        },
        "oauth2ClientCredentials": {
          "$ref": "Oauth2ClientCredentials",
          "description": "Oauth2ClientCredentials."
        },
        "oauth2AuthCodeFlow": {
          "description": "Oauth2AuthCodeFlow.",
          "$ref": "Oauth2AuthCodeFlow"
        }
      },
      "type": "object",
      "description": "AuthConfig defines details of a authentication type.",
      "id": "AuthConfig"
    },
    "Oauth2AuthCodeFlowGoogleManaged": {
      "properties": {
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        },
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        },
        "scopes": {
          "description": "Required. Scopes the connection will request when the user performs the auth code flow.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "description": "Parameters to support Oauth 2.0 Auth Code Grant Authentication using Google Provided OAuth Client. See https://tools.ietf.org/html/rfc6749#section-1.3.1 for more details.",
      "id": "Oauth2AuthCodeFlowGoogleManaged"
    },
    "AdminFilters": {
      "id": "AdminFilters",
      "type": "object",
      "properties": {
        "filterType": {
          "type": "string",
          "enum": [
            "FILTER_TYPE_UNSPECIFIED",
            "INCLUSION",
            "EXCLUSION"
          ],
          "description": "Required. Type of the filter.",
          "enumDescriptions": [
            "Filter type is not specified.",
            "Only allow items matching the configured values.",
            "Disallow items matching the configured values."
          ]
        },
        "stringListValues": {
          "description": "Optional. List of string values.",
          "$ref": "StringListValues"
        },
        "filterKey": {
          "type": "string",
          "description": "Required. Unique name for the filter, e.g., \"SharePointSiteURL\", \"DocumentType\", \"ChatSpaceName\"."
        },
        "stringValue": {
          "description": "Optional. A single string value.",
          "type": "string"
        },
        "intValue": {
          "format": "int64",
          "type": "string",
          "description": "Optional. A single integer value."
        }
      },
      "description": "* AdminFilters defines a set of filters that can be applied to a connection. These are currently used by Gemini Enterprise connections."
    },
    "MaintenancePolicy": {
      "type": "object",
      "description": "Defines policies to service maintenance events.",
      "properties": {
        "updateTime": {
          "format": "google-datetime",
          "description": "Output only. The time when the resource was updated.",
          "type": "string"
        },
        "updatePolicy": {
          "description": "Maintenance policy applicable to instance update.",
          "$ref": "UpdatePolicy"
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. Resource labels to represent user provided metadata. Each label is a key-value pair, where both the key and the value are arbitrary strings provided by the user.",
          "type": "object"
        },
        "name": {
          "type": "string",
          "description": "Required. MaintenancePolicy name using the form: `projects/{project_id}/locations/{location_id}/maintenancePolicies/{maintenance_policy_id}` where {project_id} refers to a GCP consumer project ID, {location_id} refers to a GCP region/zone, {maintenance_policy_id} must be 1-63 characters long and match the regular expression `[a-z0-9]([-a-z0-9]*[a-z0-9])?`."
        },
        "description": {
          "description": "Optional. Description of what this policy is for. Create/Update methods return INVALID_ARGUMENT if the length is greater than 512.",
          "type": "string"
        },
        "state": {
          "description": "Optional. The state of the policy.",
          "enum": [
            "STATE_UNSPECIFIED",
            "READY",
            "DELETING"
          ],
          "type": "string",
          "enumDescriptions": [
            "Unspecified state.",
            "Resource is ready to be used.",
            "Resource is being deleted. It can no longer be attached to instances."
          ]
        },
        "createTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. The time when the resource was created."
        }
      },
      "id": "MaintenancePolicy"
    },
    "ListProvidersResponse": {
      "type": "object",
      "id": "ListProvidersResponse",
      "description": "Response message for Connectors.ListProviders.",
      "properties": {
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "providers": {
          "type": "array",
          "items": {
            "$ref": "Provider"
          },
          "description": "A list of providers."
        }
      }
    },
    "MaintenanceSchedule": {
      "type": "object",
      "description": "Maintenance schedule which is exposed to customer and potentially end user, indicating published upcoming future maintenance schedule",
      "properties": {
        "endTime": {
          "description": "The scheduled end time for the maintenance.",
          "format": "google-datetime",
          "type": "string"
        },
        "startTime": {
          "description": "The scheduled start time for the maintenance.",
          "format": "google-datetime",
          "type": "string"
        },
        "scheduleDeadlineTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "schedule_deadline_time is the time deadline any schedule start time cannot go beyond, including reschedule. It's normally the initial schedule start time plus maintenance window length (1 day or 1 week). Maintenance cannot be scheduled to start beyond this deadline."
        },
        "rolloutManagementPolicy": {
          "type": "string",
          "description": "The rollout management policy this maintenance schedule is associated with. When doing reschedule update request, the reschedule should be against this given policy."
        },
        "canReschedule": {
          "type": "boolean",
          "deprecated": true,
          "description": "This field is deprecated, and will be always set to true since reschedule can happen multiple times now. This field should not be removed until all service producers remove this for their customers."
        }
      },
      "id": "MaintenanceSchedule"
    },
    "AuthConfigTemplate": {
      "description": "AuthConfigTemplate defines required field over an authentication type.",
      "id": "AuthConfigTemplate",
      "properties": {
        "displayName": {
          "type": "string",
          "description": "Display name for authentication template."
        },
        "isDefault": {
          "description": "Whether the auth config is the default one.",
          "type": "boolean"
        },
        "description": {
          "type": "string",
          "description": "Connector specific description for an authentication template."
        },
        "authType": {
          "description": "The type of authentication configured.",
          "enumDescriptions": [
            "Authentication type not specified.",
            "Username and Password Authentication.",
            "JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication",
            "Oauth 2.0 Client Credentials Grant Authentication",
            "SSH Public Key Authentication",
            "Oauth 2.0 Authorization Code Flow",
            "Google authentication",
            "Oauth 2.0 Authorization Code Flow with Google Provided OAuth Client"
          ],
          "type": "string",
          "enum": [
            "AUTH_TYPE_UNSPECIFIED",
            "USER_PASSWORD",
            "OAUTH2_JWT_BEARER",
            "OAUTH2_CLIENT_CREDENTIALS",
            "SSH_PUBLIC_KEY",
            "OAUTH2_AUTH_CODE_FLOW",
            "GOOGLE_AUTHENTICATION",
            "OAUTH2_AUTH_CODE_FLOW_GOOGLE_MANAGED"
          ]
        },
        "configVariableTemplates": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "description": "Config variables to describe an `AuthConfig` for a `Connection`."
        },
        "authKey": {
          "description": "Identifier key for auth config",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListConnectorVersionsResponse": {
      "id": "ListConnectorVersionsResponse",
      "properties": {
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "unreachable": {
          "type": "array",
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          }
        },
        "connectorVersions": {
          "type": "array",
          "description": "A list of connector versions.",
          "items": {
            "$ref": "ConnectorVersion"
          }
        }
      },
      "description": "Response message for Connectors.ListConnectorVersions.",
      "type": "object"
    },
    "EncryptionKey": {
      "id": "EncryptionKey",
      "type": "object",
      "properties": {
        "kmsKeyName": {
          "type": "string",
          "description": "Optional. The [KMS key name] with which the content of the Operation is encrypted. The expected format: `projects/*/locations/*/keyRings/*/cryptoKeys/*`. Will be empty string if google managed."
        },
        "type": {
          "description": "Optional. Specifies the type of the encryption key.",
          "enumDescriptions": [
            "Value type is not specified.",
            "Google Managed.",
            "Customer Managed."
          ],
          "enum": [
            "TYPE_UNSPECIFIED",
            "GOOGLE_MANAGED",
            "CUSTOMER_MANAGED"
          ],
          "type": "string"
        }
      },
      "description": "Encryption Key value."
    },
    "ValidateCustomConnectorSpecRequest": {
      "description": "Request message for ConnectorsService.ValidateCustomConnectorSpec",
      "type": "object",
      "properties": {
        "specType": {
          "enumDescriptions": [
            "Connector type is not specified.",
            "OpenAPI connector.",
            "Proto connector.",
            "SDK connector."
          ],
          "type": "string",
          "description": "Required. Spec type of the custom connector spec.",
          "enum": [
            "CUSTOM_CONNECTOR_TYPE_UNSPECIFIED",
            "OPEN_API",
            "PROTO",
            "SDK"
          ]
        },
        "serviceAccount": {
          "type": "string",
          "description": "Required. Service account to access the spec from Google Cloud Storage."
        },
        "specLocation": {
          "type": "string",
          "description": "Required. Location of the custom connector spec. The location can be either a public url like `https://public-url.com/spec` Or a Google Cloud Storage location like `gs:///`"
        }
      },
      "id": "ValidateCustomConnectorSpecRequest"
    },
    "ManagedZone": {
      "properties": {
        "targetVpc": {
          "description": "Required. The name of the Target Project VPC Network",
          "type": "string"
        },
        "targetProject": {
          "type": "string",
          "description": "Required. The name of the Target Project"
        },
        "updateTime": {
          "format": "google-datetime",
          "type": "string",
          "readOnly": true,
          "description": "Output only. Updated time."
        },
        "dns": {
          "type": "string",
          "description": "Required. DNS Name of the resource"
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "createTime": {
          "description": "Output only. Created time.",
          "format": "google-datetime",
          "type": "string",
          "readOnly": true
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Resource name of the Managed Zone. Format: projects/{project}/locations/global/managedZones/{managed_zone}",
          "type": "string"
        },
        "labels": {
          "description": "Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "description": "represents the Connector's Managed Zone resource",
      "id": "ManagedZone"
    },
    "AuthField": {
      "type": "object",
      "description": "AuthField defines a field in an authentication type.",
      "properties": {
        "dataType": {
          "type": "string",
          "description": "Data type of the field."
        },
        "key": {
          "type": "string",
          "description": "Key of the field."
        },
        "description": {
          "type": "string",
          "description": "Description of the field."
        }
      },
      "id": "AuthField"
    },
    "EndUserAuthenticationConfigOauth2AuthCodeFlow": {
      "description": "Parameters to support Oauth 2.0 Auth Code Grant Authentication. See https://www.rfc-editor.org/rfc/rfc6749#section-1.3.1 for more details.",
      "type": "object",
      "properties": {
        "scopes": {
          "description": "Optional. Scopes the connection will request when the user performs the auth code flow.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "clientSecret": {
          "$ref": "EUASecret",
          "description": "Optional. Client secret for user-provided OAuth app."
        },
        "oauthTokenData": {
          "$ref": "OAuthTokenData",
          "description": "Optional. Auth Code Data"
        },
        "enablePkce": {
          "type": "boolean",
          "description": "Optional. Whether to enable PKCE when the user performs the auth code flow."
        },
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        },
        "clientId": {
          "description": "Optional. Client ID for user-provided OAuth app.",
          "type": "string"
        },
        "pkceVerifier": {
          "description": "Optional. PKCE verifier to be used during the auth code exchange.",
          "type": "string"
        },
        "authUri": {
          "type": "string",
          "description": "Optional. Auth URL for Authorization Code Flow"
        },
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        }
      },
      "id": "EndUserAuthenticationConfigOauth2AuthCodeFlow"
    },
    "EventSubscriptionStatus": {
      "properties": {
        "description": {
          "readOnly": true,
          "description": "Output only. Description of the state.",
          "type": "string"
        },
        "state": {
          "readOnly": true,
          "enumDescriptions": [
            "Default state.",
            "EventSubscription creation is in progress.",
            "EventSubscription is in Updating status.",
            "EventSubscription is in Active state and is ready to receive events.",
            "EventSubscription is currently suspended.",
            "EventSubscription is in Error state."
          ],
          "type": "string",
          "description": "Output only. State of Event Subscription resource.",
          "enum": [
            "STATE_UNSPECIFIED",
            "CREATING",
            "UPDATING",
            "ACTIVE",
            "SUSPENDED",
            "ERROR"
          ]
        }
      },
      "id": "EventSubscriptionStatus",
      "type": "object",
      "description": "EventSubscription Status denotes the status of the EventSubscription resource."
    },
    "ListActionsResponse": {
      "type": "object",
      "id": "ListActionsResponse",
      "properties": {
        "actions": {
          "description": "list of actions",
          "items": {
            "$ref": "RuntimeActionSchema"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "token for next page",
          "type": "string"
        }
      },
      "description": "Response message for ListActions API"
    },
    "AuthProperty": {
      "description": "AuthProperty defines a property of an authentication type.",
      "properties": {
        "description": {
          "type": "string",
          "description": "Description of the property."
        },
        "type": {
          "description": "Type of the property.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "AuthProperty"
    },
    "SearchConnectionsResponse": {
      "properties": {
        "unreachable": {
          "type": "array",
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          }
        },
        "connections": {
          "items": {
            "$ref": "SearchConnectionInstance"
          },
          "description": "A list of connectors.",
          "type": "array"
        },
        "nextPageToken": {
          "description": "Optional. page_token",
          "type": "string"
        }
      },
      "description": "Response message for Connectors.SearchConnections.",
      "id": "SearchConnectionsResponse",
      "type": "object"
    },
    "Instance": {
      "type": "object",
      "properties": {
        "tenantProjectId": {
          "description": "Output only. ID of the associated GCP tenant project. See go/get-instance-metadata.",
          "readOnly": true,
          "type": "string"
        },
        "consumerDefinedName": {
          "description": "consumer_defined_name is the name of the instance set by the service consumers. Generally this is different from the `name` field which reperesents the system-assigned id of the instance which the service consumers do not recognize. This is a required field for tenants onboarding to Maintenance Window notifications (go/slm-rollout-maintenance-policies#prerequisites).",
          "type": "string"
        },
        "slmInstanceTemplate": {
          "description": "Link to the SLM instance template. Only populated when updating SLM instances via SSA's Actuation service adaptor. Service producers with custom control plane (e.g. Cloud SQL) doesn't need to populate this field. Instead they should use software_versions.",
          "type": "string"
        },
        "consumerProjectNumber": {
          "type": "string",
          "description": "Optional. The consumer_project_number associated with this Apigee instance. This field is added specifically to support Apigee integration with SLM Rollout and UMM. It represents the numerical project ID of the GCP project that consumes this Apigee instance. It is used for SLM rollout notifications and UMM integration, enabling proper mapping to customer projects and log delivery for Apigee instances. This field complements consumer_project_id and may be used for specific Apigee scenarios where the numerical ID is required."
        },
        "labels": {
          "description": "Optional. Resource labels to represent user provided metadata. Each label is a key-value pair, where both the key and the value are arbitrary strings provided by the user.",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "updateTime": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Timestamp when the resource was last modified.",
          "format": "google-datetime"
        },
        "maintenanceSchedules": {
          "description": "The MaintenanceSchedule contains the scheduling information of published maintenance schedule with same key as software_versions.",
          "type": "object",
          "additionalProperties": {
            "$ref": "MaintenanceSchedule"
          }
        },
        "provisionedResources": {
          "readOnly": true,
          "description": "Output only. The list of data plane resources provisioned for this instance, e.g. compute VMs. See go/get-instance-metadata.",
          "items": {
            "$ref": "ProvisionedResource"
          },
          "type": "array"
        },
        "state": {
          "readOnly": true,
          "type": "string",
          "enumDescriptions": [
            "Unspecified state.",
            "Instance is being created.",
            "Instance has been created and is ready to use.",
            "Instance is being updated.",
            "Instance is unheathy and under repair.",
            "Instance is being deleted.",
            "Instance encountered an error and is in indeterministic state."
          ],
          "description": "Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use).",
          "enum": [
            "STATE_UNSPECIFIED",
            "CREATING",
            "READY",
            "UPDATING",
            "REPAIRING",
            "DELETING",
            "ERROR"
          ]
        },
        "createTime": {
          "readOnly": true,
          "description": "Output only. Timestamp when the resource was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "maintenancePolicyNames": {
          "type": "object",
          "description": "Optional. The MaintenancePolicies that have been attached to the instance. The key must be of the type name of the oneof policy name defined in MaintenancePolicy, and the referenced policy must define the same policy type. For details, please refer to go/mr-user-guide. Should not be set if maintenance_settings.maintenance_policies is set.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "producerMetadata": {
          "description": "Output only. Custom string attributes used primarily to expose producer-specific information in monitoring dashboards. See go/get-instance-metadata.",
          "readOnly": true,
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "instanceType": {
          "description": "Optional. The instance_type of this instance of format: projects/{project_number}/locations/{location_id}/instanceTypes/{instance_type_id}. Instance Type represents a high-level tier or SKU of the service that this instance belong to. When enabled(eg: Maintenance Rollout), Rollout uses 'instance_type' along with 'software_versions' to determine whether instance needs an update or not.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Unique name of the resource. It uses the form: `projects/{project_number}/locations/{location_id}/instances/{instance_id}` Note: This name is passed, stored and logged across the rollout system. So use of consumer project_id or any other consumer PII in the name is strongly discouraged for wipeout (go/wipeout) compliance. See go/elysium/project_ids#storage-guidance for more details."
        },
        "softwareVersions": {
          "description": "Software versions that are used to deploy this instance. This can be mutated by rollout services.",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "sloMetadata": {
          "readOnly": true,
          "$ref": "SloMetadata",
          "description": "Output only. SLO metadata for instance classification in the Standardized dataplane SLO platform. See go/cloud-ssa-standard-slo for feature description."
        },
        "notificationParameters": {
          "additionalProperties": {
            "$ref": "NotificationParameter"
          },
          "type": "object",
          "description": "Optional. notification_parameter are information that service producers may like to include that is not relevant to Rollout. This parameter will only be passed to Gamma and Cloud Logging for notification/logging purpose."
        },
        "maintenanceSettings": {
          "$ref": "MaintenanceSettings",
          "description": "Optional. The MaintenanceSettings associated with instance."
        }
      },
      "id": "Instance",
      "description": "Instance represents the interface for SLM services to actuate the state of control plane resources. Example Instance in JSON, where consumer-project-number=123456, producer-project-id=cloud-sql: ```json Instance: { \"name\": \"projects/123456/locations/us-east1/instances/prod-instance\", \"create_time\": { \"seconds\": 1526406431, }, \"labels\": { \"env\": \"prod\", \"foo\": \"bar\" }, \"state\": READY, \"software_versions\": { \"software_update\": \"cloud-sql-09-28-2018\", }, \"maintenance_policy_names\": { \"UpdatePolicy\": \"projects/123456/locations/us-east1/maintenancePolicies/prod-update-policy\", } \"tenant_project_id\": \"cloud-sql-test-tenant\", \"producer_metadata\": { \"cloud-sql-tier\": \"basic\", \"cloud-sql-instance-size\": \"1G\", }, \"provisioned_resources\": [ { \"resource-type\": \"compute-instance\", \"resource-url\": \"https://www.googleapis.com/compute/v1/projects/cloud-sql/zones/us-east1-b/instances/vm-1\", } ], \"maintenance_schedules\": { \"csa_rollout\": { \"start_time\": { \"seconds\": 1526406431, }, \"end_time\": { \"seconds\": 1535406431, }, }, \"ncsa_rollout\": { \"start_time\": { \"seconds\": 1526406431, }, \"end_time\": { \"seconds\": 1535406431, }, } }, \"consumer_defined_name\": \"my-sql-instance1\", } ``` LINT.IfChange"
    },
    "FetchConnectionToolspecOverrideRequest": {
      "properties": {
        "toolNames": {
          "type": "array",
          "description": "Required. List of tools for which the tool spec override is to be generated.",
          "items": {
            "$ref": "ToolName"
          }
        }
      },
      "id": "FetchConnectionToolspecOverrideRequest",
      "description": "Request message for FetchConnectionToolspecOverride API.",
      "type": "object"
    },
    "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader": {
      "properties": {
        "key": {
          "type": "string",
          "description": "Required. Key of Header."
        },
        "value": {
          "type": "string",
          "description": "Required. Value of Header."
        }
      },
      "id": "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader",
      "description": "Header details for a given header to be added to Endpoint.",
      "type": "object"
    },
    "AuthorizationCodeLink": {
      "id": "AuthorizationCodeLink",
      "type": "object",
      "description": "This configuration captures the details required to render an authorization link for the OAuth Authorization Code Flow.",
      "properties": {
        "uri": {
          "description": "Optional. The base URI the user must click to trigger the authorization code login flow.",
          "type": "string"
        },
        "clientId": {
          "description": "Optional. The client ID assigned to the Google Cloud Connectors OAuth app for the connector data source.",
          "type": "string"
        },
        "clientSecret": {
          "description": "Optional. The client secret assigned to the Google Cloud Connectors OAuth app for the connector data source.",
          "$ref": "Secret"
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. The scopes for which the user will authorize Google Cloud Connectors on the connector data source."
        },
        "enablePkce": {
          "description": "Optional. Whether to enable PKCE for the auth code flow.",
          "type": "boolean"
        },
        "omitQueryParams": {
          "description": "Optional. Omit query params from the redirect URI.",
          "type": "boolean"
        }
      }
    },
    "EUASecret": {
      "properties": {
        "secretValue": {
          "description": "Optional. The plain string value of the secret.",
          "type": "string"
        },
        "secretVersion": {
          "description": "Optional. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.",
          "type": "string"
        }
      },
      "description": "EUASecret provides a reference to entries in Secret Manager.",
      "id": "EUASecret",
      "type": "object"
    },
    "ListEntityTypesResponse": {
      "type": "object",
      "description": "Response message for ListEntityTypes API",
      "id": "ListEntityTypesResponse",
      "properties": {
        "entityTypes": {
          "items": {
            "$ref": "RuntimeEntitySchema"
          },
          "description": "list of entity types",
          "type": "array"
        },
        "nextPageToken": {
          "type": "string",
          "description": "token for next page"
        }
      }
    },
    "TestIamPermissionsRequest": {
      "id": "TestIamPermissionsRequest",
      "description": "Request message for `TestIamPermissions` method.",
      "type": "object",
      "properties": {
        "permissions": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as `*` or `storage.*`) are not allowed. For more information see [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions)."
        }
      }
    },
    "RetryEventSubscriptionRequest": {
      "properties": {},
      "type": "object",
      "description": "Request message for ConnectorsService.RefreshEventSubscription",
      "id": "RetryEventSubscriptionRequest"
    },
    "EnrichmentConfig": {
      "id": "EnrichmentConfig",
      "type": "object",
      "description": "Data enrichment configuration.",
      "properties": {
        "appendAcl": {
          "type": "boolean",
          "description": "Optional. Append ACL to the event."
        }
      }
    },
    "LockConfig": {
      "description": "Determines whether or no a connection is locked. If locked, a reason must be specified.",
      "properties": {
        "locked": {
          "description": "Optional. Indicates whether or not the connection is locked.",
          "type": "boolean"
        },
        "reason": {
          "description": "Optional. Describes why a connection is locked.",
          "type": "string"
        }
      },
      "id": "LockConfig",
      "type": "object"
    },
    "DeadLetterConfig": {
      "description": "Dead Letter configuration details provided by the user.",
      "type": "object",
      "properties": {
        "projectId": {
          "type": "string",
          "description": "Optional. Project which has the topic given."
        },
        "topic": {
          "type": "string",
          "description": "Optional. Topic to push events which couldn't be processed."
        }
      },
      "id": "DeadLetterConfig"
    },
    "SetIamPolicyRequest": {
      "properties": {
        "updateMask": {
          "description": "OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only the fields in the mask will be modified. If no mask is provided, the following default mask is used: `paths: \"bindings, etag\"`",
          "type": "string",
          "format": "google-fieldmask"
        },
        "policy": {
          "$ref": "Policy",
          "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Google Cloud services (such as Projects) might reject them."
        }
      },
      "id": "SetIamPolicyRequest",
      "description": "Request message for `SetIamPolicy` method.",
      "type": "object"
    },
    "RegionalSettings": {
      "type": "object",
      "id": "RegionalSettings",
      "description": "Regional Settings details.",
      "properties": {
        "networkConfig": {
          "description": "Optional. Regional network config.",
          "$ref": "NetworkConfig"
        },
        "provisioned": {
          "description": "Output only. Specifies whether the region is provisioned.",
          "type": "boolean",
          "readOnly": true
        },
        "client": {
          "type": "string",
          "description": "Optional. Client type for the regional settings."
        },
        "encryptionConfig": {
          "$ref": "EncryptionConfig",
          "description": "Optional. Regional encryption config to hold CMEK details."
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/regionalSettings",
          "type": "string"
        }
      }
    },
    "EventingConfigTemplate": {
      "type": "object",
      "properties": {
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "description": "Additional fields that need to be rendered.",
          "type": "array"
        },
        "sslConfigTemplate": {
          "$ref": "SslConfigTemplate",
          "description": "SSL Config template for the connector version."
        },
        "enrichmentSupported": {
          "type": "boolean",
          "description": "Enrichment Supported."
        },
        "proxyDestinationConfig": {
          "$ref": "DestinationConfigTemplate",
          "description": "Proxy destination config template."
        },
        "authConfigTemplates": {
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "type": "array",
          "description": "AuthConfigTemplates represents the auth values for the webhook adapter."
        },
        "triggerConfigVariables": {
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "type": "array",
          "description": "Trigger Config fields that needs to be rendered"
        },
        "registrationDestinationConfig": {
          "description": "Registration host destination config template.",
          "$ref": "DestinationConfigTemplate"
        },
        "eventListenerType": {
          "enum": [
            "EVENT_LISTENER_TYPE_UNSPECIFIED",
            "WEBHOOK_LISTENER",
            "JMS_LISTENER"
          ],
          "description": "The type of the event listener for a specific connector.",
          "type": "string",
          "enumDescriptions": [
            "Default value.",
            "Webhook listener. e.g. Jira, Zendesk, Servicenow etc.,",
            "JMS Listener. e.g. IBM MQ, Rabbit MQ etc.,"
          ]
        },
        "isEventingSupported": {
          "type": "boolean",
          "description": "Is Eventing Supported."
        },
        "encryptionKeyTemplate": {
          "description": "Encryption key (can be either Google managed or CMEK).",
          "$ref": "ConfigVariableTemplate"
        },
        "listenerAuthConfigTemplates": {
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "description": "ListenerAuthConfigTemplates represents the auth values for the event listener.",
          "type": "array"
        },
        "autoRegistrationSupported": {
          "description": "Auto Registration supported.",
          "type": "boolean"
        },
        "autoRefresh": {
          "description": "Auto refresh to extend webhook life.",
          "type": "boolean"
        }
      },
      "description": "Eventing Config details of a connector version. next: 14",
      "id": "EventingConfigTemplate"
    },
    "ConfigVariable": {
      "description": "ConfigVariable represents a configuration variable present in a Connection. or AuthConfig.",
      "id": "ConfigVariable",
      "type": "object",
      "properties": {
        "intValue": {
          "description": "Optional. Value is an integer",
          "format": "int64",
          "type": "string"
        },
        "boolValue": {
          "description": "Optional. Value is a bool.",
          "type": "boolean"
        },
        "key": {
          "description": "Optional. Key of the config variable.",
          "type": "string"
        },
        "encryptionKeyValue": {
          "description": "Optional. Value is a Encryption Key.",
          "$ref": "EncryptionKey"
        },
        "stringValue": {
          "type": "string",
          "description": "Optional. Value is a string."
        },
        "secretValue": {
          "$ref": "Secret",
          "description": "Optional. Value is a secret."
        }
      }
    },
    "ModifyConnectionToolspecOverrideRequest": {
      "id": "ModifyConnectionToolspecOverrideRequest",
      "properties": {
        "toolspecOverride": {
          "$ref": "ToolspecOverride",
          "description": "Required. Toolspec overrides to be modified."
        }
      },
      "description": "Request message for ModifyConnectionToolspecOverride API.",
      "type": "object"
    },
    "DenyMaintenancePeriod": {
      "id": "DenyMaintenancePeriod",
      "type": "object",
      "properties": {
        "time": {
          "$ref": "TimeOfDay",
          "description": "Time in UTC when the Blackout period starts on start_date and ends on end_date. This can be: * Full time. * All zeros for 00:00:00 UTC"
        },
        "startDate": {
          "description": "Deny period start date. This can be: * A full date, with non-zero year, month and day values. * A month and day value, with a zero year. Allows recurring deny periods each year. Date matching this period will have to be the same or after the start.",
          "$ref": "Date"
        },
        "endDate": {
          "description": "Deny period end date. This can be: * A full date, with non-zero year, month and day values. * A month and day value, with a zero year. Allows recurring deny periods each year. Date matching this period will have to be before the end.",
          "$ref": "Date"
        }
      },
      "description": "DenyMaintenancePeriod definition. Maintenance is forbidden within the deny period. The start_date must be less than the end_date."
    },
    "CancelOperationRequest": {
      "properties": {},
      "id": "CancelOperationRequest",
      "description": "The request message for Operations.CancelOperation.",
      "type": "object"
    },
    "NodeConfig": {
      "id": "NodeConfig",
      "properties": {
        "minNodeCount": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. Minimum number of nodes in the runtime nodes."
        },
        "maxNodeCount": {
          "format": "int32",
          "type": "integer",
          "description": "Optional. Maximum number of nodes in the runtime nodes."
        }
      },
      "description": "Node configuration for the connection.",
      "type": "object"
    },
    "ConfigVariableTemplate": {
      "id": "ConfigVariableTemplate",
      "description": "ConfigVariableTemplate provides metadata about a `ConfigVariable` that is used in a Connection.",
      "properties": {
        "multipleSelectConfig": {
          "$ref": "MultipleSelectConfig",
          "description": "Optional. MultipleSelectConfig represents the multiple options for a config variable."
        },
        "roleGrant": {
          "description": "Optional. Role grant configuration for the config variable.",
          "$ref": "RoleGrant"
        },
        "enumOptions": {
          "description": "Optional. Enum options. To be populated if `ValueType` is `ENUM`",
          "type": "array",
          "items": {
            "$ref": "EnumOption"
          }
        },
        "displayName": {
          "description": "Optional. Display name of the parameter.",
          "type": "string"
        },
        "authorizationCodeLink": {
          "description": "Optional. Authorization code link options. To be populated if `ValueType` is `AUTHORIZATION_CODE`",
          "$ref": "AuthorizationCodeLink"
        },
        "key": {
          "type": "string",
          "description": "Optional. Key of the config variable."
        },
        "locationType": {
          "enumDescriptions": [
            "Location type unspecified.",
            "Request header.",
            "Request Payload.",
            "Request query param.",
            "Request path param."
          ],
          "description": "Optional. Location Type denotes where this value should be sent in BYOC connections.",
          "type": "string",
          "enum": [
            "LOCATION_TYPE_UNSPECIFIED",
            "HEADER",
            "PAYLOAD",
            "QUERY_PARAM",
            "PATH_PARAM"
          ]
        },
        "requiredCondition": {
          "$ref": "LogicalExpression",
          "description": "Optional. Condition under which a field would be required. The condition can be represented in the form of a logical expression."
        },
        "validationRegex": {
          "description": "Optional. Regular expression in RE2 syntax used for validating the `value` of a `ConfigVariable`.",
          "type": "string"
        },
        "description": {
          "description": "Optional. Description.",
          "type": "string"
        },
        "required": {
          "type": "boolean",
          "description": "Optional. Flag represents that this `ConfigVariable` must be provided for a connection."
        },
        "valueType": {
          "enum": [
            "VALUE_TYPE_UNSPECIFIED",
            "STRING",
            "INT",
            "BOOL",
            "SECRET",
            "ENUM",
            "AUTHORIZATION_CODE",
            "ENCRYPTION_KEY",
            "MULTIPLE_SELECT"
          ],
          "description": "Optional. Type of the parameter: string, int, bool etc. consider custom type for the benefit for the validation.",
          "type": "string",
          "enumDescriptions": [
            "Value type is not specified.",
            "Value type is string.",
            "Value type is integer.",
            "Value type is boolean.",
            "Value type is secret.",
            "Value type is enum.",
            "Value type is authorization code.",
            "Encryption Key.",
            "Value type is multiple select."
          ]
        },
        "isAdvanced": {
          "description": "Optional. Indicates if current template is part of advanced settings",
          "type": "boolean"
        },
        "enumSource": {
          "description": "Optional. enum source denotes the source of api to fill the enum options",
          "enum": [
            "ENUM_SOURCE_UNSPECIFIED",
            "EVENT_TYPES_API"
          ],
          "enumDescriptions": [
            "Api type unspecified.",
            "list event types."
          ],
          "type": "string"
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "DEPRECATED"
          ],
          "type": "string",
          "readOnly": true,
          "enumDescriptions": [
            "Status is unspecified.",
            "Config variable is active",
            "Config variable is deprecated."
          ],
          "description": "Output only. State of the config variable."
        }
      },
      "type": "object"
    },
    "BillingConfig": {
      "type": "object",
      "properties": {
        "billingCategory": {
          "enum": [
            "BILLING_CATEGORY_UNSPECIFIED",
            "GCP_AND_TECHNICAL_CONNECTOR",
            "NON_GCP_CONNECTOR"
          ],
          "type": "string",
          "enumDescriptions": [
            "Billing category is not specified.",
            "GCP/Technical connector.",
            "Non-GCP connector."
          ],
          "description": "Output only. Billing category for the connector.",
          "readOnly": true
        }
      },
      "id": "BillingConfig",
      "description": "Billing config for the connection."
    },
    "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims": {
      "properties": {
        "audience": {
          "type": "string",
          "description": "Value for the \"aud\" claim."
        },
        "subject": {
          "type": "string",
          "description": "Value for the \"sub\" claim."
        },
        "issuer": {
          "type": "string",
          "description": "Value for the \"iss\" claim."
        }
      },
      "type": "object",
      "id": "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims",
      "description": "JWT claims used for the jwt-bearer authorization grant."
    },
    "PublishCustomConnectorVersionRequest": {
      "description": "Request message for ConnectorsService.PublishCustomConnectorVersion",
      "id": "PublishCustomConnectorVersionRequest",
      "properties": {
        "partnerMetadata": {
          "description": "Required. Partner metadata details for validating and publishing the custom connector as a partner connector version.",
          "$ref": "PartnerMetadata"
        }
      },
      "type": "object"
    },
    "EndUserAuthenticationConfigUserPassword": {
      "properties": {
        "username": {
          "description": "Username.",
          "type": "string"
        },
        "password": {
          "description": "Required. string value or secret version reference containing the password.",
          "$ref": "EUASecret"
        }
      },
      "type": "object",
      "description": "Parameters to support Username and Password Authentication.",
      "id": "EndUserAuthenticationConfigUserPassword"
    },
    "Field": {
      "properties": {
        "readonly": {
          "description": "Specifies if the Field is readonly.",
          "type": "boolean"
        },
        "dataType": {
          "enum": [
            "DATA_TYPE_UNSPECIFIED",
            "DATA_TYPE_INT",
            "DATA_TYPE_SMALLINT",
            "DATA_TYPE_DOUBLE",
            "DATA_TYPE_DATE",
            "DATA_TYPE_DATETIME",
            "DATA_TYPE_TIME",
            "DATA_TYPE_STRING",
            "DATA_TYPE_LONG",
            "DATA_TYPE_BOOLEAN",
            "DATA_TYPE_DECIMAL",
            "DATA_TYPE_UUID",
            "DATA_TYPE_BLOB",
            "DATA_TYPE_BIT",
            "DATA_TYPE_TINYINT",
            "DATA_TYPE_INTEGER",
            "DATA_TYPE_BIGINT",
            "DATA_TYPE_FLOAT",
            "DATA_TYPE_REAL",
            "DATA_TYPE_NUMERIC",
            "DATA_TYPE_CHAR",
            "DATA_TYPE_VARCHAR",
            "DATA_TYPE_LONGVARCHAR",
            "DATA_TYPE_TIMESTAMP",
            "DATA_TYPE_NCHAR",
            "DATA_TYPE_NVARCHAR",
            "DATA_TYPE_LONGNVARCHAR",
            "DATA_TYPE_NULL",
            "DATA_TYPE_OTHER",
            "DATA_TYPE_JAVA_OBJECT",
            "DATA_TYPE_DISTINCT",
            "DATA_TYPE_STRUCT",
            "DATA_TYPE_ARRAY",
            "DATA_TYPE_CLOB",
            "DATA_TYPE_REF",
            "DATA_TYPE_DATALINK",
            "DATA_TYPE_ROWID",
            "DATA_TYPE_BINARY",
            "DATA_TYPE_VARBINARY",
            "DATA_TYPE_LONGVARBINARY",
            "DATA_TYPE_NCLOB",
            "DATA_TYPE_SQLXML",
            "DATA_TYPE_REF_CURSOR",
            "DATA_TYPE_TIME_WITH_TIMEZONE",
            "DATA_TYPE_TIMESTAMP_WITH_TIMEZONE"
          ],
          "enumDeprecated": [
            false,
            true,
            false,
            false,
            false,
            true,
            false,
            true,
            true,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "description": "The data type of the Field.",
          "enumDescriptions": [
            "Data type is not specified.",
            "DEPRECATED! Use DATA_TYPE_INTEGER.",
            "Short integer(int16) data type.",
            "Double data type.",
            "Date data type.",
            "DEPRECATED! Use DATA_TYPE_TIMESTAMP.",
            "Time data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "DEPRECATED! Use DATA_TYPE_BIGINT.",
            "Boolean data type.",
            "Decimal data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "UNSUPPORTED! Binary data type.",
            "Bit data type.",
            "Small integer(int8) data type.",
            "Integer(int32) data type.",
            "Long integer(int64) data type.",
            "Float data type.",
            "Real data type.",
            "Numeric data type.",
            "Char data type.",
            "Varchar data type.",
            "Longvarchar data type.",
            "Timestamp data type.",
            "Nchar data type.",
            "Nvarchar data type.",
            "Longnvarchar data type.",
            "Null data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Row id data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Variable binary data type.",
            "UNSUPPORTED! Long variable binary data type.",
            "UNSUPPORTED! NCLOB data type.",
            "UNSUPPORTED! SQL XML data type is not supported.",
            "UNSUPPORTED! Cursor reference type is not supported.",
            "UNSUPPORTED! Use TIME or TIMESTAMP instead.",
            "UNSUPPORTED! Use TIMESTAMP instead."
          ],
          "type": "string"
        },
        "key": {
          "type": "boolean",
          "description": "The following boolean field specifies if the current Field acts as a primary key or id if the parent is of type entity."
        },
        "field": {
          "type": "string",
          "description": "Name of the Field."
        },
        "jsonSchema": {
          "$ref": "JsonSchema",
          "description": "JsonSchema representation of this entity's schema"
        },
        "nullable": {
          "description": "Specifies whether a null value is allowed.",
          "type": "boolean"
        },
        "defaultValue": {
          "type": "any",
          "description": "The following field specifies the default value of the Field provided by the external system if a value is not provided."
        },
        "description": {
          "type": "string",
          "description": "A brief description of the Field."
        },
        "additionalDetails": {
          "type": "object",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          },
          "description": "The following map contains fields that are not explicitly mentioned above,this give connectors the flexibility to add new metadata fields."
        }
      },
      "id": "Field",
      "description": "Metadata of an entity field.",
      "type": "object"
    },
    "EventType": {
      "type": "object",
      "id": "EventType",
      "properties": {
        "eventPayloadSchema": {
          "description": "Output only. Schema of webhook event payload.",
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "type": "string",
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "readOnly": true
        },
        "entityType": {
          "readOnly": true,
          "description": "Output only. Runtime entity type name. Will be null if entity type map is not available. Used for read before send feature.",
          "type": "string"
        },
        "eventTypeId": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Event type id. Example: `ticket.created`."
        },
        "name": {
          "description": "Output only. Resource name of the eventtype. Format: projects/{project}/locations/{location}/providers/{provider}/connectors/{connector}/versions/{version}/eventtypes/{eventtype} Only global location is supported for Connector resource.",
          "type": "string",
          "readOnly": true
        },
        "createTime": {
          "description": "Output only. Created time.",
          "readOnly": true,
          "type": "string",
          "format": "google-datetime"
        },
        "enrichedEventPayloadSchema": {
          "type": "string",
          "description": "Output only. Schema of the event payload after enriched. Will be null if read before send is not supported.",
          "readOnly": true
        },
        "idPath": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Id path denotes the path of id in webhook payload."
        }
      },
      "description": "EventType includes fields."
    },
    "FieldComparison": {
      "id": "FieldComparison",
      "properties": {
        "boolValue": {
          "description": "Boolean value",
          "type": "boolean"
        },
        "key": {
          "description": "Optional. Key of the field.",
          "type": "string"
        },
        "comparator": {
          "type": "string",
          "enumDescriptions": [
            "The default value.",
            "The field value must be equal to the specified value.",
            "The field value must not be equal to the specified value."
          ],
          "description": "Optional. Comparator to use for comparing the field value.",
          "enum": [
            "COMPARATOR_UNSPECIFIED",
            "EQUALS",
            "NOT_EQUALS"
          ]
        },
        "stringValue": {
          "description": "String value",
          "type": "string"
        },
        "intValue": {
          "format": "int64",
          "type": "string",
          "description": "Integer value"
        }
      },
      "type": "object",
      "description": "Field that needs to be compared."
    },
    "EventingDetails": {
      "description": "Eventing Details message.",
      "properties": {
        "customEventTypes": {
          "readOnly": true,
          "description": "Output only. Custom Event Types.",
          "type": "boolean"
        },
        "documentationLink": {
          "type": "string",
          "description": "Output only. Link to public documentation.",
          "readOnly": true
        },
        "launchStage": {
          "type": "string",
          "readOnly": true,
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "description": "Output only. Eventing Launch Stage."
        },
        "searchTags": {
          "type": "array",
          "description": "Output only. Array of search keywords.",
          "items": {
            "type": "string"
          },
          "readOnly": true
        },
        "iconLocation": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Cloud storage location of the icon."
        },
        "name": {
          "description": "Output only. Name of the Eventing trigger.",
          "type": "string",
          "readOnly": true
        },
        "description": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Description."
        },
        "type": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The type of the event listener for a specific connector.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "WEBHOOK",
            "JMS"
          ],
          "enumDescriptions": [
            "Default value.",
            "Webhook listener. e.g. Jira, Zendesk, Servicenow etc.,",
            "JMS Listener. e.g. IBM MQ, Rabbit MQ etc.,"
          ]
        },
        "subscriptionType": {
          "type": "string",
          "enumDescriptions": [
            "Default value.",
            "Managed via admin credentials. Handles global or system-wide events.",
            "Managed via individual user credentials. Isolates data per user."
          ],
          "enum": [
            "SUBSCRIPTION_TYPE_UNSPECIFIED",
            "SHARED",
            "USER_SPECIFIC"
          ],
          "description": "The webhook model supported by this connector."
        }
      },
      "type": "object",
      "id": "EventingDetails"
    },
    "JsonSchema": {
      "id": "JsonSchema",
      "type": "object",
      "description": "JsonSchema representation of schema metadata",
      "properties": {
        "items": {
          "description": "Schema that applies to array values, applicable only if this is of type `array`.",
          "$ref": "JsonSchema"
        },
        "properties": {
          "type": "object",
          "description": "The child schemas, applicable only if this is of type `object`. The key is the name of the property and the value is the json schema that describes that property",
          "additionalProperties": {
            "$ref": "JsonSchema"
          }
        },
        "additionalProperties": {
          "$ref": "JsonSchema",
          "description": "Schema for additional properties."
        },
        "pattern": {
          "type": "string",
          "description": "Regex pattern of the string field. This is a string value that describes the regular expression that the string value should match."
        },
        "if": {
          "description": "Schema that must be valid if the \"if\" schema is valid.",
          "$ref": "JsonSchema"
        },
        "readOnly": {
          "description": "Whether the value is read-only.",
          "type": "boolean"
        },
        "oneOf": {
          "items": {
            "$ref": "JsonSchema"
          },
          "description": "Schema that must be valid against at least one of the sub-schemas.",
          "type": "array"
        },
        "maxProperties": {
          "description": "Maximum number of properties.",
          "type": "integer",
          "format": "int32"
        },
        "allOf": {
          "items": {
            "$ref": "JsonSchema"
          },
          "description": "Schema that must be valid against all of the sub-schemas.",
          "type": "array"
        },
        "else": {
          "$ref": "JsonSchema",
          "description": "Schema that must be valid if the \"if\" schema is invalid."
        },
        "exclusiveMinimum": {
          "type": "any",
          "description": "Whether the minimum number value is exclusive."
        },
        "writeOnly": {
          "type": "boolean",
          "description": "Whether the value is write-only."
        },
        "dependencies": {
          "type": "object",
          "description": "Dependencies for the schema.",
          "additionalProperties": {
            "type": "any"
          }
        },
        "maxLength": {
          "description": "Maximum length of the string field.",
          "format": "int32",
          "type": "integer"
        },
        "jdbcType": {
          "description": "JDBC datatype of the field.",
          "enum": [
            "DATA_TYPE_UNSPECIFIED",
            "DATA_TYPE_INT",
            "DATA_TYPE_SMALLINT",
            "DATA_TYPE_DOUBLE",
            "DATA_TYPE_DATE",
            "DATA_TYPE_DATETIME",
            "DATA_TYPE_TIME",
            "DATA_TYPE_STRING",
            "DATA_TYPE_LONG",
            "DATA_TYPE_BOOLEAN",
            "DATA_TYPE_DECIMAL",
            "DATA_TYPE_UUID",
            "DATA_TYPE_BLOB",
            "DATA_TYPE_BIT",
            "DATA_TYPE_TINYINT",
            "DATA_TYPE_INTEGER",
            "DATA_TYPE_BIGINT",
            "DATA_TYPE_FLOAT",
            "DATA_TYPE_REAL",
            "DATA_TYPE_NUMERIC",
            "DATA_TYPE_CHAR",
            "DATA_TYPE_VARCHAR",
            "DATA_TYPE_LONGVARCHAR",
            "DATA_TYPE_TIMESTAMP",
            "DATA_TYPE_NCHAR",
            "DATA_TYPE_NVARCHAR",
            "DATA_TYPE_LONGNVARCHAR",
            "DATA_TYPE_NULL",
            "DATA_TYPE_OTHER",
            "DATA_TYPE_JAVA_OBJECT",
            "DATA_TYPE_DISTINCT",
            "DATA_TYPE_STRUCT",
            "DATA_TYPE_ARRAY",
            "DATA_TYPE_CLOB",
            "DATA_TYPE_REF",
            "DATA_TYPE_DATALINK",
            "DATA_TYPE_ROWID",
            "DATA_TYPE_BINARY",
            "DATA_TYPE_VARBINARY",
            "DATA_TYPE_LONGVARBINARY",
            "DATA_TYPE_NCLOB",
            "DATA_TYPE_SQLXML",
            "DATA_TYPE_REF_CURSOR",
            "DATA_TYPE_TIME_WITH_TIMEZONE",
            "DATA_TYPE_TIMESTAMP_WITH_TIMEZONE"
          ],
          "enumDeprecated": [
            false,
            true,
            false,
            false,
            false,
            true,
            false,
            true,
            true,
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "type": "string",
          "enumDescriptions": [
            "Data type is not specified.",
            "DEPRECATED! Use DATA_TYPE_INTEGER.",
            "Short integer(int16) data type.",
            "Double data type.",
            "Date data type.",
            "DEPRECATED! Use DATA_TYPE_TIMESTAMP.",
            "Time data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "DEPRECATED! Use DATA_TYPE_BIGINT.",
            "Boolean data type.",
            "Decimal data type.",
            "DEPRECATED! Use DATA_TYPE_VARCHAR.",
            "UNSUPPORTED! Binary data type.",
            "Bit data type.",
            "Small integer(int8) data type.",
            "Integer(int32) data type.",
            "Long integer(int64) data type.",
            "Float data type.",
            "Real data type.",
            "Numeric data type.",
            "Char data type.",
            "Varchar data type.",
            "Longvarchar data type.",
            "Timestamp data type.",
            "Nchar data type.",
            "Nvarchar data type.",
            "Longnvarchar data type.",
            "Null data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Row id data type.",
            "UNSUPPORTED! Binary data type.",
            "UNSUPPORTED! Variable binary data type.",
            "UNSUPPORTED! Long variable binary data type.",
            "UNSUPPORTED! NCLOB data type.",
            "UNSUPPORTED! SQL XML data type is not supported.",
            "UNSUPPORTED! Cursor reference type is not supported.",
            "UNSUPPORTED! Use TIME or TIMESTAMP instead.",
            "UNSUPPORTED! Use TIMESTAMP instead."
          ]
        },
        "required": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Whether this property is required."
        },
        "minLength": {
          "type": "integer",
          "description": "Minimum length of the string field.",
          "format": "int32"
        },
        "maximum": {
          "type": "any",
          "description": "Maximum value of the number field."
        },
        "maxItems": {
          "format": "int32",
          "type": "integer",
          "description": "Maximum number of items in the array field."
        },
        "$defs": {
          "additionalProperties": {
            "$ref": "JsonSchema"
          },
          "description": "Definitions for the schema.",
          "type": "object"
        },
        "minimum": {
          "type": "any",
          "description": "Minimum value of the number field."
        },
        "$schema": {
          "description": "The URI defining the schema.",
          "type": "string"
        },
        "title": {
          "type": "string",
          "description": "A title of the schema."
        },
        "contentEncoding": {
          "description": "Encoding of the content.",
          "type": "string"
        },
        "additionalDetails": {
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          },
          "type": "object",
          "description": "Additional details apart from standard json schema fields, this gives flexibility to store metadata about the schema"
        },
        "$comment": {
          "description": "A comment on the schema.",
          "type": "string"
        },
        "minItems": {
          "description": "Minimum number of items in the array field.",
          "format": "int32",
          "type": "integer"
        },
        "$ref": {
          "type": "string",
          "description": "A reference to another schema."
        },
        "propertyNames": {
          "$ref": "JsonSchema",
          "description": "Schema for property names."
        },
        "type": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "JSON Schema Validation: A Vocabulary for Structural Validation of JSON"
        },
        "then": {
          "$ref": "JsonSchema",
          "description": "Schema that must be valid if the \"if\" schema is valid."
        },
        "format": {
          "description": "Format of the value as per https://json-schema.org/understanding-json-schema/reference/string.html#format",
          "type": "string"
        },
        "multipleOf": {
          "description": "Number must be a multiple of this value.",
          "type": "number",
          "format": "double"
        },
        "description": {
          "type": "string",
          "description": "A description of this schema."
        },
        "additionalItems": {
          "description": "Schema for additional items.",
          "$ref": "JsonSchema"
        },
        "default": {
          "type": "any",
          "description": "The default value of the field or object described by this schema."
        },
        "exclusiveMaximum": {
          "type": "any",
          "description": "Whether the maximum number value is exclusive."
        },
        "anyOf": {
          "items": {
            "$ref": "JsonSchema"
          },
          "description": "Schema that must be valid against at least one of the sub-schemas.",
          "type": "array"
        },
        "uniqueItems": {
          "type": "boolean",
          "description": "Whether the items in the array field are unique."
        },
        "examples": {
          "description": "Examples of the value.",
          "type": "array",
          "items": {
            "type": "any"
          }
        },
        "$id": {
          "description": "The URI defining the core schema meta-schema.",
          "type": "string"
        },
        "contains": {
          "$ref": "JsonSchema",
          "description": "Schema that applies to at least one item in an array."
        },
        "patternProperties": {
          "type": "object",
          "description": "Pattern properties for the schema.",
          "additionalProperties": {
            "$ref": "JsonSchema"
          }
        },
        "definitions": {
          "description": "Definitions for the schema.",
          "type": "object",
          "additionalProperties": {
            "$ref": "JsonSchema"
          }
        },
        "enum": {
          "description": "Possible values for an enumeration. This works in conjunction with `type` to represent types with a fixed set of legal values",
          "type": "array",
          "items": {
            "type": "any"
          }
        },
        "not": {
          "description": "Schema that must not be valid.",
          "$ref": "JsonSchema"
        },
        "minProperties": {
          "type": "integer",
          "description": "Minimum number of properties.",
          "format": "int32"
        },
        "contentMediaType": {
          "description": "Media type of the content.",
          "type": "string"
        },
        "const": {
          "description": "Const value that the data must match.",
          "type": "any"
        }
      }
    },
    "JMS": {
      "description": "JMS message denotes the source of the event",
      "type": "object",
      "id": "JMS",
      "properties": {
        "type": {
          "enumDescriptions": [
            "Default state.",
            "JMS Queue.",
            "JMS Topic."
          ],
          "enum": [
            "TYPE_UNSPECIFIED",
            "QUEUE",
            "TOPIC"
          ],
          "description": "Optional. Type of the JMS Source. i.e. Queue or Topic",
          "type": "string"
        },
        "name": {
          "description": "Optional. Name of the JMS source. i.e. queueName or topicName",
          "type": "string"
        }
      }
    },
    "EndUserAuthenticationConfig": {
      "id": "EndUserAuthenticationConfig",
      "description": "EndUserAuthenticationConfig defines details of a authentication configuration for EUC",
      "properties": {
        "oauth2ClientCredentials": {
          "description": "Oauth2ClientCredentials.",
          "$ref": "EndUserAuthenticationConfigOauth2ClientCredentials"
        },
        "authType": {
          "enumDescriptions": [
            "Authentication type not specified.",
            "Username and Password Authentication.",
            "JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication",
            "Oauth 2.0 Client Credentials Grant Authentication",
            "SSH Public Key Authentication",
            "Oauth 2.0 Authorization Code Flow",
            "Google authentication",
            "Oauth 2.0 Authorization Code Flow with Google Provided OAuth Client"
          ],
          "type": "string",
          "enum": [
            "AUTH_TYPE_UNSPECIFIED",
            "USER_PASSWORD",
            "OAUTH2_JWT_BEARER",
            "OAUTH2_CLIENT_CREDENTIALS",
            "SSH_PUBLIC_KEY",
            "OAUTH2_AUTH_CODE_FLOW",
            "GOOGLE_AUTHENTICATION",
            "OAUTH2_AUTH_CODE_FLOW_GOOGLE_MANAGED"
          ],
          "description": "The type of authentication configured."
        },
        "sshPublicKey": {
          "description": "SSH Public Key.",
          "$ref": "EndUserAuthenticationConfigSshPublicKey"
        },
        "additionalVariables": {
          "items": {
            "$ref": "EndUserAuthenticationConfigVariable"
          },
          "type": "array",
          "description": "Optional. List containing additional auth configs."
        },
        "oauth2JwtBearer": {
          "$ref": "EndUserAuthenticationConfigOauth2JwtBearer",
          "description": "Oauth2JwtBearer."
        },
        "oauth2AuthCodeFlowGoogleManaged": {
          "$ref": "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged",
          "description": "Oauth2AuthCodeFlowGoogleManaged."
        },
        "authKey": {
          "description": "Identifier key for auth config",
          "type": "string"
        },
        "oauth2AuthCodeFlow": {
          "$ref": "EndUserAuthenticationConfigOauth2AuthCodeFlow",
          "description": "Oauth2AuthCodeFlow."
        },
        "userPassword": {
          "description": "UserPassword.",
          "$ref": "EndUserAuthenticationConfigUserPassword"
        }
      },
      "type": "object"
    },
    "NetworkConfig": {
      "description": "Regional Network Config.",
      "id": "NetworkConfig",
      "type": "object",
      "properties": {
        "egressIps": {
          "readOnly": true,
          "description": "Output only. Egress IPs",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "egressMode": {
          "description": "Optional. Egress mode for the network.",
          "enumDescriptions": [
            "Egress mode unspecified.",
            "Network egress through auto assigned IPs.",
            "Network egress through static IPs."
          ],
          "enum": [
            "NETWORK_EGRESS_MODE_UNSPECIFIED",
            "AUTO_IP",
            "STATIC_IP"
          ],
          "type": "string"
        }
      }
    },
    "ListenEventRequest": {
      "type": "object",
      "properties": {
        "payload": {
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          },
          "description": "Optional. Request payload.",
          "type": "object"
        }
      },
      "description": "Expected request for ListenEvent API.",
      "id": "ListenEventRequest"
    },
    "ListEventTypesResponse": {
      "type": "object",
      "properties": {
        "eventTypes": {
          "type": "array",
          "items": {
            "$ref": "EventType"
          },
          "description": "A list of connector versions."
        },
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        }
      },
      "description": "Response message for Connectors.ListEventTypes.",
      "id": "ListEventTypesResponse"
    },
    "Operation": {
      "type": "object",
      "id": "Operation",
      "properties": {
        "error": {
          "description": "The error result of the operation in case of failure or cancellation.",
          "$ref": "Status"
        },
        "name": {
          "type": "string",
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`."
        },
        "metadata": {
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          },
          "type": "object",
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any."
        },
        "response": {
          "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
          "type": "object",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          }
        },
        "done": {
          "type": "boolean",
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available."
        }
      },
      "description": "This resource represents a long-running operation that is the result of a network API call."
    },
    "Settings": {
      "properties": {
        "tenantProjectId": {
          "readOnly": true,
          "description": "Output only. Tenant project id of the consumer project.",
          "type": "string"
        },
        "payg": {
          "description": "Output only. Flag indicates if user is in PayG model",
          "type": "boolean",
          "readOnly": true
        },
        "vpcsc": {
          "description": "Optional. Flag indicates whether vpc-sc is enabled.",
          "type": "boolean"
        },
        "name": {
          "type": "string",
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/global/settings}",
          "readOnly": true
        }
      },
      "type": "object",
      "description": "Global Settings details.",
      "id": "Settings"
    },
    "Connector": {
      "type": "object",
      "description": "Connectors indicates a specific connector type, e.x. Salesforce, SAP etc.",
      "properties": {
        "description": {
          "description": "Output only. Description of the resource.",
          "type": "string",
          "readOnly": true
        },
        "tags": {
          "description": "Output only. Tags of the connector.",
          "type": "array",
          "readOnly": true,
          "items": {
            "type": "string"
          }
        },
        "marketplaceConnectorDetails": {
          "description": "Output only. Marketplace connector details. Will be null if the connector is not marketplace connector.",
          "readOnly": true,
          "$ref": "MarketplaceConnectorDetails"
        },
        "connectorType": {
          "readOnly": true,
          "enumDescriptions": [
            "Default value.",
            "Google connectors.",
            "Technical connectors.",
            "Third Party connectors."
          ],
          "description": "Output only. The type of the connector.",
          "enum": [
            "CONNECTOR_TYPE_UNSPECIFIED",
            "CONNECTOR_TYPE_GOOGLE",
            "CONNECTOR_TYPE_TECHNICAL",
            "CONNECTOR_TYPE_THIRD_PARTY"
          ],
          "type": "string"
        },
        "displayName": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Display name."
        },
        "labels": {
          "readOnly": true,
          "additionalProperties": {
            "type": "string"
          },
          "description": "Output only. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "type": "object"
        },
        "documentationUri": {
          "readOnly": true,
          "description": "Output only. Link to documentation page.",
          "type": "string"
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Resource name of the Connector. Format: projects/{project}/locations/{location}/providers/{provider}/connectors/{connector} Only global location is supported for Connector resource."
        },
        "category": {
          "readOnly": true,
          "description": "Output only. Category of the connector.",
          "type": "string"
        },
        "createTime": {
          "readOnly": true,
          "description": "Output only. Created time.",
          "type": "string",
          "format": "google-datetime"
        },
        "externalUri": {
          "readOnly": true,
          "description": "Output only. Link to external page.",
          "type": "string"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Updated time.",
          "format": "google-datetime"
        },
        "eventingDetails": {
          "description": "Output only. Eventing details. Will be null if eventing is not supported.",
          "$ref": "EventingDetails",
          "readOnly": true
        },
        "launchStage": {
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "type": "string"
        },
        "webAssetsLocation": {
          "type": "string",
          "description": "Output only. Cloud storage location of icons etc consumed by UI.",
          "readOnly": true
        }
      },
      "id": "Connector"
    },
    "StringListValues": {
      "id": "StringListValues",
      "type": "object",
      "properties": {
        "listValues": {
          "type": "array",
          "description": "Required. The list of string values.",
          "items": {
            "type": "string"
          }
        }
      },
      "description": "StringListValues is a message to store a list of string values."
    },
    "EndUserAuthenticationConfigVariable": {
      "id": "EndUserAuthenticationConfigVariable",
      "description": "EndUserAuthenticationConfigVariable represents a configuration variable present in a EndUserAuthentication.",
      "properties": {
        "intValue": {
          "type": "string",
          "description": "Value is an integer",
          "format": "int64"
        },
        "key": {
          "type": "string",
          "description": "Required. Key of the config variable."
        },
        "stringValue": {
          "type": "string",
          "description": "Value is a string."
        },
        "secretValue": {
          "description": "Value is a secret",
          "$ref": "EUASecret"
        },
        "boolValue": {
          "description": "Value is a bool.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "DestinationConfigTemplate": {
      "type": "object",
      "description": "DestinationConfigTemplate defines required destinations supported by the Connector.",
      "properties": {
        "key": {
          "description": "Key of the destination.",
          "type": "string"
        },
        "regexPattern": {
          "type": "string",
          "description": "Regex pattern for host."
        },
        "description": {
          "description": "Description.",
          "type": "string"
        },
        "defaultPort": {
          "description": "The default port.",
          "type": "integer",
          "format": "int32"
        },
        "portFieldType": {
          "enum": [
            "FIELD_TYPE_UNSPECIFIED",
            "REQUIRED",
            "OPTIONAL",
            "NOT_USED"
          ],
          "description": "Whether port number should be provided by customers.",
          "enumDescriptions": [
            "",
            "",
            "",
            ""
          ],
          "type": "string"
        },
        "min": {
          "format": "int32",
          "type": "integer",
          "description": "The minimum number of destinations supported for this key."
        },
        "max": {
          "type": "integer",
          "description": "The maximum number of destinations supported for this key.",
          "format": "int32"
        },
        "isAdvanced": {
          "description": "Whether the current destination tempalate is part of Advanced settings",
          "type": "boolean"
        },
        "displayName": {
          "description": "Display name of the parameter.",
          "type": "string"
        },
        "autocompleteSuggestions": {
          "items": {
            "type": "string"
          },
          "description": "Autocomplete suggestions for destination URL field.",
          "type": "array"
        }
      },
      "id": "DestinationConfigTemplate"
    },
    "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged": {
      "properties": {
        "scopes": {
          "description": "Required. Scopes the connection will request when the user performs the auth code flow.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        },
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        },
        "oauthTokenData": {
          "description": "Auth Code Data",
          "$ref": "OAuthTokenData"
        }
      },
      "description": "Parameters to support Oauth 2.0 Auth Code Grant Authentication using Google Provided OAuth Client. See https://tools.ietf.org/html/rfc6749#section-1.3.1 for more details.",
      "type": "object",
      "id": "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged"
    },
    "RuntimeConfig": {
      "properties": {
        "name": {
          "readOnly": true,
          "description": "Output only. Name of the runtimeConfig resource. Format: projects/{project}/locations/{location}/runtimeConfig",
          "type": "string"
        },
        "runtimeEndpoint": {
          "type": "string",
          "description": "Output only. The endpoint of the connectors runtime ingress.",
          "readOnly": true
        },
        "controlPlaneTopic": {
          "description": "Output only. Pub/Sub topic for control plne to send message. communication. E.g. projects/{project-id}/topics/{topic-id}",
          "type": "string",
          "readOnly": true
        },
        "conndSubscription": {
          "type": "string",
          "description": "Output only. Pub/Sub subscription for connd to receive message. E.g. projects/{project-id}/subscriptions/{topic-id}",
          "readOnly": true
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "INACTIVE",
            "ACTIVATING",
            "ACTIVE",
            "CREATING",
            "DELETING",
            "UPDATING"
          ],
          "description": "Output only. The state of the location.",
          "readOnly": true,
          "type": "string",
          "enumDescriptions": [
            "STATE_UNSPECIFIED.",
            "INACTIVE.",
            "ACTIVATING.",
            "ACTIVE.",
            "CREATING.",
            "DELETING.",
            "UPDATING."
          ],
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false
          ]
        },
        "schemaGcsBucket": {
          "type": "string",
          "description": "Output only. The Cloud Storage bucket that stores connector's schema reports.",
          "readOnly": true
        },
        "controlPlaneSubscription": {
          "description": "Output only. Pub/Sub subscription for control plane to receive message. E.g. projects/{project-id}/subscriptions/{topic-id}",
          "type": "string",
          "readOnly": true
        },
        "locationId": {
          "description": "Output only. location_id of the runtime location. E.g. \"us-west1\".",
          "type": "string",
          "readOnly": true
        },
        "conndTopic": {
          "readOnly": true,
          "description": "Output only. Pub/Sub topic for connd to send message. E.g. projects/{project-id}/topics/{topic-id}",
          "type": "string"
        },
        "serviceDirectory": {
          "type": "string",
          "description": "Output only. The name of the Service Directory service name.",
          "readOnly": true
        }
      },
      "type": "object",
      "id": "RuntimeConfig",
      "description": "RuntimeConfig is the singleton resource of each location. It includes generic resource configs consumed by control plane and runtime plane like: pub/sub topic/subscription resource name, Cloud Storage location storing schema etc."
    },
    "ListCustomConnectorVersionsResponse": {
      "type": "object",
      "id": "ListCustomConnectorVersionsResponse",
      "description": "Response message for Connectors.ListCustomConnectorVersions.",
      "properties": {
        "customConnectorVersions": {
          "description": "A list of connector versions.",
          "type": "array",
          "items": {
            "$ref": "CustomConnectorVersion"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        },
        "unreachable": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached."
        }
      }
    },
    "EndUserAuthenticationNotifyEndpointDestination": {
      "id": "EndUserAuthenticationNotifyEndpointDestination",
      "properties": {
        "serviceAccount": {
          "description": "Required. Service account needed for runtime plane to notify the backend.",
          "type": "string"
        },
        "endpoint": {
          "description": "Optional. OPTION 1: Hit an endpoint when the refresh token is expired.",
          "$ref": "EndUserAuthenticationNotifyEndpointDestinationEndPoint"
        },
        "type": {
          "enumDescriptions": [
            "Default state.",
            "Endpoint - Hit the value of endpoint when event is received"
          ],
          "description": "Required. type of the destination",
          "enum": [
            "TYPE_UNSPECIFIED",
            "ENDPOINT"
          ],
          "type": "string"
        }
      },
      "description": "Message for NotifyEndpointDestination Destination to hit when the refresh token is expired.",
      "type": "object"
    },
    "Status": {
      "id": "Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "type": "integer",
          "format": "int32"
        },
        "details": {
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array",
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use."
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "type": "object"
    },
    "CustomConnector": {
      "id": "CustomConnector",
      "type": "object",
      "description": "CustomConnector represents the custom connector defined by the customer as part of byoc.",
      "properties": {
        "createTime": {
          "description": "Output only. Created time.",
          "readOnly": true,
          "type": "string",
          "format": "google-datetime"
        },
        "logo": {
          "description": "Optional. Logo of the resource.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Identifier. Resource name of the CustomConnector. Format: projects/{project}/locations/{location}/customConnectors/{connector}"
        },
        "allConnectorVersions": {
          "readOnly": true,
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Output only. All connector versions."
        },
        "allMarketplaceVersions": {
          "description": "Output only. All marketplace versions.",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "publishedMarketplaceVersions": {
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. Published marketplace versions."
        },
        "activeConnectorVersions": {
          "readOnly": true,
          "description": "Output only. Active connector versions.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "updateTime": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Updated time.",
          "format": "google-datetime"
        },
        "customConnectorType": {
          "enumDescriptions": [
            "Connector type is not specified.",
            "OpenAPI connector.",
            "Proto connector.",
            "SDK connector."
          ],
          "description": "Required. Type of the custom connector.",
          "enum": [
            "CUSTOM_CONNECTOR_TYPE_UNSPECIFIED",
            "OPEN_API",
            "PROTO",
            "SDK"
          ],
          "type": "string"
        },
        "labels": {
          "description": "Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "displayName": {
          "description": "Optional. Display name.",
          "type": "string"
        }
      }
    },
    "ListenEventResponse": {
      "id": "ListenEventResponse",
      "description": "Expected response for ListenEvent API.",
      "type": "object",
      "properties": {}
    },
    "SslConfigTemplate": {
      "id": "SslConfigTemplate",
      "type": "object",
      "properties": {
        "sslType": {
          "description": "Controls the ssl type for the given connector version",
          "enumDescriptions": [
            "No SSL configuration required.",
            "TLS Handshake",
            "mutual TLS (MTLS) Handshake"
          ],
          "enum": [
            "SSL_TYPE_UNSPECIFIED",
            "TLS",
            "MTLS"
          ],
          "type": "string"
        },
        "additionalVariables": {
          "type": "array",
          "description": "Any additional fields that need to be rendered",
          "items": {
            "$ref": "ConfigVariableTemplate"
          }
        },
        "serverCertType": {
          "type": "array",
          "description": "List of supported Server Cert Types",
          "items": {
            "type": "string",
            "enumDescriptions": [
              "Cert type unspecified.",
              "Privacy Enhanced Mail (PEM) Type"
            ],
            "enum": [
              "CERT_TYPE_UNSPECIFIED",
              "PEM"
            ]
          }
        },
        "clientCertType": {
          "type": "array",
          "items": {
            "enum": [
              "CERT_TYPE_UNSPECIFIED",
              "PEM"
            ],
            "enumDescriptions": [
              "Cert type unspecified.",
              "Privacy Enhanced Mail (PEM) Type"
            ],
            "type": "string"
          },
          "description": "List of supported Client Cert Types"
        },
        "isTlsMandatory": {
          "description": "Boolean for determining if the connector version mandates TLS.",
          "type": "boolean"
        }
      },
      "description": "Ssl config details of a connector version"
    },
    "ConnectionSchemaMetadata": {
      "description": "ConnectionSchemaMetadata is the singleton resource of each connection. It includes the entity and action names of runtime resources exposed by a connection backend.",
      "type": "object",
      "properties": {
        "refreshTime": {
          "readOnly": true,
          "format": "google-datetime",
          "description": "Output only. Timestamp when the connection runtime schema refresh was triggered.",
          "type": "string"
        },
        "errorMessage": {
          "type": "string",
          "description": "Error message for users."
        },
        "actions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Output only. List of actions.",
          "readOnly": true
        },
        "entities": {
          "description": "Output only. List of entity names.",
          "readOnly": true,
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Resource name. Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata"
        },
        "state": {
          "enumDescriptions": [
            "Default state.",
            "Schema refresh is in progress.",
            "Schema has been updated.",
            "Schema refresh for metadata is in progress.",
            "Schema metadata has been updated.",
            "Failed to refresh schema metadata",
            "Triggered full schema refresh",
            "Updated full schema"
          ],
          "type": "string",
          "readOnly": true,
          "description": "Output only. The current state of runtime schema.",
          "enum": [
            "STATE_UNSPECIFIED",
            "REFRESHING",
            "UPDATED",
            "REFRESHING_SCHEMA_METADATA",
            "UPDATED_SCHEMA_METADATA",
            "REFRESH_SCHEMA_METADATA_FAILED",
            "REFRESHING_FULL_SCHEMA",
            "UPDATED_FULL_SCHEMA"
          ]
        },
        "updateTime": {
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Timestamp when the connection runtime schema was updated.",
          "readOnly": true
        }
      },
      "id": "ConnectionSchemaMetadata"
    },
    "Secret": {
      "description": "Secret provides a reference to entries in Secret Manager.",
      "properties": {
        "secretVersion": {
          "description": "Optional. The resource name of the secret version in the format, format as: `projects/*/secrets/*/versions/*`.",
          "type": "string"
        }
      },
      "type": "object",
      "id": "Secret"
    },
    "Empty": {
      "id": "Empty",
      "properties": {},
      "type": "object",
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }"
    },
    "EventingStatus": {
      "id": "EventingStatus",
      "properties": {
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "ERROR",
            "INGRESS_ENDPOINT_REQUIRED"
          ],
          "enumDescriptions": [
            "Default state.",
            "Eventing is enabled and ready to receive events.",
            "Eventing is not active due to an error.",
            "Ingress endpoint required."
          ],
          "type": "string",
          "description": "Output only. State.",
          "readOnly": true
        },
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Description of error if State is set to \"ERROR\"."
        }
      },
      "description": "EventingStatus indicates the state of eventing.",
      "type": "object"
    },
    "EnumOption": {
      "id": "EnumOption",
      "type": "object",
      "properties": {
        "displayName": {
          "type": "string",
          "description": "Optional. Display name of the option."
        },
        "id": {
          "type": "string",
          "description": "Optional. Id of the option."
        }
      },
      "description": "EnumOption definition"
    },
    "PartnerMetadata": {
      "type": "object",
      "id": "PartnerMetadata",
      "properties": {
        "confirmPartnerRequirements": {
          "type": "boolean",
          "description": "Required. Confirmation that connector meets all applicable requirements mentioned in the Partner Connector Publishing requirements list and Partner onboardiong requirements list (https://cloud.google.com/marketplace/docs/partners/get-started#requirements)."
        },
        "useCases": {
          "type": "string",
          "description": "Required. Details about partner connector use cases."
        },
        "publishRequestTime": {
          "readOnly": true,
          "format": "google-datetime",
          "type": "string",
          "description": "Output only. Publish request time."
        },
        "marketplaceProductId": {
          "type": "string",
          "description": "Required. Marketplace product ID."
        },
        "demoUri": {
          "type": "string",
          "description": "Required. Public URL for the demo video."
        },
        "targetCustomerSegment": {
          "type": "string",
          "description": "Required. Target customer segment for the partner connector."
        },
        "localSpecPath": {
          "description": "Output only. Local spec path. Required if has_dynamic_spec_uri is true.",
          "type": "string",
          "readOnly": true
        },
        "marketplaceProductProjectId": {
          "description": "Optional. Marketplace product project ID.",
          "type": "string"
        },
        "hasDynamicSpecUri": {
          "description": "Output only. Has dynamic open api spec uri.",
          "readOnly": true,
          "type": "boolean"
        },
        "marketplaceProductUri": {
          "type": "string",
          "description": "Optional. Marketplace product URL."
        },
        "integrationTemplates": {
          "description": "Required. Integration example templates for the custom connector.",
          "type": "string"
        },
        "marketplaceProduct": {
          "type": "string",
          "description": "Optional. Marketplace product name."
        },
        "targetApplication": {
          "description": "Required. Target application for which partner connector is built.",
          "type": "string"
        },
        "additionalComments": {
          "description": "Optional. Additional comments for the submission.",
          "type": "string"
        },
        "partnerConnectorDisplayName": {
          "type": "string",
          "description": "Required. Partner connector display name."
        },
        "partner": {
          "description": "Required. Partner name.",
          "type": "string"
        },
        "acceptGcpTos": {
          "description": "Required. Whether the user has accepted the Google Cloud Platform Terms of Service (https://cloud.google.com/terms/) and the Google Cloud Marketplace Terms of Service (https://cloud.google.com/terms/marketplace/launcher?hl=en).",
          "type": "boolean"
        }
      },
      "description": "Partner metadata details. This will be populated when publishing the custom connector as a partner connector version. On publishing, parntner connector version will be created using the fields in PartnerMetadata."
    },
    "Location": {
      "properties": {
        "name": {
          "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`",
          "type": "string"
        },
        "displayName": {
          "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".",
          "type": "string"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata. For example the available capacity at the given location."
        },
        "locationId": {
          "type": "string",
          "description": "The canonical id for this location. For example: `\"us-east1\"`."
        },
        "labels": {
          "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        }
      },
      "description": "A resource that represents a Google Cloud location.",
      "type": "object",
      "id": "Location"
    },
    "GenerateConnectionToolspecOverrideResponse": {
      "type": "object",
      "id": "GenerateConnectionToolspecOverrideResponse",
      "properties": {
        "toolspecOverride": {
          "description": "Toolspec overrides for the connection.",
          "$ref": "ToolspecOverride"
        }
      },
      "description": "Response message for GenerateConnectionToolspecOverride API."
    },
    "MarketplaceConnectorDetails": {
      "properties": {
        "partner": {
          "description": "The name of the partner.",
          "type": "string"
        },
        "marketplaceProductId": {
          "type": "string",
          "description": "Marketplace product ID."
        },
        "marketplaceProductUri": {
          "type": "string",
          "description": "Marketplace product URL."
        },
        "marketplaceProduct": {
          "description": "Marketplace product name.",
          "type": "string"
        }
      },
      "description": "Marketplace connector details.",
      "id": "MarketplaceConnectorDetails",
      "type": "object"
    },
    "ProvisionedResource": {
      "description": "Describes provisioned dataplane resources.",
      "properties": {
        "resourceType": {
          "description": "Type of the resource. This can be either a GCP resource or a custom one (e.g. another cloud provider's VM). For GCP compute resources use singular form of the names listed in GCP compute API documentation (https://cloud.google.com/compute/docs/reference/rest/v1/), prefixed with 'compute-', for example: 'compute-instance', 'compute-disk', 'compute-autoscaler'.",
          "type": "string"
        },
        "resourceUrl": {
          "description": "URL identifying the resource, e.g. \"https://www.googleapis.com/compute/v1/projects/...)\".",
          "type": "string"
        }
      },
      "id": "ProvisionedResource",
      "type": "object"
    },
    "ListRuntimeEntitySchemasResponse": {
      "id": "ListRuntimeEntitySchemasResponse",
      "properties": {
        "runtimeEntitySchemas": {
          "type": "array",
          "description": "Runtime entity schemas.",
          "items": {
            "$ref": "RuntimeEntitySchema"
          }
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "Response message for ConnectorsService.ListRuntimeEntitySchemas."
    },
    "EndpointAttachment": {
      "description": "represents the Connector's Endpoint Attachment resource",
      "properties": {
        "state": {
          "description": "Output only. The Private Service Connect Connection Endpoint State. This value is only available in the Full view.",
          "enum": [
            "STATE_UNSPECIFIED",
            "PENDING",
            "ACCEPTED",
            "REJECTED",
            "CLOSED",
            "FROZEN",
            "NEEDS_ATTENTION",
            "ACCEPTED_NOT_PROGRAMMED"
          ],
          "enumDescriptions": [
            "STATE_UNSPECIFIED.",
            "The endpoint is pending acceptance by the producer.",
            "The endpoint has been accepted by the producer.",
            "The endpoint has been rejected by the producer.",
            "The endpoint has been closed by the producer and will not serve traffic going forward.",
            "The endpoint has been frozen by the producer and will not serve traffic.",
            "The endpoint has been accepted by the producer, but it is not ready to serve the traffic due to producer side issues.",
            "The endpoint has been accepted by the producer, but it cannot be programmed to the data plane due to invariant violation."
          ],
          "type": "string",
          "readOnly": true
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "type": "object"
        },
        "updateTime": {
          "readOnly": true,
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "type": "string"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Created time.",
          "format": "google-datetime"
        },
        "endpointIp": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. The Private Service Connect connection endpoint ip"
        },
        "serviceAttachment": {
          "type": "string",
          "description": "Required. The path of the service attachment"
        },
        "endpointGlobalAccess": {
          "type": "boolean",
          "description": "Optional. The Private Service Connect Connection Endpoint Global Access. https://cloud.google.com/vpc/docs/about-accessing-vpc-hosted-services-endpoints#global-access"
        },
        "name": {
          "description": "Output only. Resource name of the Endpoint Attachment. Format: projects/{project}/locations/{location}/endpointAttachments/{endpoint_attachment}",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "Optional. Description of the resource."
        }
      },
      "id": "EndpointAttachment",
      "type": "object"
    },
    "ConnectorsLogConfig": {
      "description": "Log configuration for the connection.",
      "id": "ConnectorsLogConfig",
      "type": "object",
      "properties": {
        "enabled": {
          "description": "Optional. Enabled represents whether logging is enabled or not for a connection.",
          "type": "boolean"
        },
        "level": {
          "type": "string",
          "description": "Optional. Log configuration level.",
          "enumDescriptions": [
            "Log level unspecified.",
            "Only error logs are enabled.",
            "Info and error logs are enabled.",
            "Debug and high verbosity logs are enabled."
          ],
          "enum": [
            "LOG_LEVEL_UNSPECIFIED",
            "ERROR",
            "INFO",
            "DEBUG"
          ]
        }
      }
    },
    "RoleGrant": {
      "id": "RoleGrant",
      "type": "object",
      "properties": {
        "resource": {
          "description": "Optional. Resource on which the roles needs to be granted for the principal.",
          "$ref": "Resource"
        },
        "helperTextTemplate": {
          "type": "string",
          "description": "Optional. Template that UI can use to provide helper text to customers."
        },
        "roles": {
          "description": "Optional. List of roles that need to be granted.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "principal": {
          "type": "string",
          "enumDescriptions": [
            "Value type is not specified.",
            "Service Account used for Connector workload identity This is either the default service account if unspecified or Service Account provided by Customers through BYOSA."
          ],
          "description": "Optional. Principal/Identity for whom the role need to assigned.",
          "enum": [
            "PRINCIPAL_UNSPECIFIED",
            "CONNECTOR_SA"
          ]
        }
      },
      "description": "This configuration defines all the Cloud IAM roles that needs to be granted to a particular Google Cloud resource for the selected principal like service account. These configurations will let UI display to customers what IAM roles need to be granted by them. Or these configurations can be used by the UI to render a 'grant' button to do the same on behalf of the user."
    },
    "DailyCycle": {
      "properties": {
        "startTime": {
          "description": "Time within the day to start the operations.",
          "$ref": "TimeOfDay"
        },
        "duration": {
          "description": "Output only. Duration of the time window, set by service producer.",
          "type": "string",
          "format": "google-duration"
        }
      },
      "type": "object",
      "id": "DailyCycle",
      "description": "Time window specified for daily operations."
    },
    "SupportedRuntimeFeatures": {
      "description": "Supported runtime features of a connector version.",
      "type": "object",
      "id": "SupportedRuntimeFeatures",
      "properties": {
        "entityApis": {
          "type": "boolean",
          "description": "Specifies if the connector supports entity apis like 'createEntity'."
        },
        "sqlQuery": {
          "description": "Specifies if the connector supports 'ExecuteSqlQuery' operation.",
          "type": "boolean"
        },
        "asyncOperations": {
          "type": "boolean",
          "description": "Specifies if the connector supports async long running operations."
        },
        "actionApis": {
          "type": "boolean",
          "description": "Specifies if the connector supports action apis like 'executeAction'."
        }
      }
    },
    "ConnectionStatus": {
      "properties": {
        "description": {
          "type": "string",
          "description": "Description."
        },
        "state": {
          "enumDescriptions": [
            "Connection does not have a state yet.",
            "Connection is being created.",
            "Connection is running and ready for requests.",
            "Connection is stopped.",
            "Connection is being deleted.",
            "Connection is being updated.",
            "Connection is not running due to an error.",
            "Connection is not running because the authorization configuration is not complete."
          ],
          "description": "State.",
          "type": "string",
          "enum": [
            "STATE_UNSPECIFIED",
            "CREATING",
            "ACTIVE",
            "INACTIVE",
            "DELETING",
            "UPDATING",
            "ERROR",
            "AUTHORIZATION_REQUIRED"
          ]
        },
        "status": {
          "description": "Status provides detailed information for the state.",
          "type": "string"
        }
      },
      "type": "object",
      "description": "ConnectionStatus indicates the state of the connection.",
      "id": "ConnectionStatus"
    },
    "WithdrawCustomConnectorVersionRequest": {
      "id": "WithdrawCustomConnectorVersionRequest",
      "description": "Request message for ConnectorsService.WithdrawCustomConnectorVersion",
      "properties": {},
      "type": "object"
    },
    "NodeSloMetadata": {
      "properties": {
        "nodeId": {
          "description": "The id of the node. This should be equal to SaasInstanceNode.node_id.",
          "type": "string"
        },
        "perSliEligibility": {
          "description": "If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs.",
          "$ref": "PerSliSloEligibility"
        },
        "location": {
          "type": "string",
          "description": "The location of the node, if different from instance location."
        }
      },
      "description": "Node information for custom per-node SLO implementations. SSA does not support per-node SLO, but producers can populate per-node information in SloMetadata for custom precomputations. SSA Eligibility Exporter will emit per-node metric based on this information.",
      "type": "object",
      "id": "NodeSloMetadata"
    },
    "StandardEntity": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the standard entity."
        }
      },
      "type": "object",
      "id": "StandardEntity",
      "description": "Standard entity"
    },
    "ListLocationsResponse": {
      "type": "object",
      "properties": {
        "locations": {
          "type": "array",
          "description": "A list of locations that matches the specified filter in the request.",
          "items": {
            "$ref": "Location"
          }
        },
        "nextPageToken": {
          "type": "string",
          "description": "The standard List next-page token."
        }
      },
      "id": "ListLocationsResponse",
      "description": "The response message for Locations.ListLocations."
    },
    "RepairEventingRequest": {
      "properties": {},
      "type": "object",
      "id": "RepairEventingRequest",
      "description": "Request message for ConnectorsService.RepairEventing"
    },
    "ToolspecOverride": {
      "properties": {
        "baseVersion": {
          "description": "Required. Represents the base version of the toolspec for which admin has added overrides.",
          "type": "string"
        },
        "createTime": {
          "description": "Output only. Created time.",
          "type": "string",
          "format": "google-datetime",
          "readOnly": true
        },
        "updateTime": {
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time.",
          "readOnly": true
        },
        "tools": {
          "description": "Required. List of tools defined in the tool spec. Marking this field as required as this is the only field that is editable by the user in modify API so we should have at least one tool in the list.",
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": {
              "description": "Properties of the object.",
              "type": "any"
            }
          }
        }
      },
      "type": "object",
      "id": "ToolspecOverride",
      "description": "Toolspec overrides for a connection only holds the information that is to be displayed in the UI for admins."
    },
    "EventSubscriptionDestination": {
      "properties": {
        "endpoint": {
          "$ref": "EndPoint",
          "description": "OPTION 1: Hit an endpoint when we receive an event."
        },
        "type": {
          "description": "Optional. type of the destination",
          "type": "string",
          "enumDescriptions": [
            "Default state.",
            "Endpoint - Hit the value of endpoint when event is received",
            "Cloud Storage - Write the event to Cloud Storage bucket",
            "Pub/Sub - Write the event to Pub/Sub topic"
          ],
          "enum": [
            "TYPE_UNSPECIFIED",
            "ENDPOINT",
            "GCS",
            "PUBSUB"
          ]
        },
        "pubsub": {
          "$ref": "PubSub",
          "description": "OPTION 3: Write the event to Pub/Sub topic."
        },
        "serviceAccount": {
          "type": "string",
          "description": "Optional. Service account needed for runtime plane to trigger IP workflow."
        }
      },
      "id": "EventSubscriptionDestination",
      "description": "Message for EventSubscription Destination to act on receiving an event",
      "type": "object"
    },
    "TrafficShapingConfig": {
      "properties": {
        "quotaLimit": {
          "description": "Required. Maximum number of api calls allowed.",
          "format": "int64",
          "type": "string"
        },
        "duration": {
          "type": "string",
          "description": "Required. Specifies the duration over which the API call quota limits are calculated. This duration is used to define the time window for evaluating if the number of API calls made by a user is within the allowed quota limits. For example: - To define a quota sampled over 16 seconds, set `seconds` to 16 - To define a quota sampled over 5 minutes, set `seconds` to 300 (5 * 60) - To define a quota sampled over 1 day, set `seconds` to 86400 (24 * 60 * 60) and so on. It is important to note that this duration is not the time the quota is valid for, but rather the time window over which the quota is evaluated. For example, if the quota is 100 calls per 10 seconds, then this duration field would be set to 10 seconds.",
          "format": "google-duration"
        }
      },
      "id": "TrafficShapingConfig",
      "description": "* TrafficShapingConfig defines the configuration for shaping API traffic by specifying a quota limit and the duration over which this limit is enforced. This configuration helps to control and manage the rate at which API calls are made on the client side, preventing service overload on the backend. For example: - if the quota limit is 100 calls per 10 seconds, then the message would be: { quota_limit: 100 duration: { seconds: 10 } } - if the quota limit is 100 calls per 5 minutes, then the message would be: { quota_limit: 100 duration: { seconds: 300 } } - if the quota limit is 10000 calls per day, then the message would be: { quota_limit: 10000 duration: { seconds: 86400 } and so on.",
      "type": "object"
    },
    "EndUserAuthentication": {
      "type": "object",
      "id": "EndUserAuthentication",
      "properties": {
        "labels": {
          "type": "array",
          "description": "Optional. Labels for the EndUserAuthentication.",
          "items": {
            "type": "string"
          }
        },
        "configVariables": {
          "items": {
            "$ref": "EndUserAuthenticationConfigVariable"
          },
          "type": "array",
          "description": "Optional. Config variables for the EndUserAuthentication."
        },
        "name": {
          "description": "Required. Identifier. Resource name of the EndUserAuthentication. Format: projects/{project}/locations/{location}/connections/{connection}/endUserAuthentications/{end_user_authentication}",
          "type": "string"
        },
        "destinationConfigs": {
          "items": {
            "$ref": "DestinationConfig"
          },
          "type": "array",
          "description": "Optional. Destination configs for the EndUserAuthentication."
        },
        "roles": {
          "description": "Optional. Roles for the EndUserAuthentication.",
          "items": {
            "type": "string",
            "enumDescriptions": [
              "Default state.",
              "READER.",
              "READER_DOMAIN_WIDE_ACCESSIBLE which has access to only public data."
            ],
            "enum": [
              "ROLE_UNSPECIFIED",
              "READER",
              "READER_DOMAIN_WIDE_ACCESSIBLE"
            ]
          },
          "type": "array"
        },
        "notifyEndpointDestination": {
          "$ref": "EndUserAuthenticationNotifyEndpointDestination",
          "description": "Optional. The destination to hit when we receive an event"
        },
        "updateTime": {
          "readOnly": true,
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "type": "string"
        },
        "status": {
          "$ref": "EndUserAuthenticationEndUserAuthenticationStatus",
          "description": "Optional. Status of the EndUserAuthentication."
        },
        "createTime": {
          "readOnly": true,
          "description": "Output only. Created time.",
          "type": "string",
          "format": "google-datetime"
        },
        "endUserAuthenticationConfig": {
          "description": "Optional. The EndUserAuthenticationConfig for the EndUserAuthentication.",
          "$ref": "EndUserAuthenticationConfig"
        },
        "userId": {
          "description": "Optional. The user id of the user.",
          "type": "string"
        }
      },
      "description": "AuthConfig defines details of a authentication type."
    },
    "FetchAuthSchemaResponse": {
      "properties": {
        "jsonSchema": {
          "$ref": "JsonAuthSchema",
          "description": "JSON schema of the AuthSchemas. This is only populated if the view is JSON_SCHEMA. The schema is in draft-07 format."
        },
        "authSchemas": {
          "items": {
            "$ref": "AuthSchema"
          },
          "description": "List of AuthSchemas.",
          "type": "array"
        }
      },
      "id": "FetchAuthSchemaResponse",
      "type": "object",
      "description": "Response message for Connectors.GetAuthSchema."
    },
    "EndUserAuthenticationConfigOauth2JwtBearer": {
      "type": "object",
      "id": "EndUserAuthenticationConfigOauth2JwtBearer",
      "properties": {
        "clientKey": {
          "$ref": "EUASecret",
          "description": "Required. secret version/value reference containing a PKCS#8 PEM-encoded private key associated with the Client Certificate. This private key will be used to sign JWTs used for the jwt-bearer authorization grant. Specified in the form as: `projects/*/strings/*/versions/*`."
        },
        "jwtClaims": {
          "$ref": "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims",
          "description": "JwtClaims providers fields to generate the token."
        }
      },
      "description": "Parameters to support JSON Web Token (JWT) Profile for Oauth 2.0 Authorization Grant based authentication. See https://tools.ietf.org/html/rfc7523 for more details."
    },
    "VpcscConfig": {
      "id": "VpcscConfig",
      "properties": {
        "defaultAllowlistedHost": {
          "type": "array",
          "description": "The list of allowlisted FQDNs for VPCSC.",
          "items": {
            "type": "string"
          }
        },
        "disableFirewallVpcscFlow": {
          "description": "Whether to disable firewall VPCSC flow.",
          "type": "boolean"
        }
      },
      "description": "This configuration provides VPCSC config for a connector.",
      "type": "object"
    },
    "Provider": {
      "description": "Provider indicates the owner who provides the connectors.",
      "properties": {
        "documentationUri": {
          "description": "Output only. Link to documentation page.",
          "readOnly": true,
          "type": "string"
        },
        "webAssetsLocation": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Cloud storage location of icons etc consumed by UI."
        },
        "externalUri": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Link to external page."
        },
        "displayName": {
          "description": "Output only. Display name.",
          "type": "string",
          "readOnly": true
        },
        "updateTime": {
          "readOnly": true,
          "format": "google-datetime",
          "description": "Output only. Updated time.",
          "type": "string"
        },
        "labels": {
          "readOnly": true,
          "additionalProperties": {
            "type": "string"
          },
          "type": "object",
          "description": "Output only. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources"
        },
        "launchStage": {
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "type": "string",
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "readOnly": true,
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ]
        },
        "name": {
          "description": "Output only. Resource name of the Provider. Format: projects/{project}/locations/{location}/providers/{provider} Only global location is supported for Provider resource.",
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "description": "Output only. Created time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "description": "Output only. Description of the resource.",
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "Provider",
      "type": "object"
    },
    "ListEndpointAttachmentsResponse": {
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached.",
          "type": "array"
        },
        "endpointAttachments": {
          "type": "array",
          "items": {
            "$ref": "EndpointAttachment"
          },
          "description": "EndpointAttachments."
        }
      },
      "type": "object",
      "description": "Response message for ConnectorsService.ListEndpointAttachments",
      "id": "ListEndpointAttachmentsResponse"
    },
    "JsonAuthSchema": {
      "description": "JsonAuthSchema defines the JSON schema of all authentication types.",
      "properties": {
        "oneOf": {
          "items": {
            "$ref": "AuthObject"
          },
          "type": "array",
          "description": "List of AuthObjects."
        },
        "$schema": {
          "type": "string",
          "description": "JSON schema of the AuthSchemas."
        }
      },
      "type": "object",
      "id": "JsonAuthSchema"
    },
    "RemoveConnectionToolspecOverrideRequest": {
      "id": "RemoveConnectionToolspecOverrideRequest",
      "properties": {},
      "description": "Request message for RemoveConnectionToolspecOverride API.",
      "type": "object"
    },
    "ConnectorVersionInfraConfig": {
      "id": "ConnectorVersionInfraConfig",
      "type": "object",
      "description": "This configuration provides infra configs like rate limit threshold which need to be configurable for every connector version",
      "properties": {
        "resourceRequests": {
          "description": "Output only. System resource requests.",
          "readOnly": true,
          "$ref": "ResourceRequests"
        },
        "deploymentModel": {
          "enum": [
            "DEPLOYMENT_MODEL_UNSPECIFIED",
            "GKE_MST",
            "CLOUD_RUN_MST"
          ],
          "readOnly": true,
          "enumDescriptions": [
            "Deployment model is not specified.",
            "Default model gke mst.",
            "Cloud run mst."
          ],
          "type": "string",
          "description": "Output only. Indicates whether connector is deployed on GKE/CloudRun"
        },
        "sharedDeployment": {
          "type": "string",
          "description": "Output only. The name of shared connector deployment.",
          "readOnly": true
        },
        "maxInstanceRequestConcurrency": {
          "type": "integer",
          "format": "int32",
          "description": "Output only. Max instance request concurrency.",
          "readOnly": true
        },
        "internalclientRatelimitThreshold": {
          "readOnly": true,
          "description": "Output only. Max QPS supported for internal requests originating from Connd.",
          "type": "string",
          "format": "int64"
        },
        "resourceLimits": {
          "$ref": "ResourceLimits",
          "readOnly": true,
          "description": "Output only. System resource limits."
        },
        "hpaConfig": {
          "description": "Output only. HPA autoscaling config.",
          "readOnly": true,
          "$ref": "HPAConfig"
        },
        "tlsMigrationState": {
          "description": "Output only. Status of the TLS migration.",
          "enum": [
            "TLS_MIGRATION_STATE_UNSPECIFIED",
            "TLS_MIGRATION_NOT_STARTED",
            "TLS_MIGRATION_COMPLETED"
          ],
          "type": "string",
          "enumDescriptions": [
            "TLS migration state is not specified.",
            "TLS migration is in progress.",
            "TLS migration is completed."
          ],
          "readOnly": true
        },
        "connectionRatelimitWindowSeconds": {
          "format": "int64",
          "type": "string",
          "description": "Output only. The window used for ratelimiting runtime requests to connections.",
          "readOnly": true
        },
        "deploymentModelMigrationState": {
          "readOnly": true,
          "description": "Output only. Status of the deployment model migration.",
          "enumDescriptions": [
            "Deployment model migration state is not specified.",
            "Deployment model migration is in progress.",
            "Deployment model migration is completed.",
            "Deployment model migration rolledback.",
            "Deployment model migration rollback in progress."
          ],
          "enum": [
            "DEPLOYMENT_MODEL_MIGRATION_STATE_UNSPECIFIED",
            "IN_PROGRESS",
            "COMPLETED",
            "ROLLEDBACK",
            "ROLLBACK_IN_PROGRESS"
          ],
          "type": "string"
        },
        "ratelimitThreshold": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Max QPS supported by the connector version before throttling of requests.",
          "format": "int64"
        }
      }
    },
    "OperationMetadata": {
      "description": "Represents the metadata of the long-running operation.",
      "id": "OperationMetadata",
      "properties": {
        "statusMessage": {
          "type": "string",
          "description": "Output only. Human-readable status of the operation, if any.",
          "readOnly": true
        },
        "verb": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Name of the verb executed by the operation."
        },
        "createTime": {
          "type": "string",
          "format": "google-datetime",
          "readOnly": true,
          "description": "Output only. The time the operation was created."
        },
        "apiVersion": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. API version used to start the operation."
        },
        "target": {
          "type": "string",
          "readOnly": true,
          "description": "Output only. Server-defined resource path for the target of the operation."
        },
        "endTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. The time the operation finished running."
        },
        "requestedCancellation": {
          "type": "boolean",
          "readOnly": true,
          "description": "Output only. Identifies whether the user has requested cancellation of the operation. Operations that have successfully been cancelled have Operation.error value with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`."
        }
      },
      "type": "object"
    },
    "Resource": {
      "description": "Resource definition",
      "properties": {
        "pathTemplate": {
          "description": "Optional. Template to uniquely represent a Google Cloud resource in a format IAM expects This is a template that can have references to other values provided in the config variable template.",
          "type": "string"
        },
        "type": {
          "enumDescriptions": [
            "Value type is not specified.",
            "Google Cloud Project Resource.",
            "Any Google Cloud Resource which is identified uniquely by IAM.",
            "Google Cloud Secret Resource.",
            "Google Cloud Secret Version Resource."
          ],
          "type": "string",
          "description": "Optional. Different types of resource supported.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "GCP_PROJECT",
            "GCP_RESOURCE",
            "GCP_SECRETMANAGER_SECRET",
            "GCP_SECRETMANAGER_SECRET_VERSION"
          ]
        }
      },
      "id": "Resource",
      "type": "object"
    },
    "ToolName": {
      "description": "Tool name for which the tool spec override is to be generated.",
      "properties": {
        "operation": {
          "enumDescriptions": [
            "Operation unspecified.",
            "LIST entities.",
            "GET entity.",
            "CREATE entity.",
            "UPDATE entity.",
            "DELETE entity."
          ],
          "description": "Optional. Operation for which the tool was generated.",
          "type": "string",
          "enum": [
            "OPERATION_UNSPECIFIED",
            "LIST",
            "GET",
            "CREATE",
            "UPDATE",
            "DELETE"
          ]
        },
        "entityType": {
          "description": "Optional. Entity type name for which the tool was generated.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Required. Tool name that was generated in the list tools call."
        }
      },
      "type": "object",
      "id": "ToolName"
    },
    "Expr": {
      "type": "object",
      "id": "Expr",
      "description": "Represents a textual expression in the Common Expression Language (CEL) syntax. CEL is a C-like expression language. The syntax and semantics of CEL are documented at https://github.com/google/cel-spec. Example (Comparison): title: \"Summary size limit\" description: \"Determines if a summary is less than 100 chars\" expression: \"document.summary.size() \u003c 100\" Example (Equality): title: \"Requestor is owner\" description: \"Determines if requestor is the document owner\" expression: \"document.owner == request.auth.claims.email\" Example (Logic): title: \"Public documents\" description: \"Determine whether the document should be publicly visible\" expression: \"document.type != 'private' && document.type != 'internal'\" Example (Data Manipulation): title: \"Notification string\" description: \"Create a notification string with a timestamp.\" expression: \"'New message received at ' + string(document.create_time)\" The exact variables and functions that may be referenced within an expression are determined by the service that evaluates it. See the service documentation for additional information.",
      "properties": {
        "description": {
          "description": "Optional. Description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.",
          "type": "string"
        },
        "location": {
          "type": "string",
          "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file."
        },
        "title": {
          "type": "string",
          "description": "Optional. Title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression."
        },
        "expression": {
          "description": "Textual representation of an expression in Common Expression Language syntax.",
          "type": "string"
        }
      }
    },
    "NotificationParameter": {
      "id": "NotificationParameter",
      "description": "Contains notification related data.",
      "type": "object",
      "properties": {
        "values": {
          "items": {
            "type": "string"
          },
          "description": "Optional. Array of string values. e.g. instance's replica information.",
          "type": "array"
        }
      }
    },
    "AuditConfig": {
      "description": "Specifies the audit configuration for a service. The configuration determines which permission types are logged, and what identities, if any, are exempted from logging. An AuditConfig must have one or more AuditLogConfigs. If there are AuditConfigs for both `allServices` and a specific service, the union of the two AuditConfigs is used for that service: the log_types specified in each AuditConfig are enabled, and the exempted_members in each AuditLogConfig are exempted. Example Policy with multiple AuditConfigs: { \"audit_configs\": [ { \"service\": \"allServices\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\", \"exempted_members\": [ \"user:jose@example.com\" ] }, { \"log_type\": \"DATA_WRITE\" }, { \"log_type\": \"ADMIN_READ\" } ] }, { \"service\": \"sampleservice.googleapis.com\", \"audit_log_configs\": [ { \"log_type\": \"DATA_READ\" }, { \"log_type\": \"DATA_WRITE\", \"exempted_members\": [ \"user:aliya@example.com\" ] } ] } ] } For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts `jose@example.com` from DATA_READ logging, and `aliya@example.com` from DATA_WRITE logging.",
      "type": "object",
      "properties": {
        "service": {
          "type": "string",
          "description": "Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special value that covers all services."
        },
        "auditLogConfigs": {
          "type": "array",
          "description": "The configuration for logging of each type of permission.",
          "items": {
            "$ref": "AuditLogConfig"
          }
        }
      },
      "id": "AuditConfig"
    },
    "RuntimeActionSchema": {
      "type": "object",
      "id": "RuntimeActionSchema",
      "properties": {
        "resultSchemaAsString": {
          "type": "string",
          "description": "Output only. Result schema as string.",
          "readOnly": true
        },
        "inputSchemaAsString": {
          "readOnly": true,
          "description": "Output only. Input schema as string.",
          "type": "string"
        },
        "description": {
          "description": "Output only. Brief Description of action",
          "readOnly": true,
          "type": "string"
        },
        "inputParameters": {
          "description": "Output only. List of input parameter metadata for the action.",
          "items": {
            "$ref": "InputParameter"
          },
          "type": "array",
          "readOnly": true
        },
        "inputJsonSchema": {
          "readOnly": true,
          "description": "Output only. JsonSchema representation of this action's input metadata",
          "$ref": "JsonSchema"
        },
        "resultJsonSchema": {
          "description": "Output only. JsonSchema representation of this action's result metadata",
          "readOnly": true,
          "$ref": "JsonSchema"
        },
        "displayName": {
          "description": "Output only. Display Name of action to be shown on client side",
          "type": "string",
          "readOnly": true
        },
        "action": {
          "description": "Output only. Name of the action.",
          "readOnly": true,
          "type": "string"
        },
        "resultMetadata": {
          "type": "array",
          "description": "Output only. List of result field metadata.",
          "readOnly": true,
          "items": {
            "$ref": "ResultMetadata"
          }
        }
      },
      "description": "Schema of a runtime action."
    },
    "ListConnectionsResponse": {
      "id": "ListConnectionsResponse",
      "description": "Response message for ConnectorsService.ListConnections",
      "type": "object",
      "properties": {
        "connections": {
          "items": {
            "$ref": "Connection"
          },
          "type": "array",
          "description": "Connections."
        },
        "nextPageToken": {
          "type": "string",
          "description": "Next page token."
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      }
    },
    "PubSub": {
      "id": "PubSub",
      "description": "Pub/Sub message includes details of the Destination Pub/Sub topic.",
      "type": "object",
      "properties": {
        "attributes": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional. Pub/Sub message attributes to be added to the Pub/Sub message."
        },
        "topicId": {
          "description": "Required. The topic id of the Pub/Sub topic.",
          "type": "string"
        },
        "configVariables": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. Configuration for configuring the trigger"
        },
        "projectId": {
          "description": "Required. The project id which has the Pub/Sub topic.",
          "type": "string"
        }
      }
    },
    "EndUserAuthenticationConfigOauth2ClientCredentials": {
      "type": "object",
      "id": "EndUserAuthenticationConfigOauth2ClientCredentials",
      "description": "Parameters to support Oauth 2.0 Client Credentials Grant Authentication. See https://tools.ietf.org/html/rfc6749#section-1.3.4 for more details.",
      "properties": {
        "clientSecret": {
          "$ref": "EUASecret",
          "description": "Required. string value or secret version containing the client secret."
        },
        "clientId": {
          "description": "The client identifier.",
          "type": "string"
        }
      }
    },
    "Header": {
      "type": "object",
      "description": "Header details for a given header to be added to Endpoint.",
      "id": "Header",
      "properties": {
        "key": {
          "description": "Optional. Key of Header.",
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "Optional. Value of Header."
        }
      }
    },
    "PerSliSloEligibility": {
      "type": "object",
      "id": "PerSliSloEligibility",
      "properties": {
        "eligibilities": {
          "type": "object",
          "additionalProperties": {
            "$ref": "SloEligibility"
          },
          "description": "An entry in the eligibilities map specifies an eligibility for a particular SLI for the given instance. The SLI key in the name must be a valid SLI name specified in the Eligibility Exporter binary flags otherwise an error will be emitted by Eligibility Exporter and the oncaller will be alerted. If an SLI has been defined in the binary flags but the eligibilities map does not contain it, the corresponding SLI time series will not be emitted by the Eligibility Exporter. This ensures a smooth rollout and compatibility between the data produced by different versions of the Eligibility Exporters. If eligibilities map contains a key for an SLI which has not been declared in the binary flags, there will be an error message emitted in the Eligibility Exporter log and the metric for the SLI in question will not be emitted."
        }
      },
      "description": "PerSliSloEligibility is a mapping from an SLI name to eligibility."
    },
    "CustomConnectorVersion": {
      "description": "CustomConnectorVersion indicates a specific version of a connector.",
      "type": "object",
      "properties": {
        "authConfigTemplates": {
          "type": "array",
          "description": "Optional. Auth Config Templates is only used when connector backend is enabled. This is used to specify the auth configs supported by the connector backend service to talk to the actual application backend.",
          "items": {
            "$ref": "AuthConfigTemplate"
          }
        },
        "state": {
          "type": "string",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "DEPRECATED"
          ],
          "description": "Output only. State of the custom connector version.",
          "enumDescriptions": [
            "State Unspecified.",
            "Active state. By default we set the state to Active.",
            "Deprecated state."
          ],
          "readOnly": true
        },
        "specServerUrls": {
          "type": "array",
          "description": "Output only. Server URLs parsed from the Open API spec. This is only used for Open API based custom connectors.",
          "readOnly": true,
          "items": {
            "type": "string"
          }
        },
        "labels": {
          "type": "object",
          "description": "Optional. Resource labels to represent user-provided metadata. Refer to cloud documentation on labels for more details. https://cloud.google.com/compute/docs/labeling-resources",
          "additionalProperties": {
            "type": "string"
          }
        },
        "authOverrideSupport": {
          "type": "boolean",
          "description": "Optional. Auth override support."
        },
        "specLocation": {
          "description": "Optional. Location of the custom connector spec. This is only used for Open API based custom connectors. The location can be either a public url like `https://public-url.com/spec` Or a Google Cloud Storage location like `gs:///`.",
          "type": "string"
        },
        "enableBackendDestinationConfig": {
          "type": "boolean",
          "description": "Optional. Indicates if an intermediatory connectorservice is used as backend. When this is enabled, the connector destination and connector auth config are required. For SDK based connectors, this is always enabled."
        },
        "serviceAccount": {
          "description": "Optional. Service account used by runtime plane to access auth config secrets.",
          "type": "string"
        },
        "authConfig": {
          "description": "Optional. Authentication config for accessing connector service (facade). This is used only when enable_backend_destination_config is true.",
          "$ref": "AuthConfig"
        },
        "createTime": {
          "description": "Output only. Created time.",
          "type": "string",
          "format": "google-datetime",
          "readOnly": true
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Identifier. Resource name of the Version. Format: projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}",
          "type": "string"
        },
        "partnerMetadata": {
          "description": "Optional. Partner metadata details. This should be populated only when publishing the custom connector to partner connector.",
          "$ref": "PartnerMetadata"
        },
        "updateTime": {
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "type": "string",
          "readOnly": true
        },
        "publishStatus": {
          "description": "Output only. Publish status of a custom connector.",
          "$ref": "PublishStatus",
          "readOnly": true
        },
        "backendVariableTemplates": {
          "type": "array",
          "description": "Optional. Backend variable templates is only used when connector backend is enabled. This is used to specify the variables required by the connector backend service to talk to the actual application backend. This translates to additional variable templates in the connection config.",
          "items": {
            "$ref": "ConfigVariableTemplate"
          }
        },
        "destinationConfigs": {
          "items": {
            "$ref": "DestinationConfig"
          },
          "description": "Optional. Destination config(s) for accessing connector service (facade). This is used only when enable_backend_destination_config is true.",
          "type": "array"
        },
        "asyncOperationsSupport": {
          "description": "Optional. Indicates if Async Operations/Connector Job is supported. This is only available for SDK based custom connectors.",
          "type": "boolean"
        }
      },
      "id": "CustomConnectorVersion"
    },
    "TimeOfDay": {
      "id": "TimeOfDay",
      "type": "object",
      "description": "Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.",
      "properties": {
        "minutes": {
          "description": "Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.",
          "format": "int32",
          "type": "integer"
        },
        "nanos": {
          "format": "int32",
          "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.",
          "type": "integer"
        },
        "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.",
          "format": "int32",
          "type": "integer"
        },
        "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.",
          "type": "integer",
          "format": "int32"
        }
      }
    },
    "LogicalExpression": {
      "properties": {
        "logicalExpressions": {
          "type": "array",
          "items": {
            "$ref": "LogicalExpression"
          },
          "description": "Optional. A list of nested conditions to be compared."
        },
        "logicalOperator": {
          "description": "Optional. The logical operator to use between the fields and conditions.",
          "enum": [
            "OPERATOR_UNSPECIFIED",
            "AND",
            "OR"
          ],
          "enumDescriptions": [
            "The default value.",
            "AND operator; The conditions must all be true.",
            "OR operator; At least one of the conditions must be true."
          ],
          "type": "string"
        },
        "fieldComparisons": {
          "description": "Optional. A list of fields to be compared.",
          "items": {
            "$ref": "FieldComparison"
          },
          "type": "array"
        }
      },
      "id": "LogicalExpression",
      "description": "Struct for representing boolean expressions.",
      "type": "object"
    },
    "SloEligibility": {
      "type": "object",
      "description": "SloEligibility is a tuple containing eligibility value: true if an instance is eligible for SLO calculation or false if it should be excluded from all SLO-related calculations along with a user-defined reason.",
      "id": "SloEligibility",
      "properties": {
        "eligible": {
          "type": "boolean",
          "description": "Whether an instance is eligible or ineligible."
        },
        "reason": {
          "description": "User-defined reason for the current value of instance eligibility. Usually, this can be directly mapped to the internal state. An empty reason is allowed.",
          "type": "string"
        }
      }
    },
    "MaintenanceWindow": {
      "description": "MaintenanceWindow definition.",
      "type": "object",
      "properties": {
        "weeklyCycle": {
          "description": "Weekly cycle.",
          "$ref": "WeeklyCycle"
        },
        "dailyCycle": {
          "description": "Daily cycle.",
          "$ref": "DailyCycle"
        }
      },
      "id": "MaintenanceWindow"
    },
    "Oauth2AuthCodeFlow": {
      "id": "Oauth2AuthCodeFlow",
      "type": "object",
      "description": "Parameters to support Oauth 2.0 Auth Code Grant Authentication. See https://www.rfc-editor.org/rfc/rfc6749#section-1.3.1 for more details.",
      "properties": {
        "pkceVerifier": {
          "type": "string",
          "description": "Optional. PKCE verifier to be used during the auth code exchange."
        },
        "scopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. Scopes the connection will request when the user performs the auth code flow."
        },
        "enablePkce": {
          "description": "Optional. Whether to enable PKCE when the user performs the auth code flow.",
          "type": "boolean"
        },
        "clientId": {
          "description": "Optional. Client ID for user-provided OAuth app.",
          "type": "string"
        },
        "redirectUri": {
          "type": "string",
          "description": "Optional. Redirect URI to be provided during the auth code exchange."
        },
        "clientSecret": {
          "description": "Optional. Client secret for user-provided OAuth app.",
          "$ref": "Secret"
        },
        "authUri": {
          "description": "Optional. Auth URL for Authorization Code Flow",
          "type": "string"
        },
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        }
      }
    }
  },
  "resources": {
    "projects": {
      "resources": {
        "locations": {
          "methods": {
            "getRegionalSettings": {
              "response": {
                "$ref": "RegionalSettings"
              },
              "description": "GetRegionalSettings gets settings of a region. RegionalSettings is a singleton resource.",
              "parameters": {
                "name": {
                  "type": "string",
                  "description": "Required. The resource name of the Regional Settings.",
                  "required": true,
                  "pattern": "^projects/[^/]+/locations/[^/]+/regionalSettings$",
                  "location": "path"
                }
              },
              "httpMethod": "GET",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/regionalSettings",
              "path": "v1/{+name}",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "id": "connectors.projects.locations.getRegionalSettings",
              "parameterOrder": [
                "name"
              ]
            },
            "updateRegionalSettings": {
              "httpMethod": "PATCH",
              "path": "v1/{+name}",
              "parameters": {
                "name": {
                  "location": "path",
                  "type": "string",
                  "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/regionalSettings",
                  "pattern": "^projects/[^/]+/locations/[^/]+/regionalSettings$",
                  "required": true
                },
                "updateMask": {
                  "description": "Required. The list of fields to update.",
                  "type": "string",
                  "format": "google-fieldmask",
                  "location": "query"
                }
              },
              "request": {
                "$ref": "RegionalSettings"
              },
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/regionalSettings",
              "description": "Update the settings of a region.",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "id": "connectors.projects.locations.updateRegionalSettings",
              "response": {
                "$ref": "Operation"
              },
              "parameterOrder": [
                "name"
              ]
            },
            "getRuntimeConfig": {
              "description": "Gets the runtimeConfig of a location. RuntimeConfig is a singleton resource for each location.",
              "parameters": {
                "name": {
                  "type": "string",
                  "required": true,
                  "pattern": "^projects/[^/]+/locations/[^/]+/runtimeConfig$",
                  "description": "Required. Resource name of the form: `projects/*/locations/*/runtimeConfig`",
                  "location": "path"
                }
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "httpMethod": "GET",
              "id": "connectors.projects.locations.getRuntimeConfig",
              "parameterOrder": [
                "name"
              ],
              "path": "v1/{+name}",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/runtimeConfig",
              "response": {
                "$ref": "RuntimeConfig"
              }
            },
            "get": {
              "id": "connectors.projects.locations.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Resource name for the location.",
                  "required": true,
                  "pattern": "^projects/[^/]+/locations/[^/]+$",
                  "location": "path",
                  "type": "string"
                }
              },
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}",
              "httpMethod": "GET",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}",
              "description": "Gets information about a location.",
              "response": {
                "$ref": "Location"
              }
            },
            "list": {
              "parameterOrder": [
                "name"
              ],
              "description": "Lists information about the supported locations for this service. This method lists locations based on the resource scope provided in the ListLocationsRequest.name field: * **Global locations**: If `name` is empty, the method lists the public locations available to all projects. * **Project-specific locations**: If `name` follows the format `projects/{project}`, the method lists locations visible to that specific project. This includes public, private, or other project-specific locations enabled for the project. For gRPC and client library implementations, the resource name is passed as the `name` field. For direct service calls, the resource name is incorporated into the request path based on the specific service implementation and version.",
              "path": "v1/{+name}/locations",
              "response": {
                "$ref": "ListLocationsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "id": "connectors.projects.locations.list",
              "flatPath": "v1/projects/{projectsId}/locations",
              "parameters": {
                "pageToken": {
                  "location": "query",
                  "type": "string",
                  "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page."
                },
                "extraLocationTypes": {
                  "location": "query",
                  "repeated": true,
                  "type": "string",
                  "description": "Optional. Do not use this field unless explicitly documented otherwise. This is primarily for internal usage."
                },
                "name": {
                  "pattern": "^projects/[^/]+$",
                  "type": "string",
                  "location": "path",
                  "required": true,
                  "description": "The resource that owns the locations collection, if applicable."
                },
                "filter": {
                  "description": "A filter to narrow down results to a preferred subset. The filtering language accepts strings like `\"displayName=tokyo\"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160).",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "location": "query",
                  "format": "int32",
                  "type": "integer",
                  "description": "The maximum number of results to return. If not set, the service selects a default."
                }
              },
              "httpMethod": "GET"
            }
          },
          "resources": {
            "connections": {
              "methods": {
                "create": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "parent"
                  ],
                  "parameters": {
                    "parent": {
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*`",
                      "location": "path",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true
                    },
                    "connectionId": {
                      "description": "Required. Identifier to assign to the Connection. Must be unique within scope of the parent resource.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "request": {
                    "$ref": "Connection"
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "id": "connectors.projects.locations.connections.create",
                  "description": "Creates a new Connection in a given project and location.",
                  "path": "v1/{+parent}/connections"
                },
                "getConnectionSchemaMetadata": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata",
                  "description": "Gets schema metadata of a connection. SchemaMetadata is a singleton resource for each connection.",
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "ConnectionSchemaMetadata"
                  },
                  "id": "connectors.projects.locations.connections.getConnectionSchemaMetadata",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Required. Connection name Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                      "required": true,
                      "location": "path"
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET"
                },
                "setIamPolicy": {
                  "path": "v1/{+resource}:setIamPolicy",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:setIamPolicy",
                  "response": {
                    "$ref": "Policy"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "resource"
                  ],
                  "parameters": {
                    "resource": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "required": true,
                      "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.",
                      "location": "path",
                      "type": "string"
                    }
                  },
                  "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
                  "id": "connectors.projects.locations.connections.setIamPolicy",
                  "request": {
                    "$ref": "SetIamPolicyRequest"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "search": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections:search",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "SearchConnectionsResponse"
                  },
                  "httpMethod": "GET",
                  "parameters": {
                    "name": {
                      "required": true,
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*/connections`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections$",
                      "location": "path",
                      "type": "string"
                    },
                    "query": {
                      "type": "string",
                      "location": "query",
                      "description": "Required. The query against which the search needs to be done."
                    },
                    "pageSize": {
                      "description": "Optional. The number of top matching connectors to return",
                      "type": "integer",
                      "format": "int32",
                      "location": "query"
                    },
                    "pageToken": {
                      "description": "Optional. page_token",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "description": "Returns Top matching Connections for a given query.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "connectors.projects.locations.connections.search",
                  "path": "v1/{+name}:search"
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "required": true,
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "type": "string"
                    },
                    "view": {
                      "enum": [
                        "CONNECTION_VIEW_UNSPECIFIED",
                        "BASIC",
                        "FULL"
                      ],
                      "type": "string",
                      "location": "query",
                      "enumDescriptions": [
                        "CONNECTION_UNSPECIFIED.",
                        "Do not include runtime required configs.",
                        "Include runtime required configs."
                      ],
                      "description": "Specifies which fields of the Connection are returned in the response. Defaults to `BASIC` view."
                    }
                  },
                  "id": "connectors.projects.locations.connections.get",
                  "description": "Gets details of a single Connection.",
                  "httpMethod": "GET",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}",
                  "path": "v1/{+name}",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "response": {
                    "$ref": "Connection"
                  }
                },
                "repairEventing": {
                  "path": "v1/{+name}:repairEventing",
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "RepaiEventing tries to repair eventing related event subscriptions.",
                  "request": {
                    "$ref": "RepairEventingRequest"
                  },
                  "id": "connectors.projects.locations.connections.repairEventing",
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "POST",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:repairEventing",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "required": true,
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "location": "path"
                    }
                  }
                },
                "delete": {
                  "path": "v1/{+name}",
                  "description": "Deletes a single Connection.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "DELETE",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameters": {
                    "force": {
                      "type": "boolean",
                      "location": "query",
                      "description": "Optional. If set to true, any child EndUserAuthentication/EventSubscription resources will also be deleted. Otherwise, the request will fail if the connection has any children. Followed the best practice from https://aip.dev/135#cascading-delete"
                    },
                    "name": {
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "type": "string"
                    }
                  },
                  "id": "connectors.projects.locations.connections.delete",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}",
                  "response": {
                    "$ref": "Operation"
                  }
                },
                "removeToolspecOverride": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}:removeToolspecOverride",
                  "description": "Deletes all Toolspec Override for a connection.",
                  "parameters": {
                    "name": {
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "type": "string",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "required": true
                    }
                  },
                  "request": {
                    "$ref": "RemoveConnectionToolspecOverrideRequest"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "Empty"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:removeToolspecOverride",
                  "id": "connectors.projects.locations.connections.removeToolspecOverride"
                },
                "patch": {
                  "httpMethod": "PATCH",
                  "description": "Updates the parameters of a single Connection.",
                  "request": {
                    "$ref": "Connection"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/connections/{connection}"
                    },
                    "updateMask": {
                      "description": "Required. The list of fields to update. Fields are specified relative to the connection. A field will be overwritten if it is in the mask. The field mask must not be empty, and it must not contain fields that are immutable or only set by the server. You can modify only the fields listed below. To lock/unlock a connection: * `lock_config` To suspend/resume a connection: * `suspended` To update the connection details: * `description` * `labels` * `connector_version` * `config_variables` * `auth_config` * `destination_configs` * `node_config` * `log_config` * `ssl_config` * `eventing_enablement_type` * `eventing_config` * `auth_override_enabled` * `async_operations_enabled`",
                      "location": "query",
                      "type": "string",
                      "format": "google-fieldmask"
                    }
                  },
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "connectors.projects.locations.connections.patch",
                  "response": {
                    "$ref": "Operation"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}"
                },
                "generateToolspecOverride": {
                  "request": {
                    "$ref": "GenerateConnectionToolspecOverrideRequest"
                  },
                  "id": "connectors.projects.locations.connections.generateToolspecOverride",
                  "path": "v1/{+name}:generateToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:generateToolspecOverride",
                  "parameters": {
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "type": "string",
                      "required": true
                    }
                  },
                  "description": "Generates Toolspec Override for a connection for the given list of entityTypes and operations. Returns results from the db if the entityType and operation are already present.",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "GenerateConnectionToolspecOverrideResponse"
                  }
                },
                "getIamPolicy": {
                  "parameters": {
                    "options.requestedPolicyVersion": {
                      "location": "query",
                      "type": "integer",
                      "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                      "format": "int32"
                    },
                    "resource": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.",
                      "type": "string",
                      "required": true
                    }
                  },
                  "httpMethod": "GET",
                  "path": "v1/{+resource}:getIamPolicy",
                  "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "connectors.projects.locations.connections.getIamPolicy",
                  "response": {
                    "$ref": "Policy"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:getIamPolicy",
                  "parameterOrder": [
                    "resource"
                  ]
                },
                "modifyToolspecOverride": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "POST",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "required": true,
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "type": "string"
                    }
                  },
                  "response": {
                    "$ref": "ModifyConnectionToolspecOverrideResponse"
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "connectors.projects.locations.connections.modifyToolspecOverride",
                  "request": {
                    "$ref": "ModifyConnectionToolspecOverrideRequest"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:modifyToolspecOverride",
                  "path": "v1/{+name}:modifyToolspecOverride",
                  "description": "Updates Toolspec Override for a connection with the admin provided descriptions."
                },
                "listenEvent": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "ListenEvent listens to the event.",
                  "path": "v1/{+resourcePath}:listenEvent",
                  "request": {
                    "$ref": "ListenEventRequest"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:listenEvent",
                  "httpMethod": "POST",
                  "id": "connectors.projects.locations.connections.listenEvent",
                  "parameterOrder": [
                    "resourcePath"
                  ],
                  "parameters": {
                    "resourcePath": {
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "type": "string",
                      "required": true,
                      "description": "Required. Resource path for request."
                    }
                  },
                  "response": {
                    "$ref": "ListenEventResponse"
                  }
                },
                "fetchToolspecOverride": {
                  "httpMethod": "POST",
                  "path": "v1/{+name}:fetchToolspecOverride",
                  "parameters": {
                    "name": {
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "location": "path",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "required": true
                    }
                  },
                  "description": "Fetches Toolspec Override for a connection for the given list of tools. Returns results from the db if the tool is already present.",
                  "id": "connectors.projects.locations.connections.fetchToolspecOverride",
                  "response": {
                    "$ref": "FetchConnectionToolspecOverrideResponse"
                  },
                  "request": {
                    "$ref": "FetchConnectionToolspecOverrideRequest"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:fetchToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ]
                },
                "list": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections",
                  "parameters": {
                    "orderBy": {
                      "description": "Order by parameters.",
                      "type": "string",
                      "location": "query"
                    },
                    "pageSize": {
                      "description": "Page size.",
                      "format": "int32",
                      "location": "query",
                      "type": "integer"
                    },
                    "filter": {
                      "description": "Filter.",
                      "location": "query",
                      "type": "string"
                    },
                    "pageToken": {
                      "type": "string",
                      "description": "Page token.",
                      "location": "query"
                    },
                    "view": {
                      "type": "string",
                      "enum": [
                        "CONNECTION_VIEW_UNSPECIFIED",
                        "BASIC",
                        "FULL"
                      ],
                      "description": "Specifies which fields of the Connection are returned in the response. Defaults to `BASIC` view.",
                      "enumDescriptions": [
                        "CONNECTION_UNSPECIFIED.",
                        "Do not include runtime required configs.",
                        "Include runtime required configs."
                      ],
                      "location": "query"
                    },
                    "parent": {
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*`",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "required": true
                    }
                  },
                  "httpMethod": "GET",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "connectors.projects.locations.connections.list",
                  "response": {
                    "$ref": "ListConnectionsResponse"
                  },
                  "path": "v1/{+parent}/connections",
                  "parameterOrder": [
                    "parent"
                  ],
                  "description": "Lists Connections in a given project and location."
                },
                "testIamPermissions": {
                  "response": {
                    "$ref": "TestIamPermissionsResponse"
                  },
                  "parameterOrder": [
                    "resource"
                  ],
                  "path": "v1/{+resource}:testIamPermissions",
                  "parameters": {
                    "resource": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.",
                      "location": "path",
                      "type": "string",
                      "required": true
                    }
                  },
                  "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.",
                  "httpMethod": "POST",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:testIamPermissions",
                  "request": {
                    "$ref": "TestIamPermissionsRequest"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "id": "connectors.projects.locations.connections.testIamPermissions"
                }
              },
              "resources": {
                "runtimeEntitySchemas": {
                  "methods": {
                    "list": {
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/runtimeEntitySchemas",
                      "description": "List schema of a runtime entities filtered by entity name.",
                      "response": {
                        "$ref": "ListRuntimeEntitySchemasResponse"
                      },
                      "path": "v1/{+parent}/runtimeEntitySchemas",
                      "parameters": {
                        "pageToken": {
                          "description": "Page token.",
                          "location": "query",
                          "type": "string"
                        },
                        "filter": {
                          "location": "query",
                          "description": "Required. Filter Format: entity=\"{entityId}\" Only entity field is supported with literal equality operator. Accepted filter example: entity=\"Order\" Wildcards are not supported in the filter currently.",
                          "type": "string"
                        },
                        "parent": {
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "description": "Required. Parent resource of RuntimeEntitySchema Format: projects/{project}/locations/{location}/connections/{connection}",
                          "required": true,
                          "type": "string"
                        },
                        "pageSize": {
                          "location": "query",
                          "format": "int32",
                          "description": "Page size.",
                          "type": "integer"
                        }
                      },
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "connectors.projects.locations.connections.runtimeEntitySchemas.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "httpMethod": "GET"
                    }
                  }
                },
                "runtimeActionSchemas": {
                  "methods": {
                    "list": {
                      "httpMethod": "GET",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/runtimeActionSchemas",
                      "parameters": {
                        "pageToken": {
                          "location": "query",
                          "type": "string",
                          "description": "Page token."
                        },
                        "schemaAsString": {
                          "location": "query",
                          "description": "Optional. Flag to indicate if schema should be returned as string or not",
                          "type": "boolean"
                        },
                        "filter": {
                          "location": "query",
                          "description": "Required. Filter Format: action=\"{actionId}\" Only action field is supported with literal equality operator. Accepted filter example: action=\"CancelOrder\" Wildcards are not supported in the filter currently.",
                          "type": "string"
                        },
                        "pageSize": {
                          "description": "Page size.",
                          "location": "query",
                          "format": "int32",
                          "type": "integer"
                        },
                        "parent": {
                          "required": true,
                          "description": "Required. Parent resource of RuntimeActionSchema Format: projects/{project}/locations/{location}/connections/{connection}",
                          "type": "string",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                        }
                      },
                      "response": {
                        "$ref": "ListRuntimeActionSchemasResponse"
                      },
                      "path": "v1/{+parent}/runtimeActionSchemas",
                      "description": "List schema of a runtime actions filtered by action name.",
                      "parameterOrder": [
                        "parent"
                      ],
                      "id": "connectors.projects.locations.connections.runtimeActionSchemas.list"
                    }
                  }
                },
                "eventSubscriptions": {
                  "methods": {
                    "get": {
                      "parameterOrder": [
                        "name"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "EventSubscription"
                      },
                      "parameters": {
                        "name": {
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventSubscriptions/*`",
                          "type": "string",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "location": "path"
                        }
                      },
                      "description": "Gets details of a single EventSubscription."
                    },
                    "patch": {
                      "id": "connectors.projects.locations.connections.eventSubscriptions.patch",
                      "path": "v1/{+name}",
                      "httpMethod": "PATCH",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "request": {
                        "$ref": "EventSubscription"
                      },
                      "parameters": {
                        "updateMask": {
                          "description": "Required. The list of fields to update. Fields are specified relative to the Subscription. A field will be overwritten if it is in the mask. You can modify only the fields listed below. To update the EventSubscription details: * `serviceAccount`",
                          "type": "string",
                          "location": "query",
                          "format": "google-fieldmask"
                        },
                        "name": {
                          "type": "string",
                          "description": "Required. Identifier. Resource name of the EventSubscription. Format: projects/{project}/locations/{location}/connections/{connection}/eventSubscriptions/{event_subscription}",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "location": "path"
                        }
                      },
                      "description": "Updates the parameters of a single EventSubscription.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "retry": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "RetryEventSubscriptionRequest"
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventSubscriptions/*`",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "location": "path",
                          "type": "string"
                        }
                      },
                      "httpMethod": "POST",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}:retry",
                      "response": {
                        "$ref": "Operation"
                      },
                      "id": "connectors.projects.locations.connections.eventSubscriptions.retry",
                      "path": "v1/{+name}:retry",
                      "description": "RetryEventSubscription retries the registration of Subscription."
                    },
                    "list": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.connections.eventSubscriptions.list",
                      "httpMethod": "GET",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions",
                      "description": "List EventSubscriptions in a given project,location and connection.",
                      "parameters": {
                        "pageToken": {
                          "description": "Page token.",
                          "location": "query",
                          "type": "string"
                        },
                        "orderBy": {
                          "description": "Order by parameters.",
                          "type": "string",
                          "location": "query"
                        },
                        "filter": {
                          "type": "string",
                          "description": "Filter.",
                          "location": "query"
                        },
                        "pageSize": {
                          "location": "query",
                          "format": "int32",
                          "description": "Page size.",
                          "type": "integer"
                        },
                        "parent": {
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string",
                          "required": true,
                          "description": "Required. Parent resource of the EventSubscription, of the form: `projects/*/locations/*/connections/*`"
                        }
                      },
                      "path": "v1/{+parent}/eventSubscriptions",
                      "response": {
                        "$ref": "ListEventSubscriptionsResponse"
                      },
                      "parameterOrder": [
                        "parent"
                      ]
                    },
                    "create": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions",
                      "parameters": {
                        "eventSubscriptionId": {
                          "location": "query",
                          "type": "string",
                          "description": "Required. Identifier to assign to the Event Subscription. Must be unique within scope of the parent resource."
                        },
                        "parent": {
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string",
                          "required": true,
                          "description": "Required. Parent resource of the EventSubscription, of the form: `projects/*/locations/*/connections/*`",
                          "location": "path"
                        }
                      },
                      "parameterOrder": [
                        "parent"
                      ],
                      "request": {
                        "$ref": "EventSubscription"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "httpMethod": "POST",
                      "description": "Creates a new EventSubscription in a given project,location and connection.",
                      "path": "v1/{+parent}/eventSubscriptions",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.create"
                    },
                    "delete": {
                      "description": "Deletes a single EventSubscription.",
                      "path": "v1/{+name}",
                      "httpMethod": "DELETE",
                      "response": {
                        "$ref": "Operation"
                      },
                      "parameters": {
                        "name": {
                          "required": true,
                          "type": "string",
                          "location": "path",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventsubscriptions/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$"
                        }
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.connections.eventSubscriptions.delete",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "parameterOrder": [
                        "name"
                      ]
                    }
                  }
                },
                "endUserAuthentications": {
                  "methods": {
                    "create": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "EndUserAuthentication"
                      },
                      "path": "v1/{+parent}/endUserAuthentications",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.create",
                      "description": "Creates a new EndUserAuthentication in a given project,location and connection.",
                      "parameters": {
                        "endUserAuthenticationId": {
                          "description": "Required. Identifier to assign to the EndUserAuthentication. Must be unique within scope of the parent resource.",
                          "location": "query",
                          "type": "string"
                        },
                        "parent": {
                          "required": true,
                          "type": "string",
                          "description": "Required. Parent resource of the EndUserAuthentication, of the form: `projects/*/locations/*/connections/*`",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                        }
                      },
                      "httpMethod": "POST",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications",
                      "response": {
                        "$ref": "Operation"
                      },
                      "parameterOrder": [
                        "parent"
                      ]
                    },
                    "delete": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameterOrder": [
                        "name"
                      ],
                      "id": "connectors.projects.locations.connections.endUserAuthentications.delete",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "httpMethod": "DELETE",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}",
                      "parameters": {
                        "name": {
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$",
                          "type": "string",
                          "required": true,
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/endUserAuthentication/*`"
                        }
                      },
                      "description": "Deletes a single EndUserAuthentication."
                    },
                    "patch": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "parameters": {
                        "name": {
                          "required": true,
                          "description": "Required. Identifier. Resource name of the EndUserAuthentication. Format: projects/{project}/locations/{location}/connections/{connection}/endUserAuthentications/{end_user_authentication}",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$",
                          "type": "string"
                        },
                        "updateMask": {
                          "format": "google-fieldmask",
                          "location": "query",
                          "type": "string",
                          "description": "Required. The list of fields to update. A field will be overwritten if it is in the mask. You can modify only the fields listed below. To update the EndUserAuthentication details: * `notify_endpoint_destination`"
                        }
                      },
                      "httpMethod": "PATCH",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}",
                      "parameterOrder": [
                        "name"
                      ],
                      "request": {
                        "$ref": "EndUserAuthentication"
                      },
                      "id": "connectors.projects.locations.connections.endUserAuthentications.patch",
                      "description": "Updates the parameters of a single EndUserAuthentication."
                    },
                    "list": {
                      "parameters": {
                        "orderBy": {
                          "type": "string",
                          "description": "Order by parameters.",
                          "location": "query"
                        },
                        "pageToken": {
                          "description": "Page token.",
                          "type": "string",
                          "location": "query"
                        },
                        "parent": {
                          "type": "string",
                          "required": true,
                          "description": "Required. Parent resource of the EndUserAuthentication, of the form: `projects/*/locations/*/connections/*`",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                        },
                        "filter": {
                          "type": "string",
                          "description": "Filter.",
                          "location": "query"
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Page size.",
                          "format": "int32",
                          "location": "query"
                        }
                      },
                      "httpMethod": "GET",
                      "path": "v1/{+parent}/endUserAuthentications",
                      "response": {
                        "$ref": "ListEndUserAuthenticationsResponse"
                      },
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "List EndUserAuthentications in a given project,location and connection.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "get": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Gets details of a single EndUserAuthentication.",
                      "parameterOrder": [
                        "name"
                      ],
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "EndUserAuthentication"
                      },
                      "httpMethod": "GET",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.get",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}",
                      "parameters": {
                        "name": {
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/EndUserAuthentications/*`",
                          "location": "path",
                          "type": "string"
                        },
                        "view": {
                          "location": "query",
                          "description": "Optional. View of the EndUserAuthentication to return.",
                          "enum": [
                            "END_USER_AUTHENTICATION_VIEW_UNSPECIFIED",
                            "BASIC_VIEW",
                            "FULL_VIEW"
                          ],
                          "type": "string",
                          "enumDescriptions": [
                            "END_USER_AUTHENTICATION_UNSPECIFIED.",
                            "Do not include secret fields.",
                            "Include secret fields."
                          ]
                        }
                      }
                    }
                  }
                },
                "connectionSchemaMetadata": {
                  "methods": {
                    "getEntityType": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Get entity type.",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.getEntityType",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}:getEntityType",
                      "parameters": {
                        "entityId": {
                          "description": "Required. Id of the entity type.",
                          "type": "string",
                          "location": "query"
                        },
                        "name": {
                          "required": true,
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "location": "path",
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata"
                        }
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:getEntityType",
                      "httpMethod": "GET"
                    },
                    "listActions": {
                      "parameterOrder": [
                        "name"
                      ],
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.listActions",
                      "path": "v1/{+name}:listActions",
                      "response": {
                        "$ref": "ListActionsResponse"
                      },
                      "description": "List actions.",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "httpMethod": "GET",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:listActions",
                      "parameters": {
                        "name": {
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name format. projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "required": true
                        },
                        "filter": {
                          "location": "query",
                          "description": "Required. Filter Wildcards are not supported in the filter currently.",
                          "type": "string"
                        },
                        "pageToken": {
                          "description": "Page token.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageSize": {
                          "format": "int32",
                          "description": "Page size. If unspecified, at most 50 actions will be returned.",
                          "location": "query",
                          "type": "integer"
                        },
                        "view": {
                          "type": "string",
                          "description": "Specifies which fields are returned in response. Defaults to BASIC view.",
                          "enum": [
                            "VIEW_UNSPECIFIED",
                            "BASIC"
                          ],
                          "enumDescriptions": [
                            "",
                            ""
                          ],
                          "location": "query"
                        }
                      }
                    },
                    "listEntityTypes": {
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.listEntityTypes",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:listEntityTypes",
                      "parameterOrder": [
                        "name"
                      ],
                      "response": {
                        "$ref": "ListEntityTypesResponse"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "filter": {
                          "type": "string",
                          "location": "query",
                          "description": "Required. Filter Wildcards are not supported in the filter currently."
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Page token.",
                          "location": "query"
                        },
                        "name": {
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "required": true,
                          "location": "path",
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata"
                        },
                        "view": {
                          "enumDescriptions": [
                            "",
                            ""
                          ],
                          "enum": [
                            "VIEW_UNSPECIFIED",
                            "BASIC"
                          ],
                          "type": "string",
                          "location": "query",
                          "description": "Specifies which fields are returned in response. Defaults to BASIC view."
                        },
                        "pageSize": {
                          "location": "query",
                          "description": "Page size. If unspecified, at most 50 entity types will be returned.",
                          "type": "integer",
                          "format": "int32"
                        }
                      },
                      "path": "v1/{+name}:listEntityTypes",
                      "description": "List entity types.",
                      "httpMethod": "GET"
                    },
                    "getAction": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Get action.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:getAction",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.getAction",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "actionId": {
                          "location": "query",
                          "type": "string",
                          "description": "Required. Id of the action."
                        },
                        "name": {
                          "type": "string",
                          "location": "path",
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "required": true
                        }
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}:getAction"
                    },
                    "refresh": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.refresh",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:refresh",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameterOrder": [
                        "name"
                      ],
                      "path": "v1/{+name}:refresh",
                      "request": {
                        "$ref": "RefreshConnectionSchemaMetadataRequest"
                      },
                      "description": "Refresh runtime schema of a connection.",
                      "parameters": {
                        "name": {
                          "required": true,
                          "type": "string",
                          "description": "Required. Resource name. Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$"
                        }
                      },
                      "httpMethod": "POST"
                    }
                  }
                }
              }
            },
            "global": {
              "methods": {
                "getSettings": {
                  "response": {
                    "$ref": "Settings"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/global/settings",
                  "parameters": {
                    "name": {
                      "description": "Required. The resource name of the Settings.",
                      "required": true,
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/global/settings$",
                      "location": "path"
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "GetGlobalSettings gets settings of a project. GlobalSettings is a singleton resource.",
                  "path": "v1/{+name}",
                  "httpMethod": "GET",
                  "id": "connectors.projects.locations.global.getSettings",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "updateSettings": {
                  "httpMethod": "PATCH",
                  "parameters": {
                    "name": {
                      "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/global/settings}",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/global/settings$",
                      "location": "path",
                      "type": "string"
                    },
                    "updateMask": {
                      "description": "Required. The list of fields to update.",
                      "format": "google-fieldmask",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "request": {
                    "$ref": "Settings"
                  },
                  "id": "connectors.projects.locations.global.updateSettings",
                  "flatPath": "v1/projects/{projectsId}/locations/global/settings",
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Update the global settings of a project."
                }
              },
              "resources": {
                "managedZones": {
                  "methods": {
                    "get": {
                      "parameterOrder": [
                        "name"
                      ],
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.global.managedZones.get",
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}",
                      "description": "Gets details of a single ManagedZone.",
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "ManagedZone"
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "description": "Required. Resource name of the form: `projects/*/locations/global/managedZones/*`",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$",
                          "location": "path",
                          "type": "string"
                        }
                      }
                    },
                    "patch": {
                      "parameterOrder": [
                        "name"
                      ],
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.global.managedZones.patch",
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Output only. Resource name of the Managed Zone. Format: projects/{project}/locations/global/managedZones/{managed_zone}",
                          "required": true,
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$"
                        },
                        "updateMask": {
                          "type": "string",
                          "location": "query",
                          "description": "Required. The list of fields to update. Fields are specified relative to the managedZone. A field will be overwritten if it is in the mask. You can modify only the fields listed below. To update the managedZone details: * `description` * `labels` * `target_project` * `target_network`",
                          "format": "google-fieldmask"
                        }
                      },
                      "httpMethod": "PATCH",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}",
                      "request": {
                        "$ref": "ManagedZone"
                      },
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Updates the parameters of a single ManagedZone."
                    },
                    "list": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "response": {
                        "$ref": "ListManagedZonesResponse"
                      },
                      "parameterOrder": [
                        "parent"
                      ],
                      "httpMethod": "GET",
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones",
                      "parameters": {
                        "pageSize": {
                          "type": "integer",
                          "location": "query",
                          "format": "int32",
                          "description": "Page size."
                        },
                        "pageToken": {
                          "type": "string",
                          "description": "Page token.",
                          "location": "query"
                        },
                        "returnPartialSuccess": {
                          "description": "Optional. If true, allow partial responses for multi-regional Aggregated List requests.",
                          "type": "boolean",
                          "location": "query"
                        },
                        "parent": {
                          "location": "path",
                          "description": "Required. Parent resource of the Managed Zone, of the form: `projects/*/locations/global`",
                          "type": "string",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/global$"
                        },
                        "filter": {
                          "type": "string",
                          "location": "query",
                          "description": "Filter."
                        },
                        "orderBy": {
                          "description": "Order by parameters.",
                          "type": "string",
                          "location": "query"
                        }
                      },
                      "id": "connectors.projects.locations.global.managedZones.list",
                      "path": "v1/{+parent}/managedZones",
                      "description": "List ManagedZones in a given project"
                    },
                    "create": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "id": "connectors.projects.locations.global.managedZones.create",
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones",
                      "parameters": {
                        "parent": {
                          "pattern": "^projects/[^/]+/locations/global$",
                          "description": "Required. Parent resource of the ManagedZone, of the form: `projects/*/locations/global`",
                          "required": true,
                          "location": "path",
                          "type": "string"
                        },
                        "managedZoneId": {
                          "type": "string",
                          "description": "Required. Identifier to assign to the ManagedZone. Must be unique within scope of the parent resource.",
                          "location": "query"
                        }
                      },
                      "httpMethod": "POST",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Creates a new ManagedZone in a given project and location.",
                      "parameterOrder": [
                        "parent"
                      ],
                      "path": "v1/{+parent}/managedZones",
                      "request": {
                        "$ref": "ManagedZone"
                      }
                    },
                    "delete": {
                      "description": "Deletes a single ManagedZone.",
                      "path": "v1/{+name}",
                      "parameterOrder": [
                        "name"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "response": {
                        "$ref": "Operation"
                      },
                      "id": "connectors.projects.locations.global.managedZones.delete",
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}",
                      "parameters": {
                        "name": {
                          "required": true,
                          "description": "Required. Resource name of the form: `projects/*/locations/global/managedZones/*`",
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$",
                          "type": "string",
                          "location": "path"
                        }
                      },
                      "httpMethod": "DELETE"
                    }
                  }
                },
                "customConnectors": {
                  "methods": {
                    "patch": {
                      "httpMethod": "PATCH",
                      "request": {
                        "$ref": "CustomConnector"
                      },
                      "parameters": {
                        "updateMask": {
                          "location": "query",
                          "type": "string",
                          "format": "google-fieldmask",
                          "description": "Required. Field mask is used to specify the fields to be overwritten in the Connector resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. Set the mask as \"*\" for full replacement, which means all fields will be overwritten."
                        },
                        "name": {
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "description": "Identifier. Resource name of the CustomConnector. Format: projects/{project}/locations/{location}/customConnectors/{connector}",
                          "type": "string",
                          "required": true
                        }
                      },
                      "description": "Updates the parameters of a CustomConnector.",
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "response": {
                        "$ref": "Operation"
                      },
                      "id": "connectors.projects.locations.global.customConnectors.patch",
                      "path": "v1/{+name}",
                      "parameterOrder": [
                        "name"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "delete": {
                      "description": "Deletes a single CustomConnector.",
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "parameterOrder": [
                        "name"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.global.customConnectors.delete",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "parameters": {
                        "name": {
                          "location": "path",
                          "type": "string",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{connector}`"
                        },
                        "force": {
                          "location": "query",
                          "description": "Optional. If set to true, any customConnectorVersion which is a child resource will also be deleted. https://aip.dev/135#cascading-delete",
                          "type": "boolean"
                        }
                      },
                      "httpMethod": "DELETE"
                    },
                    "create": {
                      "httpMethod": "POST",
                      "parameters": {
                        "customConnectorId": {
                          "location": "query",
                          "description": "Required. Identifier to assign to the CreateCustomConnector. Must be unique within scope of the parent resource.",
                          "type": "string"
                        },
                        "parent": {
                          "required": true,
                          "description": "Required. Parent resource of the CreateCustomConnector, of the form: `projects/{project}/locations/*`",
                          "pattern": "^projects/[^/]+/locations/global$",
                          "location": "path",
                          "type": "string"
                        }
                      },
                      "response": {
                        "$ref": "Operation"
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors",
                      "request": {
                        "$ref": "CustomConnector"
                      },
                      "id": "connectors.projects.locations.global.customConnectors.create",
                      "path": "v1/{+parent}/customConnectors",
                      "parameterOrder": [
                        "parent"
                      ],
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Creates a new CustomConnector in a given project and location."
                    },
                    "get": {
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/customConnectors/*`",
                          "required": true
                        }
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "httpMethod": "GET",
                      "path": "v1/{+name}",
                      "description": "Gets details of a single CustomConnector.",
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "id": "connectors.projects.locations.global.customConnectors.get",
                      "response": {
                        "$ref": "CustomConnector"
                      }
                    },
                    "list": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors",
                      "parameterOrder": [
                        "parent"
                      ],
                      "path": "v1/{+parent}/customConnectors",
                      "id": "connectors.projects.locations.global.customConnectors.list",
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "ListCustomConnectorsResponse"
                      },
                      "description": "List CustomConnectorVersions in a given project",
                      "parameters": {
                        "parent": {
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/global$",
                          "type": "string",
                          "location": "path",
                          "description": "Required. Parent resource of the custom connectors, of the form: `projects/*/locations/*` Only global location is supported for CustomConnector resource."
                        },
                        "filter": {
                          "type": "string",
                          "location": "query",
                          "description": "Filter string."
                        },
                        "pageToken": {
                          "location": "query",
                          "description": "Page token.",
                          "type": "string"
                        },
                        "pageSize": {
                          "format": "int32",
                          "description": "Page size.",
                          "type": "integer",
                          "location": "query"
                        }
                      }
                    }
                  },
                  "resources": {
                    "customConnectorVersions": {
                      "methods": {
                        "get": {
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.get",
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}",
                          "httpMethod": "GET",
                          "response": {
                            "$ref": "CustomConnectorVersion"
                          },
                          "parameters": {
                            "name": {
                              "required": true,
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                              "description": "Required. Resource name of the form: `projects/*/locations/{location}/customConnectors/*/customConnectorVersions/*`",
                              "location": "path",
                              "type": "string"
                            }
                          },
                          "path": "v1/{+name}",
                          "parameterOrder": [
                            "name"
                          ],
                          "description": "Gets details of a single CustomConnectorVersion."
                        },
                        "list": {
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions",
                          "httpMethod": "GET",
                          "description": "List CustomConnectorVersions in a given project",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "parameters": {
                            "parent": {
                              "description": "Required. Parent resource of the connectors, of the form: `projects/*/locations/{location}/customConnectors/*/customConnectorVersions/*`",
                              "location": "path",
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                              "required": true
                            },
                            "pageSize": {
                              "location": "query",
                              "format": "int32",
                              "description": "Page size.",
                              "type": "integer"
                            },
                            "pageToken": {
                              "description": "Page token.",
                              "type": "string",
                              "location": "query"
                            }
                          },
                          "parameterOrder": [
                            "parent"
                          ],
                          "response": {
                            "$ref": "ListCustomConnectorVersionsResponse"
                          },
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.list",
                          "path": "v1/{+parent}/customConnectorVersions"
                        },
                        "create": {
                          "parameterOrder": [
                            "parent"
                          ],
                          "request": {
                            "$ref": "CustomConnectorVersion"
                          },
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.create",
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions",
                          "response": {
                            "$ref": "Operation"
                          },
                          "description": "Creates a new CustomConnectorVersion in a given project and location.",
                          "parameters": {
                            "parent": {
                              "location": "path",
                              "type": "string",
                              "required": true,
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                              "description": "Required. Parent resource of the CreateCustomConnector, of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}`"
                            },
                            "customConnectorVersionId": {
                              "description": "Required. Identifier to assign to the CreateCustomConnectorVersion. Must be unique within scope of the parent resource.",
                              "location": "query",
                              "type": "string"
                            }
                          },
                          "httpMethod": "POST",
                          "path": "v1/{+parent}/customConnectorVersions",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        }
                      }
                    }
                  }
                }
              }
            },
            "providers": {
              "methods": {
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets details of a provider.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "path": "v1/{+name}",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*` Only global location is supported for Provider resource.",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$"
                    }
                  },
                  "response": {
                    "$ref": "Provider"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}",
                  "id": "connectors.projects.locations.providers.get"
                },
                "setIamPolicy": {
                  "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
                  "parameterOrder": [
                    "resource"
                  ],
                  "path": "v1/{+resource}:setIamPolicy",
                  "response": {
                    "$ref": "Policy"
                  },
                  "request": {
                    "$ref": "SetIamPolicyRequest"
                  },
                  "id": "connectors.projects.locations.providers.setIamPolicy",
                  "parameters": {
                    "resource": {
                      "description": "REQUIRED: The resource for which the policy is being specified. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.",
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "httpMethod": "POST",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:setIamPolicy"
                },
                "testIamPermissions": {
                  "httpMethod": "POST",
                  "parameters": {
                    "resource": {
                      "description": "REQUIRED: The resource for which the policy detail is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field.",
                      "type": "string",
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                      "location": "path"
                    }
                  },
                  "path": "v1/{+resource}:testIamPermissions",
                  "request": {
                    "$ref": "TestIamPermissionsRequest"
                  },
                  "description": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.",
                  "response": {
                    "$ref": "TestIamPermissionsResponse"
                  },
                  "id": "connectors.projects.locations.providers.testIamPermissions",
                  "parameterOrder": [
                    "resource"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:testIamPermissions"
                },
                "getIamPolicy": {
                  "id": "connectors.projects.locations.providers.getIamPolicy",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.",
                  "path": "v1/{+resource}:getIamPolicy",
                  "response": {
                    "$ref": "Policy"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:getIamPolicy",
                  "httpMethod": "GET",
                  "parameters": {
                    "options.requestedPolicyVersion": {
                      "type": "integer",
                      "description": "Optional. The maximum policy version that will be used to format the policy. Valid values are 0, 1, and 3. Requests specifying an invalid value will be rejected. Requests for policies with any conditional role bindings must specify version 3. Policies with no conditional role bindings may specify any valid value or leave the field unset. The policy in the response might use the policy version that you specified, or it might use a lower policy version. For example, if you specify version 3, but the policy has no conditional role bindings, the response uses version 1. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies).",
                      "format": "int32",
                      "location": "query"
                    },
                    "resource": {
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                      "type": "string",
                      "required": true,
                      "description": "REQUIRED: The resource for which the policy is being requested. See [Resource names](https://cloud.google.com/apis/design/resource_names) for the appropriate value for this field."
                    }
                  },
                  "parameterOrder": [
                    "resource"
                  ]
                },
                "list": {
                  "id": "connectors.projects.locations.providers.list",
                  "response": {
                    "$ref": "ListProvidersResponse"
                  },
                  "description": "Lists Providers in a given project and location.",
                  "parameters": {
                    "parent": {
                      "description": "Required. Parent resource of the API, of the form: `projects/*/locations/*` Only global location is supported for Provider resource.",
                      "required": true,
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "location": "path"
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Page token."
                    },
                    "pageSize": {
                      "location": "query",
                      "type": "integer",
                      "description": "Page size.",
                      "format": "int32"
                    }
                  },
                  "httpMethod": "GET",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers",
                  "parameterOrder": [
                    "parent"
                  ],
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+parent}/providers"
                }
              },
              "resources": {
                "connectors": {
                  "resources": {
                    "versions": {
                      "resources": {
                        "eventtypes": {
                          "methods": {
                            "list": {
                              "httpMethod": "GET",
                              "parameters": {
                                "pageToken": {
                                  "type": "string",
                                  "location": "query",
                                  "description": "Page token."
                                },
                                "parent": {
                                  "required": true,
                                  "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+$",
                                  "description": "Required. Parent resource of the connectors, of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*` Only global location is supported for EventType resource.",
                                  "location": "path",
                                  "type": "string"
                                },
                                "pageSize": {
                                  "type": "integer",
                                  "format": "int32",
                                  "description": "Page size.",
                                  "location": "query"
                                }
                              },
                              "parameterOrder": [
                                "parent"
                              ],
                              "description": "Lists Event Types in a given Connector Version.",
                              "id": "connectors.projects.locations.providers.connectors.versions.eventtypes.list",
                              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}/eventtypes",
                              "response": {
                                "$ref": "ListEventTypesResponse"
                              },
                              "path": "v1/{+parent}/eventtypes",
                              "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform"
                              ]
                            },
                            "get": {
                              "description": "Gets details of a single event type.",
                              "path": "v1/{+name}",
                              "id": "connectors.projects.locations.providers.connectors.versions.eventtypes.get",
                              "parameterOrder": [
                                "name"
                              ],
                              "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform"
                              ],
                              "response": {
                                "$ref": "EventType"
                              },
                              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}/eventtypes/{eventtypesId}",
                              "httpMethod": "GET",
                              "parameters": {
                                "name": {
                                  "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+/eventtypes/[^/]+$",
                                  "type": "string",
                                  "location": "path",
                                  "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*/eventtypes/*` Only global location is supported for EventType resource.",
                                  "required": true
                                }
                              }
                            }
                          }
                        }
                      },
                      "methods": {
                        "get": {
                          "parameters": {
                            "name": {
                              "location": "path",
                              "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*` Only global location is supported for ConnectorVersion resource.",
                              "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+$",
                              "type": "string",
                              "required": true
                            },
                            "view": {
                              "type": "string",
                              "location": "query",
                              "enumDescriptions": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED.",
                                "Do not include role grant configs.",
                                "Include role grant configs."
                              ],
                              "enum": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED",
                                "CONNECTOR_VERSION_VIEW_BASIC",
                                "CONNECTOR_VERSION_VIEW_FULL"
                              ],
                              "description": "Specifies which fields of the ConnectorVersion are returned in the response. Defaults to `CUSTOMER` view."
                            }
                          },
                          "httpMethod": "GET",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "parameterOrder": [
                            "name"
                          ],
                          "path": "v1/{+name}",
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}",
                          "id": "connectors.projects.locations.providers.connectors.versions.get",
                          "description": "Gets details of a single connector version.",
                          "response": {
                            "$ref": "ConnectorVersion"
                          }
                        },
                        "list": {
                          "id": "connectors.projects.locations.providers.connectors.versions.list",
                          "httpMethod": "GET",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "parameters": {
                            "pageToken": {
                              "type": "string",
                              "description": "Page token.",
                              "location": "query"
                            },
                            "parent": {
                              "type": "string",
                              "location": "path",
                              "required": true,
                              "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+$"
                            },
                            "pageSize": {
                              "format": "int32",
                              "location": "query",
                              "description": "Page size.",
                              "type": "integer"
                            },
                            "view": {
                              "type": "string",
                              "description": "Specifies which fields of the ConnectorVersion are returned in the response. Defaults to `BASIC` view.",
                              "enum": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED",
                                "CONNECTOR_VERSION_VIEW_BASIC",
                                "CONNECTOR_VERSION_VIEW_FULL"
                              ],
                              "location": "query",
                              "enumDescriptions": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED.",
                                "Do not include role grant configs.",
                                "Include role grant configs."
                              ]
                            }
                          },
                          "parameterOrder": [
                            "parent"
                          ],
                          "path": "v1/{+parent}/versions",
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions",
                          "response": {
                            "$ref": "ListConnectorVersionsResponse"
                          },
                          "description": "Lists Connector Versions in a given project and location."
                        },
                        "fetchAuthSchema": {
                          "parameters": {
                            "name": {
                              "type": "string",
                              "location": "path",
                              "description": "Required. Parent resource of the Connector Version, of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*`",
                              "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+$",
                              "required": true
                            },
                            "view": {
                              "enumDescriptions": [
                                "Default value.",
                                "Basic view of the AuthSchema.",
                                "JSON schema view of the AuthSchema.",
                                "EUA Schema view of the AuthSchema."
                              ],
                              "location": "query",
                              "description": "Optional. View of the AuthSchema. The default value is BASIC.",
                              "type": "string",
                              "enum": [
                                "AUTH_SCHEMA_VIEW_UNSPECIFIED",
                                "BASIC",
                                "JSON_SCHEMA",
                                "EUA_SCHEMA"
                              ]
                            }
                          },
                          "httpMethod": "GET",
                          "description": "fetch and return the list of auth config variables required to override the connection backend auth.",
                          "id": "connectors.projects.locations.providers.connectors.versions.fetchAuthSchema",
                          "response": {
                            "$ref": "FetchAuthSchemaResponse"
                          },
                          "parameterOrder": [
                            "name"
                          ],
                          "path": "v1/{+name}:fetchAuthSchema",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}:fetchAuthSchema"
                        }
                      }
                    }
                  },
                  "methods": {
                    "list": {
                      "description": "Lists Connectors in a given project and location.",
                      "response": {
                        "$ref": "ListConnectorsResponse"
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors",
                      "path": "v1/{+parent}/connectors",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "filter": {
                          "description": "Filter string.",
                          "location": "query",
                          "type": "string"
                        },
                        "pageSize": {
                          "type": "integer",
                          "description": "Page size.",
                          "format": "int32",
                          "location": "query"
                        },
                        "pageToken": {
                          "location": "query",
                          "description": "Page token.",
                          "type": "string"
                        },
                        "parent": {
                          "required": true,
                          "description": "Required. Parent resource of the connectors, of the form: `projects/*/locations/*/providers/*` Only global location is supported for Connector resource.",
                          "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                          "location": "path",
                          "type": "string"
                        }
                      },
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.providers.connectors.list"
                    },
                    "get": {
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "httpMethod": "GET",
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.providers.connectors.get",
                      "description": "Gets details of a single Connector.",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*/connectors/*` Only global location is supported for Connector resource.",
                          "location": "path",
                          "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+$",
                          "type": "string"
                        }
                      },
                      "response": {
                        "$ref": "Connector"
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}"
                    }
                  }
                }
              }
            },
            "customConnectors": {
              "methods": {
                "validateCustomConnectorSpec": {
                  "id": "connectors.projects.locations.customConnectors.validateCustomConnectorSpec",
                  "path": "v1/{+parent}/customConnectors:validateCustomConnectorSpec",
                  "request": {
                    "$ref": "ValidateCustomConnectorSpecRequest"
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors:validateCustomConnectorSpec",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Validates a Custom Connector Spec.",
                  "httpMethod": "POST",
                  "response": {
                    "$ref": "ValidateCustomConnectorSpecResponse"
                  },
                  "parameters": {
                    "parent": {
                      "required": true,
                      "description": "Required. Location at which the custom connector is being created.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "location": "path"
                    }
                  }
                }
              },
              "resources": {
                "customConnectorVersions": {
                  "methods": {
                    "withdraw": {
                      "description": "Withdraw the publish request for the CustomConnectorVersion. This can only be used before the CustomConnectorVersion is published.",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameterOrder": [
                        "name"
                      ],
                      "request": {
                        "$ref": "WithdrawCustomConnectorVersionRequest"
                      },
                      "httpMethod": "POST",
                      "response": {
                        "$ref": "Operation"
                      },
                      "parameters": {
                        "name": {
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                          "required": true,
                          "type": "string",
                          "location": "path",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`"
                        }
                      },
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.withdraw",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:withdraw",
                      "path": "v1/{+name}:withdraw"
                    },
                    "deprecate": {
                      "description": "Deprecates a single CustomConnectorVersion.",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.deprecate",
                      "parameterOrder": [
                        "name"
                      ],
                      "response": {
                        "$ref": "Operation"
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:deprecate",
                      "httpMethod": "POST",
                      "path": "v1/{+name}:deprecate",
                      "parameters": {
                        "name": {
                          "required": true,
                          "type": "string",
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                          "location": "path",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`"
                        }
                      },
                      "request": {
                        "$ref": "DeprecateCustomConnectorVersionRequest"
                      }
                    },
                    "publish": {
                      "path": "v1/{+name}:publish",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:publish",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "POST",
                      "parameters": {
                        "name": {
                          "required": true,
                          "type": "string",
                          "location": "path",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$"
                        }
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "request": {
                        "$ref": "PublishCustomConnectorVersionRequest"
                      },
                      "description": "Publish request for the CustomConnectorVersion. Once approved, the CustomConnectorVersion will be published as PartnerConnector.",
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.publish",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "delete": {
                      "path": "v1/{+name}",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.delete",
                      "description": "Deletes a single CustomConnectorVersion.",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}",
                      "parameters": {
                        "name": {
                          "type": "string",
                          "required": true,
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                          "location": "path",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`"
                        }
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "DELETE",
                      "response": {
                        "$ref": "Operation"
                      }
                    }
                  }
                }
              }
            },
            "operations": {
              "methods": {
                "delete": {
                  "path": "v1/{+name}",
                  "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`.",
                  "id": "connectors.projects.locations.operations.delete",
                  "parameterOrder": [
                    "name"
                  ],
                  "response": {
                    "$ref": "Empty"
                  },
                  "httpMethod": "DELETE",
                  "parameters": {
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "description": "The name of the operation resource to be deleted.",
                      "type": "string",
                      "required": true
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}"
                },
                "cancel": {
                  "path": "v1/{+name}:cancel",
                  "id": "connectors.projects.locations.operations.cancel",
                  "response": {
                    "$ref": "Empty"
                  },
                  "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "POST",
                  "request": {
                    "$ref": "CancelOperationRequest"
                  },
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "location": "path",
                      "description": "The name of the operation resource to be cancelled.",
                      "type": "string"
                    }
                  }
                },
                "get": {
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "type": "string"
                    }
                  },
                  "id": "connectors.projects.locations.operations.get",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "Operation"
                  },
                  "path": "v1/{+name}"
                },
                "list": {
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations",
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "parameters": {
                    "returnPartialSuccess": {
                      "description": "When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `\"projects/example/locations/-\"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation.",
                      "location": "query",
                      "type": "boolean"
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "The standard list page token."
                    },
                    "pageSize": {
                      "type": "integer",
                      "format": "int32",
                      "description": "The standard list page size.",
                      "location": "query"
                    },
                    "name": {
                      "location": "path",
                      "description": "The name of the operation's parent resource.",
                      "required": true,
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$"
                    },
                    "filter": {
                      "description": "The standard list filter.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}/operations",
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "name"
                  ],
                  "id": "connectors.projects.locations.operations.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "endpointAttachments": {
              "methods": {
                "create": {
                  "id": "connectors.projects.locations.endpointAttachments.create",
                  "parameterOrder": [
                    "parent"
                  ],
                  "request": {
                    "$ref": "EndpointAttachment"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+parent}/endpointAttachments",
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Creates a new EndpointAttachment in a given project and location.",
                  "httpMethod": "POST",
                  "parameters": {
                    "parent": {
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "description": "Required. Parent resource of the EndpointAttachment, of the form: `projects/*/locations/*`",
                      "required": true,
                      "type": "string"
                    },
                    "endpointAttachmentId": {
                      "location": "query",
                      "type": "string",
                      "description": "Required. Identifier to assign to the EndpointAttachment. Must be unique within scope of the parent resource. The regex is: `^[a-z]([a-z0-9-]{0,61}[a-z0-9])?$`."
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments"
                },
                "delete": {
                  "path": "v1/{+name}",
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "Deletes a single EndpointAttachment.",
                  "parameters": {
                    "name": {
                      "required": true,
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/endpointAttachments/*`",
                      "location": "path"
                    }
                  },
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "DELETE",
                  "id": "connectors.projects.locations.endpointAttachments.delete",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}"
                },
                "patch": {
                  "description": "Updates the parameters of a single EndpointAttachment.",
                  "id": "connectors.projects.locations.endpointAttachments.patch",
                  "path": "v1/{+name}",
                  "parameters": {
                    "updateMask": {
                      "format": "google-fieldmask",
                      "type": "string",
                      "description": "Required. The list of fields to update. Fields are specified relative to the endpointAttachment. A field will be overwritten if it is in the mask. You can modify only the fields listed below. To update the endpointAttachment details: * `description` * `labels`",
                      "location": "query"
                    },
                    "name": {
                      "type": "string",
                      "location": "path",
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "required": true,
                      "description": "Output only. Resource name of the Endpoint Attachment. Format: projects/{project}/locations/{location}/endpointAttachments/{endpoint_attachment}"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "PATCH",
                  "response": {
                    "$ref": "Operation"
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}",
                  "request": {
                    "$ref": "EndpointAttachment"
                  }
                },
                "list": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments",
                  "parameters": {
                    "parent": {
                      "location": "path",
                      "type": "string",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "required": true,
                      "description": "Required. Parent resource od the EndpointAttachment, of the form: `projects/*/locations/*`"
                    },
                    "view": {
                      "type": "string",
                      "enum": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED",
                        "ENDPOINT_ATTACHMENT_VIEW_BASIC",
                        "ENDPOINT_ATTACHMENT_VIEW_FULL"
                      ],
                      "enumDescriptions": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED.",
                        "Do not include status.",
                        "Includes Status."
                      ],
                      "location": "query",
                      "description": "Optional. Specifies which fields of the EndpointAttachment are returned in the response. Defaults to `ENDPOINT_ATTACHMENT_VIEW_BASIC` view."
                    },
                    "pageToken": {
                      "location": "query",
                      "description": "Page token.",
                      "type": "string"
                    },
                    "orderBy": {
                      "location": "query",
                      "description": "Order by parameters.",
                      "type": "string"
                    },
                    "filter": {
                      "type": "string",
                      "location": "query",
                      "description": "Filter."
                    },
                    "pageSize": {
                      "location": "query",
                      "format": "int32",
                      "description": "Page size.",
                      "type": "integer"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "GET",
                  "id": "connectors.projects.locations.endpointAttachments.list",
                  "response": {
                    "$ref": "ListEndpointAttachmentsResponse"
                  },
                  "path": "v1/{+parent}/endpointAttachments",
                  "description": "List EndpointAttachments in a given project"
                },
                "get": {
                  "response": {
                    "$ref": "EndpointAttachment"
                  },
                  "description": "Gets details of a single EndpointAttachment.",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "path": "v1/{+name}",
                  "parameters": {
                    "name": {
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/endpointAttachments/*`",
                      "required": true,
                      "type": "string",
                      "location": "path"
                    },
                    "view": {
                      "location": "query",
                      "enum": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED",
                        "ENDPOINT_ATTACHMENT_VIEW_BASIC",
                        "ENDPOINT_ATTACHMENT_VIEW_FULL"
                      ],
                      "description": "Optional. Specifies which fields of the EndpointAttachment are returned in the response. Defaults to `ENDPOINT_ATTACHMENT_VIEW_BASIC` view.",
                      "enumDescriptions": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED.",
                        "Do not include status.",
                        "Includes Status."
                      ],
                      "type": "string"
                    }
                  },
                  "id": "connectors.projects.locations.endpointAttachments.get"
                }
              }
            }
          }
        }
      }
    }
  }
}
