Package-level declarations

Types

Link copied to clipboard
data class AwsAccessKeyResponse(val accessKeyId: String, val secretAccessKey: String)

AWS access key (see AWS Security Credentials). For information on our data retention policy for user credentials, see /storage-transfer/docs/data-retention#user-credentials.

Link copied to clipboard
data class AwsS3CompatibleDataResponse(val bucketName: String, val endpoint: String, val path: String, val region: String, val s3Metadata: S3CompatibleMetadataResponse)

An AwsS3CompatibleData resource.

Link copied to clipboard
data class AwsS3DataResponse(val awsAccessKey: AwsAccessKeyResponse, val bucketName: String, val credentialsSecret: String, val path: String, val roleArn: String)

An AwsS3Data resource can be a data source, but not a data sink. In an AwsS3Data resource, an object's name is the S3 object's key name.

Link copied to clipboard
data class AzureBlobStorageDataResponse(val azureCredentials: AzureCredentialsResponse, val container: String, val credentialsSecret: String, val path: String, val storageAccount: String)

An AzureBlobStorageData resource can be a data source, but not a data sink. An AzureBlobStorageData resource represents one Azure container. The storage account determines the Azure endpoint. In an AzureBlobStorageData resource, a blobs's name is the Azure Blob Storage blob's key name.

Link copied to clipboard
data class AzureCredentialsResponse(val sasToken: String)

Azure credentials For information on our data retention policy for user credentials, see /storage-transfer/docs/data-retention#user-credentials.

Link copied to clipboard
data class BandwidthLimitResponse(val limitMbps: String)

Specifies a bandwidth limit for an agent pool.

Link copied to clipboard
data class DateResponse(val day: Int, val month: Int, val year: Int)

Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp

Link copied to clipboard
data class EventStreamResponse(val eventStreamExpirationTime: String, val eventStreamStartTime: String, val name: String)

Specifies the Event-driven transfer options. Event-driven transfers listen to an event stream to transfer updated files.

Link copied to clipboard
data class GcsDataResponse(val bucketName: String, val path: String)

In a GcsData resource, an object's name is the Cloud Storage object's name and its "last modification time" refers to the object's updated property of Cloud Storage objects, which changes when the content or the metadata of the object is updated.

Link copied to clipboard
data class GetAgentPoolResult(val bandwidthLimit: BandwidthLimitResponse, val displayName: String, val name: String, val state: String)
Link copied to clipboard
data class GetTransferJobResult(val creationTime: String, val deletionTime: String, val description: String, val eventStream: EventStreamResponse, val lastModificationTime: String, val latestOperationName: String, val loggingConfig: LoggingConfigResponse, val name: String, val notificationConfig: NotificationConfigResponse, val project: String, val schedule: ScheduleResponse, val status: String, val transferSpec: TransferSpecResponse)
Link copied to clipboard
data class HttpDataResponse(val listUrl: String)

An HttpData resource specifies a list of objects on the web to be transferred over HTTP. The information of the objects to be transferred is contained in a file referenced by a URL. The first line in the file must be "TsvHttpData-1.0", which specifies the format of the file. Subsequent lines specify the information of the list of objects, one object per list entry. Each entry has the following tab-delimited fields: * HTTP URL — The location of the object. * Length — The size of the object in bytes. * MD5 — The base64-encoded MD5 hash of the object. For an example of a valid TSV file, see Transferring data from URLs. When transferring data based on a URL list, keep the following in mind: * When an object located at http(s)://hostname:port/ is transferred to a data sink, the name of the object at the data sink is /. * If the specified size of an object does not match the actual size of the object fetched, the object is not transferred. * If the specified MD5 does not match the MD5 computed from the transferred bytes, the object transfer fails. * Ensure that each URL you specify is publicly accessible. For example, in Cloud Storage you can share an object publicly (/storage/docs/cloud-console#_sharingdata) and get a link to it. * Storage Transfer Service obeys robots.txt rules and requires the source HTTP server to support Range requests and to return a Content-Length header in each response. * ObjectConditions have no effect when filtering objects to transfer.

