{
  "version_module": true,
  "servicePath": "",
  "icons": {
    "x32": "http://www.google.com/images/icons/product/search-32.gif",
    "x16": "http://www.google.com/images/icons/product/search-16.gif"
  },
  "ownerName": "Google",
  "mtlsRootUrl": "https://connectors.mtls.googleapis.com/",
  "name": "connectors",
  "schemas": {
    "EndUserAuthenticationConfigVariable": {
      "description": "EndUserAuthenticationConfigVariable represents a configuration variable present in a EndUserAuthentication.",
      "properties": {
        "key": {
          "description": "Required. Key of the config variable.",
          "type": "string"
        },
        "stringValue": {
          "description": "Value is a string.",
          "type": "string"
        },
        "intValue": {
          "type": "string",
          "format": "int64",
          "description": "Value is an integer"
        },
        "secretValue": {
          "$ref": "EUASecret",
          "description": "Value is a secret"
        },
        "boolValue": {
          "description": "Value is a bool.",
          "type": "boolean"
        }
      },
      "id": "EndUserAuthenticationConfigVariable",
      "type": "object"
    },
    "ConnectorVersion": {
      "id": "ConnectorVersion",
      "type": "object",
      "description": "ConnectorVersion indicates a specific version of a connector.",
      "properties": {
        "authConfigTemplates": {
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "description": "Output only. List of auth configs supported by the Connector Version."
        },
        "roleGrant": {
          "$ref": "RoleGrant",
          "readOnly": true,
          "description": "Output only. Role grant configuration for this config variable. It will be DEPRECATED soon."
        },
        "roleGrants": {
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "RoleGrant"
          },
          "description": "Output only. Role grant configurations for this connector version."
        },
        "isCustomEntitiesSupported": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Is custom entities supported."
        },
        "eventingConfigTemplate": {
          "description": "Output only. Eventing configuration supported by the Connector.",
          "readOnly": true,
          "$ref": "EventingConfigTemplate"
        },
        "vpcscConfig": {
          "readOnly": true,
          "$ref": "VpcscConfig",
          "description": "Output only. VPCSC config for the connector."
        },
        "destinationConfigTemplates": {
          "description": "Output only. List of destination configs needed to create a connection.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "DestinationConfigTemplate"
          }
        },
        "isCustomActionsSupported": {
          "description": "Output only. Is custom actions supported.",
          "readOnly": true,
          "type": "boolean"
        },
        "releaseVersion": {
          "description": "Output only. ReleaseVersion of the connector, for example: \"1.0.1-alpha\".",
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "format": "google-datetime",
          "description": "Output only. Updated time.",
          "readOnly": true,
          "type": "string"
        },
        "connectorInfraConfig": {
          "$ref": "ConnectorInfraConfig",
          "readOnly": true,
          "description": "Output only. Infra configs supported by Connector."
        },
        "supportedRuntimeFeatures": {
          "readOnly": true,
          "$ref": "SupportedRuntimeFeatures",
          "description": "Output only. Information about the runtime features supported by the Connector."
        },
        "labels": {
          "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"
          },
          "readOnly": true,
          "type": "object"
        },
        "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.",
          "readOnly": true,
          "type": "string"
        },
        "egressControlConfig": {
          "description": "Output only. Configuration for Egress Control.",
          "$ref": "EgressControlConfig",
          "readOnly": true
        },
        "supportedStandardEntities": {
          "items": {
            "$ref": "StandardEntity"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. Supported standard entities."
        },
        "schemaRefreshConfig": {
          "description": "Connection Schema Refresh Config",
          "$ref": "SchemaRefreshConfig"
        },
        "sslConfigTemplate": {
          "description": "Output only. Ssl configuration supported by the Connector.",
          "$ref": "SslConfigTemplate",
          "readOnly": true
        },
        "authOverrideEnabled": {
          "description": "Output only. Flag to mark the dynamic auth override.",
          "readOnly": true,
          "type": "boolean"
        },
        "supportedStandardActions": {
          "description": "Output only. Supported standard actions.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "StandardAction"
          }
        },
        "configVariableTemplates": {
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "description": "Output only. List of config variables needed to create a connection."
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Created time.",
          "format": "google-datetime"
        },
        "displayName": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Display name."
        },
        "unsupportedConnectionTypes": {
          "description": "Output only. Unsupported connection types.",
          "items": {
            "enumDescriptions": [
              "Connection type is unspecified.",
              "Connection with eventing.",
              "Only connection.",
              "Only eventing."
            ],
            "type": "string",
            "enum": [
              "CONNECTION_TYPE_UNSPECIFIED",
              "CONNECTION_WITH_EVENTING",
              "ONLY_CONNECTION",
              "ONLY_EVENTING"
            ]
          },
          "readOnly": true,
          "type": "array"
        },
        "launchStage": {
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "RefreshConnectionSchemaMetadataRequest": {
      "description": "Request message for ConnectorsService.RefreshConnectionSchemaMetadata.",
      "properties": {},
      "id": "RefreshConnectionSchemaMetadataRequest",
      "type": "object"
    },
    "SshPublicKey": {
      "description": "Parameters to support Ssh public key Authentication.",
      "properties": {
        "sshClientCertPass": {
          "$ref": "Secret",
          "description": "Optional. Password (passphrase) for ssh client certificate if it has one."
        },
        "username": {
          "description": "Optional. The user account used to authenticate.",
          "type": "string"
        },
        "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"
        }
      },
      "id": "SshPublicKey",
      "type": "object"
    },
    "EndUserAuthenticationEndUserAuthenticationStatus": {
      "description": "EndUserAuthentication Status denotes the status of the EndUserAuthentication resource.",
      "properties": {
        "description": {
          "description": "Output only. Description of the state.",
          "readOnly": true,
          "type": "string"
        },
        "state": {
          "description": "Output only. State of Event Subscription resource.",
          "enumDescriptions": [
            "Default state.",
            "EndUserAuthentication is in Active state.",
            "EndUserAuthentication is in Error state."
          ],
          "readOnly": true,
          "type": "string",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "ERROR"
          ]
        }
      },
      "id": "EndUserAuthenticationEndUserAuthenticationStatus",
      "type": "object"
    },
    "ListProvidersResponse": {
      "id": "ListProvidersResponse",
      "type": "object",
      "description": "Response message for Connectors.ListProviders.",
      "properties": {
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "providers": {
          "items": {
            "$ref": "Provider"
          },
          "type": "array",
          "description": "A list of providers."
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "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.",
      "properties": {
        "auditLogConfigs": {
          "type": "array",
          "items": {
            "$ref": "AuditLogConfig"
          },
          "description": "The configuration for logging of each type of permission."
        },
        "service": {
          "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.",
          "type": "string"
        }
      },
      "id": "AuditConfig",
      "type": "object"
    },
    "EndpointAttachment": {
      "description": "represents the Connector's Endpoint Attachment resource",
      "properties": {
        "endpointIp": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The Private Service Connect connection endpoint ip"
        },
        "serviceAttachment": {
          "description": "Required. The path of the service attachment",
          "type": "string"
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "endpointGlobalAccess": {
          "description": "Optional. The Private Service Connect Connection Endpoint Global Access. https://cloud.google.com/vpc/docs/about-accessing-vpc-hosted-services-endpoints#global-access",
          "type": "boolean"
        },
        "createTime": {
          "format": "google-datetime",
          "description": "Output only. Created time.",
          "readOnly": true,
          "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",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Resource name of the Endpoint Attachment. Format: projects/{project}/locations/{location}/endpointAttachments/{endpoint_attachment}"
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "PENDING",
            "ACCEPTED",
            "REJECTED",
            "CLOSED",
            "FROZEN",
            "NEEDS_ATTENTION",
            "ACCEPTED_NOT_PROGRAMMED"
          ],
          "readOnly": true,
          "type": "string",
          "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."
          ],
          "description": "Output only. The Private Service Connect Connection Endpoint State. This value is only available in the Full view."
        }
      },
      "id": "EndpointAttachment",
      "type": "object"
    },
    "EventingStatus": {
      "description": "EventingStatus indicates the state of eventing.",
      "properties": {
        "state": {
          "enumDescriptions": [
            "Default state.",
            "Eventing is enabled and ready to receive events.",
            "Eventing is not active due to an error.",
            "Ingress endpoint required."
          ],
          "description": "Output only. State.",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "ERROR",
            "INGRESS_ENDPOINT_REQUIRED"
          ],
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "description": "Output only. Description of error if State is set to \"ERROR\".",
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "EventingStatus",
      "type": "object"
    },
    "WebhookSubscriptions": {
      "id": "WebhookSubscriptions",
      "type": "object",
      "description": "WebhookSubscriptions has details of webhook subscriptions.",
      "properties": {
        "webhookData": {
          "description": "Output only. Webhook data.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "WebhookData"
          }
        }
      }
    },
    "ListenEventRequest": {
      "id": "ListenEventRequest",
      "type": "object",
      "description": "Expected request for ListenEvent API.",
      "properties": {
        "payload": {
          "description": "Optional. Request payload.",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          },
          "type": "object"
        }
      }
    },
    "DestinationConfig": {
      "description": "Define the Connectors target endpoint.",
      "properties": {
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "Destination"
          },
          "description": "Optional. The destinations for the key."
        },
        "key": {
          "description": "Optional. The key is the destination identifier that is supported by the Connector.",
          "type": "string"
        }
      },
      "id": "DestinationConfig",
      "type": "object"
    },
    "RuntimeActionSchema": {
      "id": "RuntimeActionSchema",
      "type": "object",
      "description": "Schema of a runtime action.",
      "properties": {
        "resultJsonSchema": {
          "$ref": "JsonSchema",
          "readOnly": true,
          "description": "Output only. JsonSchema representation of this action's result metadata"
        },
        "inputJsonSchema": {
          "$ref": "JsonSchema",
          "readOnly": true,
          "description": "Output only. JsonSchema representation of this action's input metadata"
        },
        "action": {
          "description": "Output only. Name of the action.",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Brief Description of action"
        },
        "resultSchemaAsString": {
          "description": "Output only. Result schema as string.",
          "readOnly": true,
          "type": "string"
        },
        "resultMetadata": {
          "description": "Output only. List of result field metadata.",
          "items": {
            "$ref": "ResultMetadata"
          },
          "readOnly": true,
          "type": "array"
        },
        "displayName": {
          "description": "Output only. Display Name of action to be shown on client side",
          "readOnly": true,
          "type": "string"
        },
        "inputSchemaAsString": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Input schema as string."
        },
        "inputParameters": {
          "items": {
            "$ref": "InputParameter"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. List of input parameter metadata for the action."
        }
      }
    },
    "ListRuntimeEntitySchemasResponse": {
      "description": "Response message for ConnectorsService.ListRuntimeEntitySchemas.",
      "properties": {
        "runtimeEntitySchemas": {
          "items": {
            "$ref": "RuntimeEntitySchema"
          },
          "type": "array",
          "description": "Runtime entity schemas."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "id": "ListRuntimeEntitySchemasResponse",
      "type": "object"
    },
    "EventingConfigTemplate": {
      "description": "Eventing Config details of a connector version. next: 14",
      "properties": {
        "proxyDestinationConfig": {
          "description": "Proxy destination config template.",
          "$ref": "DestinationConfigTemplate"
        },
        "authConfigTemplates": {
          "description": "AuthConfigTemplates represents the auth values for the webhook adapter.",
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "type": "array"
        },
        "sslConfigTemplate": {
          "$ref": "SslConfigTemplate",
          "description": "SSL Config template for the connector version."
        },
        "autoRefresh": {
          "description": "Auto refresh to extend webhook life.",
          "type": "boolean"
        },
        "registrationDestinationConfig": {
          "$ref": "DestinationConfigTemplate",
          "description": "Registration host destination config template."
        },
        "eventListenerType": {
          "enumDescriptions": [
            "Default value.",
            "Webhook listener. e.g. Jira, Zendesk, Servicenow etc.,",
            "JMS Listener. e.g. IBM MQ, Rabbit MQ etc.,"
          ],
          "description": "The type of the event listener for a specific connector.",
          "enum": [
            "EVENT_LISTENER_TYPE_UNSPECIFIED",
            "WEBHOOK_LISTENER",
            "JMS_LISTENER"
          ],
          "type": "string"
        },
        "encryptionKeyTemplate": {
          "$ref": "ConfigVariableTemplate",
          "description": "Encryption key (can be either Google managed or CMEK)."
        },
        "isEventingSupported": {
          "description": "Is Eventing Supported.",
          "type": "boolean"
        },
        "enrichmentSupported": {
          "description": "Enrichment Supported.",
          "type": "boolean"
        },
        "autoRegistrationSupported": {
          "description": "Auto Registration supported.",
          "type": "boolean"
        },
        "listenerAuthConfigTemplates": {
          "description": "ListenerAuthConfigTemplates represents the auth values for the event listener.",
          "items": {
            "$ref": "AuthConfigTemplate"
          },
          "type": "array"
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "type": "array",
          "description": "Additional fields that need to be rendered."
        },
        "triggerConfigVariables": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "description": "Trigger Config fields that needs to be rendered"
        }
      },
      "id": "EventingConfigTemplate",
      "type": "object"
    },
    "MaintenanceWindow": {
      "description": "MaintenanceWindow definition.",
      "properties": {
        "weeklyCycle": {
          "$ref": "WeeklyCycle",
          "description": "Weekly cycle."
        },
        "dailyCycle": {
          "description": "Daily cycle.",
          "$ref": "DailyCycle"
        }
      },
      "id": "MaintenanceWindow",
      "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": {
        "connectionRatelimitWindowSeconds": {
          "description": "Output only. The window used for ratelimiting runtime requests to connections.",
          "format": "int64",
          "readOnly": true,
          "type": "string"
        },
        "maxInstanceRequestConcurrency": {
          "readOnly": true,
          "type": "integer",
          "description": "Output only. Max instance request concurrency.",
          "format": "int32"
        },
        "ratelimitThreshold": {
          "readOnly": true,
          "type": "string",
          "format": "int64",
          "description": "Output only. Max QPS supported by the connector version before throttling of requests."
        },
        "deploymentModelMigrationState": {
          "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."
          ],
          "description": "Output only. Status of the deployment model migration.",
          "enum": [
            "DEPLOYMENT_MODEL_MIGRATION_STATE_UNSPECIFIED",
            "IN_PROGRESS",
            "COMPLETED",
            "ROLLEDBACK",
            "ROLLBACK_IN_PROGRESS"
          ],
          "readOnly": true,
          "type": "string"
        },
        "hpaConfig": {
          "description": "Output only. HPA autoscaling config.",
          "readOnly": true,
          "$ref": "HPAConfig"
        },
        "sharedDeployment": {
          "description": "Output only. The name of shared connector deployment.",
          "readOnly": true,
          "type": "string"
        },
        "resourceRequests": {
          "$ref": "ResourceRequests",
          "readOnly": true,
          "description": "Output only. System resource requests."
        },
        "deploymentModel": {
          "readOnly": true,
          "type": "string",
          "enum": [
            "DEPLOYMENT_MODEL_UNSPECIFIED",
            "GKE_MST",
            "CLOUD_RUN_MST"
          ],
          "description": "Output only. Indicates whether connector is deployed on GKE/CloudRun",
          "enumDescriptions": [
            "Deployment model is not specified.",
            "Default model gke mst.",
            "Cloud run mst."
          ]
        },
        "internalclientRatelimitThreshold": {
          "format": "int64",
          "description": "Output only. Max QPS supported for internal requests originating from Connd.",
          "readOnly": true,
          "type": "string"
        },
        "tlsMigrationState": {
          "enumDescriptions": [
            "TLS migration state is not specified.",
            "TLS migration is in progress.",
            "TLS migration is completed."
          ],
          "description": "Output only. Status of the TLS migration.",
          "enum": [
            "TLS_MIGRATION_STATE_UNSPECIFIED",
            "TLS_MIGRATION_NOT_STARTED",
            "TLS_MIGRATION_COMPLETED"
          ],
          "readOnly": true,
          "type": "string"
        },
        "resourceLimits": {
          "readOnly": true,
          "$ref": "ResourceLimits",
          "description": "Output only. System resource limits."
        }
      }
    },
    "BillingConfig": {
      "id": "BillingConfig",
      "type": "object",
      "description": "Billing config for the connection.",
      "properties": {
        "billingCategory": {
          "enum": [
            "BILLING_CATEGORY_UNSPECIFIED",
            "GCP_AND_TECHNICAL_CONNECTOR",
            "NON_GCP_CONNECTOR"
          ],
          "readOnly": true,
          "type": "string",
          "enumDescriptions": [
            "Billing category is not specified.",
            "GCP/Technical connector.",
            "Non-GCP connector."
          ],
          "description": "Output only. Billing category for the connector."
        }
      }
    },
    "HPAConfig": {
      "id": "HPAConfig",
      "type": "object",
      "description": "Autoscaling config for connector deployment system metrics.",
      "properties": {
        "cpuUtilizationThreshold": {
          "readOnly": true,
          "type": "string",
          "format": "int64",
          "description": "Output only. Percent CPU utilization where HPA triggers autoscaling."
        },
        "memoryUtilizationThreshold": {
          "readOnly": true,
          "type": "string",
          "format": "int64",
          "description": "Output only. Percent Memory utilization where HPA triggers autoscaling."
        }
      }
    },
    "ProvisionedResource": {
      "id": "ProvisionedResource",
      "type": "object",
      "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"
        }
      }
    },
    "RemoveConnectionToolspecOverrideRequest": {
      "id": "RemoveConnectionToolspecOverrideRequest",
      "type": "object",
      "description": "Request message for RemoveConnectionToolspecOverride API.",
      "properties": {}
    },
    "NodeSloMetadata": {
      "id": "NodeSloMetadata",
      "type": "object",
      "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.",
      "properties": {
        "nodeId": {
          "description": "The id of the node. This should be equal to SaasInstanceNode.node_id.",
          "type": "string"
        },
        "location": {
          "description": "The location of the node, if different from instance location.",
          "type": "string"
        },
        "perSliEligibility": {
          "description": "If present, this will override eligibility for the node coming from instance or exclusions for specified SLIs.",
          "$ref": "PerSliSloEligibility"
        }
      }
    },
    "DailyCycle": {
      "id": "DailyCycle",
      "type": "object",
      "description": "Time window specified for daily operations.",
      "properties": {
        "duration": {
          "type": "string",
          "format": "google-duration",
          "description": "Output only. Duration of the time window, set by service producer."
        },
        "startTime": {
          "$ref": "TimeOfDay",
          "description": "Time within the day to start the operations."
        }
      }
    },
    "EncryptionConfig": {
      "id": "EncryptionConfig",
      "type": "object",
      "description": "Regional encryption config for CMEK details.",
      "properties": {
        "encryptionType": {
          "description": "Optional. Encryption type for the region.",
          "enumDescriptions": [
            "Encryption type unspecified.",
            "Google managed encryption keys",
            "Customer managed encryption keys."
          ],
          "type": "string",
          "enum": [
            "ENCRYPTION_TYPE_UNSPECIFIED",
            "GMEK",
            "CMEK"
          ]
        },
        "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"
        }
      }
    },
    "ValidateCustomConnectorSpecResponse": {
      "description": "Response message for ConnectorsService.ValidateCustomConnectorSpec",
      "properties": {
        "errorMessage": {
          "description": "Error message. The spec is valid if the error message is empty.",
          "type": "string"
        }
      },
      "id": "ValidateCustomConnectorSpecResponse",
      "type": "object"
    },
    "DeprecateCustomConnectorVersionRequest": {
      "id": "DeprecateCustomConnectorVersionRequest",
      "type": "object",
      "description": "Request message for ConnectorsService.DeprecateCustomConnectorVersion",
      "properties": {}
    },
    "EventSubscriptionStatus": {
      "description": "EventSubscription Status denotes the status of the EventSubscription resource.",
      "properties": {
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Description of the state."
        },
        "state": {
          "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."
          ],
          "description": "Output only. State of Event Subscription resource.",
          "enum": [
            "STATE_UNSPECIFIED",
            "CREATING",
            "UPDATING",
            "ACTIVE",
            "SUSPENDED",
            "ERROR"
          ],
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "EventSubscriptionStatus",
      "type": "object"
    },
    "WebhookData": {
      "description": "WebhookData has details of webhook configuration.",
      "properties": {
        "id": {
          "description": "Output only. ID to uniquely identify webhook.",
          "readOnly": true,
          "type": "string"
        },
        "additionalVariables": {
          "description": "Output only. Additional webhook related field values.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          }
        },
        "nextRefreshTime": {
          "format": "google-datetime",
          "description": "Output only. Next webhook refresh time. Will be null if refresh is not supported.",
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "format": "google-datetime",
          "description": "Output only. Timestamp when the webhook was last updated.",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. Name of the Webhook",
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Timestamp when the webhook was created.",
          "format": "google-datetime"
        }
      },
      "id": "WebhookData",
      "type": "object"
    },
    "WithdrawCustomConnectorVersionRequest": {
      "description": "Request message for ConnectorsService.WithdrawCustomConnectorVersion",
      "properties": {},
      "id": "WithdrawCustomConnectorVersionRequest",
      "type": "object"
    },
    "EncryptionKey": {
      "id": "EncryptionKey",
      "type": "object",
      "description": "Encryption Key value.",
      "properties": {
        "type": {
          "enumDescriptions": [
            "Value type is not specified.",
            "Google Managed.",
            "Customer Managed."
          ],
          "description": "Optional. Specifies the type of the encryption key.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "GOOGLE_MANAGED",
            "CUSTOMER_MANAGED"
          ],
          "type": "string"
        },
        "kmsKeyName": {
          "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": "string"
        }
      }
    },
    "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged": {
      "id": "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged",
      "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.",
      "properties": {
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        },
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        },
        "oauthTokenData": {
          "description": "Auth Code Data",
          "$ref": "OAuthTokenData"
        },
        "scopes": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Required. Scopes the connection will request when the user performs the auth code flow."
        }
      }
    },
    "ListEntityTypesResponse": {
      "id": "ListEntityTypesResponse",
      "type": "object",
      "description": "Response message for ListEntityTypes API",
      "properties": {
        "entityTypes": {
          "type": "array",
          "items": {
            "$ref": "RuntimeEntitySchema"
          },
          "description": "list of entity types"
        },
        "nextPageToken": {
          "description": "token for next page",
          "type": "string"
        }
      }
    },
    "ModifyConnectionToolspecOverrideResponse": {
      "description": "Response message for ModifyConnectionToolspecOverride API.",
      "properties": {
        "toolspecOverrides": {
          "description": "Toolspec overrides for the connection.",
          "$ref": "ToolspecOverride"
        }
      },
      "id": "ModifyConnectionToolspecOverrideResponse",
      "type": "object"
    },
    "ListRuntimeActionSchemasResponse": {
      "description": "Response message for ConnectorsService.ListRuntimeActionSchemas.",
      "properties": {
        "runtimeActionSchemas": {
          "description": "Runtime action schemas.",
          "items": {
            "$ref": "RuntimeActionSchema"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "id": "ListRuntimeActionSchemasResponse",
      "type": "object"
    },
    "EventSubscriptionDestination": {
      "id": "EventSubscriptionDestination",
      "type": "object",
      "description": "Message for EventSubscription Destination to act on receiving an event",
      "properties": {
        "serviceAccount": {
          "description": "Optional. Service account needed for runtime plane to trigger IP workflow.",
          "type": "string"
        },
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "ENDPOINT",
            "GCS",
            "PUBSUB"
          ],
          "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"
          ],
          "description": "Optional. type of the destination"
        },
        "endpoint": {
          "description": "OPTION 1: Hit an endpoint when we receive an event.",
          "$ref": "EndPoint"
        },
        "pubsub": {
          "$ref": "PubSub",
          "description": "OPTION 3: Write the event to Pub/Sub topic."
        }
      }
    },
    "GenerateConnectionToolspecOverrideResponse": {
      "description": "Response message for GenerateConnectionToolspecOverride API.",
      "properties": {
        "toolspecOverride": {
          "$ref": "ToolspecOverride",
          "description": "Toolspec overrides for the connection."
        }
      },
      "id": "GenerateConnectionToolspecOverrideResponse",
      "type": "object"
    },
    "Date": {
      "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",
      "properties": {
        "day": {
          "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.",
          "format": "int32"
        },
        "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"
        },
        "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"
        }
      },
      "id": "Date",
      "type": "object"
    },
    "PublishCustomConnectorVersionRequest": {
      "id": "PublishCustomConnectorVersionRequest",
      "type": "object",
      "description": "Request message for ConnectorsService.PublishCustomConnectorVersion",
      "properties": {
        "partnerMetadata": {
          "$ref": "PartnerMetadata",
          "description": "Required. Partner metadata details for validating and publishing the custom connector as a partner connector version."
        }
      }
    },
    "UserPassword": {
      "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"
        }
      },
      "id": "UserPassword",
      "type": "object"
    },
    "FetchConnectionToolspecOverrideRequest": {
      "id": "FetchConnectionToolspecOverrideRequest",
      "type": "object",
      "description": "Request message for FetchConnectionToolspecOverride API.",
      "properties": {
        "toolNames": {
          "description": "Required. List of tools for which the tool spec override is to be generated.",
          "type": "array",
          "items": {
            "$ref": "ToolName"
          }
        }
      }
    },
    "PartnerMetadata": {
      "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.",
      "properties": {
        "partnerConnectorDisplayName": {
          "description": "Required. Partner connector display name.",
          "type": "string"
        },
        "targetCustomerSegment": {
          "description": "Required. Target customer segment for the partner connector.",
          "type": "string"
        },
        "additionalComments": {
          "description": "Optional. Additional comments for the submission.",
          "type": "string"
        },
        "marketplaceProductUri": {
          "description": "Optional. Marketplace product URL.",
          "type": "string"
        },
        "publishRequestTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Publish request time."
        },
        "localSpecPath": {
          "description": "Output only. Local spec path. Required if has_dynamic_spec_uri is true.",
          "readOnly": true,
          "type": "string"
        },
        "marketplaceProductProjectId": {
          "description": "Optional. Marketplace product project ID.",
          "type": "string"
        },
        "marketplaceProduct": {
          "description": "Optional. Marketplace product name.",
          "type": "string"
        },
        "confirmPartnerRequirements": {
          "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).",
          "type": "boolean"
        },
        "useCases": {
          "description": "Required. Details about partner connector use cases.",
          "type": "string"
        },
        "hasDynamicSpecUri": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Has dynamic open api spec uri."
        },
        "targetApplication": {
          "description": "Required. Target application for which partner connector is built.",
          "type": "string"
        },
        "integrationTemplates": {
          "description": "Required. Integration example templates for the custom connector.",
          "type": "string"
        },
        "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"
        },
        "marketplaceProductId": {
          "description": "Required. Marketplace product ID.",
          "type": "string"
        },
        "demoUri": {
          "description": "Required. Public URL for the demo video.",
          "type": "string"
        }
      },
      "id": "PartnerMetadata",
      "type": "object"
    },
    "ResourceLimits": {
      "description": "Resource limits defined for connection pods of a given connector type.",
      "properties": {
        "cpu": {
          "description": "Output only. CPU limit.",
          "readOnly": true,
          "type": "string"
        },
        "memory": {
          "description": "Output only. Memory limit.",
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "ResourceLimits",
      "type": "object"
    },
    "CustomConnector": {
      "description": "CustomConnector represents the custom connector defined by the customer as part of byoc.",
      "properties": {
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Updated time.",
          "format": "google-datetime"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Created time.",
          "format": "google-datetime"
        },
        "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"
          }
        },
        "name": {
          "description": "Identifier. Resource name of the CustomConnector. Format: projects/{project}/locations/{location}/customConnectors/{connector}",
          "type": "string"
        },
        "customConnectorType": {
          "enum": [
            "CUSTOM_CONNECTOR_TYPE_UNSPECIFIED",
            "OPEN_API",
            "PROTO",
            "SDK"
          ],
          "type": "string",
          "enumDescriptions": [
            "Connector type is not specified.",
            "OpenAPI connector.",
            "Proto connector.",
            "SDK connector."
          ],
          "description": "Required. Type of the custom connector."
        },
        "displayName": {
          "description": "Optional. Display name.",
          "type": "string"
        },
        "activeConnectorVersions": {
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. Active connector versions."
        },
        "publishedMarketplaceVersions": {
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. Published marketplace versions."
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "logo": {
          "description": "Optional. Logo of the resource.",
          "type": "string"
        },
        "allConnectorVersions": {
          "description": "Output only. All connector versions.",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "allMarketplaceVersions": {
          "description": "Output only. All marketplace versions.",
          "readOnly": true,
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "id": "CustomConnector",
      "type": "object"
    },
    "DenyMaintenancePeriod": {
      "description": "DenyMaintenancePeriod definition. Maintenance is forbidden within the deny period. The start_date must be less than the end_date.",
      "properties": {
        "endDate": {
          "$ref": "Date",
          "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."
        },
        "startDate": {
          "$ref": "Date",
          "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."
        },
        "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"
        }
      },
      "id": "DenyMaintenancePeriod",
      "type": "object"
    },
    "EventingRuntimeData": {
      "id": "EventingRuntimeData",
      "type": "object",
      "description": "Eventing runtime data has the details related to eventing managed by the system.",
      "properties": {
        "webhookSubscriptions": {
          "description": "Output only. Webhook subscriptions.",
          "readOnly": true,
          "$ref": "WebhookSubscriptions"
        },
        "webhookData": {
          "readOnly": true,
          "$ref": "WebhookData",
          "description": "Output only. Webhook data."
        },
        "status": {
          "readOnly": true,
          "$ref": "EventingStatus",
          "description": "Output only. Current status of eventing."
        },
        "eventsListenerEndpoint": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Events listener endpoint. The value will populated after provisioning the events listener."
        },
        "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."
        }
      }
    },
    "RoleGrant": {
      "id": "RoleGrant",
      "type": "object",
      "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.",
      "properties": {
        "helperTextTemplate": {
          "description": "Optional. Template that UI can use to provide helper text to customers.",
          "type": "string"
        },
        "roles": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. List of roles that need to be granted."
        },
        "principal": {
          "description": "Optional. Principal/Identity for whom the role need to assigned.",
          "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."
          ],
          "type": "string",
          "enum": [
            "PRINCIPAL_UNSPECIFIED",
            "CONNECTOR_SA"
          ]
        },
        "resource": {
          "description": "Optional. Resource on which the roles needs to be granted for the principal.",
          "$ref": "Resource"
        }
      }
    },
    "EndUserAuthentication": {
      "id": "EndUserAuthentication",
      "type": "object",
      "description": "AuthConfig defines details of a authentication type.",
      "properties": {
        "notifyEndpointDestination": {
          "$ref": "EndUserAuthenticationNotifyEndpointDestination",
          "description": "Optional. The destination to hit when we receive an event"
        },
        "roles": {
          "description": "Optional. Roles for the EndUserAuthentication.",
          "type": "array",
          "items": {
            "enum": [
              "ROLE_UNSPECIFIED",
              "READER",
              "READER_DOMAIN_WIDE_ACCESSIBLE"
            ],
            "type": "string",
            "enumDescriptions": [
              "Default state.",
              "READER.",
              "READER_DOMAIN_WIDE_ACCESSIBLE which has access to only public data."
            ]
          }
        },
        "createTime": {
          "description": "Output only. Created time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "status": {
          "description": "Optional. Status of the EndUserAuthentication.",
          "$ref": "EndUserAuthenticationEndUserAuthenticationStatus"
        },
        "labels": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. Labels 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"
        },
        "endUserAuthenticationConfig": {
          "description": "Optional. The EndUserAuthenticationConfig for the EndUserAuthentication.",
          "$ref": "EndUserAuthenticationConfig"
        },
        "configVariables": {
          "items": {
            "$ref": "EndUserAuthenticationConfigVariable"
          },
          "type": "array",
          "description": "Optional. Config variables for the EndUserAuthentication."
        },
        "userId": {
          "description": "Optional. The user id of the user.",
          "type": "string"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "destinationConfigs": {
          "description": "Optional. Destination configs for the EndUserAuthentication.",
          "type": "array",
          "items": {
            "$ref": "DestinationConfig"
          }
        }
      }
    },
    "Source": {
      "description": "Source to extract the backend from.",
      "properties": {
        "sourceType": {
          "enum": [
            "SOURCE_TYPE_UNSPECIFIED",
            "CONFIG_VARIABLE",
            "AUTH_CONFIG_VARIABLE"
          ],
          "type": "string",
          "enumDescriptions": [
            "Default SOURCE.",
            "Config Variable source type.",
            "Auth Config Variable source type."
          ],
          "description": "Type of the source."
        },
        "fieldId": {
          "description": "Field identifier. For example config variable name.",
          "type": "string"
        }
      },
      "id": "Source",
      "type": "object"
    },
    "CancelOperationRequest": {
      "id": "CancelOperationRequest",
      "type": "object",
      "description": "The request message for Operations.CancelOperation.",
      "properties": {}
    },
    "Oauth2JwtBearer": {
      "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": {
        "jwtClaims": {
          "$ref": "JwtClaims",
          "description": "Optional. JwtClaims providers fields to generate the token."
        },
        "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"
        }
      },
      "id": "Oauth2JwtBearer",
      "type": "object"
    },
    "Expr": {
      "id": "Expr",
      "type": "object",
      "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": {
        "title": {
          "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.",
          "type": "string"
        },
        "location": {
          "description": "Optional. String indicating the location of the expression for error reporting, e.g. a file name and a position in the file.",
          "type": "string"
        },
        "expression": {
          "description": "Textual representation of an expression in Common Expression Language syntax.",
          "type": "string"
        },
        "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"
        }
      }
    },
    "ListActionsResponse": {
      "id": "ListActionsResponse",
      "type": "object",
      "description": "Response message for ListActions API",
      "properties": {
        "actions": {
          "items": {
            "$ref": "RuntimeActionSchema"
          },
          "type": "array",
          "description": "list of actions"
        },
        "nextPageToken": {
          "description": "token for next page",
          "type": "string"
        }
      }
    },
    "EndUserAuthenticationConfig": {
      "description": "EndUserAuthenticationConfig defines details of a authentication configuration for EUC",
      "properties": {
        "sshPublicKey": {
          "$ref": "EndUserAuthenticationConfigSshPublicKey",
          "description": "SSH Public Key."
        },
        "oauth2AuthCodeFlow": {
          "$ref": "EndUserAuthenticationConfigOauth2AuthCodeFlow",
          "description": "Oauth2AuthCodeFlow."
        },
        "userPassword": {
          "$ref": "EndUserAuthenticationConfigUserPassword",
          "description": "UserPassword."
        },
        "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"
          ],
          "type": "string",
          "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"
          ],
          "description": "The type of authentication configured."
        },
        "oauth2JwtBearer": {
          "$ref": "EndUserAuthenticationConfigOauth2JwtBearer",
          "description": "Oauth2JwtBearer."
        },
        "oauth2ClientCredentials": {
          "$ref": "EndUserAuthenticationConfigOauth2ClientCredentials",
          "description": "Oauth2ClientCredentials."
        },
        "authKey": {
          "description": "Identifier key for auth config",
          "type": "string"
        },
        "additionalVariables": {
          "items": {
            "$ref": "EndUserAuthenticationConfigVariable"
          },
          "type": "array",
          "description": "Optional. List containing additional auth configs."
        },
        "oauth2AuthCodeFlowGoogleManaged": {
          "$ref": "EndUserAuthenticationConfigOauth2AuthCodeFlowGoogleManaged",
          "description": "Oauth2AuthCodeFlowGoogleManaged."
        }
      },
      "id": "EndUserAuthenticationConfig",
      "type": "object"
    },
    "AuthConfig": {
      "id": "AuthConfig",
      "type": "object",
      "description": "AuthConfig defines details of a authentication type.",
      "properties": {
        "sshPublicKey": {
          "$ref": "SshPublicKey",
          "description": "SSH Public Key."
        },
        "oauth2AuthCodeFlow": {
          "$ref": "Oauth2AuthCodeFlow",
          "description": "Oauth2AuthCodeFlow."
        },
        "userPassword": {
          "description": "UserPassword.",
          "$ref": "UserPassword"
        },
        "authType": {
          "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": "Optional. 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"
          ]
        },
        "oauth2JwtBearer": {
          "$ref": "Oauth2JwtBearer",
          "description": "Oauth2JwtBearer."
        },
        "oauth2ClientCredentials": {
          "description": "Oauth2ClientCredentials.",
          "$ref": "Oauth2ClientCredentials"
        },
        "authKey": {
          "description": "Optional. Identifier key for auth config",
          "type": "string"
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "type": "array",
          "description": "Optional. List containing additional auth configs."
        },
        "oauth2AuthCodeFlowGoogleManaged": {
          "description": "Oauth2AuthCodeFlowGoogleManaged.",
          "$ref": "Oauth2AuthCodeFlowGoogleManaged"
        }
      }
    },
    "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.",
      "properties": {
        "errorMessage": {
          "description": "Error message for users.",
          "type": "string"
        },
        "name": {
          "description": "Output only. Resource name. Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
          "readOnly": true,
          "type": "string"
        },
        "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"
          ],
          "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"
          ],
          "readOnly": true,
          "type": "string"
        },
        "entities": {
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. List of entity names."
        },
        "actions": {
          "description": "Output only. List of actions.",
          "readOnly": true,
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Timestamp when the connection runtime schema was updated.",
          "format": "google-datetime"
        },
        "refreshTime": {
          "description": "Output only. Timestamp when the connection runtime schema refresh was triggered.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        }
      },
      "id": "ConnectionSchemaMetadata",
      "type": "object"
    },
    "UpdatePolicy": {
      "description": "Maintenance policy applicable to instance updates.",
      "properties": {
        "channel": {
          "description": "Optional. Relative scheduling channel applied to resource.",
          "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}."
          ],
          "type": "string",
          "enum": [
            "UPDATE_CHANNEL_UNSPECIFIED",
            "EARLIER",
            "LATER",
            "WEEK1",
            "WEEK2",
            "WEEK5"
          ]
        },
        "window": {
          "$ref": "MaintenanceWindow",
          "description": "Optional. Maintenance window that is applied to resources covered by this policy."
        },
        "denyMaintenancePeriods": {
          "type": "array",
          "items": {
            "$ref": "DenyMaintenancePeriod"
          },
          "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."
        }
      },
      "id": "UpdatePolicy",
      "type": "object"
    },
    "ListCustomConnectorVersionsResponse": {
      "description": "Response message for Connectors.ListCustomConnectorVersions.",
      "properties": {
        "customConnectorVersions": {
          "description": "A list of connector versions.",
          "items": {
            "$ref": "CustomConnectorVersion"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "unreachable": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Locations that could not be reached."
        }
      },
      "id": "ListCustomConnectorVersionsResponse",
      "type": "object"
    },
    "Destination": {
      "id": "Destination",
      "type": "object",
      "properties": {
        "serviceAttachment": {
          "description": "PSC service attachments. Format: projects/*/regions/*/serviceAttachments/*",
          "deprecated": true,
          "type": "string"
        },
        "host": {
          "description": "For publicly routable host.",
          "type": "string"
        },
        "port": {
          "format": "int32",
          "description": "Optional. The port is the target port number that is accepted by the destination.",
          "type": "integer"
        }
      }
    },
    "VpcscConfig": {
      "description": "This configuration provides VPCSC config for a connector.",
      "properties": {
        "defaultAllowlistedHost": {
          "description": "The list of allowlisted FQDNs for VPCSC.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "disableFirewallVpcscFlow": {
          "description": "Whether to disable firewall VPCSC flow.",
          "type": "boolean"
        }
      },
      "id": "VpcscConfig",
      "type": "object"
    },
    "EventSubscription": {
      "id": "EventSubscription",
      "type": "object",
      "description": "represents the Connector's EventSubscription resource",
      "properties": {
        "subscriberLink": {
          "description": "Optional. Link for Subscriber of the current EventSubscription.",
          "type": "string"
        },
        "filter": {
          "description": "Optional. Filter for the event subscription. Incoming events are filtered based on the filter expression.",
          "type": "string"
        },
        "subscriber": {
          "description": "Optional. name of the Subscriber for the current EventSubscription.",
          "type": "string"
        },
        "name": {
          "description": "Required. Identifier. Resource name of the EventSubscription. Format: projects/{project}/locations/{location}/connections/{connection}/eventSubscriptions/{event_subscription}",
          "type": "string"
        },
        "jms": {
          "description": "Optional. JMS is the source for the event listener.",
          "$ref": "JMS"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Created time."
        },
        "eventTypeId": {
          "description": "Optional. Event type id of the event of current EventSubscription.",
          "type": "string"
        },
        "status": {
          "$ref": "EventSubscriptionStatus",
          "description": "Optional. Status indicates the status of the event subscription resource"
        },
        "destinations": {
          "description": "Optional. The destination to hit when we receive an event",
          "$ref": "EventSubscriptionDestination"
        },
        "triggerConfigVariables": {
          "description": "Optional. Configuration for configuring the trigger",
          "items": {
            "$ref": "ConfigVariable"
          },
          "type": "array"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Updated time.",
          "format": "google-datetime"
        }
      }
    },
    "EventingConfig": {
      "id": "EventingConfig",
      "type": "object",
      "description": "Eventing Configuration of a connection next: 20",
      "properties": {
        "proxyDestinationConfig": {
          "$ref": "DestinationConfig",
          "description": "Optional. Proxy for Eventing auto-registration."
        },
        "listenerAuthConfig": {
          "$ref": "AuthConfig",
          "description": "Optional. Auth details for the event listener."
        },
        "privateConnectivityAllowlistedProjects": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. List of projects to be allowlisted for the service attachment created in the tenant project for eventing ingress."
        },
        "registrationDestinationConfig": {
          "$ref": "DestinationConfig",
          "description": "Optional. Registration endpoint for auto registration."
        },
        "enrichmentConfig": {
          "description": "Optional. Data enrichment configuration.",
          "$ref": "EnrichmentConfig"
        },
        "deadLetterConfig": {
          "description": "Optional. Dead letter configuration for eventing of a connection.",
          "$ref": "DeadLetterConfig"
        },
        "authConfig": {
          "description": "Optional. Auth details for the webhook adapter.",
          "$ref": "AuthConfig"
        },
        "privateConnectivityEnabled": {
          "description": "Optional. Private Connectivity Enabled.",
          "type": "boolean"
        },
        "eventsListenerIngressEndpoint": {
          "description": "Output only. Ingress endpoint of the event listener. This is used only when private connectivity is enabled.",
          "readOnly": true,
          "type": "string"
        },
        "sslConfig": {
          "description": "Optional. Ssl config of a connection",
          "$ref": "SslConfig"
        },
        "enrichmentEnabled": {
          "description": "Optional. Enrichment Enabled.",
          "type": "boolean"
        },
        "allowedEventTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional. List of allowed event types for the connection."
        },
        "additionalVariables": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. Additional eventing related field values"
        }
      }
    },
    "Secret": {
      "id": "Secret",
      "type": "object",
      "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"
        }
      }
    },
    "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.",
          "enum": [
            "OPERATION_UNSPECIFIED",
            "LIST",
            "GET",
            "CREATE",
            "UPDATE",
            "DELETE"
          ],
          "type": "string"
        },
        "entityType": {
          "description": "Optional. Entity type name for which the tool was generated.",
          "type": "string"
        },
        "name": {
          "description": "Required. Tool name that was generated in the list tools call.",
          "type": "string"
        }
      },
      "id": "ToolName",
      "type": "object"
    },
    "AuthField": {
      "description": "AuthField defines a field in an authentication type.",
      "properties": {
        "dataType": {
          "description": "Data type of the field.",
          "type": "string"
        },
        "description": {
          "description": "Description of the field.",
          "type": "string"
        },
        "key": {
          "description": "Key of the field.",
          "type": "string"
        }
      },
      "id": "AuthField",
      "type": "object"
    },
    "ModifyConnectionToolspecOverrideRequest": {
      "id": "ModifyConnectionToolspecOverrideRequest",
      "type": "object",
      "description": "Request message for ModifyConnectionToolspecOverride API.",
      "properties": {
        "toolspecOverride": {
          "$ref": "ToolspecOverride",
          "description": "Required. Toolspec overrides to be modified."
        }
      }
    },
    "NotificationParameter": {
      "description": "Contains notification related data.",
      "properties": {
        "values": {
          "description": "Optional. Array of string values. e.g. instance's replica information.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "id": "NotificationParameter",
      "type": "object"
    },
    "ConfigVariableTemplate": {
      "id": "ConfigVariableTemplate",
      "type": "object",
      "description": "ConfigVariableTemplate provides metadata about a `ConfigVariable` that is used in a Connection.",
      "properties": {
        "valueType": {
          "description": "Optional. Type of the parameter: string, int, bool etc. consider custom type for the benefit for the validation.",
          "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."
          ],
          "type": "string",
          "enum": [
            "VALUE_TYPE_UNSPECIFIED",
            "STRING",
            "INT",
            "BOOL",
            "SECRET",
            "ENUM",
            "AUTHORIZATION_CODE",
            "ENCRYPTION_KEY",
            "MULTIPLE_SELECT"
          ]
        },
        "displayName": {
          "description": "Optional. Display name of the parameter.",
          "type": "string"
        },
        "key": {
          "description": "Optional. Key of the config variable.",
          "type": "string"
        },
        "requiredCondition": {
          "description": "Optional. Condition under which a field would be required. The condition can be represented in the form of a logical expression.",
          "$ref": "LogicalExpression"
        },
        "locationType": {
          "enum": [
            "LOCATION_TYPE_UNSPECIFIED",
            "HEADER",
            "PAYLOAD",
            "QUERY_PARAM",
            "PATH_PARAM"
          ],
          "type": "string",
          "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."
        },
        "multipleSelectConfig": {
          "description": "Optional. MultipleSelectConfig represents the multiple options for a config variable.",
          "$ref": "MultipleSelectConfig"
        },
        "authorizationCodeLink": {
          "description": "Optional. Authorization code link options. To be populated if `ValueType` is `AUTHORIZATION_CODE`",
          "$ref": "AuthorizationCodeLink"
        },
        "enumSource": {
          "description": "Optional. enum source denotes the source of api to fill the enum options",
          "enumDescriptions": [
            "Api type unspecified.",
            "list event types."
          ],
          "type": "string",
          "enum": [
            "ENUM_SOURCE_UNSPECIFIED",
            "EVENT_TYPES_API"
          ]
        },
        "isAdvanced": {
          "description": "Optional. Indicates if current template is part of advanced settings",
          "type": "boolean"
        },
        "description": {
          "description": "Optional. Description.",
          "type": "string"
        },
        "roleGrant": {
          "description": "Optional. Role grant configuration for the config variable.",
          "$ref": "RoleGrant"
        },
        "required": {
          "description": "Optional. Flag represents that this `ConfigVariable` must be provided for a connection.",
          "type": "boolean"
        },
        "enumOptions": {
          "description": "Optional. Enum options. To be populated if `ValueType` is `ENUM`",
          "items": {
            "$ref": "EnumOption"
          },
          "type": "array"
        },
        "validationRegex": {
          "description": "Optional. Regular expression in RE2 syntax used for validating the `value` of a `ConfigVariable`.",
          "type": "string"
        },
        "state": {
          "enumDescriptions": [
            "Status is unspecified.",
            "Config variable is active",
            "Config variable is deprecated."
          ],
          "description": "Output only. State of the config variable.",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "DEPRECATED"
          ],
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "GenerateConnectionToolspecOverrideRequest": {
      "description": "Request message for GenerateConnectionToolspecOverride API.",
      "properties": {
        "toolNames": {
          "items": {
            "$ref": "ToolName"
          },
          "type": "array",
          "description": "Required. List of tools for which the tool spec override is to be generated."
        }
      },
      "id": "GenerateConnectionToolspecOverrideRequest",
      "type": "object"
    },
    "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.",
      "properties": {
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        },
        "enablePkce": {
          "description": "Optional. Whether to enable PKCE when the user performs the auth code flow.",
          "type": "boolean"
        },
        "pkceVerifier": {
          "description": "Optional. PKCE verifier to be used during the auth code exchange.",
          "type": "string"
        },
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        },
        "oauthTokenData": {
          "description": "Optional. Auth Code Data",
          "$ref": "OAuthTokenData"
        },
        "clientId": {
          "description": "Optional. Client ID for user-provided OAuth app.",
          "type": "string"
        },
        "scopes": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Optional. Scopes the connection will request when the user performs the auth code flow."
        },
        "authUri": {
          "description": "Optional. Auth URL for Authorization Code Flow",
          "type": "string"
        },
        "clientSecret": {
          "$ref": "EUASecret",
          "description": "Optional. Client secret for user-provided OAuth app."
        }
      },
      "id": "EndUserAuthenticationConfigOauth2AuthCodeFlow",
      "type": "object"
    },
    "JwtClaims": {
      "id": "JwtClaims",
      "type": "object",
      "description": "JWT claims used for the jwt-bearer authorization grant.",
      "properties": {
        "issuer": {
          "description": "Optional. Value for the \"iss\" claim.",
          "type": "string"
        },
        "subject": {
          "description": "Optional. Value for the \"sub\" claim.",
          "type": "string"
        },
        "audience": {
          "description": "Optional. Value for the \"aud\" claim.",
          "type": "string"
        }
      }
    },
    "JsonSchema": {
      "description": "JsonSchema representation of schema metadata",
      "properties": {
        "minLength": {
          "format": "int32",
          "description": "Minimum length of the string field.",
          "type": "integer"
        },
        "minimum": {
          "description": "Minimum value of the number field.",
          "type": "any"
        },
        "description": {
          "description": "A description of this schema.",
          "type": "string"
        },
        "jdbcType": {
          "type": "string",
          "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"
          ],
          "description": "JDBC datatype 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."
          ]
        },
        "format": {
          "description": "Format of the value as per https://json-schema.org/understanding-json-schema/reference/string.html#format",
          "type": "string"
        },
        "required": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Whether this property is required."
        },
        "maxLength": {
          "format": "int32",
          "description": "Maximum length of the string field.",
          "type": "integer"
        },
        "properties": {
          "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"
          },
          "type": "object"
        },
        "uniqueItems": {
          "description": "Whether the items in the array field are unique.",
          "type": "boolean"
        },
        "items": {
          "description": "Schema that applies to array values, applicable only if this is of type `array`.",
          "$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",
          "items": {
            "type": "any"
          },
          "type": "array"
        },
        "pattern": {
          "description": "Regex pattern of the string field. This is a string value that describes the regular expression that the string value should match.",
          "type": "string"
        },
        "type": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "JSON Schema Validation: A Vocabulary for Structural Validation of JSON"
        },
        "exclusiveMinimum": {
          "description": "Whether the minimum number value is exclusive.",
          "type": "boolean"
        },
        "maximum": {
          "description": "Maximum value of the number field.",
          "type": "any"
        },
        "additionalDetails": {
          "description": "Additional details apart from standard json schema fields, this gives flexibility to store metadata about the schema",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          },
          "type": "object"
        },
        "maxItems": {
          "format": "int32",
          "description": "Maximum number of items in the array field.",
          "type": "integer"
        },
        "default": {
          "description": "The default value of the field or object described by this schema.",
          "type": "any"
        },
        "exclusiveMaximum": {
          "description": "Whether the maximum number value is exclusive.",
          "type": "boolean"
        },
        "minItems": {
          "description": "Minimum number of items in the array field.",
          "format": "int32",
          "type": "integer"
        }
      },
      "id": "JsonSchema",
      "type": "object"
    },
    "EventingDetails": {
      "description": "Eventing Details message.",
      "properties": {
        "type": {
          "description": "Output only. The type of the event listener for a specific connector.",
          "enumDescriptions": [
            "Default value.",
            "Webhook listener. e.g. Jira, Zendesk, Servicenow etc.,",
            "JMS Listener. e.g. IBM MQ, Rabbit MQ etc.,"
          ],
          "readOnly": true,
          "type": "string",
          "enum": [
            "TYPE_UNSPECIFIED",
            "WEBHOOK",
            "JMS"
          ]
        },
        "launchStage": {
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "description": "Output only. Eventing Launch Stage.",
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Description."
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Name of the Eventing trigger."
        },
        "searchTags": {
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. Array of search keywords."
        },
        "iconLocation": {
          "description": "Output only. Cloud storage location of the icon.",
          "readOnly": true,
          "type": "string"
        },
        "documentationLink": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Link to public documentation."
        },
        "customEventTypes": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Custom Event Types."
        }
      },
      "id": "EventingDetails",
      "type": "object"
    },
    "Oauth2AuthCodeFlow": {
      "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": {
        "clientId": {
          "description": "Optional. Client ID for user-provided OAuth app.",
          "type": "string"
        },
        "clientSecret": {
          "description": "Optional. Client secret for user-provided OAuth app.",
          "$ref": "Secret"
        },
        "scopes": {
          "description": "Optional. Scopes the connection will request when the user performs the auth code flow.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "authUri": {
          "description": "Optional. Auth URL for Authorization Code Flow",
          "type": "string"
        },
        "pkceVerifier": {
          "description": "Optional. PKCE verifier to be used during the auth code exchange.",
          "type": "string"
        },
        "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"
        },
        "enablePkce": {
          "description": "Optional. Whether to enable PKCE when the user performs the auth code flow.",
          "type": "boolean"
        }
      },
      "id": "Oauth2AuthCodeFlow",
      "type": "object"
    },
    "PubSub": {
      "description": "Pub/Sub message includes details of the Destination Pub/Sub topic.",
      "properties": {
        "topicId": {
          "description": "Required. The topic id of the Pub/Sub topic.",
          "type": "string"
        },
        "projectId": {
          "description": "Required. The project id which has the Pub/Sub topic.",
          "type": "string"
        },
        "attributes": {
          "type": "object",
          "description": "Optional. Pub/Sub message attributes to be added to the Pub/Sub message.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "configVariables": {
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          },
          "description": "Optional. Configuration for configuring the trigger"
        }
      },
      "id": "PubSub",
      "type": "object"
    },
    "ListConnectorVersionsResponse": {
      "description": "Response message for Connectors.ListConnectorVersions.",
      "properties": {
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "connectorVersions": {
          "type": "array",
          "items": {
            "$ref": "ConnectorVersion"
          },
          "description": "A list of connector versions."
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        }
      },
      "id": "ListConnectorVersionsResponse",
      "type": "object"
    },
    "MultipleSelectConfig": {
      "id": "MultipleSelectConfig",
      "type": "object",
      "description": "MultipleSelectConfig represents the multiple options for a config variable.",
      "properties": {
        "multipleSelectOptions": {
          "type": "array",
          "items": {
            "$ref": "MultipleSelectOption"
          },
          "description": "Required. Multiple select options."
        },
        "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"
        }
      }
    },
    "ListConnectorsResponse": {
      "description": "Response message for Connectors.ListConnectors.",
      "properties": {
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "connectors": {
          "items": {
            "$ref": "Connector"
          },
          "type": "array",
          "description": "A list of connectors."
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        }
      },
      "id": "ListConnectorsResponse",
      "type": "object"
    },
    "EndUserAuthenticationConfigOauth2JwtBearer": {
      "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": {
        "jwtClaims": {
          "description": "JwtClaims providers fields to generate the token.",
          "$ref": "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims"
        },
        "clientKey": {
          "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/*`.",
          "$ref": "EUASecret"
        }
      },
      "id": "EndUserAuthenticationConfigOauth2JwtBearer",
      "type": "object"
    },
    "RuntimeEntitySchema": {
      "description": "Schema of a runtime entity.",
      "properties": {
        "jsonSchema": {
          "$ref": "JsonSchema",
          "readOnly": true,
          "description": "Output only. JsonSchema representation of this entity's metadata"
        },
        "entity": {
          "description": "Output only. Name of the entity.",
          "readOnly": true,
          "type": "string"
        },
        "fields": {
          "items": {
            "$ref": "Field"
          },
          "readOnly": true,
          "type": "array",
          "description": "Output only. List of fields in the entity."
        },
        "operations": {
          "type": "array",
          "items": {
            "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."
            ],
            "type": "string",
            "enum": [
              "OPERATION_UNSPECIFIED",
              "LIST",
              "GET",
              "CREATE",
              "UPDATE",
              "DELETE"
            ]
          },
          "description": "List of operations supported by this entity"
        }
      },
      "id": "RuntimeEntitySchema",
      "type": "object"
    },
    "Field": {
      "id": "Field",
      "type": "object",
      "description": "Metadata of an entity field.",
      "properties": {
        "defaultValue": {
          "description": "The following field specifies the default value of the Field provided by the external system if a value is not provided.",
          "type": "any"
        },
        "field": {
          "description": "Name of the Field.",
          "type": "string"
        },
        "jsonSchema": {
          "description": "JsonSchema representation of this entity's schema",
          "$ref": "JsonSchema"
        },
        "additionalDetails": {
          "type": "object",
          "description": "The following map contains fields that are not explicitly mentioned above,this give connectors the flexibility to add new metadata fields.",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object."
          }
        },
        "key": {
          "description": "The following boolean field specifies if the current Field acts as a primary key or id if the parent is of type entity.",
          "type": "boolean"
        },
        "readonly": {
          "description": "Specifies if the Field is readonly.",
          "type": "boolean"
        },
        "description": {
          "description": "A brief description of the Field.",
          "type": "string"
        },
        "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"
          ],
          "type": "string",
          "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."
          ],
          "description": "The data type of the Field."
        },
        "nullable": {
          "description": "Specifies whether a null value is allowed.",
          "type": "boolean"
        }
      }
    },
    "PublishStatus": {
      "id": "PublishStatus",
      "type": "object",
      "description": "Publish status of a custom connector.",
      "properties": {
        "publishTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Publish time.",
          "format": "google-datetime"
        },
        "publishState": {
          "enum": [
            "PUBLISH_STATE_UNSPECIFIED",
            "PUBLISHED",
            "PUBLISH_IN_PROGRESS",
            "UNPUBLISHED"
          ],
          "readOnly": true,
          "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"
          ],
          "description": "Output only. Publish state of the custom connector."
        },
        "publishedAs": {
          "description": "Output only. Partner connector name. Will be set on the custom connector. Format: providers/partner/connectors//versions/",
          "readOnly": true,
          "type": "string"
        },
        "publishedSource": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Custom connector name. Will be set on the partner connector. Format: providers/customconnectors/connectors//versions/"
        }
      }
    },
    "Settings": {
      "description": "Global Settings details.",
      "properties": {
        "name": {
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/global/settings}",
          "readOnly": true,
          "type": "string"
        },
        "vpcsc": {
          "description": "Optional. Flag indicates whether vpc-sc is enabled.",
          "type": "boolean"
        },
        "payg": {
          "description": "Output only. Flag indicates if user is in PayG model",
          "readOnly": true,
          "type": "boolean"
        },
        "tenantProjectId": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Tenant project id of the consumer project."
        }
      },
      "id": "Settings",
      "type": "object"
    },
    "EnumOption": {
      "description": "EnumOption definition",
      "properties": {
        "displayName": {
          "description": "Optional. Display name of the option.",
          "type": "string"
        },
        "id": {
          "description": "Optional. Id of the option.",
          "type": "string"
        }
      },
      "id": "EnumOption",
      "type": "object"
    },
    "ResultMetadata": {
      "description": "Metadata of result field.",
      "properties": {
        "defaultValue": {
          "description": "The following field specifies the default value of the Parameter provided by the external system if a value is not provided.",
          "type": "any"
        },
        "field": {
          "description": "Name of the result field.",
          "type": "string"
        },
        "jsonSchema": {
          "description": "JsonSchema representation of this action's result",
          "$ref": "JsonSchema"
        },
        "description": {
          "description": "A brief description of the field.",
          "type": "string"
        },
        "dataType": {
          "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",
          "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"
          ]
        },
        "nullable": {
          "description": "Specifies whether a null value is allowed.",
          "type": "boolean"
        }
      },
      "id": "ResultMetadata",
      "type": "object"
    },
    "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader": {
      "id": "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader",
      "type": "object",
      "description": "Header details for a given header to be added to Endpoint.",
      "properties": {
        "value": {
          "description": "Required. Value of Header.",
          "type": "string"
        },
        "key": {
          "description": "Required. Key of Header.",
          "type": "string"
        }
      }
    },
    "Instance": {
      "id": "Instance",
      "type": "object",
      "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",
      "properties": {
        "labels": {
          "type": "object",
          "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.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "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.",
          "type": "string"
        },
        "softwareVersions": {
          "type": "object",
          "description": "Software versions that are used to deploy this instance. This can be mutated by rollout services.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "provisionedResources": {
          "description": "Output only. The list of data plane resources provisioned for this instance, e.g. compute VMs. See go/get-instance-metadata.",
          "readOnly": true,
          "type": "array",
          "items": {
            "$ref": "ProvisionedResource"
          }
        },
        "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"
        },
        "updateTime": {
          "description": "Output only. Timestamp when the resource was last modified.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "maintenanceSettings": {
          "$ref": "MaintenanceSettings",
          "description": "Optional. The MaintenanceSettings associated with instance."
        },
        "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"
        },
        "producerMetadata": {
          "readOnly": true,
          "type": "object",
          "description": "Output only. Custom string attributes used primarily to expose producer-specific information in monitoring dashboards. See go/get-instance-metadata.",
          "additionalProperties": {
            "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"
          }
        },
        "createTime": {
          "description": "Output only. Timestamp when the resource was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "state": {
          "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"
          ],
          "readOnly": true,
          "type": "string"
        },
        "consumerProjectNumber": {
          "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.",
          "type": "string"
        },
        "notificationParameters": {
          "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.",
          "additionalProperties": {
            "$ref": "NotificationParameter"
          },
          "type": "object"
        },
        "maintenanceSchedules": {
          "description": "The MaintenanceSchedule contains the scheduling information of published maintenance schedule with same key as software_versions.",
          "additionalProperties": {
            "$ref": "MaintenanceSchedule"
          },
          "type": "object"
        },
        "tenantProjectId": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. ID of the associated GCP tenant project. See go/get-instance-metadata."
        },
        "sloMetadata": {
          "description": "Output only. SLO metadata for instance classification in the Standardized dataplane SLO platform. See go/cloud-ssa-standard-slo for feature description.",
          "readOnly": true,
          "$ref": "SloMetadata"
        },
        "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"
        }
      }
    },
    "ManagedZone": {
      "description": "represents the Connector's Managed Zone resource",
      "properties": {
        "dns": {
          "description": "Required. DNS Name of the resource",
          "type": "string"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Resource name of the Managed Zone. Format: projects/{project}/locations/global/managedZones/{managed_zone}"
        },
        "targetVpc": {
          "description": "Required. The name of the Target Project VPC Network",
          "type": "string"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Created time.",
          "format": "google-datetime"
        },
        "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",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "targetProject": {
          "description": "Required. The name of the Target Project",
          "type": "string"
        }
      },
      "id": "ManagedZone",
      "type": "object"
    },
    "MaintenanceSchedule": {
      "description": "Maintenance schedule which is exposed to customer and potentially end user, indicating published upcoming future maintenance schedule",
      "properties": {
        "rolloutManagementPolicy": {
          "description": "The rollout management policy this maintenance schedule is associated with. When doing reschedule update request, the reschedule should be against this given policy.",
          "type": "string"
        },
        "startTime": {
          "format": "google-datetime",
          "description": "The scheduled start time for the maintenance.",
          "type": "string"
        },
        "scheduleDeadlineTime": {
          "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.",
          "format": "google-datetime"
        },
        "endTime": {
          "type": "string",
          "format": "google-datetime",
          "description": "The scheduled end time for the maintenance."
        },
        "canReschedule": {
          "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.",
          "type": "boolean"
        }
      },
      "id": "MaintenanceSchedule",
      "type": "object"
    },
    "EnrichmentConfig": {
      "id": "EnrichmentConfig",
      "type": "object",
      "description": "Data enrichment configuration.",
      "properties": {
        "appendAcl": {
          "description": "Optional. Append ACL to the event.",
          "type": "boolean"
        }
      }
    },
    "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.",
      "properties": {
        "logType": {
          "description": "The log type that this config enables.",
          "enumDescriptions": [
            "Default case. Should never be this.",
            "Admin reads. Example: CloudIAM getIamPolicy",
            "Data writes. Example: CloudSQL Users create",
            "Data reads. Example: CloudSQL Users list"
          ],
          "type": "string",
          "enum": [
            "LOG_TYPE_UNSPECIFIED",
            "ADMIN_READ",
            "DATA_WRITE",
            "DATA_READ"
          ]
        },
        "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"
          }
        }
      },
      "id": "AuditLogConfig",
      "type": "object"
    },
    "DeadLetterConfig": {
      "id": "DeadLetterConfig",
      "type": "object",
      "description": "Dead Letter configuration details provided by the user.",
      "properties": {
        "projectId": {
          "description": "Optional. Project which has the topic given.",
          "type": "string"
        },
        "topic": {
          "description": "Optional. Topic to push events which couldn't be processed.",
          "type": "string"
        }
      }
    },
    "ListLocationsResponse": {
      "description": "The response message for Locations.ListLocations.",
      "properties": {
        "locations": {
          "description": "A list of locations that matches the specified filter in the request.",
          "type": "array",
          "items": {
            "$ref": "Location"
          }
        },
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        }
      },
      "id": "ListLocationsResponse",
      "type": "object"
    },
    "SslConfigTemplate": {
      "id": "SslConfigTemplate",
      "type": "object",
      "description": "Ssl config details of a connector version",
      "properties": {
        "serverCertType": {
          "type": "array",
          "items": {
            "enum": [
              "CERT_TYPE_UNSPECIFIED",
              "PEM"
            ],
            "type": "string",
            "enumDescriptions": [
              "Cert type unspecified.",
              "Privacy Enhanced Mail (PEM) Type"
            ]
          },
          "description": "List of supported Server Cert Types"
        },
        "isTlsMandatory": {
          "description": "Boolean for determining if the connector version mandates TLS.",
          "type": "boolean"
        },
        "additionalVariables": {
          "description": "Any additional fields that need to be rendered",
          "type": "array",
          "items": {
            "$ref": "ConfigVariableTemplate"
          }
        },
        "sslType": {
          "enum": [
            "SSL_TYPE_UNSPECIFIED",
            "TLS",
            "MTLS"
          ],
          "type": "string",
          "enumDescriptions": [
            "No SSL configuration required.",
            "TLS Handshake",
            "mutual TLS (MTLS) Handshake"
          ],
          "description": "Controls the ssl type for the given connector version"
        },
        "clientCertType": {
          "items": {
            "enumDescriptions": [
              "Cert type unspecified.",
              "Privacy Enhanced Mail (PEM) Type"
            ],
            "type": "string",
            "enum": [
              "CERT_TYPE_UNSPECIFIED",
              "PEM"
            ]
          },
          "type": "array",
          "description": "List of supported Client Cert Types"
        }
      }
    },
    "EndPoint": {
      "id": "EndPoint",
      "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": "Header"
          },
          "type": "array"
        },
        "endpointUri": {
          "description": "Optional. The URI of the Endpoint.",
          "type": "string"
        }
      }
    },
    "RepairEventingRequest": {
      "id": "RepairEventingRequest",
      "type": "object",
      "description": "Request message for ConnectorsService.RepairEventing",
      "properties": {}
    },
    "EndUserAuthenticationConfigOauth2ClientCredentials": {
      "id": "EndUserAuthenticationConfigOauth2ClientCredentials",
      "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.",
      "properties": {
        "clientId": {
          "description": "The client identifier.",
          "type": "string"
        },
        "clientSecret": {
          "description": "Required. string value or secret version containing the client secret.",
          "$ref": "EUASecret"
        }
      }
    },
    "ListConnectionsResponse": {
      "id": "ListConnectionsResponse",
      "type": "object",
      "description": "Response message for ConnectorsService.ListConnections",
      "properties": {
        "unreachable": {
          "description": "Locations that could not be reached.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "connections": {
          "items": {
            "$ref": "Connection"
          },
          "type": "array",
          "description": "Connections."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      }
    },
    "Connection": {
      "description": "Connection represents an instance of connector.",
      "properties": {
        "createTime": {
          "format": "google-datetime",
          "description": "Output only. Created time.",
          "readOnly": true,
          "type": "string"
        },
        "serviceAccount": {
          "description": "Optional. Service account needed for runtime plane to access Google Cloud resources.",
          "type": "string"
        },
        "destinationConfigs": {
          "description": "Optional. Configuration of the Connector's destination. Only accepted for Connectors that accepts user defined destination(s).",
          "items": {
            "$ref": "DestinationConfig"
          },
          "type": "array"
        },
        "serviceDirectory": {
          "readOnly": true,
          "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\""
        },
        "authOverrideEnabled": {
          "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.",
          "type": "boolean"
        },
        "eventingRuntimeData": {
          "description": "Output only. Eventing Runtime Data.",
          "readOnly": true,
          "$ref": "EventingRuntimeData"
        },
        "nodeConfig": {
          "$ref": "NodeConfig",
          "description": "Optional. Node configuration for the connection."
        },
        "sslConfig": {
          "$ref": "SslConfig",
          "description": "Optional. Ssl config of a connection"
        },
        "connectorVersionInfraConfig": {
          "description": "Output only. Infra configs supported by Connector Version.",
          "$ref": "ConnectorVersionInfraConfig",
          "readOnly": true
        },
        "suspended": {
          "description": "Optional. Suspended indicates if a user has suspended a connection or not.",
          "type": "boolean"
        },
        "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"
        },
        "connectorVersion": {
          "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.",
          "type": "string"
        },
        "status": {
          "description": "Output only. Current status of the connection.",
          "$ref": "ConnectionStatus",
          "readOnly": true
        },
        "billingConfig": {
          "$ref": "BillingConfig",
          "readOnly": true,
          "description": "Output only. Billing config for the connection."
        },
        "connectionRevision": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Connection revision. This field is only updated when the connection is created or updated by User.",
          "format": "int64"
        },
        "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."
        },
        "description": {
          "description": "Optional. Description of the resource.",
          "type": "string"
        },
        "lockConfig": {
          "description": "Optional. Configuration that indicates whether or not the Connection can be edited.",
          "$ref": "LockConfig"
        },
        "tlsServiceDirectory": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The name of the Service Directory service with TLS."
        },
        "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",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "name": {
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/connections/{connection}",
          "readOnly": true,
          "type": "string"
        },
        "configVariables": {
          "description": "Optional. Configuration for configuring the connection with an external system.",
          "type": "array",
          "items": {
            "$ref": "ConfigVariable"
          }
        },
        "host": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The name of the Hostname of the Service Directory service with TLS."
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "isTrustedTester": {
          "description": "Output only. Is trusted tester program enabled for the project.",
          "readOnly": true,
          "type": "boolean"
        },
        "logConfig": {
          "$ref": "ConnectorsLogConfig",
          "description": "Optional. Log configuration for the connection."
        },
        "eventingEnablementType": {
          "enum": [
            "EVENTING_ENABLEMENT_TYPE_UNSPECIFIED",
            "EVENTING_AND_CONNECTION",
            "ONLY_EVENTING"
          ],
          "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."
        },
        "connectorVersionLaunchStage": {
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "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"
        },
        "authConfig": {
          "description": "Optional. Configuration for establishing the connection's authentication with an external system.",
          "$ref": "AuthConfig"
        },
        "trafficShapingConfigs": {
          "type": "array",
          "items": {
            "$ref": "TrafficShapingConfig"
          },
          "description": "Optional. Traffic shaping configuration for the connection."
        },
        "eventingConfig": {
          "description": "Optional. Eventing config of a connection",
          "$ref": "EventingConfig"
        },
        "envoyImageLocation": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. GCR location where the envoy image is stored. formatted like: gcr.io/{bucketName}/{imageName}"
        },
        "imageLocation": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. GCR location where the runtime image is stored. formatted like: gcr.io/{bucketName}/{imageName}"
        },
        "subscriptionType": {
          "enum": [
            "SUBSCRIPTION_TYPE_UNSPECIFIED",
            "PAY_G",
            "PAID"
          ],
          "readOnly": true,
          "type": "string",
          "enumDescriptions": [
            "Unspecified subscription type.",
            "PayG subscription.",
            "Paid Subscription."
          ],
          "description": "Output only. This subscription type enum states the subscription type of the project."
        }
      },
      "id": "Connection",
      "type": "object"
    },
    "MarketplaceConnectorDetails": {
      "description": "Marketplace connector details.",
      "properties": {
        "marketplaceProductId": {
          "description": "Marketplace product ID.",
          "type": "string"
        },
        "marketplaceProductUri": {
          "description": "Marketplace product URL.",
          "type": "string"
        },
        "partner": {
          "description": "The name of the partner.",
          "type": "string"
        },
        "marketplaceProduct": {
          "description": "Marketplace product name.",
          "type": "string"
        }
      },
      "id": "MarketplaceConnectorDetails",
      "type": "object"
    },
    "AuthObject": {
      "id": "AuthObject",
      "type": "object",
      "description": "AuthObject defines a JSON schema of an authentication type.",
      "properties": {
        "description": {
          "description": "Description of the object.",
          "type": "string"
        },
        "additionalProperties": {
          "description": "Whether the object has additional properties.",
          "type": "boolean"
        },
        "properties": {
          "type": "object",
          "description": "Properties of the object.",
          "additionalProperties": {
            "$ref": "AuthProperty"
          }
        },
        "isDefault": {
          "description": "Whether the object is the default one.",
          "type": "boolean"
        },
        "type": {
          "description": "Type of the object.",
          "type": "string"
        },
        "authType": {
          "description": "Auth type of the object.",
          "type": "string"
        },
        "authKey": {
          "description": "Auth key of the object.",
          "type": "string"
        }
      }
    },
    "OAuthTokenData": {
      "id": "OAuthTokenData",
      "type": "object",
      "description": "pass only at create and not update using updateMask Auth Code Data",
      "properties": {
        "accessToken": {
          "$ref": "EUASecret",
          "description": "Optional. Access token for the connection."
        },
        "expiry": {
          "format": "google-duration",
          "description": "Optional. Time in seconds when the access token expires.",
          "type": "string"
        },
        "refreshToken": {
          "$ref": "EUASecret",
          "description": "Optional. Refresh token for the connection."
        },
        "createTime": {
          "format": "google-datetime",
          "description": "Optional. Timestamp when the access token was created.",
          "type": "string"
        }
      }
    },
    "ExtractionRules": {
      "id": "ExtractionRules",
      "type": "object",
      "description": "Extraction Rules to identity the backends from customer provided configuration in Connection resource.",
      "properties": {
        "extractionRule": {
          "type": "array",
          "items": {
            "$ref": "ExtractionRule"
          },
          "description": "Collection of Extraction Rule."
        }
      }
    },
    "SetIamPolicyRequest": {
      "id": "SetIamPolicyRequest",
      "type": "object",
      "description": "Request message for `SetIamPolicy` method.",
      "properties": {
        "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.",
          "$ref": "Policy"
        },
        "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\"`",
          "format": "google-fieldmask",
          "type": "string"
        }
      }
    },
    "ListenEventResponse": {
      "id": "ListenEventResponse",
      "type": "object",
      "description": "Expected response for ListenEvent API.",
      "properties": {}
    },
    "Empty": {
      "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); }",
      "properties": {},
      "id": "Empty",
      "type": "object"
    },
    "ListEventSubscriptionsResponse": {
      "id": "ListEventSubscriptionsResponse",
      "type": "object",
      "description": "Response message for ConnectorsService.ListEventSubscriptions",
      "properties": {
        "eventSubscriptions": {
          "items": {
            "$ref": "EventSubscription"
          },
          "type": "array",
          "description": "Subscriptions."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "PerSliSloEligibility": {
      "description": "PerSliSloEligibility is a mapping from an SLI name to eligibility.",
      "properties": {
        "eligibilities": {
          "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.",
          "additionalProperties": {
            "$ref": "SloEligibility"
          },
          "type": "object"
        }
      },
      "id": "PerSliSloEligibility",
      "type": "object"
    },
    "Schedule": {
      "description": "Configure the schedule.",
      "properties": {
        "duration": {
          "description": "Output only. Duration of the time window, set by service producer.",
          "format": "google-duration",
          "type": "string"
        },
        "startTime": {
          "$ref": "TimeOfDay",
          "description": "Time within the window to start the operations."
        },
        "day": {
          "type": "string",
          "enum": [
            "DAY_OF_WEEK_UNSPECIFIED",
            "MONDAY",
            "TUESDAY",
            "WEDNESDAY",
            "THURSDAY",
            "FRIDAY",
            "SATURDAY",
            "SUNDAY"
          ],
          "description": "Allows to define schedule that runs specified day of the week.",
          "enumDescriptions": [
            "The day of the week is unspecified.",
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday",
            "Sunday"
          ]
        }
      },
      "id": "Schedule",
      "type": "object"
    },
    "Oauth2AuthCodeFlowGoogleManaged": {
      "id": "Oauth2AuthCodeFlowGoogleManaged",
      "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.",
      "properties": {
        "scopes": {
          "description": "Required. Scopes the connection will request when the user performs the auth code flow.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "authCode": {
          "description": "Optional. Authorization code to be exchanged for access and refresh tokens.",
          "type": "string"
        },
        "redirectUri": {
          "description": "Optional. Redirect URI to be provided during the auth code exchange.",
          "type": "string"
        }
      }
    },
    "Location": {
      "id": "Location",
      "type": "object",
      "description": "A resource that represents a Google Cloud location.",
      "properties": {
        "name": {
          "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`",
          "type": "string"
        },
        "metadata": {
          "description": "Service-specific metadata. For example the available capacity at the given location.",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          },
          "type": "object"
        },
        "labels": {
          "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}",
          "additionalProperties": {
            "type": "string"
          },
          "type": "object"
        },
        "displayName": {
          "description": "The friendly name for this location, typically a nearby city name. For example, \"Tokyo\".",
          "type": "string"
        },
        "locationId": {
          "description": "The canonical id for this location. For example: `\"us-east1\"`.",
          "type": "string"
        }
      }
    },
    "SloEligibility": {
      "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.",
      "properties": {
        "eligible": {
          "description": "Whether an instance is eligible or ineligible.",
          "type": "boolean"
        },
        "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"
        }
      },
      "id": "SloEligibility",
      "type": "object"
    },
    "MaintenancePolicy": {
      "id": "MaintenancePolicy",
      "type": "object",
      "description": "Defines policies to service maintenance events.",
      "properties": {
        "name": {
          "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])?`.",
          "type": "string"
        },
        "state": {
          "type": "string",
          "enum": [
            "STATE_UNSPECIFIED",
            "READY",
            "DELETING"
          ],
          "description": "Optional. The state of the policy.",
          "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",
          "description": "Output only. The time when the resource was created.",
          "type": "string"
        },
        "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"
        },
        "labels": {
          "type": "object",
          "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.",
          "additionalProperties": {
            "type": "string"
          }
        },
        "updatePolicy": {
          "$ref": "UpdatePolicy",
          "description": "Maintenance policy applicable to instance update."
        },
        "updateTime": {
          "type": "string",
          "description": "Output only. The time when the resource was updated.",
          "format": "google-datetime"
        }
      }
    },
    "Binding": {
      "description": "Associates `members`, or principals, with a `role`.",
      "properties": {
        "members": {
          "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`.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "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"
        }
      },
      "id": "Binding",
      "type": "object"
    },
    "InputParameter": {
      "description": "Metadata of an input parameter.",
      "properties": {
        "defaultValue": {
          "description": "The following field specifies the default value of the Parameter provided by the external system if a value is not provided.",
          "type": "any"
        },
        "jsonSchema": {
          "description": "JsonSchema representation of this action's parameter",
          "$ref": "JsonSchema"
        },
        "description": {
          "description": "A brief description of the Parameter.",
          "type": "string"
        },
        "dataType": {
          "description": "The data type of the Parameter.",
          "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",
          "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"
          ]
        },
        "nullable": {
          "description": "Specifies whether a null value is allowed.",
          "type": "boolean"
        },
        "parameter": {
          "description": "Name of the Parameter.",
          "type": "string"
        }
      },
      "id": "InputParameter",
      "type": "object"
    },
    "RetryEventSubscriptionRequest": {
      "id": "RetryEventSubscriptionRequest",
      "type": "object",
      "description": "Request message for ConnectorsService.RefreshEventSubscription",
      "properties": {}
    },
    "LogicalExpression": {
      "id": "LogicalExpression",
      "type": "object",
      "description": "Struct for representing boolean expressions.",
      "properties": {
        "fieldComparisons": {
          "description": "Optional. A list of fields to be compared.",
          "items": {
            "$ref": "FieldComparison"
          },
          "type": "array"
        },
        "logicalOperator": {
          "enum": [
            "OPERATOR_UNSPECIFIED",
            "AND",
            "OR"
          ],
          "type": "string",
          "enumDescriptions": [
            "The default value.",
            "AND operator; The conditions must all be true.",
            "OR operator; At least one of the conditions must be true."
          ],
          "description": "Optional. The logical operator to use between the fields and conditions."
        },
        "logicalExpressions": {
          "items": {
            "$ref": "LogicalExpression"
          },
          "type": "array",
          "description": "Optional. A list of nested conditions to be compared."
        }
      }
    },
    "MultipleSelectOption": {
      "description": "MultiplSelecteOption represents the single option for a config variable.",
      "properties": {
        "description": {
          "description": "Optional. Value of the option.",
          "type": "string"
        },
        "preselected": {
          "description": "Optional. Indicates if the option is preselected.",
          "type": "boolean"
        },
        "displayName": {
          "description": "Required. Display name of the option.",
          "type": "string"
        },
        "key": {
          "description": "Required. Key of the option.",
          "type": "string"
        }
      },
      "id": "MultipleSelectOption",
      "type": "object"
    },
    "AuthSchema": {
      "description": "AuthSchema defines the schema of an authentication type.",
      "properties": {
        "authKey": {
          "description": "Auth key of the schema.",
          "type": "string"
        },
        "displayName": {
          "description": "Display name of the schema.",
          "type": "string"
        },
        "authFields": {
          "description": "List of AuthFields.",
          "items": {
            "$ref": "AuthField"
          },
          "type": "array"
        },
        "description": {
          "description": "Description of the schema.",
          "type": "string"
        },
        "isDefault": {
          "description": "Whether the auth schema is the default one.",
          "type": "boolean"
        },
        "authType": {
          "description": "Auth type of the schema.",
          "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"
          ]
        }
      },
      "id": "AuthSchema",
      "type": "object"
    },
    "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": {
        "hours": {
          "type": "integer",
          "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"
        },
        "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"
        },
        "seconds": {
          "type": "integer",
          "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.",
          "format": "int32"
        },
        "nanos": {
          "description": "Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.",
          "format": "int32",
          "type": "integer"
        }
      }
    },
    "RegionalSettings": {
      "description": "Regional Settings details.",
      "properties": {
        "encryptionConfig": {
          "description": "Optional. Regional encryption config to hold CMEK details.",
          "$ref": "EncryptionConfig"
        },
        "provisioned": {
          "readOnly": true,
          "type": "boolean",
          "description": "Output only. Specifies whether the region is provisioned."
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/regionalSettings"
        },
        "networkConfig": {
          "$ref": "NetworkConfig",
          "description": "Optional. Regional network config."
        }
      },
      "id": "RegionalSettings",
      "type": "object"
    },
    "ListEndpointAttachmentsResponse": {
      "description": "Response message for ConnectorsService.ListEndpointAttachments",
      "properties": {
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "endpointAttachments": {
          "items": {
            "$ref": "EndpointAttachment"
          },
          "type": "array",
          "description": "EndpointAttachments."
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "id": "ListEndpointAttachmentsResponse",
      "type": "object"
    },
    "Header": {
      "id": "Header",
      "type": "object",
      "description": "Header details for a given header to be added to Endpoint.",
      "properties": {
        "key": {
          "description": "Optional. Key of Header.",
          "type": "string"
        },
        "value": {
          "description": "Optional. Value of Header.",
          "type": "string"
        }
      }
    },
    "TestIamPermissionsResponse": {
      "description": "Response message for `TestIamPermissions` method.",
      "properties": {
        "permissions": {
          "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "id": "TestIamPermissionsResponse",
      "type": "object"
    },
    "SloMetadata": {
      "id": "SloMetadata",
      "type": "object",
      "description": "SloMetadata contains resources required for proper SLO classification of the instance.",
      "properties": {
        "nodes": {
          "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.",
          "items": {
            "$ref": "NodeSloMetadata"
          },
          "type": "array"
        },
        "perSliEligibility": {
          "description": "Optional. Multiple per-instance SLI eligibilities which apply for individual SLIs.",
          "$ref": "PerSliSloEligibility"
        },
        "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"
        }
      }
    },
    "ListManagedZonesResponse": {
      "description": "Response message for ConnectorsService.ListManagedZones",
      "properties": {
        "managedZones": {
          "description": "ManagedZones.",
          "items": {
            "$ref": "ManagedZone"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        }
      },
      "id": "ListManagedZonesResponse",
      "type": "object"
    },
    "WeeklyCycle": {
      "description": "Time window specified for weekly operations.",
      "properties": {
        "schedule": {
          "description": "User can specify multiple windows in a week. Minimum of 1 window.",
          "items": {
            "$ref": "Schedule"
          },
          "type": "array"
        }
      },
      "id": "WeeklyCycle",
      "type": "object"
    },
    "Resource": {
      "id": "Resource",
      "type": "object",
      "description": "Resource definition",
      "properties": {
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "GCP_PROJECT",
            "GCP_RESOURCE",
            "GCP_SECRETMANAGER_SECRET",
            "GCP_SECRETMANAGER_SECRET_VERSION"
          ],
          "type": "string",
          "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."
          ],
          "description": "Optional. Different types of resource supported."
        },
        "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"
        }
      }
    },
    "EndUserAuthenticationNotifyEndpointDestinationEndPoint": {
      "description": "Endpoint message includes details of the Destination endpoint.",
      "properties": {
        "endpointUri": {
          "description": "Required. The URI of the Endpoint.",
          "type": "string"
        },
        "headers": {
          "description": "Optional. List of Header to be added to the Endpoint.",
          "items": {
            "$ref": "EndUserAuthenticationNotifyEndpointDestinationEndPointHeader"
          },
          "type": "array"
        }
      },
      "id": "EndUserAuthenticationNotifyEndpointDestinationEndPoint",
      "type": "object"
    },
    "Provider": {
      "description": "Provider indicates the owner who provides the connectors.",
      "properties": {
        "externalUri": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Link to external page."
        },
        "displayName": {
          "description": "Output only. Display name.",
          "readOnly": true,
          "type": "string"
        },
        "webAssetsLocation": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Cloud storage location of icons etc consumed by UI."
        },
        "description": {
          "description": "Output only. Description of the resource.",
          "readOnly": true,
          "type": "string"
        },
        "documentationUri": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Link to documentation page."
        },
        "updateTime": {
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Created time."
        },
        "labels": {
          "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"
          },
          "readOnly": true,
          "type": "object"
        },
        "name": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Resource name of the Provider. Format: projects/{project}/locations/{location}/providers/{provider} Only global location is supported for Provider resource."
        },
        "launchStage": {
          "readOnly": true,
          "type": "string",
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "description": "Output only. Flag to mark the version indicating the launch stage.",
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ]
        }
      },
      "id": "Provider",
      "type": "object"
    },
    "ValidateCustomConnectorSpecRequest": {
      "description": "Request message for ConnectorsService.ValidateCustomConnectorSpec",
      "properties": {
        "specType": {
          "enum": [
            "CUSTOM_CONNECTOR_TYPE_UNSPECIFIED",
            "OPEN_API",
            "PROTO",
            "SDK"
          ],
          "type": "string",
          "enumDescriptions": [
            "Connector type is not specified.",
            "OpenAPI connector.",
            "Proto connector.",
            "SDK connector."
          ],
          "description": "Required. Spec type of the custom connector spec."
        },
        "specLocation": {
          "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:///`",
          "type": "string"
        },
        "serviceAccount": {
          "description": "Required. Service account to access the spec from Google Cloud Storage.",
          "type": "string"
        }
      },
      "id": "ValidateCustomConnectorSpecRequest",
      "type": "object"
    },
    "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.",
      "properties": {
        "quotaLimit": {
          "description": "Required. Maximum number of api calls allowed.",
          "format": "int64",
          "type": "string"
        },
        "duration": {
          "type": "string",
          "format": "google-duration",
          "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."
        }
      },
      "id": "TrafficShapingConfig",
      "type": "object"
    },
    "SearchConnectionInstance": {
      "description": "SearchConnectionInstance represents an instance of connector with specific fields",
      "properties": {
        "actionSchema": {
          "description": "Output only. Schema of a runtime action.",
          "readOnly": true,
          "$ref": "RuntimeActionSchema"
        },
        "connection": {
          "readOnly": true,
          "$ref": "Connection",
          "description": "Output only. Connection details"
        },
        "entitySchema": {
          "$ref": "RuntimeEntitySchema",
          "readOnly": true,
          "description": "Output only. Schema of a runtime entity."
        }
      },
      "id": "SearchConnectionInstance",
      "type": "object"
    },
    "CustomConnectorVersion": {
      "id": "CustomConnectorVersion",
      "type": "object",
      "description": "CustomConnectorVersion indicates a specific version of a connector.",
      "properties": {
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "name": {
          "description": "Output only. Identifier. Resource name of the Version. Format: projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}",
          "readOnly": true,
          "type": "string"
        },
        "backendVariableTemplates": {
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "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."
        },
        "authOverrideSupport": {
          "description": "Optional. Auth override support.",
          "type": "boolean"
        },
        "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"
          }
        },
        "specServerUrls": {
          "description": "Output only. Server URLs parsed from the Open API spec. This is only used for Open API based custom connectors.",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "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": {
          "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.",
          "type": "boolean"
        },
        "partnerMetadata": {
          "description": "Optional. Partner metadata details. This should be populated only when publishing the custom connector to partner connector.",
          "$ref": "PartnerMetadata"
        },
        "authConfig": {
          "description": "Optional. Authentication config for accessing connector service (facade). This is used only when enable_backend_destination_config is true.",
          "$ref": "AuthConfig"
        },
        "asyncOperationsSupport": {
          "description": "Optional. Indicates if Async Operations/Connector Job is supported. This is only available for SDK based custom connectors.",
          "type": "boolean"
        },
        "destinationConfigs": {
          "description": "Optional. Destination config(s) for accessing connector service (facade). This is used only when enable_backend_destination_config is true.",
          "items": {
            "$ref": "DestinationConfig"
          },
          "type": "array"
        },
        "serviceAccount": {
          "description": "Optional. Service account used by runtime plane to access auth config secrets.",
          "type": "string"
        },
        "state": {
          "enumDescriptions": [
            "State Unspecified.",
            "Active state. By default we set the state to Active.",
            "Deprecated state."
          ],
          "description": "Output only. State of the custom connector version.",
          "enum": [
            "STATE_UNSPECIFIED",
            "ACTIVE",
            "DEPRECATED"
          ],
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "description": "Output only. Created time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "authConfigTemplates": {
          "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"
          },
          "type": "array"
        },
        "publishStatus": {
          "description": "Output only. Publish status of a custom connector.",
          "$ref": "PublishStatus",
          "readOnly": true
        }
      }
    },
    "Status": {
      "id": "Status",
      "type": "object",
      "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).",
      "properties": {
        "code": {
          "type": "integer",
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32"
        },
        "details": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": {
              "type": "any",
              "description": "Properties of the object. Contains field @type with type URL."
            }
          },
          "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"
        }
      }
    },
    "ConnectorsLogConfig": {
      "description": "Log configuration for the connection.",
      "properties": {
        "level": {
          "type": "string",
          "enum": [
            "LOG_LEVEL_UNSPECIFIED",
            "ERROR",
            "INFO",
            "DEBUG"
          ],
          "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."
          ]
        },
        "enabled": {
          "description": "Optional. Enabled represents whether logging is enabled or not for a connection.",
          "type": "boolean"
        }
      },
      "id": "ConnectorsLogConfig",
      "type": "object"
    },
    "Connector": {
      "description": "Connectors indicates a specific connector type, e.x. Salesforce, SAP etc.",
      "properties": {
        "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."
        },
        "labels": {
          "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"
          },
          "readOnly": true,
          "type": "object"
        },
        "launchStage": {
          "enum": [
            "LAUNCH_STAGE_UNSPECIFIED",
            "PREVIEW",
            "GA",
            "DEPRECATED",
            "TEST",
            "PRIVATE_PREVIEW"
          ],
          "readOnly": true,
          "type": "string",
          "enumDescriptions": [
            "LAUNCH_STAGE_UNSPECIFIED.",
            "PREVIEW.",
            "GA.",
            "DEPRECATED.",
            "TEST.",
            "PRIVATE_PREVIEW."
          ],
          "description": "Output only. Flag to mark the version indicating the launch stage."
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "documentationUri": {
          "description": "Output only. Link to documentation page.",
          "readOnly": true,
          "type": "string"
        },
        "marketplaceConnectorDetails": {
          "readOnly": true,
          "$ref": "MarketplaceConnectorDetails",
          "description": "Output only. Marketplace connector details. Will be null if the connector is not marketplace connector."
        },
        "displayName": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Display name."
        },
        "connectorType": {
          "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"
          ],
          "readOnly": true,
          "type": "string"
        },
        "externalUri": {
          "description": "Output only. Link to external page.",
          "readOnly": true,
          "type": "string"
        },
        "eventingDetails": {
          "$ref": "EventingDetails",
          "readOnly": true,
          "description": "Output only. Eventing details. Will be null if eventing is not supported."
        },
        "createTime": {
          "description": "Output only. Created time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Description of the resource."
        },
        "category": {
          "description": "Output only. Category of the connector.",
          "readOnly": true,
          "type": "string"
        },
        "webAssetsLocation": {
          "description": "Output only. Cloud storage location of icons etc consumed by UI.",
          "readOnly": true,
          "type": "string"
        },
        "tags": {
          "readOnly": true,
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Output only. Tags of the connector."
        }
      },
      "id": "Connector",
      "type": "object"
    },
    "SearchConnectionsResponse": {
      "id": "SearchConnectionsResponse",
      "type": "object",
      "description": "Response message for Connectors.SearchConnections.",
      "properties": {
        "connections": {
          "items": {
            "$ref": "SearchConnectionInstance"
          },
          "type": "array",
          "description": "A list of connectors."
        },
        "nextPageToken": {
          "description": "Optional. page_token",
          "type": "string"
        },
        "unreachable": {
          "items": {
            "type": "string"
          },
          "type": "array",
          "description": "Locations that could not be reached."
        }
      }
    },
    "AuthorizationCodeLink": {
      "id": "AuthorizationCodeLink",
      "type": "object",
      "description": "This configuration captures the details required to render an authorization link for the OAuth Authorization Code Flow.",
      "properties": {
        "omitQueryParams": {
          "description": "Optional. Omit query params from the redirect URI.",
          "type": "boolean"
        },
        "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": {
          "$ref": "Secret",
          "description": "Optional. The client secret assigned to the Google Cloud Connectors OAuth app for the connector data source."
        },
        "scopes": {
          "description": "Optional. The scopes for which the user will authorize Google Cloud Connectors on the connector data source.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "enablePkce": {
          "description": "Optional. Whether to enable PKCE for the auth code flow.",
          "type": "boolean"
        }
      }
    },
    "LockConfig": {
      "id": "LockConfig",
      "type": "object",
      "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"
        }
      }
    },
    "TestIamPermissionsRequest": {
      "description": "Request message for `TestIamPermissions` method.",
      "properties": {
        "permissions": {
          "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).",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "id": "TestIamPermissionsRequest",
      "type": "object"
    },
    "NodeConfig": {
      "description": "Node configuration for the connection.",
      "properties": {
        "maxNodeCount": {
          "type": "integer",
          "description": "Optional. Maximum number of nodes in the runtime nodes.",
          "format": "int32"
        },
        "minNodeCount": {
          "type": "integer",
          "description": "Optional. Minimum number of nodes in the runtime nodes.",
          "format": "int32"
        }
      },
      "id": "NodeConfig",
      "type": "object"
    },
    "JMS": {
      "id": "JMS",
      "type": "object",
      "description": "JMS message denotes the source of the event",
      "properties": {
        "type": {
          "description": "Optional. Type of the JMS Source. i.e. Queue or Topic",
          "enumDescriptions": [
            "Default state.",
            "JMS Queue.",
            "JMS Topic."
          ],
          "type": "string",
          "enum": [
            "TYPE_UNSPECIFIED",
            "QUEUE",
            "TOPIC"
          ]
        },
        "name": {
          "description": "Optional. Name of the JMS source. i.e. queueName or topicName",
          "type": "string"
        }
      }
    },
    "ConnectorInfraConfig": {
      "id": "ConnectorInfraConfig",
      "type": "object",
      "description": "This cofiguration provides infra configs like rate limit threshold which need to be configurable for every connector version",
      "properties": {
        "internalclientRatelimitThreshold": {
          "description": "Max QPS supported for internal requests originating from Connd.",
          "format": "int64",
          "type": "string"
        },
        "networkEgressModeOverride": {
          "description": "Network egress mode override to migrate to direct VPC egress.",
          "$ref": "NetworkEgressModeOverride"
        },
        "resourceRequests": {
          "$ref": "ResourceRequests",
          "description": "System resource requests."
        },
        "resourceLimits": {
          "description": "System resource limits.",
          "$ref": "ResourceLimits"
        },
        "alwaysAllocateCpu": {
          "description": "Indicates that the Cloud Run CPU should always be allocated.",
          "type": "boolean"
        },
        "connectionServiceAccountEnabled": {
          "description": "Indicate whether connection service account is enabled. If false, the common runtime service agent is used.",
          "type": "boolean"
        },
        "ratelimitThreshold": {
          "description": "Max QPS supported by the connector version before throttling of requests.",
          "format": "int64",
          "type": "string"
        },
        "maxInstanceRequestConcurrency": {
          "format": "int32",
          "description": "Max Instance Request Conncurrency for Cloud Run service.",
          "type": "integer"
        },
        "sharedDeployment": {
          "description": "The name of shared connector deployment.",
          "type": "string"
        },
        "migrateDeploymentModel": {
          "description": "Indicate whether connector is being migrated to cloud run deployment model.",
          "type": "boolean"
        },
        "provisionCloudSpanner": {
          "description": "Indicate whether cloud spanner is required for connector job.",
          "type": "boolean"
        },
        "deploymentModel": {
          "description": "Indicate whether connector is deployed on GKE/CloudRun",
          "enumDescriptions": [
            "Deployment model is not specified.",
            "Default model gke mst.",
            "Cloud run mst."
          ],
          "type": "string",
          "enum": [
            "DEPLOYMENT_MODEL_UNSPECIFIED",
            "GKE_MST",
            "CLOUD_RUN_MST"
          ]
        },
        "migrateTls": {
          "description": "Indicate whether connector is being migrated to TLS.",
          "type": "boolean"
        },
        "publicNetworkIngressEnabled": {
          "description": "Indicate whether public network ingress should be enabled.",
          "type": "boolean"
        },
        "connectionRatelimitWindowSeconds": {
          "description": "The window used for ratelimiting runtime requests to connections.",
          "format": "int64",
          "type": "string"
        },
        "provisionMemstore": {
          "description": "Indicate whether memstore is required for connector job.",
          "type": "boolean"
        },
        "connectorVersioningEnabled": {
          "description": "Indicate whether connector versioning is enabled.",
          "type": "boolean"
        },
        "hpaConfig": {
          "$ref": "HPAConfig",
          "description": "HPA autoscaling config."
        }
      }
    },
    "JsonAuthSchema": {
      "id": "JsonAuthSchema",
      "type": "object",
      "description": "JsonAuthSchema defines the JSON schema of all authentication types.",
      "properties": {
        "$schema": {
          "description": "JSON schema of the AuthSchemas.",
          "type": "string"
        },
        "oneOf": {
          "items": {
            "$ref": "AuthObject"
          },
          "type": "array",
          "description": "List of AuthObjects."
        }
      }
    },
    "EgressControlConfig": {
      "id": "EgressControlConfig",
      "type": "object",
      "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.",
      "properties": {
        "launchEnvironment": {
          "type": "string",
          "enum": [
            "LAUNCH_ENVIRONMENT_UNSPECIFIED",
            "AUTOPUSH",
            "STAGING",
            "PROD"
          ],
          "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."
          ]
        },
        "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"
        },
        "allowlistedProjectNumbers": {
          "description": "Optional. Used when access_mode is RESTRICTED or ACCESS_MODE_UNSPECIFIED.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "accessMode": {
          "description": "Optional. Access mode for egress control.",
          "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."
          ],
          "type": "string",
          "enum": [
            "ACCESS_MODE_UNSPECIFIED",
            "RESTRICTED",
            "ALLOW_ALL"
          ]
        },
        "extractionRules": {
          "deprecated": true,
          "description": "Extractions Rules to extract the backends from customer provided configuration.",
          "$ref": "ExtractionRules"
        },
        "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"
        }
      }
    },
    "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims": {
      "id": "EndUserAuthenticationConfigOauth2JwtBearerJwtClaims",
      "type": "object",
      "description": "JWT claims used for the jwt-bearer authorization grant.",
      "properties": {
        "issuer": {
          "description": "Value for the \"iss\" claim.",
          "type": "string"
        },
        "subject": {
          "description": "Value for the \"sub\" claim.",
          "type": "string"
        },
        "audience": {
          "description": "Value for the \"aud\" claim.",
          "type": "string"
        }
      }
    },
    "Policy": {
      "id": "Policy",
      "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/).",
      "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": {
          "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`.",
          "items": {
            "$ref": "Binding"
          },
          "type": "array"
        },
        "auditConfigs": {
          "items": {
            "$ref": "AuditConfig"
          },
          "type": "array",
          "description": "Specifies cloud audit logging configuration for this policy."
        },
        "etag": {
          "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.",
          "format": "byte",
          "type": "string"
        }
      }
    },
    "DestinationConfigTemplate": {
      "description": "DestinationConfigTemplate defines required destinations supported by the Connector.",
      "properties": {
        "regexPattern": {
          "description": "Regex pattern for host.",
          "type": "string"
        },
        "min": {
          "description": "The minimum number of destinations supported for this key.",
          "format": "int32",
          "type": "integer"
        },
        "max": {
          "format": "int32",
          "description": "The maximum number of destinations supported for this key.",
          "type": "integer"
        },
        "portFieldType": {
          "description": "Whether port number should be provided by customers.",
          "enumDescriptions": [
            "",
            "",
            "",
            ""
          ],
          "type": "string",
          "enum": [
            "FIELD_TYPE_UNSPECIFIED",
            "REQUIRED",
            "OPTIONAL",
            "NOT_USED"
          ]
        },
        "description": {
          "description": "Description.",
          "type": "string"
        },
        "key": {
          "description": "Key of the destination.",
          "type": "string"
        },
        "isAdvanced": {
          "description": "Whether the current destination tempalate is part of Advanced settings",
          "type": "boolean"
        },
        "displayName": {
          "description": "Display name of the parameter.",
          "type": "string"
        },
        "autocompleteSuggestions": {
          "description": "Autocomplete suggestions for destination URL field.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "defaultPort": {
          "type": "integer",
          "description": "The default port.",
          "format": "int32"
        }
      },
      "id": "DestinationConfigTemplate",
      "type": "object"
    },
    "NetworkConfig": {
      "description": "Regional Network Config.",
      "properties": {
        "egressMode": {
          "enumDescriptions": [
            "Egress mode unspecified.",
            "Network egress through auto assigned IPs.",
            "Network egress through static IPs."
          ],
          "description": "Optional. Egress mode for the network.",
          "enum": [
            "NETWORK_EGRESS_MODE_UNSPECIFIED",
            "AUTO_IP",
            "STATIC_IP"
          ],
          "type": "string"
        },
        "egressIps": {
          "description": "Output only. Egress IPs",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        }
      },
      "id": "NetworkConfig",
      "type": "object"
    },
    "ListOperationsResponse": {
      "id": "ListOperationsResponse",
      "type": "object",
      "description": "The response message for Operations.ListOperations.",
      "properties": {
        "unreachable": {
          "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.",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "operations": {
          "items": {
            "$ref": "Operation"
          },
          "type": "array",
          "description": "A list of operations that matches the specified filter in the request."
        },
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        }
      }
    },
    "EventType": {
      "description": "EventType includes fields.",
      "properties": {
        "idPath": {
          "description": "Output only. Id path denotes the path of id in webhook payload.",
          "readOnly": true,
          "type": "string"
        },
        "eventTypeId": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Event type id. Example: `ticket.created`."
        },
        "createTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Created time."
        },
        "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.",
          "readOnly": true,
          "type": "string"
        },
        "eventPayloadSchema": {
          "description": "Output only. Schema of webhook event payload.",
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Updated time."
        },
        "entityType": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Runtime entity type name. Will be null if entity type map is not available. Used for read before send feature."
        },
        "enrichedEventPayloadSchema": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Schema of the event payload after enriched. Will be null if read before send is not supported."
        }
      },
      "id": "EventType",
      "type": "object"
    },
    "StandardEntity": {
      "id": "StandardEntity",
      "type": "object",
      "description": "Standard entity",
      "properties": {
        "name": {
          "description": "Name of the standard entity.",
          "type": "string"
        }
      }
    },
    "EndUserAuthenticationConfigUserPassword": {
      "description": "Parameters to support Username and Password Authentication.",
      "properties": {
        "password": {
          "$ref": "EUASecret",
          "description": "Required. string value or secret version reference containing the password."
        },
        "username": {
          "description": "Username.",
          "type": "string"
        }
      },
      "id": "EndUserAuthenticationConfigUserPassword",
      "type": "object"
    },
    "SupportedRuntimeFeatures": {
      "description": "Supported runtime features of a connector version.",
      "properties": {
        "asyncOperations": {
          "description": "Specifies if the connector supports async long running operations.",
          "type": "boolean"
        },
        "entityApis": {
          "description": "Specifies if the connector supports entity apis like 'createEntity'.",
          "type": "boolean"
        },
        "sqlQuery": {
          "description": "Specifies if the connector supports 'ExecuteSqlQuery' operation.",
          "type": "boolean"
        },
        "actionApis": {
          "description": "Specifies if the connector supports action apis like 'executeAction'.",
          "type": "boolean"
        }
      },
      "id": "SupportedRuntimeFeatures",
      "type": "object"
    },
    "RuntimeConfig": {
      "id": "RuntimeConfig",
      "type": "object",
      "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.",
      "properties": {
        "locationId": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. location_id of the runtime location. E.g. \"us-west1\"."
        },
        "conndSubscription": {
          "description": "Output only. Pub/Sub subscription for connd to receive message. E.g. projects/{project-id}/subscriptions/{topic-id}",
          "readOnly": true,
          "type": "string"
        },
        "runtimeEndpoint": {
          "description": "Output only. The endpoint of the connectors runtime ingress.",
          "readOnly": true,
          "type": "string"
        },
        "serviceDirectory": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The name of the Service Directory service name."
        },
        "schemaGcsBucket": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. The Cloud Storage bucket that stores connector's schema reports."
        },
        "conndTopic": {
          "description": "Output only. Pub/Sub topic for connd to send message. E.g. projects/{project-id}/topics/{topic-id}",
          "readOnly": true,
          "type": "string"
        },
        "controlPlaneTopic": {
          "description": "Output only. Pub/Sub topic for control plne to send message. communication. E.g. projects/{project-id}/topics/{topic-id}",
          "readOnly": true,
          "type": "string"
        },
        "controlPlaneSubscription": {
          "description": "Output only. Pub/Sub subscription for control plane to receive message. E.g. projects/{project-id}/subscriptions/{topic-id}",
          "readOnly": true,
          "type": "string"
        },
        "state": {
          "enumDescriptions": [
            "STATE_UNSPECIFIED.",
            "INACTIVE.",
            "ACTIVATING.",
            "ACTIVE.",
            "CREATING.",
            "DELETING.",
            "UPDATING."
          ],
          "description": "Output only. The state of the location.",
          "enum": [
            "STATE_UNSPECIFIED",
            "INACTIVE",
            "ACTIVATING",
            "ACTIVE",
            "CREATING",
            "DELETING",
            "UPDATING"
          ],
          "readOnly": true,
          "type": "string",
          "enumDeprecated": [
            false,
            true,
            true,
            false,
            false,
            false,
            false
          ]
        },
        "name": {
          "description": "Output only. Name of the runtimeConfig resource. Format: projects/{project}/locations/{location}/runtimeConfig",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "Operation": {
      "id": "Operation",
      "type": "object",
      "description": "This resource represents a long-running operation that is the result of a network API call.",
      "properties": {
        "error": {
          "description": "The error result of the operation in case of failure or cancellation.",
          "$ref": "Status"
        },
        "name": {
          "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}`.",
          "type": "string"
        },
        "metadata": {
          "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.",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          }
        },
        "done": {
          "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.",
          "type": "boolean"
        },
        "response": {
          "type": "object",
          "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`.",
          "additionalProperties": {
            "type": "any",
            "description": "Properties of the object. Contains field @type with type URL."
          }
        }
      }
    },
    "ToolspecOverride": {
      "id": "ToolspecOverride",
      "type": "object",
      "description": "Toolspec overrides for a connection only holds the information that is to be displayed in the UI for admins.",
      "properties": {
        "createTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. Created time."
        },
        "updateTime": {
          "description": "Output only. Updated time.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "tools": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": {
              "type": "any",
              "description": "Properties of the object."
            }
          },
          "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."
        }
      }
    },
    "SslConfig": {
      "id": "SslConfig",
      "type": "object",
      "description": "SSL Configuration of a connection",
      "properties": {
        "type": {
          "type": "string",
          "enum": [
            "SSL_TYPE_UNSPECIFIED",
            "TLS",
            "MTLS"
          ],
          "description": "Optional. Controls the ssl type for the given connector version.",
          "enumDescriptions": [
            "No SSL configuration required.",
            "TLS Handshake",
            "mutual TLS (MTLS) Handshake"
          ]
        },
        "clientPrivateKey": {
          "$ref": "Secret",
          "description": "Optional. Client Private Key"
        },
        "clientPrivateKeyPass": {
          "description": "Optional. Secret containing the passphrase protecting the Client Private Key",
          "$ref": "Secret"
        },
        "clientCertificate": {
          "description": "Optional. Client Certificate",
          "$ref": "Secret"
        },
        "privateServerCertificate": {
          "description": "Optional. Private Server Certificate. Needs to be specified if trust model is `PRIVATE`.",
          "$ref": "Secret"
        },
        "clientCertType": {
          "description": "Optional. Type of Client Cert (PEM/JKS/.. etc.)",
          "enumDescriptions": [
            "Cert type unspecified.",
            "Privacy Enhanced Mail (PEM) Type"
          ],
          "type": "string",
          "enum": [
            "CERT_TYPE_UNSPECIFIED",
            "PEM"
          ]
        },
        "trustModel": {
          "enum": [
            "PUBLIC",
            "PRIVATE",
            "INSECURE"
          ],
          "type": "string",
          "enumDescriptions": [
            "Public Trust Model. Takes the Default Java trust store.",
            "Private Trust Model. Takes custom/private trust store.",
            "Insecure Trust Model. Accept all certificates."
          ],
          "description": "Optional. Trust Model of the SSL connection"
        },
        "useSsl": {
          "description": "Optional. Bool for enabling SSL",
          "type": "boolean"
        },
        "additionalVariables": {
          "items": {
            "$ref": "ConfigVariable"
          },
          "type": "array",
          "description": "Optional. Additional SSL related field values"
        },
        "serverCertType": {
          "enumDescriptions": [
            "Cert type unspecified.",
            "Privacy Enhanced Mail (PEM) Type"
          ],
          "description": "Optional. Type of Server Cert (PEM/JKS/.. etc.)",
          "enum": [
            "CERT_TYPE_UNSPECIFIED",
            "PEM"
          ],
          "type": "string"
        }
      }
    },
    "AuthConfigTemplate": {
      "description": "AuthConfigTemplate defines required field over an authentication type.",
      "properties": {
        "authKey": {
          "description": "Identifier key for auth config",
          "type": "string"
        },
        "displayName": {
          "description": "Display name for authentication template.",
          "type": "string"
        },
        "description": {
          "description": "Connector specific description for an authentication template.",
          "type": "string"
        },
        "isDefault": {
          "description": "Whether the auth config is the default one.",
          "type": "boolean"
        },
        "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"
          ],
          "type": "string",
          "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"
          ],
          "description": "The type of authentication configured."
        },
        "configVariableTemplates": {
          "description": "Config variables to describe an `AuthConfig` for a `Connection`.",
          "items": {
            "$ref": "ConfigVariableTemplate"
          },
          "type": "array"
        }
      },
      "id": "AuthConfigTemplate",
      "type": "object"
    },
    "Oauth2ClientCredentials": {
      "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": {
        "clientId": {
          "description": "Optional. The client identifier.",
          "type": "string"
        },
        "clientSecret": {
          "$ref": "Secret",
          "description": "Optional. Secret version reference containing the client secret."
        }
      },
      "id": "Oauth2ClientCredentials",
      "type": "object"
    },
    "EndUserAuthenticationNotifyEndpointDestination": {
      "id": "EndUserAuthenticationNotifyEndpointDestination",
      "type": "object",
      "description": "Message for NotifyEndpointDestination Destination to hit when the refresh token is expired.",
      "properties": {
        "serviceAccount": {
          "description": "Required. Service account needed for runtime plane to notify the backend.",
          "type": "string"
        },
        "type": {
          "enum": [
            "TYPE_UNSPECIFIED",
            "ENDPOINT"
          ],
          "type": "string",
          "enumDescriptions": [
            "Default state.",
            "Endpoint - Hit the value of endpoint when event is received"
          ],
          "description": "Required. type of the destination"
        },
        "endpoint": {
          "$ref": "EndUserAuthenticationNotifyEndpointDestinationEndPoint",
          "description": "Optional. OPTION 1: Hit an endpoint when the refresh token is expired."
        }
      }
    },
    "EUASecret": {
      "id": "EUASecret",
      "type": "object",
      "description": "EUASecret provides a reference to entries in Secret Manager.",
      "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"
        }
      }
    },
    "StandardAction": {
      "id": "StandardAction",
      "type": "object",
      "description": "Standard action",
      "properties": {
        "name": {
          "description": "Name of the standard action.",
          "type": "string"
        }
      }
    },
    "ListCustomConnectorsResponse": {
      "description": "Response message for Connectors.ListCustomConnectors.",
      "properties": {
        "customConnectors": {
          "description": "A list of customConnectors.",
          "type": "array",
          "items": {
            "$ref": "CustomConnector"
          }
        },
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      },
      "id": "ListCustomConnectorsResponse",
      "type": "object"
    },
    "ConfigVariable": {
      "description": "ConfigVariable represents a configuration variable present in a Connection. or AuthConfig.",
      "properties": {
        "intValue": {
          "type": "string",
          "format": "int64",
          "description": "Optional. Value is an integer"
        },
        "secretValue": {
          "$ref": "Secret",
          "description": "Optional. Value is a secret."
        },
        "boolValue": {
          "description": "Optional. Value is a bool.",
          "type": "boolean"
        },
        "encryptionKeyValue": {
          "$ref": "EncryptionKey",
          "description": "Optional. Value is a Encryption Key."
        },
        "key": {
          "description": "Optional. Key of the config variable.",
          "type": "string"
        },
        "stringValue": {
          "description": "Optional. Value is a string.",
          "type": "string"
        }
      },
      "id": "ConfigVariable",
      "type": "object"
    },
    "OperationMetadata": {
      "id": "OperationMetadata",
      "type": "object",
      "description": "Represents the metadata of the long-running operation.",
      "properties": {
        "createTime": {
          "readOnly": true,
          "type": "string",
          "format": "google-datetime",
          "description": "Output only. The time the operation was created."
        },
        "statusMessage": {
          "description": "Output only. Human-readable status of the operation, if any.",
          "readOnly": true,
          "type": "string"
        },
        "apiVersion": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. API version used to start the operation."
        },
        "target": {
          "readOnly": true,
          "type": "string",
          "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."
        },
        "verb": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Name of the verb executed by the operation."
        },
        "requestedCancellation": {
          "readOnly": true,
          "type": "boolean",
          "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`."
        }
      }
    },
    "FetchConnectionToolspecOverrideResponse": {
      "description": "Response message for FetchConnectionToolspecOverride API.",
      "properties": {
        "toolspecOverride": {
          "description": "Toolspec overrides for the connection.",
          "$ref": "ToolspecOverride"
        }
      },
      "id": "FetchConnectionToolspecOverrideResponse",
      "type": "object"
    },
    "FieldComparison": {
      "id": "FieldComparison",
      "type": "object",
      "description": "Field that needs to be compared.",
      "properties": {
        "stringValue": {
          "description": "String value",
          "type": "string"
        },
        "comparator": {
          "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"
          ],
          "type": "string"
        },
        "key": {
          "description": "Optional. Key of the field.",
          "type": "string"
        },
        "boolValue": {
          "description": "Boolean value",
          "type": "boolean"
        },
        "intValue": {
          "type": "string",
          "format": "int64",
          "description": "Integer value"
        }
      }
    },
    "ResourceRequests": {
      "id": "ResourceRequests",
      "type": "object",
      "description": "Resource requests defined for connection pods of a given connector type.",
      "properties": {
        "cpu": {
          "description": "Output only. CPU request.",
          "readOnly": true,
          "type": "string"
        },
        "memory": {
          "readOnly": true,
          "type": "string",
          "description": "Output only. Memory request."
        }
      }
    },
    "ListEndUserAuthenticationsResponse": {
      "id": "ListEndUserAuthenticationsResponse",
      "type": "object",
      "description": "Response message for ConnectorsService.ListEndUserAuthentications",
      "properties": {
        "unreachable": {
          "description": "Locations that could not be reached.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "endUserAuthentications": {
          "description": "Subscriptions.",
          "items": {
            "$ref": "EndUserAuthentication"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      }
    },
    "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"
    },
    "MaintenanceSettings": {
      "description": "Maintenance settings associated with instance. Allows service producers and end users to assign settings that controls maintenance on this instance.",
      "properties": {
        "exclude": {
          "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.",
          "type": "boolean"
        },
        "maintenancePolicies": {
          "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 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"
          }
        },
        "isRollback": {
          "description": "Optional. If the update call is triggered from rollback, set the value as true.",
          "type": "boolean"
        }
      },
      "id": "MaintenanceSettings",
      "type": "object"
    },
    "NetworkEgressModeOverride": {
      "description": "NetworkEgressModeOverride provides the network egress mode override for a connector.",
      "properties": {
        "isEventingOverrideEnabled": {
          "description": "boolean should be set to true to make sure only eventing enabled connections are migrated to direct vpc egress.",
          "type": "boolean"
        },
        "networkEgressMode": {
          "enumDescriptions": [
            "Network Egress mode is not specified.",
            "Default model VPC Access Connector.",
            "Direct VPC Egress."
          ],
          "description": "Determines the VPC Egress mode for the connector.",
          "enum": [
            "NETWORK_EGRESS_MODE_UNSPECIFIED",
            "SERVERLESS_VPC_ACCESS_CONNECTOR",
            "DIRECT_VPC_EGRESS"
          ],
          "type": "string"
        },
        "isJobsOverrideEnabled": {
          "description": "boolean should be set to true to make sure only async operations enabled connections are migrated to direct vpc egress.",
          "type": "boolean"
        }
      },
      "id": "NetworkEgressModeOverride",
      "type": "object"
    },
    "ListEventTypesResponse": {
      "id": "ListEventTypesResponse",
      "type": "object",
      "description": "Response message for Connectors.ListEventTypes.",
      "properties": {
        "eventTypes": {
          "description": "A list of connector versions.",
          "items": {
            "$ref": "EventType"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Next page token.",
          "type": "string"
        }
      }
    },
    "EndUserAuthenticationConfigSshPublicKey": {
      "id": "EndUserAuthenticationConfigSshPublicKey",
      "type": "object",
      "description": "Parameters to support Ssh public key Authentication.",
      "properties": {
        "sshClientCertPass": {
          "description": "Required. Password (passphrase) for ssh client certificate if it has one.",
          "$ref": "EUASecret"
        },
        "certType": {
          "description": "Format of SSH Client cert.",
          "type": "string"
        },
        "username": {
          "description": "The user account used to authenticate.",
          "type": "string"
        },
        "sshClientCert": {
          "description": "Required. SSH Client Cert. It should contain both public and private key.",
          "$ref": "EUASecret"
        }
      }
    },
    "AuthProperty": {
      "id": "AuthProperty",
      "type": "object",
      "description": "AuthProperty defines a property of an authentication type.",
      "properties": {
        "type": {
          "description": "Type of the property.",
          "type": "string"
        },
        "description": {
          "description": "Description of the property.",
          "type": "string"
        }
      }
    },
    "ExtractionRule": {
      "description": "Extraction Rule.",
      "properties": {
        "extractionRegex": {
          "description": "Regex used to extract backend details from source. If empty, whole source value will be used.",
          "type": "string"
        },
        "formatString": {
          "description": "Format string used to format the extracted backend details. If empty, extracted backend details will be returned as it is.",
          "type": "string"
        },
        "source": {
          "description": "Source on which the rule is applied.",
          "$ref": "Source"
        }
      },
      "id": "ExtractionRule",
      "type": "object"
    },
    "ConnectionStatus": {
      "description": "ConnectionStatus indicates the state of the connection.",
      "properties": {
        "description": {
          "description": "Description.",
          "type": "string"
        },
        "status": {
          "description": "Status provides detailed information for the state.",
          "type": "string"
        },
        "state": {
          "enum": [
            "STATE_UNSPECIFIED",
            "CREATING",
            "ACTIVE",
            "INACTIVE",
            "DELETING",
            "UPDATING",
            "ERROR",
            "AUTHORIZATION_REQUIRED"
          ],
          "type": "string",
          "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."
        }
      },
      "id": "ConnectionStatus",
      "type": "object"
    },
    "FetchAuthSchemaResponse": {
      "description": "Response message for Connectors.GetAuthSchema.",
      "properties": {
        "authSchemas": {
          "type": "array",
          "items": {
            "$ref": "AuthSchema"
          },
          "description": "List of AuthSchemas."
        },
        "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."
        }
      },
      "id": "FetchAuthSchemaResponse",
      "type": "object"
    }
  },
  "description": "Enables users to create and manage connections to Google Cloud services and third-party business applications using the Connectors interface.",
  "rootUrl": "https://connectors.googleapis.com/",
  "resources": {
    "projects": {
      "resources": {
        "locations": {
          "methods": {
            "getRuntimeConfig": {
              "id": "connectors.projects.locations.getRuntimeConfig",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/runtimeConfig",
              "parameters": {
                "name": {
                  "location": "path",
                  "required": true,
                  "description": "Required. Resource name of the form: `projects/*/locations/*/runtimeConfig`",
                  "pattern": "^projects/[^/]+/locations/[^/]+/runtimeConfig$",
                  "type": "string"
                }
              },
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "GET",
              "response": {
                "$ref": "RuntimeConfig"
              },
              "description": "Gets the runtimeConfig of a location. RuntimeConfig is a singleton resource for each location."
            },
            "getRegionalSettings": {
              "response": {
                "$ref": "RegionalSettings"
              },
              "description": "GetRegionalSettings gets settings of a region. RegionalSettings is a singleton resource.",
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "GET",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/regionalSettings",
              "parameters": {
                "name": {
                  "location": "path",
                  "required": true,
                  "description": "Required. The resource name of the Regional Settings.",
                  "pattern": "^projects/[^/]+/locations/[^/]+/regionalSettings$",
                  "type": "string"
                }
              },
              "id": "connectors.projects.locations.getRegionalSettings",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}"
            },
            "list": {
              "path": "v1/{+name}/locations",
              "id": "connectors.projects.locations.list",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "parameters": {
                "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).",
                  "type": "string",
                  "location": "query"
                },
                "pageToken": {
                  "type": "string",
                  "location": "query",
                  "description": "A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page."
                },
                "extraLocationTypes": {
                  "description": "Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage.",
                  "location": "query",
                  "repeated": true,
                  "type": "string"
                },
                "name": {
                  "required": true,
                  "location": "path",
                  "type": "string",
                  "description": "The resource that owns the locations collection, if applicable.",
                  "pattern": "^projects/[^/]+$"
                },
                "pageSize": {
                  "location": "query",
                  "type": "integer",
                  "format": "int32",
                  "description": "The maximum number of results to return. If not set, the service selects a default."
                }
              },
              "flatPath": "v1/projects/{projectsId}/locations",
              "httpMethod": "GET",
              "parameterOrder": [
                "name"
              ],
              "description": "Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project.",
              "response": {
                "$ref": "ListLocationsResponse"
              }
            },
            "updateRegionalSettings": {
              "request": {
                "$ref": "RegionalSettings"
              },
              "id": "connectors.projects.locations.updateRegionalSettings",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/regionalSettings",
              "parameters": {
                "name": {
                  "type": "string",
                  "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/regionalSettings",
                  "pattern": "^projects/[^/]+/locations/[^/]+/regionalSettings$",
                  "location": "path",
                  "required": true
                },
                "updateMask": {
                  "format": "google-fieldmask",
                  "description": "Required. The list of fields to update.",
                  "location": "query",
                  "type": "string"
                }
              },
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "PATCH",
              "response": {
                "$ref": "Operation"
              },
              "description": "Update the settings of a region."
            },
            "get": {
              "id": "connectors.projects.locations.get",
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform"
              ],
              "path": "v1/{+name}",
              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}",
              "parameters": {
                "name": {
                  "type": "string",
                  "description": "Resource name for the location.",
                  "pattern": "^projects/[^/]+/locations/[^/]+$",
                  "location": "path",
                  "required": true
                }
              },
              "parameterOrder": [
                "name"
              ],
              "httpMethod": "GET",
              "response": {
                "$ref": "Location"
              },
              "description": "Gets information about a location."
            }
          },
          "resources": {
            "endpointAttachments": {
              "methods": {
                "list": {
                  "id": "connectors.projects.locations.endpointAttachments.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+parent}/endpointAttachments",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments",
                  "parameters": {
                    "view": {
                      "enum": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED",
                        "ENDPOINT_ATTACHMENT_VIEW_BASIC",
                        "ENDPOINT_ATTACHMENT_VIEW_FULL"
                      ],
                      "type": "string",
                      "enumDescriptions": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED.",
                        "Do not include status.",
                        "Includes Status."
                      ],
                      "description": "Optional. Specifies which fields of the EndpointAttachment are returned in the response. Defaults to `ENDPOINT_ATTACHMENT_VIEW_BASIC` view.",
                      "location": "query"
                    },
                    "parent": {
                      "description": "Required. Parent resource od the EndpointAttachment, of the form: `projects/*/locations/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "required": true,
                      "location": "path"
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Page token."
                    },
                    "filter": {
                      "description": "Filter.",
                      "type": "string",
                      "location": "query"
                    },
                    "orderBy": {
                      "type": "string",
                      "location": "query",
                      "description": "Order by parameters."
                    },
                    "pageSize": {
                      "type": "integer",
                      "location": "query",
                      "description": "Page size.",
                      "format": "int32"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "ListEndpointAttachmentsResponse"
                  },
                  "description": "List EndpointAttachments in a given project"
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "EndpointAttachment"
                  },
                  "description": "Gets details of a single EndpointAttachment.",
                  "id": "connectors.projects.locations.endpointAttachments.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}",
                  "parameters": {
                    "name": {
                      "description": "Required. Resource name of the form: `projects/*/locations/*/endpointAttachments/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "type": "string",
                      "required": true,
                      "location": "path"
                    },
                    "view": {
                      "location": "query",
                      "enumDescriptions": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED.",
                        "Do not include status.",
                        "Includes Status."
                      ],
                      "description": "Optional. Specifies which fields of the EndpointAttachment are returned in the response. Defaults to `ENDPOINT_ATTACHMENT_VIEW_BASIC` view.",
                      "enum": [
                        "ENDPOINT_ATTACHMENT_VIEW_UNSPECIFIED",
                        "ENDPOINT_ATTACHMENT_VIEW_BASIC",
                        "ENDPOINT_ATTACHMENT_VIEW_FULL"
                      ],
                      "type": "string"
                    }
                  }
                },
                "create": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments",
                  "parameters": {
                    "parent": {
                      "location": "path",
                      "required": true,
                      "description": "Required. Parent resource of the EndpointAttachment, of the form: `projects/*/locations/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string"
                    },
                    "endpointAttachmentId": {
                      "type": "string",
                      "location": "query",
                      "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])?$`."
                    }
                  },
                  "request": {
                    "$ref": "EndpointAttachment"
                  },
                  "id": "connectors.projects.locations.endpointAttachments.create",
                  "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.",
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "POST"
                },
                "patch": {
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Updates the parameters of a single EndpointAttachment.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "PATCH",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}",
                  "parameters": {
                    "updateMask": {
                      "location": "query",
                      "type": "string",
                      "format": "google-fieldmask",
                      "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`"
                    },
                    "name": {
                      "description": "Output only. Resource name of the Endpoint Attachment. Format: projects/{project}/locations/{location}/endpointAttachments/{endpoint_attachment}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "required": true
                    }
                  },
                  "id": "connectors.projects.locations.endpointAttachments.patch",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "EndpointAttachment"
                  },
                  "path": "v1/{+name}"
                },
                "delete": {
                  "description": "Deletes a single EndpointAttachment.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "DELETE",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/endpointAttachments/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/endpointAttachments/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/endpointAttachments/{endpointAttachmentsId}",
                  "path": "v1/{+name}",
                  "id": "connectors.projects.locations.endpointAttachments.delete",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                }
              }
            },
            "global": {
              "methods": {
                "getSettings": {
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "description": "Required. The resource name of the Settings.",
                      "pattern": "^projects/[^/]+/locations/global/settings$",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/global/settings",
                  "path": "v1/{+name}",
                  "id": "connectors.projects.locations.global.getSettings",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "GetGlobalSettings gets settings of a project. GlobalSettings is a singleton resource.",
                  "response": {
                    "$ref": "Settings"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "name"
                  ]
                },
                "updateSettings": {
                  "request": {
                    "$ref": "Settings"
                  },
                  "id": "connectors.projects.locations.global.updateSettings",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "flatPath": "v1/projects/{projectsId}/locations/global/settings",
                  "parameters": {
                    "name": {
                      "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/global/settings}",
                      "pattern": "^projects/[^/]+/locations/global/settings$",
                      "type": "string",
                      "location": "path",
                      "required": true
                    },
                    "updateMask": {
                      "description": "Required. The list of fields to update.",
                      "format": "google-fieldmask",
                      "type": "string",
                      "location": "query"
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "PATCH",
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Update the global settings of a project."
                }
              },
              "resources": {
                "managedZones": {
                  "methods": {
                    "get": {
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.global.managedZones.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/global/managedZones/*`",
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$",
                          "location": "path",
                          "required": true
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Gets details of a single ManagedZone.",
                      "response": {
                        "$ref": "ManagedZone"
                      }
                    },
                    "create": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "Creates a new ManagedZone in a given project and location.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+parent}/managedZones",
                      "request": {
                        "$ref": "ManagedZone"
                      },
                      "id": "connectors.projects.locations.global.managedZones.create",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "parent": {
                          "type": "string",
                          "description": "Required. Parent resource of the ManagedZone, of the form: `projects/*/locations/global`",
                          "pattern": "^projects/[^/]+/locations/global$",
                          "location": "path",
                          "required": true
                        },
                        "managedZoneId": {
                          "location": "query",
                          "type": "string",
                          "description": "Required. Identifier to assign to the ManagedZone. Must be unique within scope of the parent resource."
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones"
                    },
                    "list": {
                      "description": "List ManagedZones in a given project",
                      "response": {
                        "$ref": "ListManagedZonesResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "pageSize": {
                          "description": "Page size.",
                          "format": "int32",
                          "type": "integer",
                          "location": "query"
                        },
                        "returnPartialSuccess": {
                          "type": "boolean",
                          "location": "query",
                          "description": "Optional. If true, allow partial responses for multi-regional Aggregated List requests."
                        },
                        "parent": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Parent resource of the Managed Zone, of the form: `projects/*/locations/global`",
                          "pattern": "^projects/[^/]+/locations/global$"
                        },
                        "pageToken": {
                          "type": "string",
                          "location": "query",
                          "description": "Page token."
                        },
                        "filter": {
                          "type": "string",
                          "location": "query",
                          "description": "Filter."
                        },
                        "orderBy": {
                          "description": "Order by parameters.",
                          "type": "string",
                          "location": "query"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones",
                      "path": "v1/{+parent}/managedZones",
                      "id": "connectors.projects.locations.global.managedZones.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "patch": {
                      "description": "Updates the parameters of a single ManagedZone.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "PATCH",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "updateMask": {
                          "format": "google-fieldmask",
                          "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`",
                          "location": "query",
                          "type": "string"
                        },
                        "name": {
                          "type": "string",
                          "description": "Output only. Resource name of the Managed Zone. Format: projects/{project}/locations/global/managedZones/{managed_zone}",
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$",
                          "location": "path",
                          "required": true
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}",
                      "path": "v1/{+name}",
                      "request": {
                        "$ref": "ManagedZone"
                      },
                      "id": "connectors.projects.locations.global.managedZones.patch",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Deletes a single ManagedZone.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.global.managedZones.delete",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/global/managedZones/*`",
                          "pattern": "^projects/[^/]+/locations/global/managedZones/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/managedZones/{managedZonesId}"
                    }
                  }
                },
                "customConnectors": {
                  "methods": {
                    "delete": {
                      "id": "connectors.projects.locations.global.customConnectors.delete",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "parameters": {
                        "name": {
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{connector}`",
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "type": "string",
                          "required": true,
                          "location": "path"
                        },
                        "force": {
                          "location": "query",
                          "type": "boolean",
                          "description": "Optional. If set to true, any customConnectorVersion which is a child resource will also be deleted. https://aip.dev/135#cascading-delete"
                        }
                      },
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "DELETE",
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Deletes a single CustomConnector."
                    },
                    "patch": {
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "parameters": {
                        "name": {
                          "description": "Identifier. Resource name of the CustomConnector. Format: projects/{project}/locations/{location}/customConnectors/{connector}",
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "type": "string",
                          "location": "path",
                          "required": true
                        },
                        "updateMask": {
                          "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.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "request": {
                        "$ref": "CustomConnector"
                      },
                      "id": "connectors.projects.locations.global.customConnectors.patch",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Updates the parameters of a CustomConnector.",
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "PATCH"
                    },
                    "list": {
                      "response": {
                        "$ref": "ListCustomConnectorsResponse"
                      },
                      "description": "List CustomConnectorVersions in a given project",
                      "parameterOrder": [
                        "parent"
                      ],
                      "httpMethod": "GET",
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors",
                      "parameters": {
                        "parent": {
                          "required": true,
                          "location": "path",
                          "description": "Required. Parent resource of the custom connectors, of the form: `projects/*/locations/*` Only global location is supported for CustomConnector resource.",
                          "pattern": "^projects/[^/]+/locations/global$",
                          "type": "string"
                        },
                        "pageSize": {
                          "location": "query",
                          "type": "integer",
                          "format": "int32",
                          "description": "Page size."
                        },
                        "filter": {
                          "description": "Filter string.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageToken": {
                          "description": "Page token.",
                          "type": "string",
                          "location": "query"
                        }
                      },
                      "id": "connectors.projects.locations.global.customConnectors.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+parent}/customConnectors"
                    },
                    "get": {
                      "description": "Gets details of a single CustomConnector.",
                      "response": {
                        "$ref": "CustomConnector"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "location": "path",
                          "required": true,
                          "description": "Required. Resource name of the form: `projects/*/locations/*/customConnectors/*`",
                          "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                          "type": "string"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}",
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.global.customConnectors.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "create": {
                      "path": "v1/{+parent}/customConnectors",
                      "id": "connectors.projects.locations.global.customConnectors.create",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "CustomConnector"
                      },
                      "parameters": {
                        "customConnectorId": {
                          "location": "query",
                          "type": "string",
                          "description": "Required. Identifier to assign to the CreateCustomConnector. Must be unique within scope of the parent resource."
                        },
                        "parent": {
                          "description": "Required. Parent resource of the CreateCustomConnector, of the form: `projects/{project}/locations/*`",
                          "pattern": "^projects/[^/]+/locations/global$",
                          "type": "string",
                          "location": "path",
                          "required": true
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "Creates a new CustomConnector in a given project and location.",
                      "response": {
                        "$ref": "Operation"
                      }
                    }
                  },
                  "resources": {
                    "customConnectorVersions": {
                      "methods": {
                        "get": {
                          "response": {
                            "$ref": "CustomConnectorVersion"
                          },
                          "description": "Gets details of a single CustomConnectorVersion.",
                          "parameterOrder": [
                            "name"
                          ],
                          "httpMethod": "GET",
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}",
                          "parameters": {
                            "name": {
                              "type": "string",
                              "description": "Required. Resource name of the form: `projects/*/locations/{location}/customConnectors/*/customConnectorVersions/*`",
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                              "location": "path",
                              "required": true
                            }
                          },
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.get",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "path": "v1/{+name}"
                        },
                        "create": {
                          "request": {
                            "$ref": "CustomConnectorVersion"
                          },
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.create",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "path": "v1/{+parent}/customConnectorVersions",
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions",
                          "parameters": {
                            "customConnectorVersionId": {
                              "type": "string",
                              "location": "query",
                              "description": "Required. Identifier to assign to the CreateCustomConnectorVersion. Must be unique within scope of the parent resource."
                            },
                            "parent": {
                              "location": "path",
                              "required": true,
                              "description": "Required. Parent resource of the CreateCustomConnector, of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}`",
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                              "type": "string"
                            }
                          },
                          "parameterOrder": [
                            "parent"
                          ],
                          "httpMethod": "POST",
                          "response": {
                            "$ref": "Operation"
                          },
                          "description": "Creates a new CustomConnectorVersion in a given project and location."
                        },
                        "list": {
                          "httpMethod": "GET",
                          "parameterOrder": [
                            "parent"
                          ],
                          "description": "List CustomConnectorVersions in a given project",
                          "response": {
                            "$ref": "ListCustomConnectorVersionsResponse"
                          },
                          "path": "v1/{+parent}/customConnectorVersions",
                          "id": "connectors.projects.locations.global.customConnectors.customConnectorVersions.list",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "parameters": {
                            "pageToken": {
                              "location": "query",
                              "type": "string",
                              "description": "Page token."
                            },
                            "parent": {
                              "required": true,
                              "location": "path",
                              "description": "Required. Parent resource of the connectors, of the form: `projects/*/locations/{location}/customConnectors/*/customConnectorVersions/*`",
                              "pattern": "^projects/[^/]+/locations/global/customConnectors/[^/]+$",
                              "type": "string"
                            },
                            "pageSize": {
                              "format": "int32",
                              "description": "Page size.",
                              "location": "query",
                              "type": "integer"
                            }
                          },
                          "flatPath": "v1/projects/{projectsId}/locations/global/customConnectors/{customConnectorsId}/customConnectorVersions"
                        }
                      }
                    }
                  }
                }
              }
            },
            "customConnectors": {
              "methods": {
                "validateCustomConnectorSpec": {
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "POST",
                  "response": {
                    "$ref": "ValidateCustomConnectorSpecResponse"
                  },
                  "description": "Validates a Custom Connector Spec.",
                  "id": "connectors.projects.locations.customConnectors.validateCustomConnectorSpec",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "ValidateCustomConnectorSpecRequest"
                  },
                  "path": "v1/{+parent}/customConnectors:validateCustomConnectorSpec",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors:validateCustomConnectorSpec",
                  "parameters": {
                    "parent": {
                      "location": "path",
                      "required": true,
                      "description": "Required. Location at which the custom connector is being created.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string"
                    }
                  }
                }
              },
              "resources": {
                "customConnectorVersions": {
                  "methods": {
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Deletes a single CustomConnectorVersion.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.delete",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}"
                    },
                    "publish": {
                      "description": "Publish request for the CustomConnectorVersion. Once approved, the CustomConnectorVersion will be published as PartnerConnector.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "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/[^/]+$",
                          "type": "string"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:publish",
                      "path": "v1/{+name}:publish",
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.publish",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "PublishCustomConnectorVersionRequest"
                      }
                    },
                    "withdraw": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Withdraw the publish request for the CustomConnectorVersion. This can only be used before the CustomConnectorVersion is published.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}:withdraw",
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.withdraw",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "WithdrawCustomConnectorVersionRequest"
                      },
                      "parameters": {
                        "name": {
                          "location": "path",
                          "required": true,
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$",
                          "type": "string"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:withdraw"
                    },
                    "deprecate": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Deprecates a single CustomConnectorVersion.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}:deprecate",
                      "request": {
                        "$ref": "DeprecateCustomConnectorVersionRequest"
                      },
                      "id": "connectors.projects.locations.customConnectors.customConnectorVersions.deprecate",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/{project}/locations/{location}/customConnectors/{custom_connector}/customConnectorVersions/{custom_connector_version}`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/customConnectors/[^/]+/customConnectorVersions/[^/]+$"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/customConnectors/{customConnectorsId}/customConnectorVersions/{customConnectorVersionsId}:deprecate"
                    }
                  }
                }
              }
            },
            "connections": {
              "methods": {
                "delete": {
                  "id": "connectors.projects.locations.connections.delete",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}",
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "required": true
                    },
                    "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"
                    }
                  },
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "DELETE",
                  "response": {
                    "$ref": "Operation"
                  },
                  "description": "Deletes a single Connection."
                },
                "patch": {
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "Output only. Resource name of the Connection. Format: projects/{project}/locations/{location}/connections/{connection}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    },
                    "updateMask": {
                      "type": "string",
                      "location": "query",
                      "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`",
                      "format": "google-fieldmask"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}",
                  "path": "v1/{+name}",
                  "id": "connectors.projects.locations.connections.patch",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "Connection"
                  },
                  "description": "Updates the parameters of a single Connection.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "httpMethod": "PATCH",
                  "parameterOrder": [
                    "name"
                  ]
                },
                "modifyToolspecOverride": {
                  "description": "Updates Toolspec Override for a connection with the admin provided descriptions.",
                  "response": {
                    "$ref": "ModifyConnectionToolspecOverrideResponse"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:modifyToolspecOverride",
                  "path": "v1/{+name}:modifyToolspecOverride",
                  "request": {
                    "$ref": "ModifyConnectionToolspecOverrideRequest"
                  },
                  "id": "connectors.projects.locations.connections.modifyToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "getIamPolicy": {
                  "response": {
                    "$ref": "Policy"
                  },
                  "description": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.",
                  "parameterOrder": [
                    "resource"
                  ],
                  "httpMethod": "GET",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:getIamPolicy",
                  "parameters": {
                    "options.requestedPolicyVersion": {
                      "type": "integer",
                      "location": "query",
                      "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": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    }
                  },
                  "id": "connectors.projects.locations.connections.getIamPolicy",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+resource}:getIamPolicy"
                },
                "create": {
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "parent"
                  ],
                  "description": "Creates a new Connection in a given project and location.",
                  "response": {
                    "$ref": "Operation"
                  },
                  "path": "v1/{+parent}/connections",
                  "id": "connectors.projects.locations.connections.create",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "Connection"
                  },
                  "parameters": {
                    "parent": {
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string",
                      "required": true,
                      "location": "path"
                    },
                    "connectionId": {
                      "location": "query",
                      "type": "string",
                      "description": "Required. Identifier to assign to the Connection. Must be unique within scope of the parent resource."
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections"
                },
                "testIamPermissions": {
                  "path": "v1/{+resource}:testIamPermissions",
                  "request": {
                    "$ref": "TestIamPermissionsRequest"
                  },
                  "id": "connectors.projects.locations.connections.testIamPermissions",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "type": "string",
                      "location": "path",
                      "required": true
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:testIamPermissions",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "resource"
                  ],
                  "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"
                  }
                },
                "list": {
                  "id": "connectors.projects.locations.connections.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+parent}/connections",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections",
                  "parameters": {
                    "pageSize": {
                      "type": "integer",
                      "location": "query",
                      "description": "Page size.",
                      "format": "int32"
                    },
                    "pageToken": {
                      "description": "Page token.",
                      "type": "string",
                      "location": "query"
                    },
                    "filter": {
                      "type": "string",
                      "location": "query",
                      "description": "Filter."
                    },
                    "orderBy": {
                      "description": "Order by parameters.",
                      "type": "string",
                      "location": "query"
                    },
                    "view": {
                      "location": "query",
                      "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."
                      ]
                    },
                    "parent": {
                      "location": "path",
                      "required": true,
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string"
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "ListConnectionsResponse"
                  },
                  "description": "Lists Connections in a given project and location."
                },
                "generateToolspecOverride": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:generateToolspecOverride",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    }
                  },
                  "request": {
                    "$ref": "GenerateConnectionToolspecOverrideRequest"
                  },
                  "id": "connectors.projects.locations.connections.generateToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}:generateToolspecOverride",
                  "response": {
                    "$ref": "GenerateConnectionToolspecOverrideResponse"
                  },
                  "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.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "POST"
                },
                "listenEvent": {
                  "path": "v1/{+resourcePath}:listenEvent",
                  "id": "connectors.projects.locations.connections.listenEvent",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "ListenEventRequest"
                  },
                  "parameters": {
                    "resourcePath": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "Required. Resource path for request.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:listenEvent",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "resourcePath"
                  ],
                  "description": "ListenEvent listens to the event.",
                  "response": {
                    "$ref": "ListenEventResponse"
                  }
                },
                "search": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections:search",
                  "parameters": {
                    "query": {
                      "description": "Required. The query against which the search needs to be done.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "description": "Required. Parent resource of the Connection, of the form: `projects/*/locations/*/connections`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections$",
                      "type": "string",
                      "required": true,
                      "location": "path"
                    },
                    "pageSize": {
                      "format": "int32",
                      "description": "Optional. The number of top matching connectors to return",
                      "location": "query",
                      "type": "integer"
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Optional. page_token"
                    }
                  },
                  "id": "connectors.projects.locations.connections.search",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}:search",
                  "response": {
                    "$ref": "SearchConnectionsResponse"
                  },
                  "description": "Returns Top matching Connections for a given query.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET"
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "Connection"
                  },
                  "description": "Gets details of a single Connection.",
                  "id": "connectors.projects.locations.connections.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "type": "string"
                    },
                    "view": {
                      "enum": [
                        "CONNECTION_VIEW_UNSPECIFIED",
                        "BASIC",
                        "FULL"
                      ],
                      "type": "string",
                      "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.",
                      "location": "query"
                    }
                  }
                },
                "getConnectionSchemaMetadata": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "Required. Connection name Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$"
                    }
                  },
                  "id": "connectors.projects.locations.connections.getConnectionSchemaMetadata",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "ConnectionSchemaMetadata"
                  },
                  "description": "Gets schema metadata of a connection. SchemaMetadata is a singleton resource for each connection.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET"
                },
                "removeToolspecOverride": {
                  "path": "v1/{+name}:removeToolspecOverride",
                  "id": "connectors.projects.locations.connections.removeToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "RemoveConnectionToolspecOverrideRequest"
                  },
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:removeToolspecOverride",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "Deletes all Toolspec Override for a connection.",
                  "response": {
                    "$ref": "Empty"
                  }
                },
                "fetchToolspecOverride": {
                  "parameters": {
                    "name": {
                      "required": true,
                      "location": "path",
                      "type": "string",
                      "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:fetchToolspecOverride",
                  "path": "v1/{+name}:fetchToolspecOverride",
                  "request": {
                    "$ref": "FetchConnectionToolspecOverrideRequest"
                  },
                  "id": "connectors.projects.locations.connections.fetchToolspecOverride",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "description": "Fetches Toolspec Override for a connection for the given list of tools. Returns results from the db if the tool is already present.",
                  "response": {
                    "$ref": "FetchConnectionToolspecOverrideResponse"
                  },
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ]
                },
                "repairEventing": {
                  "path": "v1/{+name}:repairEventing",
                  "request": {
                    "$ref": "RepairEventingRequest"
                  },
                  "id": "connectors.projects.locations.connections.repairEventing",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*`",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:repairEventing",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "description": "RepaiEventing tries to repair eventing related event subscriptions.",
                  "response": {
                    "$ref": "Operation"
                  }
                },
                "setIamPolicy": {
                  "request": {
                    "$ref": "SetIamPolicyRequest"
                  },
                  "id": "connectors.projects.locations.connections.setIamPolicy",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+resource}:setIamPolicy",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}:setIamPolicy",
                  "parameters": {
                    "resource": {
                      "type": "string",
                      "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "parameterOrder": [
                    "resource"
                  ],
                  "httpMethod": "POST",
                  "response": {
                    "$ref": "Policy"
                  },
                  "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors."
                }
              },
              "resources": {
                "eventSubscriptions": {
                  "methods": {
                    "patch": {
                      "response": {
                        "$ref": "Operation"
                      },
                      "description": "Updates the parameters of a single EventSubscription.",
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "PATCH",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "parameters": {
                        "updateMask": {
                          "format": "google-fieldmask",
                          "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`",
                          "location": "query",
                          "type": "string"
                        },
                        "name": {
                          "required": true,
                          "location": "path",
                          "description": "Required. Identifier. Resource name of the EventSubscription. Format: projects/{project}/locations/{location}/connections/{connection}/eventSubscriptions/{event_subscription}",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "type": "string"
                        }
                      },
                      "request": {
                        "$ref": "EventSubscription"
                      },
                      "id": "connectors.projects.locations.connections.eventSubscriptions.patch",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}"
                    },
                    "delete": {
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventsubscriptions/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.delete",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "description": "Deletes a single EventSubscription.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "DELETE",
                      "parameterOrder": [
                        "name"
                      ]
                    },
                    "retry": {
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventSubscriptions/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}:retry",
                      "path": "v1/{+name}:retry",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.retry",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "RetryEventSubscriptionRequest"
                      },
                      "description": "RetryEventSubscription retries the registration of Subscription.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "name"
                      ]
                    },
                    "get": {
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions/{eventSubscriptionsId}",
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/eventSubscriptions/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/eventSubscriptions/[^/]+$"
                        }
                      },
                      "id": "connectors.projects.locations.connections.eventSubscriptions.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "EventSubscription"
                      },
                      "description": "Gets details of a single EventSubscription.",
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "GET"
                    },
                    "create": {
                      "path": "v1/{+parent}/eventSubscriptions",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.create",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "EventSubscription"
                      },
                      "parameters": {
                        "parent": {
                          "location": "path",
                          "required": true,
                          "type": "string",
                          "description": "Required. Parent resource of the EventSubscription, of the form: `projects/*/locations/*/connections/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$"
                        },
                        "eventSubscriptionId": {
                          "type": "string",
                          "location": "query",
                          "description": "Required. Identifier to assign to the Event Subscription. Must be unique within scope of the parent resource."
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "Creates a new EventSubscription in a given project,location and connection.",
                      "response": {
                        "$ref": "Operation"
                      }
                    },
                    "list": {
                      "path": "v1/{+parent}/eventSubscriptions",
                      "id": "connectors.projects.locations.connections.eventSubscriptions.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "filter": {
                          "type": "string",
                          "location": "query",
                          "description": "Filter."
                        },
                        "orderBy": {
                          "type": "string",
                          "location": "query",
                          "description": "Order by parameters."
                        },
                        "pageToken": {
                          "location": "query",
                          "type": "string",
                          "description": "Page token."
                        },
                        "parent": {
                          "required": true,
                          "location": "path",
                          "description": "Required. Parent resource of the EventSubscription, of the form: `projects/*/locations/*/connections/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string"
                        },
                        "pageSize": {
                          "description": "Page size.",
                          "format": "int32",
                          "type": "integer",
                          "location": "query"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/eventSubscriptions",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "List EventSubscriptions in a given project,location and connection.",
                      "response": {
                        "$ref": "ListEventSubscriptionsResponse"
                      }
                    }
                  }
                },
                "endUserAuthentications": {
                  "methods": {
                    "get": {
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}",
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/EndUserAuthentications/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$",
                          "required": true,
                          "location": "path"
                        },
                        "view": {
                          "location": "query",
                          "description": "Optional. View of the EndUserAuthentication to return.",
                          "enumDescriptions": [
                            "END_USER_AUTHENTICATION_UNSPECIFIED.",
                            "Do not include secret fields.",
                            "Include secret fields."
                          ],
                          "type": "string",
                          "enum": [
                            "END_USER_AUTHENTICATION_VIEW_UNSPECIFIED",
                            "BASIC_VIEW",
                            "FULL_VIEW"
                          ]
                        }
                      },
                      "id": "connectors.projects.locations.connections.endUserAuthentications.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "response": {
                        "$ref": "EndUserAuthentication"
                      },
                      "description": "Gets details of a single EndUserAuthentication.",
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "GET"
                    },
                    "create": {
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "parent"
                      ],
                      "description": "Creates a new EndUserAuthentication in a given project,location and connection.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+parent}/endUserAuthentications",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.create",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "request": {
                        "$ref": "EndUserAuthentication"
                      },
                      "parameters": {
                        "parent": {
                          "required": true,
                          "location": "path",
                          "description": "Required. Parent resource of the EndUserAuthentication, of the form: `projects/*/locations/*/connections/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string"
                        },
                        "endUserAuthenticationId": {
                          "type": "string",
                          "location": "query",
                          "description": "Required. Identifier to assign to the EndUserAuthentication. Must be unique within scope of the parent resource."
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications"
                    },
                    "list": {
                      "description": "List EndUserAuthentications in a given project,location and connection.",
                      "response": {
                        "$ref": "ListEndUserAuthenticationsResponse"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "parent"
                      ],
                      "parameters": {
                        "filter": {
                          "description": "Filter.",
                          "type": "string",
                          "location": "query"
                        },
                        "orderBy": {
                          "location": "query",
                          "type": "string",
                          "description": "Order by parameters."
                        },
                        "pageToken": {
                          "location": "query",
                          "type": "string",
                          "description": "Page token."
                        },
                        "parent": {
                          "description": "Required. Parent resource of the EndUserAuthentication, of the form: `projects/*/locations/*/connections/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string",
                          "required": true,
                          "location": "path"
                        },
                        "pageSize": {
                          "description": "Page size.",
                          "format": "int32",
                          "type": "integer",
                          "location": "query"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications",
                      "path": "v1/{+parent}/endUserAuthentications",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "delete": {
                      "httpMethod": "DELETE",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Deletes a single EndUserAuthentication.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "id": "connectors.projects.locations.connections.endUserAuthentications.delete",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/connections/*/endUserAuthentication/*`",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}"
                    },
                    "patch": {
                      "httpMethod": "PATCH",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Updates the parameters of a single EndUserAuthentication.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "path": "v1/{+name}",
                      "request": {
                        "$ref": "EndUserAuthentication"
                      },
                      "id": "connectors.projects.locations.connections.endUserAuthentications.patch",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Identifier. Resource name of the EndUserAuthentication. Format: projects/{project}/locations/{location}/connections/{connection}/endUserAuthentications/{end_user_authentication}",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/endUserAuthentications/[^/]+$"
                        },
                        "updateMask": {
                          "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`",
                          "format": "google-fieldmask",
                          "type": "string",
                          "location": "query"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/endUserAuthentications/{endUserAuthenticationsId}"
                    }
                  }
                },
                "runtimeActionSchemas": {
                  "methods": {
                    "list": {
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/runtimeActionSchemas",
                      "parameters": {
                        "parent": {
                          "type": "string",
                          "description": "Required. Parent resource of RuntimeActionSchema Format: projects/{project}/locations/{location}/connections/{connection}",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "required": true,
                          "location": "path"
                        },
                        "pageToken": {
                          "description": "Page token.",
                          "location": "query",
                          "type": "string"
                        },
                        "filter": {
                          "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.",
                          "location": "query",
                          "type": "string"
                        },
                        "pageSize": {
                          "description": "Page size.",
                          "format": "int32",
                          "type": "integer",
                          "location": "query"
                        },
                        "schemaAsString": {
                          "type": "boolean",
                          "location": "query",
                          "description": "Optional. Flag to indicate if schema should be returned as string or not"
                        }
                      },
                      "id": "connectors.projects.locations.connections.runtimeActionSchemas.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+parent}/runtimeActionSchemas",
                      "response": {
                        "$ref": "ListRuntimeActionSchemasResponse"
                      },
                      "description": "List schema of a runtime actions filtered by action name.",
                      "parameterOrder": [
                        "parent"
                      ],
                      "httpMethod": "GET"
                    }
                  }
                },
                "connectionSchemaMetadata": {
                  "methods": {
                    "listEntityTypes": {
                      "path": "v1/{+name}:listEntityTypes",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.listEntityTypes",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "view": {
                          "enumDescriptions": [
                            "",
                            ""
                          ],
                          "description": "Specifies which fields are returned in response. Defaults to BASIC view.",
                          "enum": [
                            "VIEW_UNSPECIFIED",
                            "BASIC"
                          ],
                          "type": "string",
                          "location": "query"
                        },
                        "filter": {
                          "description": "Required. Filter Wildcards are not supported in the filter currently.",
                          "location": "query",
                          "type": "string"
                        },
                        "pageToken": {
                          "description": "Page token.",
                          "type": "string",
                          "location": "query"
                        },
                        "name": {
                          "location": "path",
                          "required": true,
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "type": "string"
                        },
                        "pageSize": {
                          "format": "int32",
                          "description": "Page size. If unspecified, at most 50 entity types will be returned.",
                          "location": "query",
                          "type": "integer"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:listEntityTypes",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "List entity types.",
                      "response": {
                        "$ref": "ListEntityTypesResponse"
                      }
                    },
                    "getAction": {
                      "description": "Get action.",
                      "response": {
                        "$ref": "Operation"
                      },
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "parameters": {
                        "name": {
                          "location": "path",
                          "required": true,
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "type": "string"
                        },
                        "actionId": {
                          "description": "Required. Id of the action.",
                          "location": "query",
                          "type": "string"
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:getAction",
                      "path": "v1/{+name}:getAction",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.getAction",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ]
                    },
                    "refresh": {
                      "path": "v1/{+name}:refresh",
                      "request": {
                        "$ref": "RefreshConnectionSchemaMetadataRequest"
                      },
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.refresh",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "type": "string",
                          "description": "Required. Resource name. Format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "location": "path",
                          "required": true
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:refresh",
                      "httpMethod": "POST",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Refresh runtime schema of a connection.",
                      "response": {
                        "$ref": "Operation"
                      }
                    },
                    "getEntityType": {
                      "path": "v1/{+name}:getEntityType",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.getEntityType",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name format: projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$"
                        },
                        "entityId": {
                          "location": "query",
                          "type": "string",
                          "description": "Required. Id of the entity type."
                        }
                      },
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:getEntityType",
                      "httpMethod": "GET",
                      "parameterOrder": [
                        "name"
                      ],
                      "description": "Get entity type.",
                      "response": {
                        "$ref": "Operation"
                      }
                    },
                    "listActions": {
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "ListActionsResponse"
                      },
                      "description": "List actions.",
                      "id": "connectors.projects.locations.connections.connectionSchemaMetadata.listActions",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}:listActions",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/connectionSchemaMetadata:listActions",
                      "parameters": {
                        "filter": {
                          "description": "Required. Filter Wildcards are not supported in the filter currently.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageToken": {
                          "type": "string",
                          "location": "query",
                          "description": "Page token."
                        },
                        "view": {
                          "location": "query",
                          "type": "string",
                          "enum": [
                            "VIEW_UNSPECIFIED",
                            "BASIC"
                          ],
                          "description": "Specifies which fields are returned in response. Defaults to BASIC view.",
                          "enumDescriptions": [
                            "",
                            ""
                          ]
                        },
                        "name": {
                          "required": true,
                          "location": "path",
                          "description": "Required. Resource name format. projects/{project}/locations/{location}/connections/{connection}/connectionSchemaMetadata",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+/connectionSchemaMetadata$",
                          "type": "string"
                        },
                        "pageSize": {
                          "format": "int32",
                          "description": "Page size. If unspecified, at most 50 actions will be returned.",
                          "location": "query",
                          "type": "integer"
                        }
                      }
                    }
                  }
                },
                "runtimeEntitySchemas": {
                  "methods": {
                    "list": {
                      "parameterOrder": [
                        "parent"
                      ],
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "ListRuntimeEntitySchemasResponse"
                      },
                      "description": "List schema of a runtime entities filtered by entity name.",
                      "id": "connectors.projects.locations.connections.runtimeEntitySchemas.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+parent}/runtimeEntitySchemas",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/connections/{connectionsId}/runtimeEntitySchemas",
                      "parameters": {
                        "pageToken": {
                          "description": "Page token.",
                          "type": "string",
                          "location": "query"
                        },
                        "filter": {
                          "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",
                          "location": "query"
                        },
                        "pageSize": {
                          "location": "query",
                          "type": "integer",
                          "format": "int32",
                          "description": "Page size."
                        },
                        "parent": {
                          "location": "path",
                          "required": true,
                          "description": "Required. Parent resource of RuntimeEntitySchema Format: projects/{project}/locations/{location}/connections/{connection}",
                          "pattern": "^projects/[^/]+/locations/[^/]+/connections/[^/]+$",
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            },
            "operations": {
              "methods": {
                "list": {
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations",
                  "parameters": {
                    "filter": {
                      "description": "The standard list filter.",
                      "type": "string",
                      "location": "query"
                    },
                    "pageToken": {
                      "location": "query",
                      "type": "string",
                      "description": "The standard list page token."
                    },
                    "name": {
                      "required": true,
                      "location": "path",
                      "description": "The name of the operation's parent resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$",
                      "type": "string"
                    },
                    "pageSize": {
                      "type": "integer",
                      "location": "query",
                      "description": "The standard list page size.",
                      "format": "int32"
                    },
                    "returnPartialSuccess": {
                      "location": "query",
                      "type": "boolean",
                      "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."
                    }
                  },
                  "id": "connectors.projects.locations.operations.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}/operations"
                },
                "delete": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "description": "The name of the operation resource to be deleted.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "type": "string"
                    }
                  },
                  "id": "connectors.projects.locations.operations.delete",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Empty"
                  },
                  "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`.",
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "DELETE"
                },
                "get": {
                  "parameterOrder": [
                    "name"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "Operation"
                  },
                  "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.",
                  "id": "connectors.projects.locations.operations.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+name}",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}",
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "description": "The name of the operation resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "type": "string"
                    }
                  }
                },
                "cancel": {
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "name"
                  ],
                  "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`.",
                  "response": {
                    "$ref": "Empty"
                  },
                  "path": "v1/{+name}:cancel",
                  "id": "connectors.projects.locations.operations.cancel",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "request": {
                    "$ref": "CancelOperationRequest"
                  },
                  "parameters": {
                    "name": {
                      "location": "path",
                      "required": true,
                      "description": "The name of the operation resource to be cancelled.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/operations/[^/]+$",
                      "type": "string"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/operations/{operationsId}:cancel"
                }
              }
            },
            "providers": {
              "methods": {
                "list": {
                  "id": "connectors.projects.locations.providers.list",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+parent}/providers",
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers",
                  "parameters": {
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Page token."
                    },
                    "parent": {
                      "required": true,
                      "location": "path",
                      "type": "string",
                      "description": "Required. Parent resource of the API, of the form: `projects/*/locations/*` Only global location is supported for Provider resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+$"
                    },
                    "pageSize": {
                      "location": "query",
                      "type": "integer",
                      "format": "int32",
                      "description": "Page size."
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "httpMethod": "GET",
                  "response": {
                    "$ref": "ListProvidersResponse"
                  },
                  "description": "Lists Providers in a given project and location."
                },
                "setIamPolicy": {
                  "path": "v1/{+resource}:setIamPolicy",
                  "request": {
                    "$ref": "SetIamPolicyRequest"
                  },
                  "id": "connectors.projects.locations.providers.setIamPolicy",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "parameters": {
                    "resource": {
                      "type": "string",
                      "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                      "location": "path",
                      "required": true
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:setIamPolicy",
                  "httpMethod": "POST",
                  "parameterOrder": [
                    "resource"
                  ],
                  "description": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.",
                  "response": {
                    "$ref": "Policy"
                  }
                },
                "getIamPolicy": {
                  "parameters": {
                    "options.requestedPolicyVersion": {
                      "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",
                      "type": "integer",
                      "location": "query"
                    },
                    "resource": {
                      "location": "path",
                      "required": true,
                      "type": "string",
                      "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:getIamPolicy",
                  "path": "v1/{+resource}: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.",
                  "response": {
                    "$ref": "Policy"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "resource"
                  ]
                },
                "get": {
                  "description": "Gets details of a provider.",
                  "response": {
                    "$ref": "Provider"
                  },
                  "httpMethod": "GET",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "type": "string",
                      "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*` Only global location is supported for Provider resource.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                      "required": true,
                      "location": "path"
                    }
                  },
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}",
                  "path": "v1/{+name}",
                  "id": "connectors.projects.locations.providers.get",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ]
                },
                "testIamPermissions": {
                  "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}:testIamPermissions",
                  "parameters": {
                    "resource": {
                      "required": true,
                      "location": "path",
                      "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.",
                      "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+$",
                      "type": "string"
                    }
                  },
                  "request": {
                    "$ref": "TestIamPermissionsRequest"
                  },
                  "id": "connectors.projects.locations.providers.testIamPermissions",
                  "scopes": [
                    "https://www.googleapis.com/auth/cloud-platform"
                  ],
                  "path": "v1/{+resource}:testIamPermissions",
                  "response": {
                    "$ref": "TestIamPermissionsResponse"
                  },
                  "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.",
                  "parameterOrder": [
                    "resource"
                  ],
                  "httpMethod": "POST"
                }
              },
              "resources": {
                "connectors": {
                  "methods": {
                    "list": {
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors",
                      "parameters": {
                        "pageToken": {
                          "description": "Page token.",
                          "location": "query",
                          "type": "string"
                        },
                        "filter": {
                          "description": "Filter string.",
                          "type": "string",
                          "location": "query"
                        },
                        "pageSize": {
                          "description": "Page size.",
                          "format": "int32",
                          "type": "integer",
                          "location": "query"
                        },
                        "parent": {
                          "type": "string",
                          "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/[^/]+$",
                          "required": true,
                          "location": "path"
                        }
                      },
                      "id": "connectors.projects.locations.providers.connectors.list",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+parent}/connectors",
                      "response": {
                        "$ref": "ListConnectorsResponse"
                      },
                      "description": "Lists Connectors in a given project and location.",
                      "parameterOrder": [
                        "parent"
                      ],
                      "httpMethod": "GET"
                    },
                    "get": {
                      "parameterOrder": [
                        "name"
                      ],
                      "httpMethod": "GET",
                      "response": {
                        "$ref": "Connector"
                      },
                      "description": "Gets details of a single Connector.",
                      "id": "connectors.projects.locations.providers.connectors.get",
                      "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform"
                      ],
                      "path": "v1/{+name}",
                      "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}",
                      "parameters": {
                        "name": {
                          "required": true,
                          "location": "path",
                          "type": "string",
                          "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*/connectors/*` Only global location is supported for Connector resource.",
                          "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+$"
                        }
                      }
                    }
                  },
                  "resources": {
                    "versions": {
                      "methods": {
                        "get": {
                          "description": "Gets details of a single connector version.",
                          "response": {
                            "$ref": "ConnectorVersion"
                          },
                          "httpMethod": "GET",
                          "parameterOrder": [
                            "name"
                          ],
                          "parameters": {
                            "name": {
                              "location": "path",
                              "required": true,
                              "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"
                            },
                            "view": {
                              "location": "query",
                              "description": "Specifies which fields of the ConnectorVersion are returned in the response. Defaults to `CUSTOMER` view.",
                              "enumDescriptions": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED.",
                                "Do not include role grant configs.",
                                "Include role grant configs."
                              ],
                              "type": "string",
                              "enum": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED",
                                "CONNECTOR_VERSION_VIEW_BASIC",
                                "CONNECTOR_VERSION_VIEW_FULL"
                              ]
                            }
                          },
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}",
                          "path": "v1/{+name}",
                          "id": "connectors.projects.locations.providers.connectors.versions.get",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "list": {
                          "description": "Lists Connector Versions in a given project and location.",
                          "response": {
                            "$ref": "ListConnectorVersionsResponse"
                          },
                          "httpMethod": "GET",
                          "parameterOrder": [
                            "parent"
                          ],
                          "parameters": {
                            "pageToken": {
                              "location": "query",
                              "type": "string",
                              "description": "Page token."
                            },
                            "parent": {
                              "location": "path",
                              "required": true,
                              "type": "string",
                              "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+$"
                            },
                            "pageSize": {
                              "format": "int32",
                              "description": "Page size.",
                              "location": "query",
                              "type": "integer"
                            },
                            "view": {
                              "location": "query",
                              "enumDescriptions": [
                                "CONNECTOR_VERSION_VIEW_UNSPECIFIED.",
                                "Do not include role grant configs.",
                                "Include role grant configs."
                              ],
                              "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"
                              ],
                              "type": "string"
                            }
                          },
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions",
                          "path": "v1/{+parent}/versions",
                          "id": "connectors.projects.locations.providers.connectors.versions.list",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ]
                        },
                        "fetchAuthSchema": {
                          "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}:fetchAuthSchema",
                          "parameters": {
                            "name": {
                              "location": "path",
                              "required": true,
                              "description": "Required. Parent resource of the Connector Version, of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*`",
                              "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+$",
                              "type": "string"
                            },
                            "view": {
                              "location": "query",
                              "description": "Optional. View of the AuthSchema. The default value is BASIC.",
                              "enumDescriptions": [
                                "Default value.",
                                "Basic view of the AuthSchema.",
                                "JSON schema view of the AuthSchema.",
                                "EUA Schema view of the AuthSchema."
                              ],
                              "type": "string",
                              "enum": [
                                "AUTH_SCHEMA_VIEW_UNSPECIFIED",
                                "BASIC",
                                "JSON_SCHEMA",
                                "EUA_SCHEMA"
                              ]
                            }
                          },
                          "id": "connectors.projects.locations.providers.connectors.versions.fetchAuthSchema",
                          "scopes": [
                            "https://www.googleapis.com/auth/cloud-platform"
                          ],
                          "path": "v1/{+name}:fetchAuthSchema",
                          "response": {
                            "$ref": "FetchAuthSchemaResponse"
                          },
                          "description": "fetch and return the list of auth config variables required to override the connection backend auth.",
                          "parameterOrder": [
                            "name"
                          ],
                          "httpMethod": "GET"
                        }
                      },
                      "resources": {
                        "eventtypes": {
                          "methods": {
                            "get": {
                              "path": "v1/{+name}",
                              "id": "connectors.projects.locations.providers.connectors.versions.eventtypes.get",
                              "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform"
                              ],
                              "parameters": {
                                "name": {
                                  "type": "string",
                                  "description": "Required. Resource name of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*/eventtypes/*` Only global location is supported for EventType resource.",
                                  "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+/eventtypes/[^/]+$",
                                  "location": "path",
                                  "required": true
                                }
                              },
                              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}/eventtypes/{eventtypesId}",
                              "httpMethod": "GET",
                              "parameterOrder": [
                                "name"
                              ],
                              "description": "Gets details of a single event type.",
                              "response": {
                                "$ref": "EventType"
                              }
                            },
                            "list": {
                              "description": "Lists Event Types in a given Connector Version.",
                              "response": {
                                "$ref": "ListEventTypesResponse"
                              },
                              "httpMethod": "GET",
                              "parameterOrder": [
                                "parent"
                              ],
                              "parameters": {
                                "pageToken": {
                                  "description": "Page token.",
                                  "location": "query",
                                  "type": "string"
                                },
                                "pageSize": {
                                  "description": "Page size.",
                                  "format": "int32",
                                  "type": "integer",
                                  "location": "query"
                                },
                                "parent": {
                                  "location": "path",
                                  "required": true,
                                  "description": "Required. Parent resource of the connectors, of the form: `projects/*/locations/*/providers/*/connectors/*/versions/*` Only global location is supported for EventType resource.",
                                  "pattern": "^projects/[^/]+/locations/[^/]+/providers/[^/]+/connectors/[^/]+/versions/[^/]+$",
                                  "type": "string"
                                }
                              },
                              "flatPath": "v1/projects/{projectsId}/locations/{locationsId}/providers/{providersId}/connectors/{connectorsId}/versions/{versionsId}/eventtypes",
                              "path": "v1/{+parent}/eventtypes",
                              "id": "connectors.projects.locations.providers.connectors.versions.eventtypes.list",
                              "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform"
                              ]
                            }
                          }
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "parameters": {
    "key": {
      "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.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "location": "query",
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    },
    "alt": {
      "location": "query",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "description": "Data format for response.",
      "default": "json",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "type": "string"
    },
    "quotaUser": {
      "type": "string",
      "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."
    },
    "access_token": {
      "description": "OAuth access token.",
      "type": "string",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "location": "query",
      "description": "JSONP"
    },
    "fields": {
      "location": "query",
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response."
    },
    "prettyPrint": {
      "description": "Returns response with indentations and line breaks.",
      "default": "true",
      "type": "boolean",
      "location": "query"
    },
    "oauth_token": {
      "type": "string",
      "location": "query",
      "description": "OAuth 2.0 token for the current user."
    },
    "$.xgafv": {
      "type": "string",
      "enum": [
        "1",
        "2"
      ],
      "description": "V1 error format.",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query"
    },
    "upload_protocol": {
      "location": "query",
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
    }
  },
  "batchPath": "batch",
  "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."
        }
      }
    }
  },
  "kind": "discovery#restDescription",
  "ownerDomain": "google.com",
  "baseUrl": "https://connectors.googleapis.com/",
  "version": "v1",
  "fullyEncodeReservedExpansion": true,
  "title": "Connectors API",
  "documentationLink": "https://cloud.google.com/apigee/docs/api-platform/connectors/about-connectors",
  "revision": "20260316",
  "protocol": "rest",
  "discoveryVersion": "v1",
  "canonicalName": "Connectors",
  "id": "connectors:v1",
  "basePath": ""
}
