googleapis
Version:
Google APIs Client Library for Node.js
1,213 lines • 491 kB
TypeScript
import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosResponseWithHTTP2, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common';
import { Readable } from 'stream';
export declare namespace connectors_v1 {
export interface Options extends GlobalOptions {
version: 'v1';
}
interface StandardParameters {
/**
* Auth client or API Key for the request
*/
auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth;
/**
* V1 error format.
*/
'$.xgafv'?: string;
/**
* OAuth access token.
*/
access_token?: string;
/**
* Data format for response.
*/
alt?: string;
/**
* JSONP
*/
callback?: string;
/**
* Selector specifying which fields to include in a partial response.
*/
fields?: string;
/**
* 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.
*/
key?: string;
/**
* OAuth 2.0 token for the current user.
*/
oauth_token?: string;
/**
* Returns response with indentations and line breaks.
*/
prettyPrint?: boolean;
/**
* 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.
*/
quotaUser?: string;
/**
* Legacy upload protocol for media (e.g. "media", "multipart").
*/
uploadType?: string;
/**
* Upload protocol for media (e.g. "raw", "multipart").
*/
upload_protocol?: string;
}
/**
* Connectors API
*
* Enables users to create and manage connections to Google Cloud services and third-party business applications using the Connectors interface.
*
* @example
* ```js
* const {google} = require('googleapis');
* const connectors = google.connectors('v1');
* ```
*/
export class Connectors {
context: APIRequestContext;
projects: Resource$Projects;
constructor(options: GlobalOptions, google?: GoogleConfigurable);
}
/**
* 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.
*/
export interface Schema$AuditConfig {
/**
* The configuration for logging of each type of permission.
*/
auditLogConfigs?: Schema$AuditLogConfig[];
/**
* 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.
*/
service?: string | null;
}
/**
* 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.
*/
export interface Schema$AuditLogConfig {
/**
* Specifies the identities that do not cause logging for this type of permission. Follows the same format of Binding.members.
*/
exemptedMembers?: string[] | null;
/**
* The log type that this config enables.
*/
logType?: string | null;
}
/**
* AuthConfig defines details of a authentication type.
*/
export interface Schema$AuthConfig {
/**
* Optional. List containing additional auth configs.
*/
additionalVariables?: Schema$ConfigVariable[];
/**
* Optional. Identifier key for auth config
*/
authKey?: string | null;
/**
* Optional. The type of authentication configured.
*/
authType?: string | null;
/**
* Oauth2AuthCodeFlow.
*/
oauth2AuthCodeFlow?: Schema$Oauth2AuthCodeFlow;
/**
* Oauth2AuthCodeFlowGoogleManaged.
*/
oauth2AuthCodeFlowGoogleManaged?: Schema$Oauth2AuthCodeFlowGoogleManaged;
/**
* Oauth2ClientCredentials.
*/
oauth2ClientCredentials?: Schema$Oauth2ClientCredentials;
/**
* Oauth2JwtBearer.
*/
oauth2JwtBearer?: Schema$Oauth2JwtBearer;
/**
* SSH Public Key.
*/
sshPublicKey?: Schema$SshPublicKey;
/**
* UserPassword.
*/
userPassword?: Schema$UserPassword;
}
/**
* AuthConfigTemplate defines required field over an authentication type.
*/
export interface Schema$AuthConfigTemplate {
/**
* Identifier key for auth config
*/
authKey?: string | null;
/**
* The type of authentication configured.
*/
authType?: string | null;
/**
* Config variables to describe an `AuthConfig` for a `Connection`.
*/
configVariableTemplates?: Schema$ConfigVariableTemplate[];
/**
* Connector specific description for an authentication template.
*/
description?: string | null;
/**
* Display name for authentication template.
*/
displayName?: string | null;
/**
* Whether the auth config is the default one.
*/
isDefault?: boolean | null;
}
/**
* AuthField defines a field in an authentication type.
*/
export interface Schema$AuthField {
/**
* Data type of the field.
*/
dataType?: string | null;
/**
* Description of the field.
*/
description?: string | null;
/**
* Key of the field.
*/
key?: string | null;
}
/**
* AuthObject defines a JSON schema of an authentication type.
*/
export interface Schema$AuthObject {
/**
* Whether the object has additional properties.
*/
additionalProperties?: boolean | null;
/**
* Auth key of the object.
*/
authKey?: string | null;
/**
* Auth type of the object.
*/
authType?: string | null;
/**
* Description of the object.
*/
description?: string | null;
/**
* Whether the object is the default one.
*/
isDefault?: boolean | null;
/**
* Properties of the object.
*/
properties?: {
[key: string]: Schema$AuthProperty;
} | null;
/**
* Type of the object.
*/
type?: string | null;
}
/**
* This configuration captures the details required to render an authorization link for the OAuth Authorization Code Flow.
*/
export interface Schema$AuthorizationCodeLink {
/**
* Optional. The client ID assigned to the Google Cloud Connectors OAuth app for the connector data source.
*/
clientId?: string | null;
/**
* Optional. The client secret assigned to the Google Cloud Connectors OAuth app for the connector data source.
*/
clientSecret?: Schema$Secret;
/**
* Optional. Whether to enable PKCE for the auth code flow.
*/
enablePkce?: boolean | null;
/**
* Optional. Omit query params from the redirect URI.
*/
omitQueryParams?: boolean | null;
/**
* Optional. The scopes for which the user will authorize Google Cloud Connectors on the connector data source.
*/
scopes?: string[] | null;
/**
* Optional. The base URI the user must click to trigger the authorization code login flow.
*/
uri?: string | null;
}
/**
* AuthProperty defines a property of an authentication type.
*/
export interface Schema$AuthProperty {
/**
* Description of the property.
*/
description?: string | null;
/**
* Type of the property.
*/
type?: string | null;
}
/**
* AuthSchema defines the schema of an authentication type.
*/
export interface Schema$AuthSchema {
/**
* List of AuthFields.
*/
authFields?: Schema$AuthField[];
/**
* Auth key of the schema.
*/
authKey?: string | null;
/**
* Auth type of the schema.
*/
authType?: string | null;
/**
* Description of the schema.
*/
description?: string | null;
/**
* Display name of the schema.
*/
displayName?: string | null;
/**
* Whether the auth schema is the default one.
*/
isDefault?: boolean | null;
}
/**
* Billing config for the connection.
*/
export interface Schema$BillingConfig {
/**
* Output only. Billing category for the connector.
*/
billingCategory?: string | null;
}
/**
* Associates `members`, or principals, with a `role`.
*/
export interface Schema$Binding {
/**
* 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).
*/
condition?: Schema$Expr;
/**
* 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\}/x`: 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\}/x`: 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`.
*/
members?: string[] | null;
/**
* 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).
*/
role?: string | null;
}
/**
* The request message for Operations.CancelOperation.
*/
export interface Schema$CancelOperationRequest {
}
/**
* ConfigVariable represents a configuration variable present in a Connection. or AuthConfig.
*/
export interface Schema$ConfigVariable {
/**
* Value is a bool.
*/
boolValue?: boolean | null;
/**
* Value is a Encryption Key.
*/
encryptionKeyValue?: Schema$EncryptionKey;
/**
* Value is an integer
*/
intValue?: string | null;
/**
* Optional. Key of the config variable.
*/
key?: string | null;
/**
* Value is a secret.
*/
secretValue?: Schema$Secret;
/**
* Value is a string.
*/
stringValue?: string | null;
}
/**
* ConfigVariableTemplate provides metadata about a `ConfigVariable` that is used in a Connection.
*/
export interface Schema$ConfigVariableTemplate {
/**
* Optional. Authorization code link options. To be populated if `ValueType` is `AUTHORIZATION_CODE`
*/
authorizationCodeLink?: Schema$AuthorizationCodeLink;
/**
* Optional. Description.
*/
description?: string | null;
/**
* Optional. Display name of the parameter.
*/
displayName?: string | null;
/**
* Optional. Enum options. To be populated if `ValueType` is `ENUM`
*/
enumOptions?: Schema$EnumOption[];
/**
* Optional. enum source denotes the source of api to fill the enum options
*/
enumSource?: string | null;
/**
* Optional. Indicates if current template is part of advanced settings
*/
isAdvanced?: boolean | null;
/**
* Optional. Key of the config variable.
*/
key?: string | null;
/**
* Optional. Location Type denotes where this value should be sent in BYOC connections.
*/
locationType?: string | null;
/**
* Optional. MultipleSelectConfig represents the multiple options for a config variable.
*/
multipleSelectConfig?: Schema$MultipleSelectConfig;
/**
* Optional. Flag represents that this `ConfigVariable` must be provided for a connection.
*/
required?: boolean | null;
/**
* Optional. Condition under which a field would be required. The condition can be represented in the form of a logical expression.
*/
requiredCondition?: Schema$LogicalExpression;
/**
* Optional. Role grant configuration for the config variable.
*/
roleGrant?: Schema$RoleGrant;
/**
* Output only. State of the config variable.
*/
state?: string | null;
/**
* Optional. Regular expression in RE2 syntax used for validating the `value` of a `ConfigVariable`.
*/
validationRegex?: string | null;
/**
* Optional. Type of the parameter: string, int, bool etc. consider custom type for the benefit for the validation.
*/
valueType?: string | null;
}
/**
* Connection represents an instance of connector.
*/
export interface Schema$Connection {
/**
* 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.
*/
asyncOperationsEnabled?: boolean | null;
/**
* Optional. Configuration for establishing the connection's authentication with an external system.
*/
authConfig?: Schema$AuthConfig;
/**
* 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.
*/
authOverrideEnabled?: boolean | null;
/**
* Output only. Billing config for the connection.
*/
billingConfig?: Schema$BillingConfig;
/**
* Optional. Configuration for configuring the connection with an external system.
*/
configVariables?: Schema$ConfigVariable[];
/**
* Output only. Connection revision. This field is only updated when the connection is created or updated by User.
*/
connectionRevision?: string | null;
/**
* Required. Connector version on which the connection is created. The format is: projects/x/locations/x/providers/x/connectors/x/versions/x Only global location is supported for ConnectorVersion resource.
*/
connectorVersion?: string | null;
/**
* Output only. Infra configs supported by Connector Version.
*/
connectorVersionInfraConfig?: Schema$ConnectorVersionInfraConfig;
/**
* Output only. Flag to mark the version indicating the launch stage.
*/
connectorVersionLaunchStage?: string | null;
/**
* Output only. Created time.
*/
createTime?: string | null;
/**
* Optional. Description of the resource.
*/
description?: string | null;
/**
* Optional. Configuration of the Connector's destination. Only accepted for Connectors that accepts user defined destination(s).
*/
destinationConfigs?: Schema$DestinationConfig[];
/**
* Output only. GCR location where the envoy image is stored. formatted like: gcr.io/{bucketName\}/{imageName\}
*/
envoyImageLocation?: string | null;
/**
* 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.
*/
euaOauthAuthConfig?: Schema$AuthConfig;
/**
* Optional. Eventing config of a connection
*/
eventingConfig?: Schema$EventingConfig;
/**
* Optional. Eventing enablement type. Will be nil if eventing is not enabled.
*/
eventingEnablementType?: string | null;
/**
* Output only. Eventing Runtime Data.
*/
eventingRuntimeData?: Schema$EventingRuntimeData;
/**
* 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.
*/
fallbackOnAdminCredentials?: boolean | null;
/**
* Output only. The name of the Hostname of the Service Directory service with TLS.
*/
host?: string | null;
/**
* Output only. GCR location where the runtime image is stored. formatted like: gcr.io/{bucketName\}/{imageName\}
*/
imageLocation?: string | null;
/**
* Output only. Is trusted tester program enabled for the project.
*/
isTrustedTester?: boolean | null;
/**
* 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
*/
labels?: {
[key: string]: string;
} | null;
/**
* Optional. Configuration that indicates whether or not the Connection can be edited.
*/
lockConfig?: Schema$LockConfig;
/**
* Optional. Log configuration for the connection.
*/
logConfig?: Schema$ConnectorsLogConfig;
/**
* Output only. Resource name of the Connection. Format: projects/{project\}/locations/{location\}/connections/{connection\}
*/
name?: string | null;
/**
* Optional. Node configuration for the connection.
*/
nodeConfig?: Schema$NodeConfig;
/**
* Optional. Service account needed for runtime plane to access Google Cloud resources.
*/
serviceAccount?: string | null;
/**
* 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"
*/
serviceDirectory?: string | null;
/**
* Optional. Ssl config of a connection
*/
sslConfig?: Schema$SslConfig;
/**
* Output only. Current status of the connection.
*/
status?: Schema$ConnectionStatus;
/**
* Output only. This subscription type enum states the subscription type of the project.
*/
subscriptionType?: string | null;
/**
* Optional. Suspended indicates if a user has suspended a connection or not.
*/
suspended?: boolean | null;
/**
* Output only. The name of the Service Directory service with TLS.
*/
tlsServiceDirectory?: string | null;
/**
* Optional. Traffic shaping configuration for the connection.
*/
trafficShapingConfigs?: Schema$TrafficShapingConfig[];
/**
* Output only. Updated time.
*/
updateTime?: string | null;
}
/**
* ConnectionSchemaMetadata is the singleton resource of each connection. It includes the entity and action names of runtime resources exposed by a connection backend.
*/
export interface Schema$ConnectionSchemaMetadata {
/**
* Output only. List of actions.
*/
actions?: string[] | null;
/**
* Output only. List of entity names.
*/
entities?: string[] | null;
/**
* Error message for users.
*/
errorMessage?: string | null;
/**
* Output only. Resource name. Format: projects/{project\}/locations/{location\}/connections/{connection\}/connectionSchemaMetadata
*/
name?: string | null;
/**
* Output only. Timestamp when the connection runtime schema refresh was triggered.
*/
refreshTime?: string | null;
/**
* Output only. The current state of runtime schema.
*/
state?: string | null;
/**
* Output only. Timestamp when the connection runtime schema was updated.
*/
updateTime?: string | null;
}
/**
* ConnectionStatus indicates the state of the connection.
*/
export interface Schema$ConnectionStatus {
/**
* Description.
*/
description?: string | null;
/**
* State.
*/
state?: string | null;
/**
* Status provides detailed information for the state.
*/
status?: string | null;
}
/**
* Connectors indicates a specific connector type, e.x. Salesforce, SAP etc.
*/
export interface Schema$Connector {
/**
* Output only. Category of the connector.
*/
category?: string | null;
/**
* Output only. The type of the connector.
*/
connectorType?: string | null;
/**
* Output only. Created time.
*/
createTime?: string | null;
/**
* Output only. Description of the resource.
*/
description?: string | null;
/**
* Output only. Display name.
*/
displayName?: string | null;
/**
* Output only. Link to documentation page.
*/
documentationUri?: string | null;
/**
* Output only. Eventing details. Will be null if eventing is not supported.
*/
eventingDetails?: Schema$EventingDetails;
/**
* Output only. Link to external page.
*/
externalUri?: string | null;
/**
* 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
*/
labels?: {
[key: string]: string;
} | null;
/**
* Output only. Flag to mark the version indicating the launch stage.
*/
launchStage?: string | null;
/**
* Output only. Marketplace connector details. Will be null if the connector is not marketplace connector.
*/
marketplaceConnectorDetails?: Schema$MarketplaceConnectorDetails;
/**
* Output only. Resource name of the Connector. Format: projects/{project\}/locations/{location\}/providers/{provider\}/connectors/{connector\} Only global location is supported for Connector resource.
*/
name?: string | null;
/**
* Output only. Tags of the connector.
*/
tags?: string[] | null;
/**
* Output only. Updated time.
*/
updateTime?: string | null;
/**
* Output only. Cloud storage location of icons etc consumed by UI.
*/
webAssetsLocation?: string | null;
}
/**
* This cofiguration provides infra configs like rate limit threshold which need to be configurable for every connector version
*/
export interface Schema$ConnectorInfraConfig {
/**
* Indicates that the Cloud Run CPU should always be allocated.
*/
alwaysAllocateCpu?: boolean | null;
/**
* The window used for ratelimiting runtime requests to connections.
*/
connectionRatelimitWindowSeconds?: string | null;
/**
* Indicate whether connection service account is enabled. If false, the common runtime service agent is used.
*/
connectionServiceAccountEnabled?: boolean | null;
/**
* Indicate whether connector versioning is enabled.
*/
connectorVersioningEnabled?: boolean | null;
/**
* Indicate whether connector is deployed on GKE/CloudRun
*/
deploymentModel?: string | null;
/**
* HPA autoscaling config.
*/
hpaConfig?: Schema$HPAConfig;
/**
* Max QPS supported for internal requests originating from Connd.
*/
internalclientRatelimitThreshold?: string | null;
/**
* Max Instance Request Conncurrency for Cloud Run service.
*/
maxInstanceRequestConcurrency?: number | null;
/**
* Indicate whether connector is being migrated to cloud run deployment model.
*/
migrateDeploymentModel?: boolean | null;
/**
* Indicate whether connector is being migrated to TLS.
*/
migrateTls?: boolean | null;
/**
* Network egress mode override to migrate to direct VPC egress.
*/
networkEgressModeOverride?: Schema$NetworkEgressModeOverride;
/**
* Indicate whether cloud spanner is required for connector job.
*/
provisionCloudSpanner?: boolean | null;
/**
* Indicate whether memstore is required for connector job.
*/
provisionMemstore?: boolean | null;
/**
* Indicate whether public network ingress should be enabled.
*/
publicNetworkIngressEnabled?: boolean | null;
/**
* Max QPS supported by the connector version before throttling of requests.
*/
ratelimitThreshold?: string | null;
/**
* System resource limits.
*/
resourceLimits?: Schema$ResourceLimits;
/**
* System resource requests.
*/
resourceRequests?: Schema$ResourceRequests;
/**
* The name of shared connector deployment.
*/
sharedDeployment?: string | null;
}
/**
* Log configuration for the connection.
*/
export interface Schema$ConnectorsLogConfig {
/**
* Optional. Enabled represents whether logging is enabled or not for a connection.
*/
enabled?: boolean | null;
/**
* Optional. Log configuration level.
*/
level?: string | null;
}
/**
* ConnectorVersion indicates a specific version of a connector.
*/
export interface Schema$ConnectorVersion {
/**
* Output only. List of auth configs supported by the Connector Version.
*/
authConfigTemplates?: Schema$AuthConfigTemplate[];
/**
* Output only. Flag to mark the dynamic auth override.
*/
authOverrideEnabled?: boolean | null;
/**
* Output only. List of config variables needed to create a connection.
*/
configVariableTemplates?: Schema$ConfigVariableTemplate[];
/**
* Output only. Infra configs supported by Connector.
*/
connectorInfraConfig?: Schema$ConnectorInfraConfig;
/**
* Output only. Created time.
*/
createTime?: string | null;
/**
* Output only. List of destination configs needed to create a connection.
*/
destinationConfigTemplates?: Schema$DestinationConfigTemplate[];
/**
* Output only. Display name.
*/
displayName?: string | null;
/**
* Output only. Configuration for Egress Control.
*/
egressControlConfig?: Schema$EgressControlConfig;
/**
* Output only. Eventing configuration supported by the Connector.
*/
eventingConfigTemplate?: Schema$EventingConfigTemplate;
/**
* Output only. Is custom actions supported.
*/
isCustomActionsSupported?: boolean | null;
/**
* Output only. Is custom entities supported.
*/
isCustomEntitiesSupported?: boolean | null;
/**
* 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
*/
labels?: {
[key: string]: string;
} | null;
/**
* Output only. Flag to mark the version indicating the launch stage.
*/
launchStage?: string | null;
/**
* 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.
*/
name?: string | null;
/**
* Output only. ReleaseVersion of the connector, for example: "1.0.1-alpha".
*/
releaseVersion?: string | null;
/**
* Output only. Role grant configuration for this config variable. It will be DEPRECATED soon.
*/
roleGrant?: Schema$RoleGrant;
/**
* Output only. Role grant configurations for this connector version.
*/
roleGrants?: Schema$RoleGrant[];
/**
* Connection Schema Refresh Config
*/
schemaRefreshConfig?: Schema$SchemaRefreshConfig;
/**
* Output only. Ssl configuration supported by the Connector.
*/
sslConfigTemplate?: Schema$SslConfigTemplate;
/**
* Output only. Information about the runtime features supported by the Connector.
*/
supportedRuntimeFeatures?: Schema$SupportedRuntimeFeatures;
/**
* Output only. Supported standard actions.
*/
supportedStandardActions?: Schema$StandardAction[];
/**
* Output only. Supported standard entities.
*/
supportedStandardEntities?: Schema$StandardEntity[];
/**
* Output only. Unsupported connection types.
*/
unsupportedConnectionTypes?: string[] | null;
/**
* Output only. Updated time.
*/
updateTime?: string | null;
/**
* Output only. VPCSC config for the connector.
*/
vpcscConfig?: Schema$VpcscConfig;
}
/**
* This configuration provides infra configs like rate limit threshold which need to be configurable for every connector version
*/
export interface Schema$ConnectorVersionInfraConfig {
/**
* Output only. The window used for ratelimiting runtime requests to connections.
*/
connectionRatelimitWindowSeconds?: string | null;
/**
* Output only. Indicates whether connector is deployed on GKE/CloudRun
*/
deploymentModel?: string | null;
/**
* Output only. Status of the deployment model migration.
*/
deploymentModelMigrationState?: string | null;
/**
* Output only. HPA autoscaling config.
*/
hpaConfig?: Schema$HPAConfig;
/**
* Output only. Max QPS supported for internal requests originating from Connd.
*/
internalclientRatelimitThreshold?: string | null;
/**
* Output only. Max instance request concurrency.
*/
maxInstanceRequestConcurrency?: number | null;
/**
* Output only. Max QPS supported by the connector version before throttling of requests.
*/
ratelimitThreshold?: string | null;
/**
* Output only. System resource limits.
*/
resourceLimits?: Schema$ResourceLimits;
/**
* Output only. System resource requests.
*/
resourceRequests?: Schema$ResourceRequests;
/**
* Output only. The name of shared connector deployment.
*/
sharedDeployment?: string | null;
/**
* Output only. Status of the TLS migration.
*/
tlsMigrationState?: string | null;
}
/**
* CustomConnector represents the custom connector defined by the customer as part of byoc.
*/
export interface Schema$CustomConnector {
/**
* Output only. Active connector versions.
*/
activeConnectorVersions?: string[] | null;
/**
* Output only. All connector versions.
*/
allConnectorVersions?: string[] | null;
/**
* Output only. All marketplace versions.
*/
allMarketplaceVersions?: string[] | null;
/**
* Output only. Created time.
*/
createTime?: string | null;
/**
* Required. Type of the custom connector.
*/
customConnectorType?: string | null;
/**
* Optional. Description of the resource.
*/
description?: string | null;
/**
* Optional. Display name.
*/
displayName?: string | null;
/**
* 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
*/
labels?: {
[key: string]: string;
} | null;
/**
* Optional. Logo of the resource.
*/
logo?: string | null;
/**
* Identifier. Resource name of the CustomConnector. Format: projects/{project\}/locations/{location\}/customConnectors/{connector\}
*/
name?: string | null;
/**
* Output only. Published marketplace versions.
*/
publishedMarketplaceVersions?: string[] | null;
/**
* Output only. Updated time.
*/
updateTime?: string | null;
}
/**
* CustomConnectorVersion indicates a specific version of a connector.
*/
export interface Schema$CustomConnectorVersion {
/**
* Optional. Indicates if Async Operations/Connector Job is supported. This is only available for SDK based custom connectors.
*/
asyncOperationsSupport?: boolean | null;
/**
* Optional. Authentication config for accessing connector service (facade). This is used only when enable_backend_destination_config is true.
*/
authConfig?: Schema$AuthConfig;
/**
* 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.
*/
authConfigTemplates?: Schema$AuthConfigTemplate[];
/**
* Optional. Auth override support.
*/
authOverrideSupport?: boolean | null;
/**
* 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.
*/
backendVariableTemplates?: Schema$ConfigVariableTemplate[];
/**
* Output only. Created time.
*/
createTime?: string | null;
/**
* Optional. Destination config(s) for accessing connector service (facade). This is used only when enable_backend_destination_config is true.
*/
destinationConfigs?: Schema$DestinationConfig[];
/**
* 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.
*/
enableBackendDestinationConfig?: boolean | null;
/**
* 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
*/
labels?: {
[key: string]: string;
} | null;
/**
* Output only. Identifier. Resource name of the Version. Format: projects/{project\}/locations/{location\}/customConnectors/{custom_connector\}/customConnectorVersions/{custom_connector_version\}
*/
name?: string | null;
/**
* Optional. Partner metadata details. This should be populated only when publishing the custom connector to partner connector.
*/
partnerMetadata?: Schema$PartnerMetadata;
/**
* Output only. Publish status of a custom connector.
*/
publishStatus?: Schema$PublishStatus;
/**
* Optional. Service account used by runtime plane to access auth config secrets.
*/
serviceAccount?: string | null;
/**
* 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:///`.
*/
specLocation?: string | null;
/**
* Output only. Server URLs parsed from the Open API spec. This is only used for Open API based custom connectors.
*/
specServerUrls?: string[] | null;
/**
* Output only. State of the custom connector version.
*/
state?: string | null;
/**
* Output only. Updated time.
*/
updateTime?: string | null;
}
/**
* Time window specified for daily operations.
*/
export interface Schema$DailyCycle {
/**
* Output only. Duration of the time window, set by service producer.
*/
duration?: string | null;
/**
* Time within the day to start the operations.
*/
startTime?: Schema$TimeOfDay;
}
/**
* 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
*/
export interface Schema$Date {
/**
* 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.
*/
day?: number | null;
/**
* Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
*/
month?: number | null;
/**
* Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
*/
year?: number | null;
}
/**
* Dead Letter configuration details provided by the user.
*/
export interface Schema$DeadLetterConfig {
/**
* Optional. Project which has the topic given.
*/
projectId?: string | null;
/**
* Optional. Topic to push events which couldn't be processed.
*/
topic?: string | null;
}
/**
* DenyMaintenancePeriod definition. Maintenance is forbidden within the deny period. The start_date must be less than the end_date.
*/
export interface Schema$DenyMaintenancePeriod {
/**
* 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.
*/
endDate?: Schema$Date;
/**
* 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.
*/
startDate?: Schema$Date;
/**
* 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
*/
time?: Schema$TimeOfDay;
}
/**
* Request message for ConnectorsService.DeprecateCustomConnectorVersion
*/
export interface Schema$DeprecateCustomConnectorVersionRequest {
}
export interface Schema$Destination {
/**
* For publicly routable host.
*/
host?: string | null;
/**
* The port is the target port number that is accepted by the destination.
*/
port?: number | null;
/**
* PSC service attachments. Format: projects/x/regions/x/serviceAttachments/x
*/
serviceAttachment?: string | null;
}
/**
* Define the Connectors target endpoint.
*/
export interface Schema$DestinationConfig {
/**
* The destinations for the key.
*/
destinations?: Schema$Destination[];
/**
* The key is the destination identifier that is supported by the Connector.
*/
key?: string | null;
}
/**
* DestinationConfigTemplate defines required destinations supported by the Connector.
*/
export interface Schema$DestinationConfigTemplate {
/**
* Autocomplete suggestions for destination URL field.
*/
autocompleteSuggestions?: string[] | null;
/**
* The default port.
*/
defaultPort?: number | null;
/**
* Description.
*/
description?: string | null;
/**
* Display name of the parameter.
*/
displayName?: string | null;
/**
* Whether the current destination tempalate is part of Advanced settings
*/
isAdvanced?: boolean | null;
/**
* Key of the destination.
*/
key?: string | null;
/**
* The maximum number of destinations supported for this key.
*/
max?: number | null;
/**
* The minimum number of destinations supported for this key.
*/
min?: number | null;
/**
* Whether port number should be provided by customers.
*/
portFieldType?: string | null;
/**
* Regex pattern for host.
*/
regexPattern?: string | null;
}
/**
* 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.
*/
export interface Schema$EgressControlConfig {
/**
* Optional. Access mode for egress control.
*/
accessMode?: string | null;
/**
* 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`.
*/
additionalExtractionRules?: Schema$ExtractionRules;
/**
* Optional. Used when access_mode is RESTRICTED or ACCESS_MODE_UNSPECIFIED.
*/
allowlistedProjectNumbers?: string[] | null;
/**
* 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).
*/
ba