Link copied to clipboard
data class LoggingConfigResponse(val enableOnpremGcsTransferLogs: Boolean, val logActionStates: List<String>, val logActions: List<String>)

Specifies the logging behavior for transfer operations. For cloud-to-cloud transfers, logs are sent to Cloud Logging. See Read transfer logs for details. For transfers to or from a POSIX file system, logs are stored in the Cloud Storage bucket that is the source or sink of the transfer. See Managing Transfer for on-premises jobs (https://cloud.google.com/storage-transfer/docs/managing-on-prem-jobs#viewing-logs) for details.

Link copied to clipboard
data class MetadataOptionsResponse(val acl: String, val gid: String, val kmsKey: String, val mode: String, val storageClass: String, val symlink: String, val temporaryHold: String, val timeCreated: String, val uid: String)

Specifies the metadata options for running a transfer.

Link copied to clipboard
data class NotificationConfigResponse(val eventTypes: List<String>, val payloadFormat: String, val pubsubTopic: String)

Specification to configure notifications published to Pub/Sub. Notifications are published to the customer-provided topic using the following PubsubMessage.attributes: * "eventType": one of the EventType values * "payloadFormat": one of the PayloadFormat values * "projectId": the project_id of the TransferOperation * "transferJobName": the transfer_job_name of the TransferOperation * "transferOperationName": the name of the TransferOperation The PubsubMessage.data contains a TransferOperation resource formatted according to the specified PayloadFormat.

Link copied to clipboard
data class ObjectConditionsResponse(val excludePrefixes: List<String>, val includePrefixes: List<String>, val lastModifiedBefore: String, val lastModifiedSince: String, val maxTimeElapsedSinceLastModification: String, val minTimeElapsedSinceLastModification: String)

Conditions that determine which objects are transferred. Applies only to Cloud Data Sources such as S3, Azure, and Cloud Storage. The "last modification time" refers to the time of the last change to the object's content or metadata — specifically, this is the updated property of Cloud Storage objects, the LastModified field of S3 objects, and the Last-Modified header of Azure blobs. Transfers with a PosixFilesystem source or destination don't support ObjectConditions.

Link copied to clipboard
data class PosixFilesystemResponse(val rootDirectory: String)

A POSIX filesystem resource.

Link copied to clipboard
data class S3CompatibleMetadataResponse(val authMethod: String, val listApi: String, val protocol: String, val requestModel: String)

S3CompatibleMetadata contains the metadata fields that apply to the basic types of S3-compatible data providers.

Link copied to clipboard
data class ScheduleResponse(val endTimeOfDay: TimeOfDayResponse, val repeatInterval: String, val scheduleEndDate: DateResponse, val scheduleStartDate: DateResponse, val startTimeOfDay: TimeOfDayResponse)

Transfers can be scheduled to recur or to run just once.

Link copied to clipboard
data class TimeOfDayResponse(val hours: Int, val minutes: Int, val nanos: Int, val seconds: Int)

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.

Link copied to clipboard
data class TransferManifestResponse(val location: String)

Specifies where the manifest is located.

Link copied to clipboard
data class TransferOptionsResponse(val deleteObjectsFromSourceAfterTransfer: Boolean, val deleteObjectsUniqueInSink: Boolean, val metadataOptions: MetadataOptionsResponse, val overwriteObjectsAlreadyExistingInSink: Boolean, val overwriteWhen: String)

TransferOptions define the actions to be performed on objects in a transfer.

Link copied to clipboard
data class TransferSpecResponse(val awsS3CompatibleDataSource: AwsS3CompatibleDataResponse, val awsS3DataSource: AwsS3DataResponse, val azureBlobStorageDataSource: AzureBlobStorageDataResponse, val gcsDataSink: GcsDataResponse, val gcsDataSource: GcsDataResponse, val gcsIntermediateDataLocation: GcsDataResponse, val httpDataSource: HttpDataResponse, val objectConditions: ObjectConditionsResponse, val posixDataSink: PosixFilesystemResponse, val posixDataSource: PosixFilesystemResponse, val sinkAgentPoolName: String, val sourceAgentPoolName: String, val transferManifest: TransferManifestResponse, val transferOptions: TransferOptionsResponse)

Configuration for running a transfer.