mcp
Ce que fait ce MCP
Manages Google Memorystore for Valkey instances, backups, certificates, maintenance, and lifecycle operations.
Outils
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'ttl': {'type': 'string', 'format': 'google-duration', 'description': 'Optional. TTL for the backup to expire. Value range is 1 day to 100 years. If not specified, the default value is 100 years.'}, 'name': {'type': 'string', 'description': 'Required. Instance resource name using the form: `projects/{project_id}/locations/{location_id}/instances/{instance_id}` where `location_id` refers to a Google Cloud region.'}, 'backupId': {'type': 'string', 'description': 'Optional. The id of the backup to be created. If not specified, the default value ([YYYYMMDDHHMMSS]_[Shortened Instance UID] is used.'}}, 'description': 'Request for `BackupInstance`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', '$defs': {'Instance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned, unique identifier for the instance.'}, 'mode': {'enum': ['MODE_UNSPECIFIED', 'STANDALONE', 'CLUSTER', 'CLUSTER_DISABLED'], 'type': 'string', 'description': 'Optional. Immutable. The mode config for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, True, False, False], 'x-google-enum-descriptions': ['Mode is not specified.', 'Deprecated: Use CLUSTER_DISABLED instead.', 'Instance is in cluster mode.', 'Cluster mode is disabled for the instance.']}, 'name': {'type': 'string', 'description': 'Identifier. Unique name of the instance. Format: projects/{project}/locations/{location}/instances/{instance}', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'UPDATING', 'DELETING', 'MIGRATING'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Current state of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Instance is being created.', 'Instance has been created and is usable.', 'Instance is being updated.', 'Instance is being deleted.', 'Instance is being migrated.']}, 'kmsKey': {'type': 'string', 'description': 'Optional. The KMS key used to encrypt the at-rest data of the cluster.'}, 'labels': {'type': 'object', 'description': 'Optional. Labels to represent user-provided metadata.', 'additionalProperties': {'type': 'string'}}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'description': 'Optional. Machine type for individual nodes of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'aclPolicy': {'type': 'string', 'description': 'Optional. The ACL policy for the instance. Format: projects/{project}/locations/{location}/aclPolicies/{acl_policy}'}, 'endpoints': {'type': 'array', 'items': {'$ref': '#/$defs/InstanceEndpoint'}, 'description': 'Optional. Endpoints for the instance.'}, 'gcsSource': {'$ref': '#/$defs/GcsBackupSource', 'description': 'Optional. Immutable. Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances. Read permission is required to import from the provided Cloud Storage Objects.', 'x-google-immutable': True}, 'stateInfo': {'$ref': '#/$defs/StateInfo', 'readOnly': True, 'description': 'Output only. Additional information about the state of the instance.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Creation timestamp of the instance.'}, 'nodeConfig': {'$ref': '#/$defs/NodeConfig', 'readOnly': True, 'description': 'Output only. Configuration of individual nodes of the instance.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of shards for the instance.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Latest update timestamp of the instance.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of replica nodes per shard. If omitted the default is 0 replicas.'}, 'satisfiesPzi': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'satisfiesPzs': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'serverCaMode': {'enum': ['SERVER_CA_MODE_UNSPECIFIED', 'GOOGLE_MANAGED_PER_INSTANCE_CA', 'GOOGLE_MANAGED_SHARED_CA', 'CUSTOMER_MANAGED_CAS_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_PER_INSTANCE_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_SHARED_CA', 'SERVER_CA_MODE_CUSTOMER_MANAGED_CAS_CA'], 'type': 'string', 'description': 'Optional. Immutable. The Server CA mode for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, False, False, False, True, True, True], 'x-google-enum-descriptions': ['Server CA mode not specified.', 'Each instance has its own Google-managed CA.', "The instance uses a Google-managed shared CA for the instance's region.", 'The instance uses a customer-managed CA from CAS.', 'Deprecated: Use GOOGLE_MANAGED_PER_INSTANCE_CA instead.', 'Deprecated: Use GOOGLE_MANAGED_SHARED_CA instead.', 'Deprecated: Use CUSTOMER_MANAGED_CAS_CA instead.']}, 'serverCaPool': {'type': 'string', 'description': 'Optional. Immutable. The customer-managed CA pool for the instance. Only applicable if the Server CA mode is CUSTOMER_MANAGED_CAS_CA. Format: "projects/{project}/locations/{region}/caPools/{ca_pool}".', 'x-google-immutable': True}, 'aclPolicyInfo': {'$ref': '#/$defs/AclPolicyInfo', 'readOnly': True, 'description': 'Output only. Details of the applied ACL policy.'}, 'engineConfigs': {'type': 'object', 'description': 'Optional. User-provided engine configurations for the instance.', 'additionalProperties': {'type': 'string'}}, 'engineVersion': {'type': 'string', 'description': 'Optional. Engine version of the instance.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the data at rest of the cluster.'}, 'aclPolicyInSync': {'type': 'boolean', 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: Whether the ACL rules applied to the instance are in sync.'}, 'migrationConfig': {'$ref': '#/$defs/MigrationConfig', 'readOnly': True, 'description': 'Output only. Migration config for the instance.'}, 'backupCollection': {'type': 'string', 'readOnly': True, 'description': 'Output only. The backup collection full resource name. Example: projects/{project}/locations/{location}/backupCollections/{collection}'}, 'authorizationMode': {'enum': ['AUTHORIZATION_MODE_UNSPECIFIED', 'AUTH_DISABLED', 'IAM_AUTH', 'TOKEN_AUTH'], 'type': 'string', 'description': 'Optional. Immutable. Authorization mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'Authorization disabled.', 'IAM basic authorization.', 'Token based authorization.']}, 'maintenancePolicy': {'$ref': '#/$defs/MaintenancePolicy', 'description': 'Optional. The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule.'}, 'persistenceConfig': {'$ref': '#/$defs/PersistenceConfig', 'description': 'Optional. Persistence configuration of the instance.'}, 'discoveryEndpoints': {'type': 'array', 'items': {'$ref': '#/$defs/DiscoveryEndpoint'}, 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: The discovery_endpoints parameter is deprecated. As a result, it will not be populated if the connections are created using endpoints parameter. Instead of this parameter, for discovery, use endpoints.connections.pscConnection and endpoints.connections.pscAutoConnection with connectionType CONNECTION_TYPE_DISCOVERY.'}, 'maintenanceVersion': {'type': 'string', 'description': 'Optional. This field can be used to trigger self service update to indicate the desired maintenance version. The input to this field can be determined by the available_maintenance_versions field.'}, 'pscAutoConnections': {'type': 'array', 'items': {'$ref': '#/$defs/PscAutoConnection'}, 'deprecated': True, 'description': 'Optional. Immutable. Deprecated: Use the endpoints.connections.psc_auto_connection value instead.', 'x-google-immutable': True}, 'maintenanceSchedule': {'$ref': '#/$defs/MaintenanceSchedule', 'readOnly': True, 'description': 'Output only. Published maintenance schedule.'}, 'managedBackupSource': {'$ref': '#/$defs/ManagedBackupSource', 'description': 'Optional. Immutable. Backups that generated and managed by memorystore service.', 'x-google-immutable': True}, 'ondemandMaintenance': {'type': 'boolean', 'writeOnly': True, 'deprecated': True, 'description': 'Optional. Input only. Ondemand maintenance for the instance.'}, 'pscAttachmentDetails': {'type': 'array', 'items': {'$ref': '#/$defs/PscAttachmentDetail'}, 'readOnly': True, 'description': 'Output only. Service attachment details to configure PSC connections.'}, 'automatedBackupConfig': {'$ref': '#/$defs/AutomatedBackupConfig', 'description': 'Optional. The automated backup config for the instance.'}, 'transitEncryptionMode': {'enum': ['TRANSIT_ENCRYPTION_MODE_UNSPECIFIED', 'TRANSIT_ENCRYPTION_DISABLED', 'SERVER_AUTHENTICATION'], 'type': 'string', 'description': 'Optional. Immutable. In-transit encryption mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'In-transit encryption is disabled.', 'Server-managed encryption is used for in-transit encryption.']}, 'zoneDistributionConfig': {'$ref': '#/$defs/ZoneDistributionConfig', 'description': 'Optional. Immutable. Zone distribution configuration of the instance for node allocation.', 'x-google-immutable': True}, 'rotateServerCertificate': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Rotate the server certificates.'}, 'simulateMaintenanceEvent': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Simulate a maintenance event.'}, 'allowFewerZonesDeployment': {'type': 'boolean', 'deprecated': True, 'description': 'Optional. Immutable. Deprecated, do not use.', 'x-google-immutable': True}, 'deletionProtectionEnabled': {'type': 'boolean', 'description': 'Optional. If set to true deletion of the instance will fail.'}, 'effectiveMaintenanceVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. This field represents the actual maintenance version of the instance.'}, 'availableMaintenanceVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. This field is used to determine the available maintenance versions for the self service update.'}, 'crossInstanceReplicationConfig': {'$ref': '#/$defs/CrossInstanceReplicationConfig', 'description': 'Optional. The config for cross instance replication.'}, 'asyncInstanceEndpointsDeletionEnabled': {'type': 'boolean', 'description': 'Optional. If true, instance endpoints that are created and registered by customers can be deleted asynchronously. That is, such an instance endpoint can be de-registered before the forwarding rules in the instance endpoint are deleted.'}}, 'description': 'A Memorystore instance.'}, 'AOFConfig': {'type': 'object', 'properties': {'appendFsync': {'enum': ['APPEND_FSYNC_UNSPECIFIED', 'NEVER', 'EVERY_SEC', 'ALWAYS'], 'type': 'string', 'description': 'Optional. The fsync mode.', 'x-google-enum-descriptions': ['Not set. Default: EVERY_SEC', "Never fsync. Normally Linux will flush data every 30 seconds with this configuration, but it's up to the kernel's exact tuning.", 'Fsync every second. You may lose 1 second of data if there is a disaster.', 'Fsync every time new write commands are appended to the AOF. The best data loss protection at the cost of performance.']}}, 'description': 'Configuration for AOF based persistence.'}, 'RDBConfig': {'type': 'object', 'properties': {'rdbSnapshotPeriod': {'enum': ['SNAPSHOT_PERIOD_UNSPECIFIED', 'ONE_HOUR', 'SIX_HOURS', 'TWELVE_HOURS', 'TWENTY_FOUR_HOURS'], 'type': 'string', 'description': 'Optional. Period between RDB snapshots.', 'x-google-enum-descriptions': ['Not set.', 'One hour.', 'Six hours.', 'Twelve hours.', 'Twenty four hours.']}, 'rdbSnapshotStartTime': {'type': 'string', 'format': 'date-time', 'description': 'Optional. Time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.'}}, 'description': 'Configuration for RDB based persistence.'}, 'StateInfo': {'type': 'object', 'properties': {'updateInfo': {'$ref': '#/$defs/UpdateInfo', 'readOnly': True, 'description': 'Output only. Describes ongoing update when instance state is UPDATING.'}}, 'description': 'Additional information about the state of the instance.'}, 'TimeOfDay': {'type': 'object', 'properties': {'hours': {'type': 'integer', 'format': 'int32', '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.'}, 'nanos': {'type': 'integer', 'format': 'int32', 'description': 'Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.'}, 'minutes': {'type': 'integer', 'format': 'int32', 'description': 'Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.'}, 'seconds': {'type': 'integer', 'format': 'int32', '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.'}}, '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`.'}, 'Membership': {'type': 'object', 'properties': {'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'readOnly': True, 'description': 'Output only. The primary instance that acts as the source of replication for the secondary instances.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'readOnly': True, 'description': 'Output only. The list of secondary instances replicating from the primary instance.'}}, 'description': 'An output only view of all the member instances participating in the cross instance replication.'}, 'NodeConfig': {'type': 'object', 'properties': {'sizeGb': {'type': 'number', 'format': 'double', 'readOnly': True, 'description': 'Output only. Memory size in GB of the node.'}}, 'description': 'Represents configuration for nodes of the instance.'}, 'UpdateInfo': {'type': 'object', 'properties': {'targetNodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Target node type for the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'targetShardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of shards for the instance.'}, 'targetReplicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of replica nodes per shard for the instance.'}, 'targetEngineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. Target engine version for the instance.'}}, 'description': 'Represents information about instance with state UPDATING.'}, 'AclPolicyInfo': {'type': 'object', 'properties': {'appliedAclPolicy': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}"'}, 'appliedAclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy revision. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionStatuses': {'type': 'array', 'items': {'$ref': '#/$defs/AclPolicyRevisionStatus'}, 'readOnly': True, 'description': 'Output only. A list of status for various revisions of this ACL policy on the instance.'}, 'appliedAclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the applied ACL policy revision.'}}, 'description': 'Details of the applied ACL policy.'}, 'PscConnection': {'type': 'object', 'required': ['pscConnectionId', 'ipAddress', 'forwardingRule', 'network', 'serviceAttachment'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The consumer project_id where the forwarding rule is created from.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'description': 'Required. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'description': 'Required. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'description': 'Required. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'User created Psc connection configuration.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}, 'RemoteInstance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The unique identifier of the remote instance.'}, 'instance': {'type': 'string', 'description': 'Optional. The full resource path of the remote instance in the format: projects//locations//instances/'}}, 'description': 'Details of the remote instance associated with this instance in a cross instance replication setup.'}, 'GcsBackupSource': {'type': 'object', 'properties': {'uris': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional. Example: gs://bucket1/object1, gs://bucket2/folder2/object2'}}, 'description': 'Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances.'}, 'MigrationConfig': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'ROLLED_BACK', 'ROLLING_BACK', 'REPLICATION_ESTABLISHED', 'MIGRATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Migration state of the instance.', 'x-google-enum-descriptions': ['Instance has no migration related activity. This is the initial state.', 'Instance is not currently migrating. The instance underwent a migration attempt that failed, and the subsequent rollback was successful. The instance is now ready for a new migration attempt if desired.', 'Indicates a previous migration attempt failed. The high-level instance state will be `MIGRATING`. The instance is not ready for a new migration attempt. Rollback is in progress to restore the instance to its original state. The instance will remain in this state until rollback is successful.', 'Instance is in the process of migration. Instance has established successful replication and is ready for cutover.', 'Instance is successfully migrated.']}, 'selfManagedSource': {'$ref': '#/$defs/SelfManagedSource', 'readOnly': True, 'description': 'Output only. Configuration for migrating from a self-managed Valkey/Redis instance'}, 'forceFinishMigration': {'type': 'boolean', 'readOnly': True, 'description': 'Output only. Represents a boolean flag to force migration finalization without offset catch up validation between source and target before stopping replication.'}}, 'description': 'Configuration for the migration of an instance.'}, 'ConnectionDetail': {'type': 'object', 'properties': {'pscConnection': {'$ref': '#/$defs/PscConnection', 'description': 'Detailed information of a PSC connection that is created by the user.'}, 'pscAutoConnection': {'$ref': '#/$defs/PscAutoConnection', 'description': 'Immutable. Detailed information of a PSC connection that is created through service connectivity automation.', 'x-google-immutable': True}}, 'description': 'Information of each PSC connection.'}, 'InstanceEndpoint': {'type': 'object', 'properties': {'connections': {'type': 'array', 'items': {'$ref': '#/$defs/ConnectionDetail'}, 'description': 'Optional. A group of PSC connections. They are created in the same VPC network, one for each service attachment in the cluster.'}}, 'description': 'InstanceEndpoint consists of PSC connections that are created as a group in each VPC network for accessing the instance. In each group, there shall be one connection for each service attachment in the cluster.'}, 'DiscoveryEndpoint': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. The port number of the exposed endpoint.'}, 'address': {'type': 'string', 'readOnly': True, 'description': 'Output only. IP address of the exposed endpoint clients connect to.'}, 'network': {'type': 'string', 'readOnly': True, 'description': 'Output only. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_name}.'}}, 'description': 'Represents an endpoint for clients to connect to the instance.'}, 'MaintenancePolicy': {'type': 'object', 'properties': {'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was created.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was updated.'}, 'weeklyMaintenanceWindow': {'type': 'array', 'items': {'$ref': '#/$defs/WeeklyMaintenanceWindow'}, 'description': 'Optional. Maintenance window that is applied to resources covered by this policy. Minimum 1. For the current version, the maximum number of weekly_window is expected to be one.'}}, 'description': 'Maintenance policy per instance.'}, 'PersistenceConfig': {'type': 'object', 'properties': {'mode': {'enum': ['PERSISTENCE_MODE_UNSPECIFIED', 'DISABLED', 'RDB', 'AOF'], 'type': 'string', 'description': 'Optional. Current persistence mode.', 'x-google-enum-descriptions': ['Not set.', 'Persistence is disabled, and any snapshot data is deleted.', 'RDB based persistence is enabled.', 'AOF based persistence is enabled.']}, 'aofConfig': {'$ref': '#/$defs/AOFConfig', 'description': 'Optional. AOF configuration. This field will be ignored if mode is not AOF.'}, 'rdbConfig': {'$ref': '#/$defs/RDBConfig', 'description': 'Optional. RDB configuration. This field will be ignored if mode is not RDB.'}}, 'description': 'Represents persistence configuration for a instance.'}, 'PscAutoConnection': {'type': 'object', 'required': ['projectId', 'network'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The network where the PSC endpoints are created, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'readOnly': True, 'description': 'Output only. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'description': 'Required. The consumer project_id where PSC connections are established. This should be the same project_id that the instance is being created in.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'readOnly': True, 'description': 'Output only. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'Details of consumer resources in a PSC connection.'}, 'SelfManagedSource': {'type': 'object', 'required': ['ipAddress', 'port', 'networkAttachment'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Required. The port of the source instance. This port should be a stable port that can be accessed by the Memorystore instance throughout the migration process.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP address of the source instance. This IP address should be a stable IP address that can be accessed by the Memorystore instance throughout the migration process.'}, 'networkAttachment': {'type': 'string', 'description': 'Required. The resource name of the Private Service Connect Network Attachment used to establish connectivity to the source instance. This network attachment has the following requirements: 1. It must be in the same project as the Memorystore instance. 2. It must be in the same region as the Memorystore instance. 3. The subnet attached to the network attachment must be in the same VPC network as the source instance nodes. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment}'}}, 'description': 'Details of the self-managed source instance.'}, 'MaintenanceSchedule': {'type': 'object', 'properties': {'endTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The end time of any upcoming scheduled maintenance for this instance.'}, 'startTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The start time of any upcoming scheduled maintenance for this instance.'}}, 'description': 'Upcoming maintenance schedule.'}, 'ManagedBackupSource': {'type': 'object', 'properties': {'backup': {'type': 'string', 'description': 'Optional. Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup} A shorter version (without the prefix) of the backup name is also supported, like projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup_id} In this case, it assumes the backup is under memorystore.googleapis.com.'}}, 'description': 'Backups that generated and managed by memorystore.'}, 'PscAttachmentDetail': {'type': 'object', 'properties': {'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of Psc endpoint.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. Service attachment URI which your self-created PscConnection should use as target.'}}, 'description': 'Configuration of a service attachment of the cluster, for creating PSC connections.'}, 'AutomatedBackupConfig': {'type': 'object', 'properties': {'retention': {'type': 'string', 'format': 'google-duration', 'description': 'Optional. How long to keep automated backups before the backups are deleted. The value should be between 1 day and 365 days. If not specified, the default value is 35 days.'}, 'automatedBackupMode': {'enum': ['AUTOMATED_BACKUP_MODE_UNSPECIFIED', 'DISABLED', 'ENABLED'], 'type': 'string', 'description': 'Optional. The automated backup mode. If the mode is disabled, the other fields will be ignored.', 'x-google-enum-descriptions': ['Default value. Automated backup config is not specified.', 'Automated backup config disabled.', 'Automated backup config enabled.']}, 'fixedFrequencySchedule': {'$ref': '#/$defs/FixedFrequencySchedule', 'description': 'Optional. Trigger automated backups at a fixed frequency.'}}, 'description': 'The automated backup config for an instance.'}, 'FixedFrequencySchedule': {'type': 'object', 'required': ['startTime'], 'properties': {'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Required. The start time of every automated backup in UTC. It must be set to the start of an hour. This field is required.'}}, 'description': 'This schedule allows the backup to be triggered at a fixed frequency (currently only daily is supported).'}, 'ZoneDistributionConfig': {'type': 'object', 'properties': {'mode': {'enum': ['ZONE_DISTRIBUTION_MODE_UNSPECIFIED', 'MULTI_ZONE', 'SINGLE_ZONE'], 'type': 'string', 'description': 'Optional. Current zone distribution mode. Defaults to MULTI_ZONE.', 'x-google-enum-descriptions': ['Not Set. Default: MULTI_ZONE', 'Distribute resources across 3 zones picked at random within the region.', 'Provision resources in a single zone. Zone field must be specified.']}, 'zone': {'type': 'string', 'description': 'Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.'}, 'zones': {'type': 'array', 'items': {'type': 'string'}, 'description': "Optional. Specify the zones of a multi-zone instance where Memorystore instance allocates resources. This flag isn't applicable for single-zone instances."}}, 'description': 'Zone distribution configuration for allocation of instance resources.'}, 'AclPolicyRevisionStatus': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'APPLYING', 'APPLIED', 'FAILED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. AclPolicyRevision state.', 'x-google-enum-descriptions': ['Not set.', 'The instance is attempting to apply this revision.', 'The instance has successfully applied this revision.', 'The instance failed to apply this revision.']}, 'errorMessage': {'type': 'string', 'readOnly': True, 'description': 'Output only. Human-readable error message providing more details for FAILED states.'}, 'aclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the ACL policy revision this status refers to. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the ACL policy revision this status refers to.'}}, 'description': 'AclPolicyRevisionStatus stores the per-revision status for an attached instance.'}, 'WeeklyMaintenanceWindow': {'type': 'object', 'properties': {'day': {'enum': ['DAY_OF_WEEK_UNSPECIFIED', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY'], 'type': 'string', 'description': 'Optional. Allows to define schedule that runs specified day of the week.', 'x-google-enum-descriptions': ['The day of the week is unspecified.', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']}, 'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Optional. Start time of the window in UTC.'}}, 'description': 'Time window specified for weekly operations.'}, 'CrossInstanceReplicationConfig': {'type': 'object', 'required': ['instanceRole'], 'properties': {'membership': {'$ref': '#/$defs/Membership', 'readOnly': True, 'description': 'Output only. An output only view of all the member instances participating in the cross instance replication. This view will be provided by every member instance irrespective of its instance role(primary or secondary). A primary instance can provide information about all the secondary instances replicating from it. However, a secondary instance only knows about the primary instance from which it is replicating. However, for scenarios, where the primary instance is unavailable(e.g. regional outage), a Getinstance request can be sent to any other member instance and this field will list all the member instances participating in cross instance replication.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time cross instance replication config was updated.'}, 'instanceRole': {'enum': ['INSTANCE_ROLE_UNSPECIFIED', 'NONE', 'PRIMARY', 'SECONDARY'], 'type': 'string', 'description': 'Required. The role of the instance in cross instance replication.', 'x-google-enum-descriptions': ['instance role is not set. The behavior is equivalent to NONE.', 'This instance does not participate in cross instance replication. It is an independent instance and does not replicate to or from any other instances.', 'A instance that allows both reads and writes. Any data written to this instance is also replicated to the attached secondary instances.', 'A instance that allows only reads and replicates data from a primary instance.']}, 'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'description': 'Optional. Details of the primary instance that is used as the replication source for this secondary instance. This field is only set for a secondary instance.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'description': 'Optional. List of secondary instances that are replicating from this primary instance. This field is only set for a primary instance.'}}, 'description': 'Cross instance replication config.'}}, 'required': ['parent', 'instanceId', 'instance'], 'properties': {'parent': {'type': 'string', 'description': 'Required. The parent resource where this instance will be created. Format: projects/{project}/locations/{location}'}, 'instance': {'$ref': '#/$defs/Instance', 'description': 'Required. The instance to create.'}, 'requestId': {'type': 'string', 'description': 'Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).'}, 'instanceId': {'type': 'string', 'description': "Required. The ID to use for the instance, which will become the final component of the instance's resource name. This value is subject to the following restrictions: * Must be 4-63 characters in length * Must begin with a letter or digit * Must contain only lowercase letters, digits, and hyphens * Must not end with a hyphen * Must be unique within a location"}}, 'description': 'Request message for `CreateInstance`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. Instance backup resource name using the form: `projects/{project_id}/locations/{location_id}/backupCollections/{backup_collection_id}/backups/{backup_id}`'}, 'requestId': {'type': 'string', 'description': 'Optional. Idempotent request UUID.'}}, 'description': 'Request for `DeleteBackup`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. The name of the instance to delete. Format: projects/{project}/locations/{location}/instances/{instance}'}, 'requestId': {'type': 'string', 'description': 'Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes after the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).'}}, 'description': 'Request message for `DeleteInstance`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. Instance backup resource name using the form: `projects/{project_id}/locations/{location_id}/backupCollections/{backup_collection_id}/backups/{backup_id}`'}, 'gcsBucket': {'type': 'string', 'description': 'Google Cloud Storage bucket, like "my-bucket".'}}, 'description': 'Request for `ExportBackup`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. Instance backup resource name using the form: `projects/{project_id}/locations/{location_id}/backupCollections/{backup_collection_id}/backups/{backup_id}`'}}, 'description': 'Request for `GetBackup`.'}
Schéma de sortie
{'type': 'object', '$defs': {'BackupFile': {'type': 'object', 'properties': {'fileName': {'type': 'string', 'readOnly': True, 'description': 'Output only. e.g: .rdb'}, 'sizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Size of the backup file in bytes.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup file was created.'}}, 'description': 'Backup is consisted of multiple backup files.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}}, 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned unique identifier of the backup.'}, 'name': {'type': 'string', 'description': 'Identifier. Full resource path of the backup. the last part of the name is the backup id with the following format: [YYYYMMDDHHMMSS]_[Shorted Instance UID] OR customer specified while backup instance. Example: 20240515123000_1234', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'DELETING', 'SUSPENDED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. State of the backup.', 'x-google-enum-descriptions': ['The default value, not set.', 'The backup is being created.', 'The backup is active to be used.', 'The backup is being deleted.', 'The backup is currently suspended due to reasons like project deletion, billing account closure, etc.']}, 'instance': {'type': 'string', 'readOnly': True, 'description': 'Output only. Instance resource path of this backup.'}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Node type of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'backupType': {'enum': ['BACKUP_TYPE_UNSPECIFIED', 'ON_DEMAND', 'AUTOMATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the backup.', 'x-google-enum-descriptions': ['The default value, not set.', 'On-demand backup.', 'Automated backup.']}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup was created.'}, 'expireTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup will expire.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Number of shards for the instance.'}, 'backupFiles': {'type': 'array', 'items': {'$ref': '#/$defs/BackupFile'}, 'readOnly': True, 'description': 'Output only. List of backup files of the backup.'}, 'instanceUid': {'type': 'string', 'readOnly': True, 'description': 'Output only. Instance uid of this backup.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Number of replicas for the instance.'}, 'engineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. valkey-7.5/valkey-8.0, etc.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the backup.'}, 'totalSizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total size of the backup in bytes.'}}, 'description': 'Backup of an instance.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. Instance backupCollection resource name using the form: `projects/{project_id}/locations/{location_id}/backupCollections/{backup_collection_id}` where `location_id` refers to a Google Cloud region.'}}, 'description': 'Request for `GetBackupCollection`.'}
Schéma de sortie
{'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned unique identifier of the backup collection.'}, 'name': {'type': 'string', 'description': 'Identifier. Full resource path of the backup collection.', 'x-google-identifier': True}, 'kmsKey': {'type': 'string', 'readOnly': True, 'description': 'Output only. The KMS key used to encrypt the backups under this backup collection.'}, 'instance': {'type': 'string', 'readOnly': True, 'description': 'Output only. The full resource path of the instance the backup collection belongs to. Example: projects/{project}/locations/{location}/instances/{instance}'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup collection was created.'}, 'instanceUid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The instance uid of the backup collection.'}, 'lastBackupTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time a backup was created in the backup collection.'}, 'totalBackupCount': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total number of backups in the backup collection.'}, 'totalBackupSizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total size of all backups in the backup collection.'}}, 'description': 'BackupCollection of an instance.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. The name of the certificate authority. Format: projects/{project}/locations/{location}/instances/{instance}/certificateAuthority'}}, 'description': 'Request message for `GetCertificateAuthority`.'}
Schéma de sortie
{'type': 'object', '$defs': {'CertChain': {'type': 'object', 'properties': {'certificates': {'type': 'array', 'items': {'type': 'string'}, 'description': 'The certificates that form the CA chain in order of leaf to root.'}}, 'description': 'A certificate chain.'}, 'ManagedCertificateAuthority': {'type': 'object', 'properties': {'caCerts': {'type': 'array', 'items': {'$ref': '#/$defs/CertChain'}, 'description': 'PEM encoded CA certificate chains for managed server authentication.'}}, 'description': 'A managed certificate authority.'}}, 'properties': {'name': {'type': 'string', 'description': 'Identifier. Unique name of the certificate authority. Format: projects/{project}/locations/{location}/instances/{instance}', 'x-google-identifier': True}, 'managedServerCa': {'$ref': '#/$defs/ManagedCertificateAuthority', 'description': 'A managed server certificate authority.'}}, 'description': 'A certificate authority for an instance.'}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'description': 'Required. The name of the instance to retrieve. Format: projects/{project}/locations/{location}/instances/{instance}'}}, 'description': 'Request message for `GetInstance`.'}
Schéma de sortie
{'type': 'object', '$defs': {'AOFConfig': {'type': 'object', 'properties': {'appendFsync': {'enum': ['APPEND_FSYNC_UNSPECIFIED', 'NEVER', 'EVERY_SEC', 'ALWAYS'], 'type': 'string', 'description': 'Optional. The fsync mode.', 'x-google-enum-descriptions': ['Not set. Default: EVERY_SEC', "Never fsync. Normally Linux will flush data every 30 seconds with this configuration, but it's up to the kernel's exact tuning.", 'Fsync every second. You may lose 1 second of data if there is a disaster.', 'Fsync every time new write commands are appended to the AOF. The best data loss protection at the cost of performance.']}}, 'description': 'Configuration for AOF based persistence.'}, 'RDBConfig': {'type': 'object', 'properties': {'rdbSnapshotPeriod': {'enum': ['SNAPSHOT_PERIOD_UNSPECIFIED', 'ONE_HOUR', 'SIX_HOURS', 'TWELVE_HOURS', 'TWENTY_FOUR_HOURS'], 'type': 'string', 'description': 'Optional. Period between RDB snapshots.', 'x-google-enum-descriptions': ['Not set.', 'One hour.', 'Six hours.', 'Twelve hours.', 'Twenty four hours.']}, 'rdbSnapshotStartTime': {'type': 'string', 'format': 'date-time', 'description': 'Optional. Time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.'}}, 'description': 'Configuration for RDB based persistence.'}, 'StateInfo': {'type': 'object', 'properties': {'updateInfo': {'$ref': '#/$defs/UpdateInfo', 'readOnly': True, 'description': 'Output only. Describes ongoing update when instance state is UPDATING.'}}, 'description': 'Additional information about the state of the instance.'}, 'TimeOfDay': {'type': 'object', 'properties': {'hours': {'type': 'integer', 'format': 'int32', '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.'}, 'nanos': {'type': 'integer', 'format': 'int32', 'description': 'Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.'}, 'minutes': {'type': 'integer', 'format': 'int32', 'description': 'Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.'}, 'seconds': {'type': 'integer', 'format': 'int32', '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.'}}, '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`.'}, 'Membership': {'type': 'object', 'properties': {'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'readOnly': True, 'description': 'Output only. The primary instance that acts as the source of replication for the secondary instances.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'readOnly': True, 'description': 'Output only. The list of secondary instances replicating from the primary instance.'}}, 'description': 'An output only view of all the member instances participating in the cross instance replication.'}, 'NodeConfig': {'type': 'object', 'properties': {'sizeGb': {'type': 'number', 'format': 'double', 'readOnly': True, 'description': 'Output only. Memory size in GB of the node.'}}, 'description': 'Represents configuration for nodes of the instance.'}, 'UpdateInfo': {'type': 'object', 'properties': {'targetNodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Target node type for the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'targetShardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of shards for the instance.'}, 'targetReplicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of replica nodes per shard for the instance.'}, 'targetEngineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. Target engine version for the instance.'}}, 'description': 'Represents information about instance with state UPDATING.'}, 'AclPolicyInfo': {'type': 'object', 'properties': {'appliedAclPolicy': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}"'}, 'appliedAclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy revision. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionStatuses': {'type': 'array', 'items': {'$ref': '#/$defs/AclPolicyRevisionStatus'}, 'readOnly': True, 'description': 'Output only. A list of status for various revisions of this ACL policy on the instance.'}, 'appliedAclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the applied ACL policy revision.'}}, 'description': 'Details of the applied ACL policy.'}, 'PscConnection': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The consumer project_id where the forwarding rule is created from.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'description': 'Required. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'description': 'Required. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'description': 'Required. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'User created Psc connection configuration.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}, 'RemoteInstance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The unique identifier of the remote instance.'}, 'instance': {'type': 'string', 'description': 'Optional. The full resource path of the remote instance in the format: projects//locations//instances/'}}, 'description': 'Details of the remote instance associated with this instance in a cross instance replication setup.'}, 'GcsBackupSource': {'type': 'object', 'properties': {'uris': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional. Example: gs://bucket1/object1, gs://bucket2/folder2/object2'}}, 'description': 'Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances.'}, 'MigrationConfig': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'ROLLED_BACK', 'ROLLING_BACK', 'REPLICATION_ESTABLISHED', 'MIGRATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Migration state of the instance.', 'x-google-enum-descriptions': ['Instance has no migration related activity. This is the initial state.', 'Instance is not currently migrating. The instance underwent a migration attempt that failed, and the subsequent rollback was successful. The instance is now ready for a new migration attempt if desired.', 'Indicates a previous migration attempt failed. The high-level instance state will be `MIGRATING`. The instance is not ready for a new migration attempt. Rollback is in progress to restore the instance to its original state. The instance will remain in this state until rollback is successful.', 'Instance is in the process of migration. Instance has established successful replication and is ready for cutover.', 'Instance is successfully migrated.']}, 'selfManagedSource': {'$ref': '#/$defs/SelfManagedSource', 'readOnly': True, 'description': 'Output only. Configuration for migrating from a self-managed Valkey/Redis instance'}, 'forceFinishMigration': {'type': 'boolean', 'readOnly': True, 'description': 'Output only. Represents a boolean flag to force migration finalization without offset catch up validation between source and target before stopping replication.'}}, 'description': 'Configuration for the migration of an instance.'}, 'ConnectionDetail': {'type': 'object', 'properties': {'pscConnection': {'$ref': '#/$defs/PscConnection', 'description': 'Detailed information of a PSC connection that is created by the user.'}, 'pscAutoConnection': {'$ref': '#/$defs/PscAutoConnection', 'description': 'Immutable. Detailed information of a PSC connection that is created through service connectivity automation.', 'x-google-immutable': True}}, 'description': 'Information of each PSC connection.'}, 'InstanceEndpoint': {'type': 'object', 'properties': {'connections': {'type': 'array', 'items': {'$ref': '#/$defs/ConnectionDetail'}, 'description': 'Optional. A group of PSC connections. They are created in the same VPC network, one for each service attachment in the cluster.'}}, 'description': 'InstanceEndpoint consists of PSC connections that are created as a group in each VPC network for accessing the instance. In each group, there shall be one connection for each service attachment in the cluster.'}, 'DiscoveryEndpoint': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. The port number of the exposed endpoint.'}, 'address': {'type': 'string', 'readOnly': True, 'description': 'Output only. IP address of the exposed endpoint clients connect to.'}, 'network': {'type': 'string', 'readOnly': True, 'description': 'Output only. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_name}.'}}, 'description': 'Represents an endpoint for clients to connect to the instance.'}, 'MaintenancePolicy': {'type': 'object', 'properties': {'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was created.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was updated.'}, 'weeklyMaintenanceWindow': {'type': 'array', 'items': {'$ref': '#/$defs/WeeklyMaintenanceWindow'}, 'description': 'Optional. Maintenance window that is applied to resources covered by this policy. Minimum 1. For the current version, the maximum number of weekly_window is expected to be one.'}}, 'description': 'Maintenance policy per instance.'}, 'PersistenceConfig': {'type': 'object', 'properties': {'mode': {'enum': ['PERSISTENCE_MODE_UNSPECIFIED', 'DISABLED', 'RDB', 'AOF'], 'type': 'string', 'description': 'Optional. Current persistence mode.', 'x-google-enum-descriptions': ['Not set.', 'Persistence is disabled, and any snapshot data is deleted.', 'RDB based persistence is enabled.', 'AOF based persistence is enabled.']}, 'aofConfig': {'$ref': '#/$defs/AOFConfig', 'description': 'Optional. AOF configuration. This field will be ignored if mode is not AOF.'}, 'rdbConfig': {'$ref': '#/$defs/RDBConfig', 'description': 'Optional. RDB configuration. This field will be ignored if mode is not RDB.'}}, 'description': 'Represents persistence configuration for a instance.'}, 'PscAutoConnection': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The network where the PSC endpoints are created, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'readOnly': True, 'description': 'Output only. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'description': 'Required. The consumer project_id where PSC connections are established. This should be the same project_id that the instance is being created in.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'readOnly': True, 'description': 'Output only. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'Details of consumer resources in a PSC connection.'}, 'SelfManagedSource': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Required. The port of the source instance. This port should be a stable port that can be accessed by the Memorystore instance throughout the migration process.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP address of the source instance. This IP address should be a stable IP address that can be accessed by the Memorystore instance throughout the migration process.'}, 'networkAttachment': {'type': 'string', 'description': 'Required. The resource name of the Private Service Connect Network Attachment used to establish connectivity to the source instance. This network attachment has the following requirements: 1. It must be in the same project as the Memorystore instance. 2. It must be in the same region as the Memorystore instance. 3. The subnet attached to the network attachment must be in the same VPC network as the source instance nodes. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment}'}}, 'description': 'Details of the self-managed source instance.'}, 'MaintenanceSchedule': {'type': 'object', 'properties': {'endTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The end time of any upcoming scheduled maintenance for this instance.'}, 'startTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The start time of any upcoming scheduled maintenance for this instance.'}}, 'description': 'Upcoming maintenance schedule.'}, 'ManagedBackupSource': {'type': 'object', 'properties': {'backup': {'type': 'string', 'description': 'Optional. Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup} A shorter version (without the prefix) of the backup name is also supported, like projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup_id} In this case, it assumes the backup is under memorystore.googleapis.com.'}}, 'description': 'Backups that generated and managed by memorystore.'}, 'PscAttachmentDetail': {'type': 'object', 'properties': {'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of Psc endpoint.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. Service attachment URI which your self-created PscConnection should use as target.'}}, 'description': 'Configuration of a service attachment of the cluster, for creating PSC connections.'}, 'AutomatedBackupConfig': {'type': 'object', 'properties': {'retention': {'type': 'string', 'format': 'google-duration', 'description': 'Optional. How long to keep automated backups before the backups are deleted. The value should be between 1 day and 365 days. If not specified, the default value is 35 days.'}, 'automatedBackupMode': {'enum': ['AUTOMATED_BACKUP_MODE_UNSPECIFIED', 'DISABLED', 'ENABLED'], 'type': 'string', 'description': 'Optional. The automated backup mode. If the mode is disabled, the other fields will be ignored.', 'x-google-enum-descriptions': ['Default value. Automated backup config is not specified.', 'Automated backup config disabled.', 'Automated backup config enabled.']}, 'fixedFrequencySchedule': {'$ref': '#/$defs/FixedFrequencySchedule', 'description': 'Optional. Trigger automated backups at a fixed frequency.'}}, 'description': 'The automated backup config for an instance.'}, 'FixedFrequencySchedule': {'type': 'object', 'properties': {'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Required. The start time of every automated backup in UTC. It must be set to the start of an hour. This field is required.'}}, 'description': 'This schedule allows the backup to be triggered at a fixed frequency (currently only daily is supported).'}, 'ZoneDistributionConfig': {'type': 'object', 'properties': {'mode': {'enum': ['ZONE_DISTRIBUTION_MODE_UNSPECIFIED', 'MULTI_ZONE', 'SINGLE_ZONE'], 'type': 'string', 'description': 'Optional. Current zone distribution mode. Defaults to MULTI_ZONE.', 'x-google-enum-descriptions': ['Not Set. Default: MULTI_ZONE', 'Distribute resources across 3 zones picked at random within the region.', 'Provision resources in a single zone. Zone field must be specified.']}, 'zone': {'type': 'string', 'description': 'Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.'}, 'zones': {'type': 'array', 'items': {'type': 'string'}, 'description': "Optional. Specify the zones of a multi-zone instance where Memorystore instance allocates resources. This flag isn't applicable for single-zone instances."}}, 'description': 'Zone distribution configuration for allocation of instance resources.'}, 'AclPolicyRevisionStatus': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'APPLYING', 'APPLIED', 'FAILED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. AclPolicyRevision state.', 'x-google-enum-descriptions': ['Not set.', 'The instance is attempting to apply this revision.', 'The instance has successfully applied this revision.', 'The instance failed to apply this revision.']}, 'errorMessage': {'type': 'string', 'readOnly': True, 'description': 'Output only. Human-readable error message providing more details for FAILED states.'}, 'aclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the ACL policy revision this status refers to. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the ACL policy revision this status refers to.'}}, 'description': 'AclPolicyRevisionStatus stores the per-revision status for an attached instance.'}, 'WeeklyMaintenanceWindow': {'type': 'object', 'properties': {'day': {'enum': ['DAY_OF_WEEK_UNSPECIFIED', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY'], 'type': 'string', 'description': 'Optional. Allows to define schedule that runs specified day of the week.', 'x-google-enum-descriptions': ['The day of the week is unspecified.', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']}, 'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Optional. Start time of the window in UTC.'}}, 'description': 'Time window specified for weekly operations.'}, 'CrossInstanceReplicationConfig': {'type': 'object', 'properties': {'membership': {'$ref': '#/$defs/Membership', 'readOnly': True, 'description': 'Output only. An output only view of all the member instances participating in the cross instance replication. This view will be provided by every member instance irrespective of its instance role(primary or secondary). A primary instance can provide information about all the secondary instances replicating from it. However, a secondary instance only knows about the primary instance from which it is replicating. However, for scenarios, where the primary instance is unavailable(e.g. regional outage), a Getinstance request can be sent to any other member instance and this field will list all the member instances participating in cross instance replication.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time cross instance replication config was updated.'}, 'instanceRole': {'enum': ['INSTANCE_ROLE_UNSPECIFIED', 'NONE', 'PRIMARY', 'SECONDARY'], 'type': 'string', 'description': 'Required. The role of the instance in cross instance replication.', 'x-google-enum-descriptions': ['instance role is not set. The behavior is equivalent to NONE.', 'This instance does not participate in cross instance replication. It is an independent instance and does not replicate to or from any other instances.', 'A instance that allows both reads and writes. Any data written to this instance is also replicated to the attached secondary instances.', 'A instance that allows only reads and replicates data from a primary instance.']}, 'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'description': 'Optional. Details of the primary instance that is used as the replication source for this secondary instance. This field is only set for a secondary instance.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'description': 'Optional. List of secondary instances that are replicating from this primary instance. This field is only set for a primary instance.'}}, 'description': 'Cross instance replication config.'}}, 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned, unique identifier for the instance.'}, 'mode': {'enum': ['MODE_UNSPECIFIED', 'STANDALONE', 'CLUSTER', 'CLUSTER_DISABLED'], 'type': 'string', 'description': 'Optional. Immutable. The mode config for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, True, False, False], 'x-google-enum-descriptions': ['Mode is not specified.', 'Deprecated: Use CLUSTER_DISABLED instead.', 'Instance is in cluster mode.', 'Cluster mode is disabled for the instance.']}, 'name': {'type': 'string', 'description': 'Identifier. Unique name of the instance. Format: projects/{project}/locations/{location}/instances/{instance}', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'UPDATING', 'DELETING', 'MIGRATING'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Current state of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Instance is being created.', 'Instance has been created and is usable.', 'Instance is being updated.', 'Instance is being deleted.', 'Instance is being migrated.']}, 'kmsKey': {'type': 'string', 'description': 'Optional. The KMS key used to encrypt the at-rest data of the cluster.'}, 'labels': {'type': 'object', 'description': 'Optional. Labels to represent user-provided metadata.', 'additionalProperties': {'type': 'string'}}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'description': 'Optional. Machine type for individual nodes of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'aclPolicy': {'type': 'string', 'description': 'Optional. The ACL policy for the instance. Format: projects/{project}/locations/{location}/aclPolicies/{acl_policy}'}, 'endpoints': {'type': 'array', 'items': {'$ref': '#/$defs/InstanceEndpoint'}, 'description': 'Optional. Endpoints for the instance.'}, 'gcsSource': {'$ref': '#/$defs/GcsBackupSource', 'description': 'Optional. Immutable. Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances. Read permission is required to import from the provided Cloud Storage Objects.', 'x-google-immutable': True}, 'stateInfo': {'$ref': '#/$defs/StateInfo', 'readOnly': True, 'description': 'Output only. Additional information about the state of the instance.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Creation timestamp of the instance.'}, 'nodeConfig': {'$ref': '#/$defs/NodeConfig', 'readOnly': True, 'description': 'Output only. Configuration of individual nodes of the instance.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of shards for the instance.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Latest update timestamp of the instance.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of replica nodes per shard. If omitted the default is 0 replicas.'}, 'satisfiesPzi': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'satisfiesPzs': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'serverCaMode': {'enum': ['SERVER_CA_MODE_UNSPECIFIED', 'GOOGLE_MANAGED_PER_INSTANCE_CA', 'GOOGLE_MANAGED_SHARED_CA', 'CUSTOMER_MANAGED_CAS_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_PER_INSTANCE_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_SHARED_CA', 'SERVER_CA_MODE_CUSTOMER_MANAGED_CAS_CA'], 'type': 'string', 'description': 'Optional. Immutable. The Server CA mode for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, False, False, False, True, True, True], 'x-google-enum-descriptions': ['Server CA mode not specified.', 'Each instance has its own Google-managed CA.', "The instance uses a Google-managed shared CA for the instance's region.", 'The instance uses a customer-managed CA from CAS.', 'Deprecated: Use GOOGLE_MANAGED_PER_INSTANCE_CA instead.', 'Deprecated: Use GOOGLE_MANAGED_SHARED_CA instead.', 'Deprecated: Use CUSTOMER_MANAGED_CAS_CA instead.']}, 'serverCaPool': {'type': 'string', 'description': 'Optional. Immutable. The customer-managed CA pool for the instance. Only applicable if the Server CA mode is CUSTOMER_MANAGED_CAS_CA. Format: "projects/{project}/locations/{region}/caPools/{ca_pool}".', 'x-google-immutable': True}, 'aclPolicyInfo': {'$ref': '#/$defs/AclPolicyInfo', 'readOnly': True, 'description': 'Output only. Details of the applied ACL policy.'}, 'engineConfigs': {'type': 'object', 'description': 'Optional. User-provided engine configurations for the instance.', 'additionalProperties': {'type': 'string'}}, 'engineVersion': {'type': 'string', 'description': 'Optional. Engine version of the instance.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the data at rest of the cluster.'}, 'aclPolicyInSync': {'type': 'boolean', 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: Whether the ACL rules applied to the instance are in sync.'}, 'migrationConfig': {'$ref': '#/$defs/MigrationConfig', 'readOnly': True, 'description': 'Output only. Migration config for the instance.'}, 'backupCollection': {'type': 'string', 'readOnly': True, 'description': 'Output only. The backup collection full resource name. Example: projects/{project}/locations/{location}/backupCollections/{collection}'}, 'authorizationMode': {'enum': ['AUTHORIZATION_MODE_UNSPECIFIED', 'AUTH_DISABLED', 'IAM_AUTH', 'TOKEN_AUTH'], 'type': 'string', 'description': 'Optional. Immutable. Authorization mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'Authorization disabled.', 'IAM basic authorization.', 'Token based authorization.']}, 'maintenancePolicy': {'$ref': '#/$defs/MaintenancePolicy', 'description': 'Optional. The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule.'}, 'persistenceConfig': {'$ref': '#/$defs/PersistenceConfig', 'description': 'Optional. Persistence configuration of the instance.'}, 'discoveryEndpoints': {'type': 'array', 'items': {'$ref': '#/$defs/DiscoveryEndpoint'}, 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: The discovery_endpoints parameter is deprecated. As a result, it will not be populated if the connections are created using endpoints parameter. Instead of this parameter, for discovery, use endpoints.connections.pscConnection and endpoints.connections.pscAutoConnection with connectionType CONNECTION_TYPE_DISCOVERY.'}, 'maintenanceVersion': {'type': 'string', 'description': 'Optional. This field can be used to trigger self service update to indicate the desired maintenance version. The input to this field can be determined by the available_maintenance_versions field.'}, 'pscAutoConnections': {'type': 'array', 'items': {'$ref': '#/$defs/PscAutoConnection'}, 'deprecated': True, 'description': 'Optional. Immutable. Deprecated: Use the endpoints.connections.psc_auto_connection value instead.', 'x-google-immutable': True}, 'maintenanceSchedule': {'$ref': '#/$defs/MaintenanceSchedule', 'readOnly': True, 'description': 'Output only. Published maintenance schedule.'}, 'managedBackupSource': {'$ref': '#/$defs/ManagedBackupSource', 'description': 'Optional. Immutable. Backups that generated and managed by memorystore service.', 'x-google-immutable': True}, 'ondemandMaintenance': {'type': 'boolean', 'writeOnly': True, 'deprecated': True, 'description': 'Optional. Input only. Ondemand maintenance for the instance.'}, 'pscAttachmentDetails': {'type': 'array', 'items': {'$ref': '#/$defs/PscAttachmentDetail'}, 'readOnly': True, 'description': 'Output only. Service attachment details to configure PSC connections.'}, 'automatedBackupConfig': {'$ref': '#/$defs/AutomatedBackupConfig', 'description': 'Optional. The automated backup config for the instance.'}, 'transitEncryptionMode': {'enum': ['TRANSIT_ENCRYPTION_MODE_UNSPECIFIED', 'TRANSIT_ENCRYPTION_DISABLED', 'SERVER_AUTHENTICATION'], 'type': 'string', 'description': 'Optional. Immutable. In-transit encryption mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'In-transit encryption is disabled.', 'Server-managed encryption is used for in-transit encryption.']}, 'zoneDistributionConfig': {'$ref': '#/$defs/ZoneDistributionConfig', 'description': 'Optional. Immutable. Zone distribution configuration of the instance for node allocation.', 'x-google-immutable': True}, 'rotateServerCertificate': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Rotate the server certificates.'}, 'simulateMaintenanceEvent': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Simulate a maintenance event.'}, 'allowFewerZonesDeployment': {'type': 'boolean', 'deprecated': True, 'description': 'Optional. Immutable. Deprecated, do not use.', 'x-google-immutable': True}, 'deletionProtectionEnabled': {'type': 'boolean', 'description': 'Optional. If set to true deletion of the instance will fail.'}, 'effectiveMaintenanceVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. This field represents the actual maintenance version of the instance.'}, 'availableMaintenanceVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. This field is used to determine the available maintenance versions for the self service update.'}, 'crossInstanceReplicationConfig': {'$ref': '#/$defs/CrossInstanceReplicationConfig', 'description': 'Optional. The config for cross instance replication.'}, 'asyncInstanceEndpointsDeletionEnabled': {'type': 'boolean', 'description': 'Optional. If true, instance endpoints that are created and registered by customers can be deleted asynchronously. That is, such an instance endpoint can be de-registered before the forwarding rules in the instance endpoint are deleted.'}}, 'description': 'A Memorystore instance.'}
Schéma d’entrée
{'type': 'object', 'required': ['parent'], 'properties': {'parent': {'type': 'string', 'description': 'Required. The resource name of the backupCollection location using the form: `projects/{project_id}/locations/{location_id}` where `location_id` refers to a Google Cloud region.'}, 'pageSize': {'type': 'integer', 'format': 'int32', 'description': "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried."}, 'pageToken': {'type': 'string', 'description': 'Optional. The `next_page_token` value returned from a previous `ListBackupCollections` request, if any.'}}, 'description': 'Request for `ListBackupCollections`.'}
Schéma de sortie
{'type': 'object', '$defs': {'BackupCollection': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned unique identifier of the backup collection.'}, 'name': {'type': 'string', 'description': 'Identifier. Full resource path of the backup collection.', 'x-google-identifier': True}, 'kmsKey': {'type': 'string', 'readOnly': True, 'description': 'Output only. The KMS key used to encrypt the backups under this backup collection.'}, 'instance': {'type': 'string', 'readOnly': True, 'description': 'Output only. The full resource path of the instance the backup collection belongs to. Example: projects/{project}/locations/{location}/instances/{instance}'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup collection was created.'}, 'instanceUid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The instance uid of the backup collection.'}, 'lastBackupTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time a backup was created in the backup collection.'}, 'totalBackupCount': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total number of backups in the backup collection.'}, 'totalBackupSizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total size of all backups in the backup collection.'}}, 'description': 'BackupCollection of an instance.'}}, 'properties': {'unreachable': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations that could not be reached.'}, 'nextPageToken': {'type': 'string', 'description': 'Token to retrieve the next page of results, or empty if there are no more results in the list.'}, 'backupCollections': {'type': 'array', 'items': {'$ref': '#/$defs/BackupCollection'}, 'description': 'A list of backupCollections in the project. If the `location_id` in the parent field of the request is "-", all regions available to the project are queried, and the results aggregated. If in such an aggregated query a location is unavailable, a placeholder backupCollection entry is included in the response with the `name` field set to a value of the form `projects/{project_id}/locations/{location_id}/backupCollections/`- and the `status` field set to ERROR and `status_message` field set to "location not available for ListBackupCollections".'}}, 'description': 'Response for `ListBackupCollections`.'}
Schéma d’entrée
{'type': 'object', 'required': ['parent'], 'properties': {'parent': {'type': 'string', 'description': 'Required. The resource name of the backupCollection using the form: `projects/{project_id}/locations/{location_id}/backupCollections/{backup_collection_id}`'}, 'pageSize': {'type': 'integer', 'format': 'int32', 'description': "Optional. The maximum number of items to return. If not specified, a default value of 1000 will be used by the service. Regardless of the page_size value, the response may include a partial list and a caller should only rely on response's `next_page_token` to determine if there are more clusters left to be queried."}, 'pageToken': {'type': 'string', 'description': 'Optional. The `next_page_token` value returned from a previous `ListBackupCollections` request, if any.'}}, 'description': 'Request for `ListBackups`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Backup': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned unique identifier of the backup.'}, 'name': {'type': 'string', 'description': 'Identifier. Full resource path of the backup. the last part of the name is the backup id with the following format: [YYYYMMDDHHMMSS]_[Shorted Instance UID] OR customer specified while backup instance. Example: 20240515123000_1234', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'DELETING', 'SUSPENDED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. State of the backup.', 'x-google-enum-descriptions': ['The default value, not set.', 'The backup is being created.', 'The backup is active to be used.', 'The backup is being deleted.', 'The backup is currently suspended due to reasons like project deletion, billing account closure, etc.']}, 'instance': {'type': 'string', 'readOnly': True, 'description': 'Output only. Instance resource path of this backup.'}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Node type of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'backupType': {'enum': ['BACKUP_TYPE_UNSPECIFIED', 'ON_DEMAND', 'AUTOMATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the backup.', 'x-google-enum-descriptions': ['The default value, not set.', 'On-demand backup.', 'Automated backup.']}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup was created.'}, 'expireTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup will expire.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Number of shards for the instance.'}, 'backupFiles': {'type': 'array', 'items': {'$ref': '#/$defs/BackupFile'}, 'readOnly': True, 'description': 'Output only. List of backup files of the backup.'}, 'instanceUid': {'type': 'string', 'readOnly': True, 'description': 'Output only. Instance uid of this backup.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Number of replicas for the instance.'}, 'engineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. valkey-7.5/valkey-8.0, etc.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the backup.'}, 'totalSizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Total size of the backup in bytes.'}}, 'description': 'Backup of an instance.'}, 'BackupFile': {'type': 'object', 'properties': {'fileName': {'type': 'string', 'readOnly': True, 'description': 'Output only. e.g: .rdb'}, 'sizeBytes': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. Size of the backup file in bytes.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the backup file was created.'}}, 'description': 'Backup is consisted of multiple backup files.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}}, 'properties': {'backups': {'type': 'array', 'items': {'$ref': '#/$defs/Backup'}, 'description': 'A list of backups in the project.'}, 'unreachable': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Backups that could not be reached.'}, 'nextPageToken': {'type': 'string', 'description': 'Token to retrieve the next page of results, or empty if there are no more results in the list.'}}, 'description': 'Response for `ListBackups`.'}
Schéma d’entrée
{'type': 'object', 'required': ['parent'], 'properties': {'filter': {'type': 'string', 'description': 'Optional. Expression for filtering results.'}, 'parent': {'type': 'string', 'description': 'Required. The parent to list instances from. Format: projects/{project}/locations/{location}'}, 'orderBy': {'type': 'string', 'description': 'Optional. Sort results by a defined order. Supported values: "name", "create_time".'}, 'pageSize': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Requested page size. Server may return fewer items than requested. If unspecified, server will pick an appropriate default.'}, 'pageToken': {'type': 'string', 'description': 'Optional. A token identifying a page of results the server should return.'}}, 'description': 'Request message for `ListInstances`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Instance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned, unique identifier for the instance.'}, 'mode': {'enum': ['MODE_UNSPECIFIED', 'STANDALONE', 'CLUSTER', 'CLUSTER_DISABLED'], 'type': 'string', 'description': 'Optional. Immutable. The mode config for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, True, False, False], 'x-google-enum-descriptions': ['Mode is not specified.', 'Deprecated: Use CLUSTER_DISABLED instead.', 'Instance is in cluster mode.', 'Cluster mode is disabled for the instance.']}, 'name': {'type': 'string', 'description': 'Identifier. Unique name of the instance. Format: projects/{project}/locations/{location}/instances/{instance}', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'UPDATING', 'DELETING', 'MIGRATING'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Current state of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Instance is being created.', 'Instance has been created and is usable.', 'Instance is being updated.', 'Instance is being deleted.', 'Instance is being migrated.']}, 'kmsKey': {'type': 'string', 'description': 'Optional. The KMS key used to encrypt the at-rest data of the cluster.'}, 'labels': {'type': 'object', 'description': 'Optional. Labels to represent user-provided metadata.', 'additionalProperties': {'type': 'string'}}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'description': 'Optional. Machine type for individual nodes of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'aclPolicy': {'type': 'string', 'description': 'Optional. The ACL policy for the instance. Format: projects/{project}/locations/{location}/aclPolicies/{acl_policy}'}, 'endpoints': {'type': 'array', 'items': {'$ref': '#/$defs/InstanceEndpoint'}, 'description': 'Optional. Endpoints for the instance.'}, 'gcsSource': {'$ref': '#/$defs/GcsBackupSource', 'description': 'Optional. Immutable. Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances. Read permission is required to import from the provided Cloud Storage Objects.', 'x-google-immutable': True}, 'stateInfo': {'$ref': '#/$defs/StateInfo', 'readOnly': True, 'description': 'Output only. Additional information about the state of the instance.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Creation timestamp of the instance.'}, 'nodeConfig': {'$ref': '#/$defs/NodeConfig', 'readOnly': True, 'description': 'Output only. Configuration of individual nodes of the instance.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of shards for the instance.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Latest update timestamp of the instance.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of replica nodes per shard. If omitted the default is 0 replicas.'}, 'satisfiesPzi': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'satisfiesPzs': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'serverCaMode': {'enum': ['SERVER_CA_MODE_UNSPECIFIED', 'GOOGLE_MANAGED_PER_INSTANCE_CA', 'GOOGLE_MANAGED_SHARED_CA', 'CUSTOMER_MANAGED_CAS_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_PER_INSTANCE_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_SHARED_CA', 'SERVER_CA_MODE_CUSTOMER_MANAGED_CAS_CA'], 'type': 'string', 'description': 'Optional. Immutable. The Server CA mode for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, False, False, False, True, True, True], 'x-google-enum-descriptions': ['Server CA mode not specified.', 'Each instance has its own Google-managed CA.', "The instance uses a Google-managed shared CA for the instance's region.", 'The instance uses a customer-managed CA from CAS.', 'Deprecated: Use GOOGLE_MANAGED_PER_INSTANCE_CA instead.', 'Deprecated: Use GOOGLE_MANAGED_SHARED_CA instead.', 'Deprecated: Use CUSTOMER_MANAGED_CAS_CA instead.']}, 'serverCaPool': {'type': 'string', 'description': 'Optional. Immutable. The customer-managed CA pool for the instance. Only applicable if the Server CA mode is CUSTOMER_MANAGED_CAS_CA. Format: "projects/{project}/locations/{region}/caPools/{ca_pool}".', 'x-google-immutable': True}, 'aclPolicyInfo': {'$ref': '#/$defs/AclPolicyInfo', 'readOnly': True, 'description': 'Output only. Details of the applied ACL policy.'}, 'engineConfigs': {'type': 'object', 'description': 'Optional. User-provided engine configurations for the instance.', 'additionalProperties': {'type': 'string'}}, 'engineVersion': {'type': 'string', 'description': 'Optional. Engine version of the instance.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the data at rest of the cluster.'}, 'aclPolicyInSync': {'type': 'boolean', 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: Whether the ACL rules applied to the instance are in sync.'}, 'migrationConfig': {'$ref': '#/$defs/MigrationConfig', 'readOnly': True, 'description': 'Output only. Migration config for the instance.'}, 'backupCollection': {'type': 'string', 'readOnly': True, 'description': 'Output only. The backup collection full resource name. Example: projects/{project}/locations/{location}/backupCollections/{collection}'}, 'authorizationMode': {'enum': ['AUTHORIZATION_MODE_UNSPECIFIED', 'AUTH_DISABLED', 'IAM_AUTH', 'TOKEN_AUTH'], 'type': 'string', 'description': 'Optional. Immutable. Authorization mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'Authorization disabled.', 'IAM basic authorization.', 'Token based authorization.']}, 'maintenancePolicy': {'$ref': '#/$defs/MaintenancePolicy', 'description': 'Optional. The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule.'}, 'persistenceConfig': {'$ref': '#/$defs/PersistenceConfig', 'description': 'Optional. Persistence configuration of the instance.'}, 'discoveryEndpoints': {'type': 'array', 'items': {'$ref': '#/$defs/DiscoveryEndpoint'}, 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: The discovery_endpoints parameter is deprecated. As a result, it will not be populated if the connections are created using endpoints parameter. Instead of this parameter, for discovery, use endpoints.connections.pscConnection and endpoints.connections.pscAutoConnection with connectionType CONNECTION_TYPE_DISCOVERY.'}, 'maintenanceVersion': {'type': 'string', 'description': 'Optional. This field can be used to trigger self service update to indicate the desired maintenance version. The input to this field can be determined by the available_maintenance_versions field.'}, 'pscAutoConnections': {'type': 'array', 'items': {'$ref': '#/$defs/PscAutoConnection'}, 'deprecated': True, 'description': 'Optional. Immutable. Deprecated: Use the endpoints.connections.psc_auto_connection value instead.', 'x-google-immutable': True}, 'maintenanceSchedule': {'$ref': '#/$defs/MaintenanceSchedule', 'readOnly': True, 'description': 'Output only. Published maintenance schedule.'}, 'managedBackupSource': {'$ref': '#/$defs/ManagedBackupSource', 'description': 'Optional. Immutable. Backups that generated and managed by memorystore service.', 'x-google-immutable': True}, 'ondemandMaintenance': {'type': 'boolean', 'writeOnly': True, 'deprecated': True, 'description': 'Optional. Input only. Ondemand maintenance for the instance.'}, 'pscAttachmentDetails': {'type': 'array', 'items': {'$ref': '#/$defs/PscAttachmentDetail'}, 'readOnly': True, 'description': 'Output only. Service attachment details to configure PSC connections.'}, 'automatedBackupConfig': {'$ref': '#/$defs/AutomatedBackupConfig', 'description': 'Optional. The automated backup config for the instance.'}, 'transitEncryptionMode': {'enum': ['TRANSIT_ENCRYPTION_MODE_UNSPECIFIED', 'TRANSIT_ENCRYPTION_DISABLED', 'SERVER_AUTHENTICATION'], 'type': 'string', 'description': 'Optional. Immutable. In-transit encryption mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'In-transit encryption is disabled.', 'Server-managed encryption is used for in-transit encryption.']}, 'zoneDistributionConfig': {'$ref': '#/$defs/ZoneDistributionConfig', 'description': 'Optional. Immutable. Zone distribution configuration of the instance for node allocation.', 'x-google-immutable': True}, 'rotateServerCertificate': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Rotate the server certificates.'}, 'simulateMaintenanceEvent': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Simulate a maintenance event.'}, 'allowFewerZonesDeployment': {'type': 'boolean', 'deprecated': True, 'description': 'Optional. Immutable. Deprecated, do not use.', 'x-google-immutable': True}, 'deletionProtectionEnabled': {'type': 'boolean', 'description': 'Optional. If set to true deletion of the instance will fail.'}, 'effectiveMaintenanceVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. This field represents the actual maintenance version of the instance.'}, 'availableMaintenanceVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. This field is used to determine the available maintenance versions for the self service update.'}, 'crossInstanceReplicationConfig': {'$ref': '#/$defs/CrossInstanceReplicationConfig', 'description': 'Optional. The config for cross instance replication.'}, 'asyncInstanceEndpointsDeletionEnabled': {'type': 'boolean', 'description': 'Optional. If true, instance endpoints that are created and registered by customers can be deleted asynchronously. That is, such an instance endpoint can be de-registered before the forwarding rules in the instance endpoint are deleted.'}}, 'description': 'A Memorystore instance.'}, 'AOFConfig': {'type': 'object', 'properties': {'appendFsync': {'enum': ['APPEND_FSYNC_UNSPECIFIED', 'NEVER', 'EVERY_SEC', 'ALWAYS'], 'type': 'string', 'description': 'Optional. The fsync mode.', 'x-google-enum-descriptions': ['Not set. Default: EVERY_SEC', "Never fsync. Normally Linux will flush data every 30 seconds with this configuration, but it's up to the kernel's exact tuning.", 'Fsync every second. You may lose 1 second of data if there is a disaster.', 'Fsync every time new write commands are appended to the AOF. The best data loss protection at the cost of performance.']}}, 'description': 'Configuration for AOF based persistence.'}, 'RDBConfig': {'type': 'object', 'properties': {'rdbSnapshotPeriod': {'enum': ['SNAPSHOT_PERIOD_UNSPECIFIED', 'ONE_HOUR', 'SIX_HOURS', 'TWELVE_HOURS', 'TWENTY_FOUR_HOURS'], 'type': 'string', 'description': 'Optional. Period between RDB snapshots.', 'x-google-enum-descriptions': ['Not set.', 'One hour.', 'Six hours.', 'Twelve hours.', 'Twenty four hours.']}, 'rdbSnapshotStartTime': {'type': 'string', 'format': 'date-time', 'description': 'Optional. Time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.'}}, 'description': 'Configuration for RDB based persistence.'}, 'StateInfo': {'type': 'object', 'properties': {'updateInfo': {'$ref': '#/$defs/UpdateInfo', 'readOnly': True, 'description': 'Output only. Describes ongoing update when instance state is UPDATING.'}}, 'description': 'Additional information about the state of the instance.'}, 'TimeOfDay': {'type': 'object', 'properties': {'hours': {'type': 'integer', 'format': 'int32', '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.'}, 'nanos': {'type': 'integer', 'format': 'int32', 'description': 'Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.'}, 'minutes': {'type': 'integer', 'format': 'int32', 'description': 'Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.'}, 'seconds': {'type': 'integer', 'format': 'int32', '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.'}}, '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`.'}, 'Membership': {'type': 'object', 'properties': {'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'readOnly': True, 'description': 'Output only. The primary instance that acts as the source of replication for the secondary instances.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'readOnly': True, 'description': 'Output only. The list of secondary instances replicating from the primary instance.'}}, 'description': 'An output only view of all the member instances participating in the cross instance replication.'}, 'NodeConfig': {'type': 'object', 'properties': {'sizeGb': {'type': 'number', 'format': 'double', 'readOnly': True, 'description': 'Output only. Memory size in GB of the node.'}}, 'description': 'Represents configuration for nodes of the instance.'}, 'UpdateInfo': {'type': 'object', 'properties': {'targetNodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Target node type for the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'targetShardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of shards for the instance.'}, 'targetReplicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of replica nodes per shard for the instance.'}, 'targetEngineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. Target engine version for the instance.'}}, 'description': 'Represents information about instance with state UPDATING.'}, 'AclPolicyInfo': {'type': 'object', 'properties': {'appliedAclPolicy': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}"'}, 'appliedAclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy revision. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionStatuses': {'type': 'array', 'items': {'$ref': '#/$defs/AclPolicyRevisionStatus'}, 'readOnly': True, 'description': 'Output only. A list of status for various revisions of this ACL policy on the instance.'}, 'appliedAclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the applied ACL policy revision.'}}, 'description': 'Details of the applied ACL policy.'}, 'PscConnection': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The consumer project_id where the forwarding rule is created from.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'description': 'Required. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'description': 'Required. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'description': 'Required. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'User created Psc connection configuration.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}, 'RemoteInstance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The unique identifier of the remote instance.'}, 'instance': {'type': 'string', 'description': 'Optional. The full resource path of the remote instance in the format: projects//locations//instances/'}}, 'description': 'Details of the remote instance associated with this instance in a cross instance replication setup.'}, 'GcsBackupSource': {'type': 'object', 'properties': {'uris': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional. Example: gs://bucket1/object1, gs://bucket2/folder2/object2'}}, 'description': 'Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances.'}, 'MigrationConfig': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'ROLLED_BACK', 'ROLLING_BACK', 'REPLICATION_ESTABLISHED', 'MIGRATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Migration state of the instance.', 'x-google-enum-descriptions': ['Instance has no migration related activity. This is the initial state.', 'Instance is not currently migrating. The instance underwent a migration attempt that failed, and the subsequent rollback was successful. The instance is now ready for a new migration attempt if desired.', 'Indicates a previous migration attempt failed. The high-level instance state will be `MIGRATING`. The instance is not ready for a new migration attempt. Rollback is in progress to restore the instance to its original state. The instance will remain in this state until rollback is successful.', 'Instance is in the process of migration. Instance has established successful replication and is ready for cutover.', 'Instance is successfully migrated.']}, 'selfManagedSource': {'$ref': '#/$defs/SelfManagedSource', 'readOnly': True, 'description': 'Output only. Configuration for migrating from a self-managed Valkey/Redis instance'}, 'forceFinishMigration': {'type': 'boolean', 'readOnly': True, 'description': 'Output only. Represents a boolean flag to force migration finalization without offset catch up validation between source and target before stopping replication.'}}, 'description': 'Configuration for the migration of an instance.'}, 'ConnectionDetail': {'type': 'object', 'properties': {'pscConnection': {'$ref': '#/$defs/PscConnection', 'description': 'Detailed information of a PSC connection that is created by the user.'}, 'pscAutoConnection': {'$ref': '#/$defs/PscAutoConnection', 'description': 'Immutable. Detailed information of a PSC connection that is created through service connectivity automation.', 'x-google-immutable': True}}, 'description': 'Information of each PSC connection.'}, 'InstanceEndpoint': {'type': 'object', 'properties': {'connections': {'type': 'array', 'items': {'$ref': '#/$defs/ConnectionDetail'}, 'description': 'Optional. A group of PSC connections. They are created in the same VPC network, one for each service attachment in the cluster.'}}, 'description': 'InstanceEndpoint consists of PSC connections that are created as a group in each VPC network for accessing the instance. In each group, there shall be one connection for each service attachment in the cluster.'}, 'DiscoveryEndpoint': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. The port number of the exposed endpoint.'}, 'address': {'type': 'string', 'readOnly': True, 'description': 'Output only. IP address of the exposed endpoint clients connect to.'}, 'network': {'type': 'string', 'readOnly': True, 'description': 'Output only. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_name}.'}}, 'description': 'Represents an endpoint for clients to connect to the instance.'}, 'MaintenancePolicy': {'type': 'object', 'properties': {'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was created.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was updated.'}, 'weeklyMaintenanceWindow': {'type': 'array', 'items': {'$ref': '#/$defs/WeeklyMaintenanceWindow'}, 'description': 'Optional. Maintenance window that is applied to resources covered by this policy. Minimum 1. For the current version, the maximum number of weekly_window is expected to be one.'}}, 'description': 'Maintenance policy per instance.'}, 'PersistenceConfig': {'type': 'object', 'properties': {'mode': {'enum': ['PERSISTENCE_MODE_UNSPECIFIED', 'DISABLED', 'RDB', 'AOF'], 'type': 'string', 'description': 'Optional. Current persistence mode.', 'x-google-enum-descriptions': ['Not set.', 'Persistence is disabled, and any snapshot data is deleted.', 'RDB based persistence is enabled.', 'AOF based persistence is enabled.']}, 'aofConfig': {'$ref': '#/$defs/AOFConfig', 'description': 'Optional. AOF configuration. This field will be ignored if mode is not AOF.'}, 'rdbConfig': {'$ref': '#/$defs/RDBConfig', 'description': 'Optional. RDB configuration. This field will be ignored if mode is not RDB.'}}, 'description': 'Represents persistence configuration for a instance.'}, 'PscAutoConnection': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The network where the PSC endpoints are created, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'readOnly': True, 'description': 'Output only. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'description': 'Required. The consumer project_id where PSC connections are established. This should be the same project_id that the instance is being created in.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'readOnly': True, 'description': 'Output only. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'Details of consumer resources in a PSC connection.'}, 'SelfManagedSource': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Required. The port of the source instance. This port should be a stable port that can be accessed by the Memorystore instance throughout the migration process.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP address of the source instance. This IP address should be a stable IP address that can be accessed by the Memorystore instance throughout the migration process.'}, 'networkAttachment': {'type': 'string', 'description': 'Required. The resource name of the Private Service Connect Network Attachment used to establish connectivity to the source instance. This network attachment has the following requirements: 1. It must be in the same project as the Memorystore instance. 2. It must be in the same region as the Memorystore instance. 3. The subnet attached to the network attachment must be in the same VPC network as the source instance nodes. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment}'}}, 'description': 'Details of the self-managed source instance.'}, 'MaintenanceSchedule': {'type': 'object', 'properties': {'endTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The end time of any upcoming scheduled maintenance for this instance.'}, 'startTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The start time of any upcoming scheduled maintenance for this instance.'}}, 'description': 'Upcoming maintenance schedule.'}, 'ManagedBackupSource': {'type': 'object', 'properties': {'backup': {'type': 'string', 'description': 'Optional. Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup} A shorter version (without the prefix) of the backup name is also supported, like projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup_id} In this case, it assumes the backup is under memorystore.googleapis.com.'}}, 'description': 'Backups that generated and managed by memorystore.'}, 'PscAttachmentDetail': {'type': 'object', 'properties': {'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of Psc endpoint.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. Service attachment URI which your self-created PscConnection should use as target.'}}, 'description': 'Configuration of a service attachment of the cluster, for creating PSC connections.'}, 'AutomatedBackupConfig': {'type': 'object', 'properties': {'retention': {'type': 'string', 'format': 'google-duration', 'description': 'Optional. How long to keep automated backups before the backups are deleted. The value should be between 1 day and 365 days. If not specified, the default value is 35 days.'}, 'automatedBackupMode': {'enum': ['AUTOMATED_BACKUP_MODE_UNSPECIFIED', 'DISABLED', 'ENABLED'], 'type': 'string', 'description': 'Optional. The automated backup mode. If the mode is disabled, the other fields will be ignored.', 'x-google-enum-descriptions': ['Default value. Automated backup config is not specified.', 'Automated backup config disabled.', 'Automated backup config enabled.']}, 'fixedFrequencySchedule': {'$ref': '#/$defs/FixedFrequencySchedule', 'description': 'Optional. Trigger automated backups at a fixed frequency.'}}, 'description': 'The automated backup config for an instance.'}, 'FixedFrequencySchedule': {'type': 'object', 'properties': {'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Required. The start time of every automated backup in UTC. It must be set to the start of an hour. This field is required.'}}, 'description': 'This schedule allows the backup to be triggered at a fixed frequency (currently only daily is supported).'}, 'ZoneDistributionConfig': {'type': 'object', 'properties': {'mode': {'enum': ['ZONE_DISTRIBUTION_MODE_UNSPECIFIED', 'MULTI_ZONE', 'SINGLE_ZONE'], 'type': 'string', 'description': 'Optional. Current zone distribution mode. Defaults to MULTI_ZONE.', 'x-google-enum-descriptions': ['Not Set. Default: MULTI_ZONE', 'Distribute resources across 3 zones picked at random within the region.', 'Provision resources in a single zone. Zone field must be specified.']}, 'zone': {'type': 'string', 'description': 'Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.'}, 'zones': {'type': 'array', 'items': {'type': 'string'}, 'description': "Optional. Specify the zones of a multi-zone instance where Memorystore instance allocates resources. This flag isn't applicable for single-zone instances."}}, 'description': 'Zone distribution configuration for allocation of instance resources.'}, 'AclPolicyRevisionStatus': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'APPLYING', 'APPLIED', 'FAILED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. AclPolicyRevision state.', 'x-google-enum-descriptions': ['Not set.', 'The instance is attempting to apply this revision.', 'The instance has successfully applied this revision.', 'The instance failed to apply this revision.']}, 'errorMessage': {'type': 'string', 'readOnly': True, 'description': 'Output only. Human-readable error message providing more details for FAILED states.'}, 'aclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the ACL policy revision this status refers to. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the ACL policy revision this status refers to.'}}, 'description': 'AclPolicyRevisionStatus stores the per-revision status for an attached instance.'}, 'WeeklyMaintenanceWindow': {'type': 'object', 'properties': {'day': {'enum': ['DAY_OF_WEEK_UNSPECIFIED', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY'], 'type': 'string', 'description': 'Optional. Allows to define schedule that runs specified day of the week.', 'x-google-enum-descriptions': ['The day of the week is unspecified.', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']}, 'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Optional. Start time of the window in UTC.'}}, 'description': 'Time window specified for weekly operations.'}, 'CrossInstanceReplicationConfig': {'type': 'object', 'properties': {'membership': {'$ref': '#/$defs/Membership', 'readOnly': True, 'description': 'Output only. An output only view of all the member instances participating in the cross instance replication. This view will be provided by every member instance irrespective of its instance role(primary or secondary). A primary instance can provide information about all the secondary instances replicating from it. However, a secondary instance only knows about the primary instance from which it is replicating. However, for scenarios, where the primary instance is unavailable(e.g. regional outage), a Getinstance request can be sent to any other member instance and this field will list all the member instances participating in cross instance replication.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time cross instance replication config was updated.'}, 'instanceRole': {'enum': ['INSTANCE_ROLE_UNSPECIFIED', 'NONE', 'PRIMARY', 'SECONDARY'], 'type': 'string', 'description': 'Required. The role of the instance in cross instance replication.', 'x-google-enum-descriptions': ['instance role is not set. The behavior is equivalent to NONE.', 'This instance does not participate in cross instance replication. It is an independent instance and does not replicate to or from any other instances.', 'A instance that allows both reads and writes. Any data written to this instance is also replicated to the attached secondary instances.', 'A instance that allows only reads and replicates data from a primary instance.']}, 'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'description': 'Optional. Details of the primary instance that is used as the replication source for this secondary instance. This field is only set for a secondary instance.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'description': 'Optional. List of secondary instances that are replicating from this primary instance. This field is only set for a primary instance.'}}, 'description': 'Cross instance replication config.'}}, 'properties': {'instances': {'type': 'array', 'items': {'$ref': '#/$defs/Instance'}, 'description': 'If the {location} requested was "-" the response contains a list of instances from all locations. Instances in unreachable locations will be omitted.'}, 'unreachable': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Locations that could not be reached.'}, 'nextPageToken': {'type': 'string', 'description': 'A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.'}}, 'description': 'Response message for `ListInstances`.'}
Schéma d’entrée
{'type': 'object', 'required': ['name', 'rescheduleType'], 'properties': {'name': {'type': 'string', 'description': 'Required. Name of the instance to reschedule maintenance for: `projects/{project}/locations/{location_id}/instances/{instance}`'}, 'scheduleTime': {'type': 'string', 'format': 'date-time', 'description': 'Optional. Timestamp when the maintenance shall be rescheduled to if reschedule_type=SPECIFIC_TIME, in RFC 3339 format. Example: `2012-11-15T16:19:00.094Z`.'}, 'rescheduleType': {'enum': ['RESCHEDULE_TYPE_UNSPECIFIED', 'IMMEDIATE', 'SPECIFIC_TIME'], 'type': 'string', 'description': 'Required. If reschedule type is SPECIFIC_TIME, schedule_time must be set.', 'x-google-enum-descriptions': ['Not set.', 'If the user wants to schedule the maintenance to happen now.', 'If the user wants to reschedule the maintenance to a specific time.']}}, 'description': 'Request for rescheduling instance maintenance.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Schéma d’entrée
{'type': 'object', '$defs': {'Instance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. System assigned, unique identifier for the instance.'}, 'mode': {'enum': ['MODE_UNSPECIFIED', 'STANDALONE', 'CLUSTER', 'CLUSTER_DISABLED'], 'type': 'string', 'description': 'Optional. Immutable. The mode config for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, True, False, False], 'x-google-enum-descriptions': ['Mode is not specified.', 'Deprecated: Use CLUSTER_DISABLED instead.', 'Instance is in cluster mode.', 'Cluster mode is disabled for the instance.']}, 'name': {'type': 'string', 'description': 'Identifier. Unique name of the instance. Format: projects/{project}/locations/{location}/instances/{instance}', 'x-google-identifier': True}, 'state': {'enum': ['STATE_UNSPECIFIED', 'CREATING', 'ACTIVE', 'UPDATING', 'DELETING', 'MIGRATING'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Current state of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Instance is being created.', 'Instance has been created and is usable.', 'Instance is being updated.', 'Instance is being deleted.', 'Instance is being migrated.']}, 'kmsKey': {'type': 'string', 'description': 'Optional. The KMS key used to encrypt the at-rest data of the cluster.'}, 'labels': {'type': 'object', 'description': 'Optional. Labels to represent user-provided metadata.', 'additionalProperties': {'type': 'string'}}, 'nodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'description': 'Optional. Machine type for individual nodes of the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'aclPolicy': {'type': 'string', 'description': 'Optional. The ACL policy for the instance. Format: projects/{project}/locations/{location}/aclPolicies/{acl_policy}'}, 'endpoints': {'type': 'array', 'items': {'$ref': '#/$defs/InstanceEndpoint'}, 'description': 'Optional. Endpoints for the instance.'}, 'gcsSource': {'$ref': '#/$defs/GcsBackupSource', 'description': 'Optional. Immutable. Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances. Read permission is required to import from the provided Cloud Storage Objects.', 'x-google-immutable': True}, 'stateInfo': {'$ref': '#/$defs/StateInfo', 'readOnly': True, 'description': 'Output only. Additional information about the state of the instance.'}, 'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Creation timestamp of the instance.'}, 'nodeConfig': {'$ref': '#/$defs/NodeConfig', 'readOnly': True, 'description': 'Output only. Configuration of individual nodes of the instance.'}, 'shardCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of shards for the instance.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. Latest update timestamp of the instance.'}, 'replicaCount': {'type': 'integer', 'format': 'int32', 'description': 'Optional. Number of replica nodes per shard. If omitted the default is 0 replicas.'}, 'satisfiesPzi': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'satisfiesPzs': {'type': 'boolean', 'readOnly': True, 'description': 'Optional. Output only. Reserved for future use.'}, 'serverCaMode': {'enum': ['SERVER_CA_MODE_UNSPECIFIED', 'GOOGLE_MANAGED_PER_INSTANCE_CA', 'GOOGLE_MANAGED_SHARED_CA', 'CUSTOMER_MANAGED_CAS_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_PER_INSTANCE_CA', 'SERVER_CA_MODE_GOOGLE_MANAGED_SHARED_CA', 'SERVER_CA_MODE_CUSTOMER_MANAGED_CAS_CA'], 'type': 'string', 'description': 'Optional. Immutable. The Server CA mode for the instance.', 'x-google-immutable': True, 'x-google-enum-deprecated': [False, False, False, False, True, True, True], 'x-google-enum-descriptions': ['Server CA mode not specified.', 'Each instance has its own Google-managed CA.', "The instance uses a Google-managed shared CA for the instance's region.", 'The instance uses a customer-managed CA from CAS.', 'Deprecated: Use GOOGLE_MANAGED_PER_INSTANCE_CA instead.', 'Deprecated: Use GOOGLE_MANAGED_SHARED_CA instead.', 'Deprecated: Use CUSTOMER_MANAGED_CAS_CA instead.']}, 'serverCaPool': {'type': 'string', 'description': 'Optional. Immutable. The customer-managed CA pool for the instance. Only applicable if the Server CA mode is CUSTOMER_MANAGED_CAS_CA. Format: "projects/{project}/locations/{region}/caPools/{ca_pool}".', 'x-google-immutable': True}, 'aclPolicyInfo': {'$ref': '#/$defs/AclPolicyInfo', 'readOnly': True, 'description': 'Output only. Details of the applied ACL policy.'}, 'engineConfigs': {'type': 'object', 'description': 'Optional. User-provided engine configurations for the instance.', 'additionalProperties': {'type': 'string'}}, 'engineVersion': {'type': 'string', 'description': 'Optional. Engine version of the instance.'}, 'encryptionInfo': {'$ref': '#/$defs/EncryptionInfo', 'readOnly': True, 'description': 'Output only. Encryption information of the data at rest of the cluster.'}, 'aclPolicyInSync': {'type': 'boolean', 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: Whether the ACL rules applied to the instance are in sync.'}, 'migrationConfig': {'$ref': '#/$defs/MigrationConfig', 'readOnly': True, 'description': 'Output only. Migration config for the instance.'}, 'backupCollection': {'type': 'string', 'readOnly': True, 'description': 'Output only. The backup collection full resource name. Example: projects/{project}/locations/{location}/backupCollections/{collection}'}, 'authorizationMode': {'enum': ['AUTHORIZATION_MODE_UNSPECIFIED', 'AUTH_DISABLED', 'IAM_AUTH', 'TOKEN_AUTH'], 'type': 'string', 'description': 'Optional. Immutable. Authorization mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'Authorization disabled.', 'IAM basic authorization.', 'Token based authorization.']}, 'maintenancePolicy': {'$ref': '#/$defs/MaintenancePolicy', 'description': 'Optional. The maintenance policy for the instance. If not provided, the maintenance event will be performed based on Memorystore internal rollout schedule.'}, 'persistenceConfig': {'$ref': '#/$defs/PersistenceConfig', 'description': 'Optional. Persistence configuration of the instance.'}, 'discoveryEndpoints': {'type': 'array', 'items': {'$ref': '#/$defs/DiscoveryEndpoint'}, 'readOnly': True, 'deprecated': True, 'description': 'Output only. Deprecated: The discovery_endpoints parameter is deprecated. As a result, it will not be populated if the connections are created using endpoints parameter. Instead of this parameter, for discovery, use endpoints.connections.pscConnection and endpoints.connections.pscAutoConnection with connectionType CONNECTION_TYPE_DISCOVERY.'}, 'maintenanceVersion': {'type': 'string', 'description': 'Optional. This field can be used to trigger self service update to indicate the desired maintenance version. The input to this field can be determined by the available_maintenance_versions field.'}, 'pscAutoConnections': {'type': 'array', 'items': {'$ref': '#/$defs/PscAutoConnection'}, 'deprecated': True, 'description': 'Optional. Immutable. Deprecated: Use the endpoints.connections.psc_auto_connection value instead.', 'x-google-immutable': True}, 'maintenanceSchedule': {'$ref': '#/$defs/MaintenanceSchedule', 'readOnly': True, 'description': 'Output only. Published maintenance schedule.'}, 'managedBackupSource': {'$ref': '#/$defs/ManagedBackupSource', 'description': 'Optional. Immutable. Backups that generated and managed by memorystore service.', 'x-google-immutable': True}, 'ondemandMaintenance': {'type': 'boolean', 'writeOnly': True, 'deprecated': True, 'description': 'Optional. Input only. Ondemand maintenance for the instance.'}, 'pscAttachmentDetails': {'type': 'array', 'items': {'$ref': '#/$defs/PscAttachmentDetail'}, 'readOnly': True, 'description': 'Output only. Service attachment details to configure PSC connections.'}, 'automatedBackupConfig': {'$ref': '#/$defs/AutomatedBackupConfig', 'description': 'Optional. The automated backup config for the instance.'}, 'transitEncryptionMode': {'enum': ['TRANSIT_ENCRYPTION_MODE_UNSPECIFIED', 'TRANSIT_ENCRYPTION_DISABLED', 'SERVER_AUTHENTICATION'], 'type': 'string', 'description': 'Optional. Immutable. In-transit encryption mode of the instance.', 'x-google-immutable': True, 'x-google-enum-descriptions': ['Not set.', 'In-transit encryption is disabled.', 'Server-managed encryption is used for in-transit encryption.']}, 'zoneDistributionConfig': {'$ref': '#/$defs/ZoneDistributionConfig', 'description': 'Optional. Immutable. Zone distribution configuration of the instance for node allocation.', 'x-google-immutable': True}, 'rotateServerCertificate': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Rotate the server certificates.'}, 'simulateMaintenanceEvent': {'type': 'boolean', 'writeOnly': True, 'description': 'Optional. Input only. Simulate a maintenance event.'}, 'allowFewerZonesDeployment': {'type': 'boolean', 'deprecated': True, 'description': 'Optional. Immutable. Deprecated, do not use.', 'x-google-immutable': True}, 'deletionProtectionEnabled': {'type': 'boolean', 'description': 'Optional. If set to true deletion of the instance will fail.'}, 'effectiveMaintenanceVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. This field represents the actual maintenance version of the instance.'}, 'availableMaintenanceVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. This field is used to determine the available maintenance versions for the self service update.'}, 'crossInstanceReplicationConfig': {'$ref': '#/$defs/CrossInstanceReplicationConfig', 'description': 'Optional. The config for cross instance replication.'}, 'asyncInstanceEndpointsDeletionEnabled': {'type': 'boolean', 'description': 'Optional. If true, instance endpoints that are created and registered by customers can be deleted asynchronously. That is, such an instance endpoint can be de-registered before the forwarding rules in the instance endpoint are deleted.'}}, 'description': 'A Memorystore instance.'}, 'AOFConfig': {'type': 'object', 'properties': {'appendFsync': {'enum': ['APPEND_FSYNC_UNSPECIFIED', 'NEVER', 'EVERY_SEC', 'ALWAYS'], 'type': 'string', 'description': 'Optional. The fsync mode.', 'x-google-enum-descriptions': ['Not set. Default: EVERY_SEC', "Never fsync. Normally Linux will flush data every 30 seconds with this configuration, but it's up to the kernel's exact tuning.", 'Fsync every second. You may lose 1 second of data if there is a disaster.', 'Fsync every time new write commands are appended to the AOF. The best data loss protection at the cost of performance.']}}, 'description': 'Configuration for AOF based persistence.'}, 'RDBConfig': {'type': 'object', 'properties': {'rdbSnapshotPeriod': {'enum': ['SNAPSHOT_PERIOD_UNSPECIFIED', 'ONE_HOUR', 'SIX_HOURS', 'TWELVE_HOURS', 'TWENTY_FOUR_HOURS'], 'type': 'string', 'description': 'Optional. Period between RDB snapshots.', 'x-google-enum-descriptions': ['Not set.', 'One hour.', 'Six hours.', 'Twelve hours.', 'Twenty four hours.']}, 'rdbSnapshotStartTime': {'type': 'string', 'format': 'date-time', 'description': 'Optional. Time that the first snapshot was/will be attempted, and to which future snapshots will be aligned. If not provided, the current time will be used.'}}, 'description': 'Configuration for RDB based persistence.'}, 'StateInfo': {'type': 'object', 'properties': {'updateInfo': {'$ref': '#/$defs/UpdateInfo', 'readOnly': True, 'description': 'Output only. Describes ongoing update when instance state is UPDATING.'}}, 'description': 'Additional information about the state of the instance.'}, 'TimeOfDay': {'type': 'object', 'properties': {'hours': {'type': 'integer', 'format': 'int32', '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.'}, 'nanos': {'type': 'integer', 'format': 'int32', 'description': 'Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and less than or equal to 999,999,999.'}, 'minutes': {'type': 'integer', 'format': 'int32', 'description': 'Minutes of an hour. Must be greater than or equal to 0 and less than or equal to 59.'}, 'seconds': {'type': 'integer', 'format': 'int32', '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.'}}, '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`.'}, 'Membership': {'type': 'object', 'properties': {'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'readOnly': True, 'description': 'Output only. The primary instance that acts as the source of replication for the secondary instances.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'readOnly': True, 'description': 'Output only. The list of secondary instances replicating from the primary instance.'}}, 'description': 'An output only view of all the member instances participating in the cross instance replication.'}, 'NodeConfig': {'type': 'object', 'properties': {'sizeGb': {'type': 'number', 'format': 'double', 'readOnly': True, 'description': 'Output only. Memory size in GB of the node.'}}, 'description': 'Represents configuration for nodes of the instance.'}, 'UpdateInfo': {'type': 'object', 'properties': {'targetNodeType': {'enum': ['NODE_TYPE_UNSPECIFIED', 'SHARED_CORE_NANO', 'HIGHMEM_MEDIUM', 'HIGHMEM_XLARGE', 'STANDARD_SMALL', 'CUSTOM_MICRO', 'CUSTOM_MINI', 'HIGHCPU_MEDIUM', 'STANDARD_LARGE', 'HIGHMEM_2XLARGE', 'CUSTOM_PICO'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Target node type for the instance.', 'x-google-enum-descriptions': ['Not set.', 'Shared core nano.', 'High memory medium.', 'High memory extra large.', 'Standard small.', 'Custom micro.', 'Custom mini.', 'High cpu medium.', 'Standard large.', 'High memory 2xlarge.', 'Custom pico.']}, 'targetShardCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of shards for the instance.'}, 'targetReplicaCount': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. Target number of replica nodes per shard for the instance.'}, 'targetEngineVersion': {'type': 'string', 'readOnly': True, 'description': 'Output only. Target engine version for the instance.'}}, 'description': 'Represents information about instance with state UPDATING.'}, 'AclPolicyInfo': {'type': 'object', 'properties': {'appliedAclPolicy': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}"'}, 'appliedAclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the applied ACL policy revision. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionStatuses': {'type': 'array', 'items': {'$ref': '#/$defs/AclPolicyRevisionStatus'}, 'readOnly': True, 'description': 'Output only. A list of status for various revisions of this ACL policy on the instance.'}, 'appliedAclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the applied ACL policy revision.'}}, 'description': 'Details of the applied ACL policy.'}, 'PscConnection': {'type': 'object', 'required': ['pscConnectionId', 'ipAddress', 'forwardingRule', 'network', 'serviceAttachment'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The consumer network where the IP address resides, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The consumer project_id where the forwarding rule is created from.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'description': 'Required. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'description': 'Required. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'description': 'Required. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'User created Psc connection configuration.'}, 'EncryptionInfo': {'type': 'object', 'properties': {'encryptionType': {'enum': ['TYPE_UNSPECIFIED', 'GOOGLE_DEFAULT_ENCRYPTION', 'CUSTOMER_MANAGED_ENCRYPTION'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of encryption.', 'x-google-enum-descriptions': ['Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.', 'The data is encrypted at rest with a key that is fully managed by Google. No key version will be populated. This is the default state.', 'The data is encrypted at rest with a key that is managed by the customer. KMS key versions will be populated.']}, 'kmsKeyVersions': {'type': 'array', 'items': {'type': 'string'}, 'readOnly': True, 'description': 'Output only. KMS key versions that are being used to protect the data at-rest.'}, 'lastUpdateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The most recent time when the encryption info was updated.'}, 'kmsKeyPrimaryState': {'enum': ['KMS_KEY_STATE_UNSPECIFIED', 'ENABLED', 'PERMISSION_DENIED', 'DISABLED', 'DESTROYED', 'DESTROY_SCHEDULED', 'EKM_KEY_UNREACHABLE_DETECTED', 'BILLING_DISABLED', 'UNKNOWN_FAILURE'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The state of the primary version of the KMS key perceived by the system. This field is not populated in backups.', 'x-google-enum-descriptions': ['The default value. This value is unused.', 'The KMS key is enabled and correctly configured.', 'Permission denied on the KMS key.', 'The KMS key is disabled.', 'The KMS key is destroyed.', 'The KMS key is scheduled to be destroyed.', 'The EKM key is unreachable.', 'Billing is disabled for the project.', 'All other unknown failures.']}}, 'description': 'EncryptionInfo describes the encryption information of a cluster.'}, 'RemoteInstance': {'type': 'object', 'properties': {'uid': {'type': 'string', 'readOnly': True, 'description': 'Output only. The unique identifier of the remote instance.'}, 'instance': {'type': 'string', 'description': 'Optional. The full resource path of the remote instance in the format: projects//locations//instances/'}}, 'description': 'Details of the remote instance associated with this instance in a cross instance replication setup.'}, 'GcsBackupSource': {'type': 'object', 'properties': {'uris': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Optional. Example: gs://bucket1/object1, gs://bucket2/folder2/object2'}}, 'description': 'Backups that stored in Cloud Storage buckets. The Cloud Storage buckets need to be the same region as the instances.'}, 'MigrationConfig': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'ROLLED_BACK', 'ROLLING_BACK', 'REPLICATION_ESTABLISHED', 'MIGRATED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Migration state of the instance.', 'x-google-enum-descriptions': ['Instance has no migration related activity. This is the initial state.', 'Instance is not currently migrating. The instance underwent a migration attempt that failed, and the subsequent rollback was successful. The instance is now ready for a new migration attempt if desired.', 'Indicates a previous migration attempt failed. The high-level instance state will be `MIGRATING`. The instance is not ready for a new migration attempt. Rollback is in progress to restore the instance to its original state. The instance will remain in this state until rollback is successful.', 'Instance is in the process of migration. Instance has established successful replication and is ready for cutover.', 'Instance is successfully migrated.']}, 'selfManagedSource': {'$ref': '#/$defs/SelfManagedSource', 'readOnly': True, 'description': 'Output only. Configuration for migrating from a self-managed Valkey/Redis instance'}, 'forceFinishMigration': {'type': 'boolean', 'readOnly': True, 'description': 'Output only. Represents a boolean flag to force migration finalization without offset catch up validation between source and target before stopping replication.'}}, 'description': 'Configuration for the migration of an instance.'}, 'ConnectionDetail': {'type': 'object', 'properties': {'pscConnection': {'$ref': '#/$defs/PscConnection', 'description': 'Detailed information of a PSC connection that is created by the user.'}, 'pscAutoConnection': {'$ref': '#/$defs/PscAutoConnection', 'description': 'Immutable. Detailed information of a PSC connection that is created through service connectivity automation.', 'x-google-immutable': True}}, 'description': 'Information of each PSC connection.'}, 'InstanceEndpoint': {'type': 'object', 'properties': {'connections': {'type': 'array', 'items': {'$ref': '#/$defs/ConnectionDetail'}, 'description': 'Optional. A group of PSC connections. They are created in the same VPC network, one for each service attachment in the cluster.'}}, 'description': 'InstanceEndpoint consists of PSC connections that are created as a group in each VPC network for accessing the instance. In each group, there shall be one connection for each service attachment in the cluster.'}, 'DiscoveryEndpoint': {'type': 'object', 'properties': {'port': {'type': 'integer', 'format': 'int32', 'readOnly': True, 'description': 'Output only. The port number of the exposed endpoint.'}, 'address': {'type': 'string', 'readOnly': True, 'description': 'Output only. IP address of the exposed endpoint clients connect to.'}, 'network': {'type': 'string', 'readOnly': True, 'description': 'Output only. The network where the IP address of the discovery endpoint will be reserved, in the form of projects/{network_project}/global/networks/{network_name}.'}}, 'description': 'Represents an endpoint for clients to connect to the instance.'}, 'MaintenancePolicy': {'type': 'object', 'properties': {'createTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was created.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The time when the policy was updated.'}, 'weeklyMaintenanceWindow': {'type': 'array', 'items': {'$ref': '#/$defs/WeeklyMaintenanceWindow'}, 'description': 'Optional. Maintenance window that is applied to resources covered by this policy. Minimum 1. For the current version, the maximum number of weekly_window is expected to be one.'}}, 'description': 'Maintenance policy per instance.'}, 'PersistenceConfig': {'type': 'object', 'properties': {'mode': {'enum': ['PERSISTENCE_MODE_UNSPECIFIED', 'DISABLED', 'RDB', 'AOF'], 'type': 'string', 'description': 'Optional. Current persistence mode.', 'x-google-enum-descriptions': ['Not set.', 'Persistence is disabled, and any snapshot data is deleted.', 'RDB based persistence is enabled.', 'AOF based persistence is enabled.']}, 'aofConfig': {'$ref': '#/$defs/AOFConfig', 'description': 'Optional. AOF configuration. This field will be ignored if mode is not AOF.'}, 'rdbConfig': {'$ref': '#/$defs/RDBConfig', 'description': 'Optional. RDB configuration. This field will be ignored if mode is not RDB.'}}, 'description': 'Represents persistence configuration for a instance.'}, 'PscAutoConnection': {'type': 'object', 'required': ['projectId', 'network'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Optional. port will only be set for Primary/Reader or Discovery endpoint.'}, 'network': {'type': 'string', 'description': 'Required. The network where the PSC endpoints are created, in the form of projects/{project_id}/global/networks/{network_name}.'}, 'ipAddress': {'type': 'string', 'readOnly': True, 'description': 'Output only. The IP allocated on the consumer network for the PSC forwarding rule.'}, 'projectId': {'type': 'string', 'description': 'Required. The consumer project_id where PSC connections are established. This should be the same project_id that the instance is being created in.'}, 'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of the PSC connection.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'forwardingRule': {'type': 'string', 'readOnly': True, 'description': 'Output only. The URI of the consumer side forwarding rule. Format: projects/{project}/regions/{region}/forwardingRules/{forwarding_rule}'}, 'pscConnectionId': {'type': 'string', 'readOnly': True, 'description': 'Output only. The PSC connection id of the forwarding rule connected to the service attachment.'}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. The service attachment which is the target of the PSC connection, in the form of projects/{project-id}/regions/{region}/serviceAttachments/{service-attachment-id}.'}, 'pscConnectionStatus': {'enum': ['PSC_CONNECTION_STATUS_UNSPECIFIED', 'ACTIVE', 'NOT_FOUND'], 'type': 'string', 'readOnly': True, 'description': 'Output only. The status of the PSC connection: whether a connection exists and ACTIVE or it no longer exists. Please note that this value is updated periodically. Please use Private Service Connect APIs for the latest status.', 'x-google-enum-descriptions': ['PSC connection status is not specified.', 'The connection is active', 'Connection not found']}}, 'description': 'Details of consumer resources in a PSC connection.'}, 'SelfManagedSource': {'type': 'object', 'required': ['ipAddress', 'port', 'networkAttachment'], 'properties': {'port': {'type': 'integer', 'format': 'int32', 'description': 'Required. The port of the source instance. This port should be a stable port that can be accessed by the Memorystore instance throughout the migration process.'}, 'ipAddress': {'type': 'string', 'description': 'Required. The IP address of the source instance. This IP address should be a stable IP address that can be accessed by the Memorystore instance throughout the migration process.'}, 'networkAttachment': {'type': 'string', 'description': 'Required. The resource name of the Private Service Connect Network Attachment used to establish connectivity to the source instance. This network attachment has the following requirements: 1. It must be in the same project as the Memorystore instance. 2. It must be in the same region as the Memorystore instance. 3. The subnet attached to the network attachment must be in the same VPC network as the source instance nodes. Format: projects/{project}/regions/{region}/networkAttachments/{network_attachment}'}}, 'description': 'Details of the self-managed source instance.'}, 'MaintenanceSchedule': {'type': 'object', 'properties': {'endTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The end time of any upcoming scheduled maintenance for this instance.'}, 'startTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The start time of any upcoming scheduled maintenance for this instance.'}}, 'description': 'Upcoming maintenance schedule.'}, 'ManagedBackupSource': {'type': 'object', 'properties': {'backup': {'type': 'string', 'description': 'Optional. Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup} A shorter version (without the prefix) of the backup name is also supported, like projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup_id} In this case, it assumes the backup is under memorystore.googleapis.com.'}}, 'description': 'Backups that generated and managed by memorystore.'}, 'PscAttachmentDetail': {'type': 'object', 'properties': {'connectionType': {'enum': ['CONNECTION_TYPE_UNSPECIFIED', 'CONNECTION_TYPE_DISCOVERY', 'CONNECTION_TYPE_PRIMARY', 'CONNECTION_TYPE_READER'], 'type': 'string', 'readOnly': True, 'description': 'Output only. Type of Psc endpoint.', 'x-google-enum-descriptions': ['Connection Type is not set', 'Connection that will be used for topology discovery.', 'Connection that will be used as primary endpoint to access primary.', 'Connection that will be used as reader endpoint to access replicas.']}, 'serviceAttachment': {'type': 'string', 'readOnly': True, 'description': 'Output only. Service attachment URI which your self-created PscConnection should use as target.'}}, 'description': 'Configuration of a service attachment of the cluster, for creating PSC connections.'}, 'AutomatedBackupConfig': {'type': 'object', 'properties': {'retention': {'type': 'string', 'format': 'google-duration', 'description': 'Optional. How long to keep automated backups before the backups are deleted. The value should be between 1 day and 365 days. If not specified, the default value is 35 days.'}, 'automatedBackupMode': {'enum': ['AUTOMATED_BACKUP_MODE_UNSPECIFIED', 'DISABLED', 'ENABLED'], 'type': 'string', 'description': 'Optional. The automated backup mode. If the mode is disabled, the other fields will be ignored.', 'x-google-enum-descriptions': ['Default value. Automated backup config is not specified.', 'Automated backup config disabled.', 'Automated backup config enabled.']}, 'fixedFrequencySchedule': {'$ref': '#/$defs/FixedFrequencySchedule', 'description': 'Optional. Trigger automated backups at a fixed frequency.'}}, 'description': 'The automated backup config for an instance.'}, 'FixedFrequencySchedule': {'type': 'object', 'required': ['startTime'], 'properties': {'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Required. The start time of every automated backup in UTC. It must be set to the start of an hour. This field is required.'}}, 'description': 'This schedule allows the backup to be triggered at a fixed frequency (currently only daily is supported).'}, 'ZoneDistributionConfig': {'type': 'object', 'properties': {'mode': {'enum': ['ZONE_DISTRIBUTION_MODE_UNSPECIFIED', 'MULTI_ZONE', 'SINGLE_ZONE'], 'type': 'string', 'description': 'Optional. Current zone distribution mode. Defaults to MULTI_ZONE.', 'x-google-enum-descriptions': ['Not Set. Default: MULTI_ZONE', 'Distribute resources across 3 zones picked at random within the region.', 'Provision resources in a single zone. Zone field must be specified.']}, 'zone': {'type': 'string', 'description': 'Optional. Defines zone where all resources will be allocated with SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.'}, 'zones': {'type': 'array', 'items': {'type': 'string'}, 'description': "Optional. Specify the zones of a multi-zone instance where Memorystore instance allocates resources. This flag isn't applicable for single-zone instances."}}, 'description': 'Zone distribution configuration for allocation of instance resources.'}, 'AclPolicyRevisionStatus': {'type': 'object', 'properties': {'state': {'enum': ['STATE_UNSPECIFIED', 'APPLYING', 'APPLIED', 'FAILED'], 'type': 'string', 'readOnly': True, 'description': 'Output only. AclPolicyRevision state.', 'x-google-enum-descriptions': ['Not set.', 'The instance is attempting to apply this revision.', 'The instance has successfully applied this revision.', 'The instance failed to apply this revision.']}, 'errorMessage': {'type': 'string', 'readOnly': True, 'description': 'Output only. Human-readable error message providing more details for FAILED states.'}, 'aclPolicyRevision': {'type': 'string', 'readOnly': True, 'description': 'Output only. The resource name of the ACL policy revision this status refers to. Format: "projects/{project}/locations/{location}/aclPolicies/{acl_policy}/revisions/{revision}"'}, 'aclPolicyRevisionNumber': {'type': 'string', 'format': 'int64', 'readOnly': True, 'description': 'Output only. The revision number of the ACL policy revision this status refers to.'}}, 'description': 'AclPolicyRevisionStatus stores the per-revision status for an attached instance.'}, 'WeeklyMaintenanceWindow': {'type': 'object', 'properties': {'day': {'enum': ['DAY_OF_WEEK_UNSPECIFIED', 'MONDAY', 'TUESDAY', 'WEDNESDAY', 'THURSDAY', 'FRIDAY', 'SATURDAY', 'SUNDAY'], 'type': 'string', 'description': 'Optional. Allows to define schedule that runs specified day of the week.', 'x-google-enum-descriptions': ['The day of the week is unspecified.', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']}, 'startTime': {'$ref': '#/$defs/TimeOfDay', 'description': 'Optional. Start time of the window in UTC.'}}, 'description': 'Time window specified for weekly operations.'}, 'CrossInstanceReplicationConfig': {'type': 'object', 'required': ['instanceRole'], 'properties': {'membership': {'$ref': '#/$defs/Membership', 'readOnly': True, 'description': 'Output only. An output only view of all the member instances participating in the cross instance replication. This view will be provided by every member instance irrespective of its instance role(primary or secondary). A primary instance can provide information about all the secondary instances replicating from it. However, a secondary instance only knows about the primary instance from which it is replicating. However, for scenarios, where the primary instance is unavailable(e.g. regional outage), a Getinstance request can be sent to any other member instance and this field will list all the member instances participating in cross instance replication.'}, 'updateTime': {'type': 'string', 'format': 'date-time', 'readOnly': True, 'description': 'Output only. The last time cross instance replication config was updated.'}, 'instanceRole': {'enum': ['INSTANCE_ROLE_UNSPECIFIED', 'NONE', 'PRIMARY', 'SECONDARY'], 'type': 'string', 'description': 'Required. The role of the instance in cross instance replication.', 'x-google-enum-descriptions': ['instance role is not set. The behavior is equivalent to NONE.', 'This instance does not participate in cross instance replication. It is an independent instance and does not replicate to or from any other instances.', 'A instance that allows both reads and writes. Any data written to this instance is also replicated to the attached secondary instances.', 'A instance that allows only reads and replicates data from a primary instance.']}, 'primaryInstance': {'$ref': '#/$defs/RemoteInstance', 'description': 'Optional. Details of the primary instance that is used as the replication source for this secondary instance. This field is only set for a secondary instance.'}, 'secondaryInstances': {'type': 'array', 'items': {'$ref': '#/$defs/RemoteInstance'}, 'description': 'Optional. List of secondary instances that are replicating from this primary instance. This field is only set for a primary instance.'}}, 'description': 'Cross instance replication config.'}}, 'required': ['instance'], 'properties': {'instance': {'$ref': '#/$defs/Instance', 'description': 'Required. The instance to update.'}, 'requestId': {'type': 'string', 'description': 'Optional. An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000).'}, 'updateMask': {'type': 'string', 'format': 'google-fieldmask', 'pattern': '^(\\s*[^,\\s.]+(\\s*[,.]\\s*[^,\\s.]+)*)?$', 'description': 'Optional. The list of fields to be updated on the instance. At least one field must be specified.'}}, 'description': 'Request message for `UpdateInstance`.'}
Schéma de sortie
{'type': 'object', '$defs': {'Status': {'type': 'object', 'properties': {'code': {'type': 'integer', 'format': 'int32', 'description': 'The status code, which should be an enum value of google.rpc.Code.'}, 'details': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'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': {'type': 'string', '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.'}}, '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': {'done': {'type': 'boolean', 'description': 'If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.'}, 'name': {'type': 'string', 'description': 'The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.'}, 'error': {'$ref': '#/$defs/Status', 'description': 'The error result of the operation in case of failure or cancellation.'}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}, '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': {'description': 'Properties of the object. Contains field @type with type URL.'}}}, 'description': 'This resource represents a long-running operation that is the result of a network API call.'}
Modifications récentes des outils
Serveurs MCP similaires
shiply
Publishes and manages web applications with SQL databases, serverless functions, domains, email tests, client intake, contracts, …
Fine Structure
Builds and hosts full-stack applications from prompts and supports agent communication through WhatsApp and email.
mcp
Provisions and manages cloud instances, networks, storage, databases, backups, VPNs, application deployments, and autocoding-agen…
EchoRelay
Manages a hosted API relay runtime, including projects, endpoints, credentials, publishing, keys, delivery logs, and dead-letter …
Supero
Builds, validates, publishes, tests, and deploys multi-tenant applications with schemas, CRUD operations, external data connector…
Replicate
Provides access to Replicate models, versions, collections, hardware, predictions, and deployments for running and managing hoste…
Relin
Configures webhook sources and destinations, monitors delivery health, investigates failures, manages retries, and replays events.
Scalix Cloud
Provides managed databases, SQL tools, container builds, persistent Linux machines, domains, scheduled functions, storage, and pr…