{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://storagetransfer.googleapis.com/",
  "batchPath": "batch",
  "description": "Transfers data from external data sources to a Google Cloud Storage bucket or between Google Cloud Storage buckets.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/storage-transfer/docs",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "storagetransfer:v1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://storagetransfer.mtls.googleapis.com/",
  "name": "storagetransfer",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "googleServiceAccounts": {
      "methods": {
        "get": {
          "description": "Returns the Google service account that is used by Storage Transfer Service to access buckets in the project where transfers run or in other projects. Each Google service account is associated with one Google Cloud Platform Console project. Users should add this service account to the Google Cloud Storage bucket ACLs to grant access to Storage Transfer Service. This service account is created and owned by Storage Transfer Service and can only be used by Storage Transfer Service.",
          "flatPath": "v1/googleServiceAccounts/{projectId}",
          "httpMethod": "GET",
          "id": "storagetransfer.googleServiceAccounts.get",
          "parameterOrder": [
            "projectId"
          ],
          "parameters": {
            "projectId": {
              "description": "Required. The ID of the Google Cloud Platform Console project that the Google service account is associated with.",
              "location": "path",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/googleServiceAccounts/{projectId}",
          "response": {
            "$ref": "GoogleServiceAccount"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "transferJobs": {
      "methods": {
        "create": {
          "description": "Creates a transfer job that runs periodically.",
          "flatPath": "v1/transferJobs",
          "httpMethod": "POST",
          "id": "storagetransfer.transferJobs.create",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1/transferJobs",
          "request": {
            "$ref": "TransferJob"
          },
          "response": {
            "$ref": "TransferJob"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "get": {
          "description": "Gets a transfer job.",
          "flatPath": "v1/transferJobs/{transferJobsId}",
          "httpMethod": "GET",
          "id": "storagetransfer.transferJobs.get",
          "parameterOrder": [
            "jobName"
          ],
          "parameters": {
            "jobName": {
              "description": "Required. The job to get.",
              "location": "path",
              "pattern": "^transferJobs/.*$",
              "required": true,
              "type": "string"
            },
            "projectId": {
              "description": "Required. The ID of the Google Cloud Platform Console project that owns the job.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/{+jobName}",
          "response": {
            "$ref": "TransferJob"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "list": {
          "description": "Lists transfer jobs.",
          "flatPath": "v1/transferJobs",
          "httpMethod": "GET",
          "id": "storagetransfer.transferJobs.list",
          "parameterOrder": [],
          "parameters": {
            "filter": {
              "description": "Required. A list of query parameters specified as JSON text in the form of: {\"project_id\":\"my_project_id\", \"job_names\":[\"jobid1\",\"jobid2\",...], \"job_statuses\":[\"status1\",\"status2\",...]}. Since `job_names` and `job_statuses` support multiple values, their values must be specified with array notation. `project``_``id` is required. `job_names` and `job_statuses` are optional. The valid values for `job_statuses` are case-insensitive: ENABLED, DISABLED, and DELETED.",
              "location": "query",
              "type": "string"
            },
            "pageSize": {
              "description": "The list page size. The max allowed value is 256.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "The list page token.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/transferJobs",
          "response": {
            "$ref": "ListTransferJobsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "patch": {
          "description": "Updates a transfer job. Updating a job's transfer spec does not affect transfer operations that are running already. Updating a job's schedule is not allowed. **Note:** The job's status field can be modified using this RPC (for example, to set a job's status to DELETED, DISABLED, or ENABLED).",
          "flatPath": "v1/transferJobs/{transferJobsId}",
          "httpMethod": "PATCH",
          "id": "storagetransfer.transferJobs.patch",
          "parameterOrder": [
            "jobName"
          ],
          "parameters": {
            "jobName": {
              "description": "Required. The name of job to update.",
              "location": "path",
              "pattern": "^transferJobs/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+jobName}",
          "request": {
            "$ref": "UpdateTransferJobRequest"
          },
          "response": {
            "$ref": "TransferJob"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    },
    "transferOperations": {
      "methods": {
        "cancel": {
          "description": "Cancels a transfer. Use the transferOperations.get method to check if the cancellation succeeded or if the operation completed despite the `cancel` request. When you cancel an operation, the currently running transfer is interrupted. For recurring transfer jobs, the next instance of the transfer job will still run. For example, if your job is configured to run every day at 1pm and you cancel Monday's operation at 1:05pm, Monday's transfer will stop. However, a transfer job will still be attempted on Tuesday. This applies only to currently running operations. If an operation is not currently running, `cancel` does nothing. *Caution:* Canceling a transfer job can leave your data in an unknown state. We recommend that you restore the state at both the destination and the source after the `cancel` request completes so that your data is in a consistent state. When you cancel a job, the next job computes a delta of files and may repair any inconsistent state. For instance, if you run a job every day, and today's job found 10 new files and transferred five files before you canceled the job, tomorrow's transfer operation will compute a new delta with the five files that were not copied today plus any new files discovered tomorrow.",
          "flatPath": "v1/transferOperations/{transferOperationsId}:cancel",
          "httpMethod": "POST",
          "id": "storagetransfer.transferOperations.cancel",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The name of the operation resource to be cancelled.",
              "location": "path",
              "pattern": "^transferOperations/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:cancel",
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "get": {
          "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
          "flatPath": "v1/transferOperations/{transferOperationsId}",
          "httpMethod": "GET",
          "id": "storagetransfer.transferOperations.get",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The name of the operation resource.",
              "location": "path",
              "pattern": "^transferOperations/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "list": {
          "description": "Lists transfer operations.",
          "flatPath": "v1/transferOperations",
          "httpMethod": "GET",
          "id": "storagetransfer.transferOperations.list",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "filter": {
              "description": "Required. A list of query parameters specified as JSON text in the form of: {\"project_id\":\"my_project_id\", \"job_names\":[\"jobid1\",\"jobid2\",...], \"operation_names\":[\"opid1\",\"opid2\",...], \"transfer_statuses\":[\"status1\",\"status2\",...]}. Since `job_names`, `operation_names`, and `transfer_statuses` support multiple values, they must be specified with array notation. `project``_``id` is required. `job_names`, `operation_names`, and `transfer_statuses` are optional. The valid values for `transfer_statuses` are case-insensitive: IN_PROGRESS, PAUSED, SUCCESS, FAILED, and ABORTED.",
              "location": "query",
              "type": "string"
            },
            "name": {
              "description": "Required. The value `transferOperations`.",
              "location": "path",
              "pattern": "^transferOperations$",
              "required": true,
              "type": "string"
            },
            "pageSize": {
              "description": "The list page size. The max allowed value is 256.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "The list page token.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "response": {
            "$ref": "ListOperationsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "pause": {
          "description": "Pauses a transfer operation.",
          "flatPath": "v1/transferOperations/{transferOperationsId}:pause",
          "httpMethod": "POST",
          "id": "storagetransfer.transferOperations.pause",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The name of the transfer operation.",
              "location": "path",
              "pattern": "^transferOperations/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:pause",
          "request": {
            "$ref": "PauseTransferOperationRequest"
          },
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "resume": {
          "description": "Resumes a transfer operation that is paused.",
          "flatPath": "v1/transferOperations/{transferOperationsId}:resume",
          "httpMethod": "POST",
          "id": "storagetransfer.transferOperations.resume",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The name of the transfer operation.",
              "location": "path",
              "pattern": "^transferOperations/.*$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}:resume",
          "request": {
            "$ref": "ResumeTransferOperationRequest"
          },
          "response": {
            "$ref": "Empty"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      }
    }
  },
  "revision": "20200807",
  "rootUrl": "https://storagetransfer.googleapis.com/",
  "schemas": {
    "AwsAccessKey": {
      "description": "AWS access key (see [AWS Security Credentials](https://docs.aws.amazon.com/general/latest/gr/aws-security-credentials.html)).",
      "id": "AwsAccessKey",
      "properties": {
        "accessKeyId": {
          "description": "Required. AWS access key ID.",
          "type": "string"
        },
        "secretAccessKey": {
          "description": "Required. AWS secret access key. This field is not returned in RPC responses.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AwsS3Data": {
      "description": "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.",
      "id": "AwsS3Data",
      "properties": {
        "awsAccessKey": {
          "$ref": "AwsAccessKey",
          "description": "Required. AWS access key used to sign the API requests to the AWS S3 bucket. Permissions on the bucket must be granted to the access ID of the AWS access key."
        },
        "bucketName": {
          "description": "Required. S3 Bucket name (see [Creating a bucket](https://docs.aws.amazon.com/AmazonS3/latest/dev/create-bucket-get-location-example.html)).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AzureBlobStorageData": {
      "description": "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](https://docs.microsoft.com/en-us/azure/storage/common/storage-create-storage-account#storage-account-endpoints). In an AzureBlobStorageData resource, a blobs's name is the [Azure Blob Storage blob's key name](https://docs.microsoft.com/en-us/rest/api/storageservices/naming-and-referencing-containers--blobs--and-metadata#blob-names).",
      "id": "AzureBlobStorageData",
      "properties": {
        "azureCredentials": {
          "$ref": "AzureCredentials",
          "description": "Required. Credentials used to authenticate API requests to Azure."
        },
        "container": {
          "description": "Required. The container to transfer from the Azure Storage account.",
          "type": "string"
        },
        "storageAccount": {
          "description": "Required. The name of the Azure Storage account.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AzureCredentials": {
      "description": "Azure credentials",
      "id": "AzureCredentials",
      "properties": {
        "sasToken": {
          "description": "Required. Azure shared access signature. (see [Grant limited access to Azure Storage resources using shared access signatures (SAS)](https://docs.microsoft.com/en-us/azure/storage/common/storage-sas-overview)).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Date": {
      "description": "Represents a whole or partial calendar date, e.g. a birthday. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the Proleptic Gregorian Calendar. This can represent: * A full date, with non-zero year, month and day values * A month and day value, with a zero year, e.g. an anniversary * A year on its own, with zero month and day values * A year and month value, with a zero day, e.g. a credit card expiration date Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.",
      "id": "Date",
      "properties": {
        "day": {
          "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year by itself or a year and month where the day is not significant.",
          "format": "int32",
          "type": "integer"
        },
        "month": {
          "description": "Month of year. Must be from 1 to 12, or 0 if specifying a year without a month and day.",
          "format": "int32",
          "type": "integer"
        },
        "year": {
          "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "ErrorLogEntry": {
      "description": "An entry describing an error that has occurred.",
      "id": "ErrorLogEntry",
      "properties": {
        "errorDetails": {
          "description": "A list of messages that carry the error details.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "url": {
          "description": "Required. A URL that refers to the target (a data source, a data sink, or an object) with which the error is associated.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ErrorSummary": {
      "description": "A summary of errors by error code, plus a count and sample error log entries.",
      "id": "ErrorSummary",
      "properties": {
        "errorCode": {
          "description": "Required.",
          "enum": [
            "OK",
            "CANCELLED",
            "UNKNOWN",
            "INVALID_ARGUMENT",
            "DEADLINE_EXCEEDED",
            "NOT_FOUND",
            "ALREADY_EXISTS",
            "PERMISSION_DENIED",
            "UNAUTHENTICATED",
            "RESOURCE_EXHAUSTED",
            "FAILED_PRECONDITION",
            "ABORTED",
            "OUT_OF_RANGE",
            "UNIMPLEMENTED",
            "INTERNAL",
            "UNAVAILABLE",
            "DATA_LOSS"
          ],
          "enumDescriptions": [
            "Not an error; returned on success HTTP Mapping: 200 OK",
            "The operation was cancelled, typically by the caller. HTTP Mapping: 499 Client Closed Request",
            "Unknown error. For example, this error may be returned when a `Status` value received from another address space belongs to an error space that is not known in this address space. Also errors raised by APIs that do not return enough error information may be converted to this error. HTTP Mapping: 500 Internal Server Error",
            "The client specified an invalid argument. Note that this differs from `FAILED_PRECONDITION`. `INVALID_ARGUMENT` indicates arguments that are problematic regardless of the state of the system (e.g., a malformed file name). HTTP Mapping: 400 Bad Request",
            "The deadline expired before the operation could complete. For operations that change the state of the system, this error may be returned even if the operation has completed successfully. For example, a successful response from a server could have been delayed long enough for the deadline to expire. HTTP Mapping: 504 Gateway Timeout",
            "Some requested entity (e.g., file or directory) was not found. Note to server developers: if a request is denied for an entire class of users, such as gradual feature rollout or undocumented allowlist, `NOT_FOUND` may be used. If a request is denied for some users within a class of users, such as user-based access control, `PERMISSION_DENIED` must be used. HTTP Mapping: 404 Not Found",
            "The entity that a client attempted to create (e.g., file or directory) already exists. HTTP Mapping: 409 Conflict",
            "The caller does not have permission to execute the specified operation. `PERMISSION_DENIED` must not be used for rejections caused by exhausting some resource (use `RESOURCE_EXHAUSTED` instead for those errors). `PERMISSION_DENIED` must not be used if the caller can not be identified (use `UNAUTHENTICATED` instead for those errors). This error code does not imply the request is valid or the requested entity exists or satisfies other pre-conditions. HTTP Mapping: 403 Forbidden",
            "The request does not have valid authentication credentials for the operation. HTTP Mapping: 401 Unauthorized",
            "Some resource has been exhausted, perhaps a per-user quota, or perhaps the entire file system is out of space. HTTP Mapping: 429 Too Many Requests",
            "The operation was rejected because the system is not in a state required for the operation's execution. For example, the directory to be deleted is non-empty, an rmdir operation is applied to a non-directory, etc. Service implementors can use the following guidelines to decide between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`: (a) Use `UNAVAILABLE` if the client can retry just the failing call. (b) Use `ABORTED` if the client should retry at a higher level (e.g., when a client-specified test-and-set fails, indicating the client should restart a read-modify-write sequence). (c) Use `FAILED_PRECONDITION` if the client should not retry until the system state has been explicitly fixed. E.g., if an \"rmdir\" fails because the directory is non-empty, `FAILED_PRECONDITION` should be returned since the client should not retry unless the files are deleted from the directory. HTTP Mapping: 400 Bad Request",
            "The operation was aborted, typically due to a concurrency issue such as a sequencer check failure or transaction abort. See the guidelines above for deciding between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`. HTTP Mapping: 409 Conflict",
            "The operation was attempted past the valid range. E.g., seeking or reading past end-of-file. Unlike `INVALID_ARGUMENT`, this error indicates a problem that may be fixed if the system state changes. For example, a 32-bit file system will generate `INVALID_ARGUMENT` if asked to read at an offset that is not in the range [0,2^32-1], but it will generate `OUT_OF_RANGE` if asked to read from an offset past the current file size. There is a fair bit of overlap between `FAILED_PRECONDITION` and `OUT_OF_RANGE`. We recommend using `OUT_OF_RANGE` (the more specific error) when it applies so that callers who are iterating through a space can easily look for an `OUT_OF_RANGE` error to detect when they are done. HTTP Mapping: 400 Bad Request",
            "The operation is not implemented or is not supported/enabled in this service. HTTP Mapping: 501 Not Implemented",
            "Internal errors. This means that some invariants expected by the underlying system have been broken. This error code is reserved for serious errors. HTTP Mapping: 500 Internal Server Error",
            "The service is currently unavailable. This is most likely a transient condition, which can be corrected by retrying with a backoff. Note that it is not always safe to retry non-idempotent operations. See the guidelines above for deciding between `FAILED_PRECONDITION`, `ABORTED`, and `UNAVAILABLE`. HTTP Mapping: 503 Service Unavailable",
            "Unrecoverable data loss or corruption. HTTP Mapping: 500 Internal Server Error"
          ],
          "type": "string"
        },
        "errorCount": {
          "description": "Required. Count of this type of error.",
          "format": "int64",
          "type": "string"
        },
        "errorLogEntries": {
          "description": "Error samples. At most 5 error log entries will be recorded for a given error code for a single transfer operation.",
          "items": {
            "$ref": "ErrorLogEntry"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GcsData": {
      "description": "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.",
      "id": "GcsData",
      "properties": {
        "bucketName": {
          "description": "Required. Cloud Storage bucket name (see [Bucket Name Requirements](https://cloud.google.com/storage/docs/naming#requirements)).",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleServiceAccount": {
      "description": "Google service account",
      "id": "GoogleServiceAccount",
      "properties": {
        "accountEmail": {
          "description": "Email address of the service account.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "HttpData": {
      "description": "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](https://cloud.google.com/storage-transfer/docs/create-url-list). 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 will not be transferred. * If the specified MD5 does not match the MD5 computed from the transferred bytes, the object transfer will fail. For more information, see [Generating MD5 hashes](https://cloud.google.com/storage-transfer/docs/create-url-list#md5) * Ensure that each URL you specify is publicly accessible. For example, in Cloud Storage you can [share an object publicly] (https://cloud.google.com/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.",
      "id": "HttpData",
      "properties": {
        "listUrl": {
          "description": "Required. The URL that points to the file that stores the object list entries. This file must allow public access. Currently, only URLs with HTTP and HTTPS schemes are supported.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListOperationsResponse": {
      "description": "The response message for Operations.ListOperations.",
      "id": "ListOperationsResponse",
      "properties": {
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        },
        "operations": {
          "description": "A list of operations that matches the specified filter in the request.",
          "items": {
            "$ref": "Operation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ListTransferJobsResponse": {
      "description": "Response from ListTransferJobs.",
      "id": "ListTransferJobsResponse",
      "properties": {
        "nextPageToken": {
          "description": "The list next page token.",
          "type": "string"
        },
        "transferJobs": {
          "description": "A list of transfer jobs.",
          "items": {
            "$ref": "TransferJob"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "NotificationConfig": {
      "description": "Specification to configure notifications published to Cloud Pub/Sub. Notifications will be 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` will contain a TransferOperation resource formatted according to the specified `PayloadFormat`.",
      "id": "NotificationConfig",
      "properties": {
        "eventTypes": {
          "description": "Event types for which a notification is desired. If empty, send notifications for all event types.",
          "enumDescriptions": [
            "Illegal value, to avoid allowing a default.",
            "`TransferOperation` completed with status SUCCESS.",
            "`TransferOperation` completed with status FAILED.",
            "`TransferOperation` completed with status ABORTED."
          ],
          "items": {
            "enum": [
              "EVENT_TYPE_UNSPECIFIED",
              "TRANSFER_OPERATION_SUCCESS",
              "TRANSFER_OPERATION_FAILED",
              "TRANSFER_OPERATION_ABORTED"
            ],
            "enumDescriptions": [
              "Illegal value, to avoid allowing a default.",
              "`TransferOperation` completed with status SUCCESS.",
              "`TransferOperation` completed with status FAILED.",
              "`TransferOperation` completed with status ABORTED."
            ],
            "type": "string"
          },
          "type": "array"
        },
        "payloadFormat": {
          "description": "Required. The desired format of the notification message payloads.",
          "enum": [
            "PAYLOAD_FORMAT_UNSPECIFIED",
            "NONE",
            "JSON"
          ],
          "enumDescriptions": [
            "Illegal value, to avoid allowing a default.",
            "No payload is included with the notification.",
            "`TransferOperation` is [formatted as a JSON response](https://developers.google.com/protocol-buffers/docs/proto3#json), in application/json."
          ],
          "type": "string"
        },
        "pubsubTopic": {
          "description": "Required. The `Topic.name` of the Cloud Pub/Sub topic to which to publish notifications. Must be of the format: `projects/{project}/topics/{topic}`. Not matching this format will result in an INVALID_ARGUMENT error.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ObjectConditions": {
      "description": "Conditions that determine which objects will be 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.",
      "id": "ObjectConditions",
      "properties": {
        "excludePrefixes": {
          "description": "`exclude_prefixes` must follow the requirements described for include_prefixes. The max size of `exclude_prefixes` is 1000.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "includePrefixes": {
          "description": "If `include_prefixes` is specified, objects that satisfy the object conditions must have names that start with one of the `include_prefixes` and that do not start with any of the exclude_prefixes. If `include_prefixes` is not specified, all objects except those that have names starting with one of the `exclude_prefixes` must satisfy the object conditions. Requirements: * Each include-prefix and exclude-prefix can contain any sequence of Unicode characters, to a max length of 1024 bytes when UTF8-encoded, and must not contain Carriage Return or Line Feed characters. Wildcard matching and regular expression matching are not supported. * Each include-prefix and exclude-prefix must omit the leading slash. For example, to include the `requests.gz` object in a transfer from `s3://my-aws-bucket/logs/y=2015/requests.gz`, specify the include prefix as `logs/y=2015/requests.gz`. * None of the include-prefix or the exclude-prefix values can be empty, if specified. * Each include-prefix must include a distinct portion of the object namespace. No include-prefix may be a prefix of another include-prefix. * Each exclude-prefix must exclude a distinct portion of the object namespace. No exclude-prefix may be a prefix of another exclude-prefix. * If `include_prefixes` is specified, then each exclude-prefix must start with the value of a path explicitly included by `include_prefixes`. The max size of `include_prefixes` is 1000.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "lastModifiedBefore": {
          "description": "If specified, only objects with a \"last modification time\" before this timestamp and objects that don't have a \"last modification time\" will be transferred.",
          "format": "google-datetime",
          "type": "string"
        },
        "lastModifiedSince": {
          "description": "If specified, only objects with a \"last modification time\" on or after this timestamp and objects that don't have a \"last modification time\" are transferred. The `last_modified_since` and `last_modified_before` fields can be used together for chunked data processing. For example, consider a script that processes each day's worth of data at a time. For that you'd set each of the fields as follows: * `last_modified_since` to the start of the day * `last_modified_before` to the end of the day",
          "format": "google-datetime",
          "type": "string"
        },
        "maxTimeElapsedSinceLastModification": {
          "description": "If specified, only objects with a \"last modification time\" on or after `NOW` - `max_time_elapsed_since_last_modification` and objects that don't have a \"last modification time\" are transferred. For each TransferOperation started by this TransferJob, `NOW` refers to the start_time of the `TransferOperation`.",
          "format": "google-duration",
          "type": "string"
        },
        "minTimeElapsedSinceLastModification": {
          "description": "If specified, only objects with a \"last modification time\" before `NOW` - `min_time_elapsed_since_last_modification` and objects that don't have a \"last modification time\" are transferred. For each TransferOperation started by this TransferJob, `NOW` refers to the start_time of the `TransferOperation`.",
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Operation": {
      "description": "This resource represents a long-running operation that is the result of a network API call.",
      "id": "Operation",
      "properties": {
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
          "type": "boolean"
        },
        "error": {
          "$ref": "Status",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Represents the transfer operation object. To request a TransferOperation object, use transferOperations.get.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `transferOperations/some/unique/name`.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "PauseTransferOperationRequest": {
      "description": "Request passed to PauseTransferOperation.",
      "id": "PauseTransferOperationRequest",
      "properties": {},
      "type": "object"
    },
    "ResumeTransferOperationRequest": {
      "description": "Request passed to ResumeTransferOperation.",
      "id": "ResumeTransferOperationRequest",
      "properties": {},
      "type": "object"
    },
    "Schedule": {
      "description": "Transfers can be scheduled to recur or to run just once.",
      "id": "Schedule",
      "properties": {
        "scheduleEndDate": {
          "$ref": "Date",
          "description": "The last day a transfer runs. Date boundaries are determined relative to UTC time. A job will run once per 24 hours within the following guidelines: * If `schedule_end_date` and schedule_start_date are the same and in the future relative to UTC, the transfer is executed only one time. * If `schedule_end_date` is later than `schedule_start_date` and `schedule_end_date` is in the future relative to UTC, the job will run each day at start_time_of_day through `schedule_end_date`."
        },
        "scheduleStartDate": {
          "$ref": "Date",
          "description": "Required. The start date of a transfer. Date boundaries are determined relative to UTC time. If `schedule_start_date` and start_time_of_day are in the past relative to the job's creation time, the transfer starts the day after you schedule the transfer request. **Note:** When starting jobs at or near midnight UTC it is possible that a job will start later than expected. For example, if you send an outbound request on June 1 one millisecond prior to midnight UTC and the Storage Transfer Service server receives the request on June 2, then it will create a TransferJob with `schedule_start_date` set to June 2 and a `start_time_of_day` set to midnight UTC. The first scheduled TransferOperation will take place on June 3 at midnight UTC."
        },
        "startTimeOfDay": {
          "$ref": "TimeOfDay",
          "description": "The time in UTC that a transfer job is scheduled to run. Transfers may start later than this time. If `start_time_of_day` is not specified: * One-time transfers run immediately. * Recurring transfers run immediately, and each day at midnight UTC, through schedule_end_date. If `start_time_of_day` is specified: * One-time transfers run at the specified time. * Recurring transfers run at the specified time each day, through `schedule_end_date`."
        }
      },
      "type": "object"
    },
    "Status": {
      "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).",
      "id": "Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TimeOfDay": {
      "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`.",
      "id": "TimeOfDay",
      "properties": {
        "hours": {
          "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.",
          "format": "int32",
          "type": "integer"
        },
        "minutes": {
          "description": "Minutes of hour of day. Must be from 0 to 59.",
          "format": "int32",
          "type": "integer"
        },
        "nanos": {
          "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.",
          "format": "int32",
          "type": "integer"
        },
        "seconds": {
          "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "TransferCounters": {
      "description": "A collection of counters that report the progress of a transfer operation.",
      "id": "TransferCounters",
      "properties": {
        "bytesCopiedToSink": {
          "description": "Bytes that are copied to the data sink.",
          "format": "int64",
          "type": "string"
        },
        "bytesDeletedFromSink": {
          "description": "Bytes that are deleted from the data sink.",
          "format": "int64",
          "type": "string"
        },
        "bytesDeletedFromSource": {
          "description": "Bytes that are deleted from the data source.",
          "format": "int64",
          "type": "string"
        },
        "bytesFailedToDeleteFromSink": {
          "description": "Bytes that failed to be deleted from the data sink.",
          "format": "int64",
          "type": "string"
        },
        "bytesFoundFromSource": {
          "description": "Bytes found in the data source that are scheduled to be transferred, excluding any that are filtered based on object conditions or skipped due to sync.",
          "format": "int64",
          "type": "string"
        },
        "bytesFoundOnlyFromSink": {
          "description": "Bytes found only in the data sink that are scheduled to be deleted.",
          "format": "int64",
          "type": "string"
        },
        "bytesFromSourceFailed": {
          "description": "Bytes in the data source that failed to be transferred or that failed to be deleted after being transferred.",
          "format": "int64",
          "type": "string"
        },
        "bytesFromSourceSkippedBySync": {
          "description": "Bytes in the data source that are not transferred because they already exist in the data sink.",
          "format": "int64",
          "type": "string"
        },
        "objectsCopiedToSink": {
          "description": "Objects that are copied to the data sink.",
          "format": "int64",
          "type": "string"
        },
        "objectsDeletedFromSink": {
          "description": "Objects that are deleted from the data sink.",
          "format": "int64",
          "type": "string"
        },
        "objectsDeletedFromSource": {
          "description": "Objects that are deleted from the data source.",
          "format": "int64",
          "type": "string"
        },
        "objectsFailedToDeleteFromSink": {
          "description": "Objects that failed to be deleted from the data sink.",
          "format": "int64",
          "type": "string"
        },
        "objectsFoundFromSource": {
          "description": "Objects found in the data source that are scheduled to be transferred, excluding any that are filtered based on object conditions or skipped due to sync.",
          "format": "int64",
          "type": "string"
        },
        "objectsFoundOnlyFromSink": {
          "description": "Objects found only in the data sink that are scheduled to be deleted.",
          "format": "int64",
          "type": "string"
        },
        "objectsFromSourceFailed": {
          "description": "Objects in the data source that failed to be transferred or that failed to be deleted after being transferred.",
          "format": "int64",
          "type": "string"
        },
        "objectsFromSourceSkippedBySync": {
          "description": "Objects in the data source that are not transferred because they already exist in the data sink.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TransferJob": {
      "description": "This resource represents the configuration of a transfer job that runs periodically.",
      "id": "TransferJob",
      "properties": {
        "creationTime": {
          "description": "Output only. The time that the transfer job was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "deletionTime": {
          "description": "Output only. The time that the transfer job was deleted.",
          "format": "google-datetime",
          "type": "string"
        },
        "description": {
          "description": "A description provided by the user for the job. Its max length is 1024 bytes when Unicode-encoded.",
          "type": "string"
        },
        "lastModificationTime": {
          "description": "Output only. The time that the transfer job was last modified.",
          "format": "google-datetime",
          "type": "string"
        },
        "name": {
          "description": "A unique name (within the transfer project) assigned when the job is created. If this field is empty in a CreateTransferJobRequest, Storage Transfer Service will assign a unique name. Otherwise, the specified name is used as the unique name for this job. If the specified name is in use by a job, the creation request fails with an ALREADY_EXISTS error. This name must start with `\"transferJobs/\"` prefix and end with a letter or a number, and should be no more than 128 characters. Example: `\"transferJobs/[A-Za-z0-9-._~]*[A-Za-z0-9]$\"` Invalid job names will fail with an INVALID_ARGUMENT error.",
          "type": "string"
        },
        "notificationConfig": {
          "$ref": "NotificationConfig",
          "description": "Notification configuration."
        },
        "projectId": {
          "description": "The ID of the Google Cloud Platform Project that owns the job.",
          "type": "string"
        },
        "schedule": {
          "$ref": "Schedule",
          "description": "Schedule specification."
        },
        "status": {
          "description": "Status of the job. This value MUST be specified for `CreateTransferJobRequests`. **Note:** The effect of the new job status takes place during a subsequent job run. For example, if you change the job status from ENABLED to DISABLED, and an operation spawned by the transfer is running, the status change would not affect the current operation.",
          "enum": [
            "STATUS_UNSPECIFIED",
            "ENABLED",
            "DISABLED",
            "DELETED"
          ],
          "enumDescriptions": [
            "Zero is an illegal value.",
            "New transfers will be performed based on the schedule.",
            "New transfers will not be scheduled.",
            "This is a soft delete state. After a transfer job is set to this state, the job and all the transfer executions are subject to garbage collection. Transfer jobs become eligible for garbage collection 30 days after their status is set to `DELETED`."
          ],
          "type": "string"
        },
        "transferSpec": {
          "$ref": "TransferSpec",
          "description": "Transfer specification."
        }
      },
      "type": "object"
    },
    "TransferOperation": {
      "description": "A description of the execution of a transfer.",
      "id": "TransferOperation",
      "properties": {
        "counters": {
          "$ref": "TransferCounters",
          "description": "Information about the progress of the transfer operation."
        },
        "endTime": {
          "description": "End time of this transfer execution.",
          "format": "google-datetime",
          "type": "string"
        },
        "errorBreakdowns": {
          "description": "Summarizes errors encountered with sample error log entries.",
          "items": {
            "$ref": "ErrorSummary"
          },
          "type": "array"
        },
        "name": {
          "description": "A globally unique ID assigned by the system.",
          "type": "string"
        },
        "notificationConfig": {
          "$ref": "NotificationConfig",
          "description": "Notification configuration."
        },
        "projectId": {
          "description": "The ID of the Google Cloud Platform Project that owns the operation.",
          "type": "string"
        },
        "startTime": {
          "description": "Start time of this transfer execution.",
          "format": "google-datetime",
          "type": "string"
        },
        "status": {
          "description": "Status of the transfer operation.",
          "enum": [
            "STATUS_UNSPECIFIED",
            "IN_PROGRESS",
            "PAUSED",
            "SUCCESS",
            "FAILED",
            "ABORTED",
            "QUEUED"
          ],
          "enumDescriptions": [
            "Zero is an illegal value.",
            "In progress.",
            "Paused.",
            "Completed successfully.",
            "Terminated due to an unrecoverable failure.",
            "Aborted by the user.",
            "Temporarily delayed by the system. No user action is required."
          ],
          "type": "string"
        },
        "transferJobName": {
          "description": "The name of the transfer job that triggers this transfer operation.",
          "type": "string"
        },
        "transferSpec": {
          "$ref": "TransferSpec",
          "description": "Transfer specification."
        }
      },
      "type": "object"
    },
    "TransferOptions": {
      "description": "TransferOptions define the actions to be performed on objects in a transfer.",
      "id": "TransferOptions",
      "properties": {
        "deleteObjectsFromSourceAfterTransfer": {
          "description": "Whether objects should be deleted from the source after they are transferred to the sink. **Note:** This option and delete_objects_unique_in_sink are mutually exclusive.",
          "type": "boolean"
        },
        "deleteObjectsUniqueInSink": {
          "description": "Whether objects that exist only in the sink should be deleted. **Note:** This option and delete_objects_from_source_after_transfer are mutually exclusive.",
          "type": "boolean"
        },
        "overwriteObjectsAlreadyExistingInSink": {
          "description": "Whether overwriting objects that already exist in the sink is allowed.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "TransferSpec": {
      "description": "Configuration for running a transfer.",
      "id": "TransferSpec",
      "properties": {
        "awsS3DataSource": {
          "$ref": "AwsS3Data",
          "description": "An AWS S3 data source."
        },
        "azureBlobStorageDataSource": {
          "$ref": "AzureBlobStorageData",
          "description": "An Azure Blob Storage data source."
        },
        "gcsDataSink": {
          "$ref": "GcsData",
          "description": "A Cloud Storage data sink."
        },
        "gcsDataSource": {
          "$ref": "GcsData",
          "description": "A Cloud Storage data source."
        },
        "httpDataSource": {
          "$ref": "HttpData",
          "description": "An HTTP URL data source."
        },
        "objectConditions": {
          "$ref": "ObjectConditions",
          "description": "Only objects that satisfy these object conditions are included in the set of data source and data sink objects. Object conditions based on objects' \"last modification time\" do not exclude objects in a data sink."
        },
        "transferOptions": {
          "$ref": "TransferOptions",
          "description": "If the option delete_objects_unique_in_sink is `true`, object conditions based on objects' \"last modification time\" are ignored and do not exclude objects in a data source or a data sink."
        }
      },
      "type": "object"
    },
    "UpdateTransferJobRequest": {
      "description": "Request passed to UpdateTransferJob.",
      "id": "UpdateTransferJobRequest",
      "properties": {
        "projectId": {
          "description": "Required. The ID of the Google Cloud Platform Console project that owns the job.",
          "type": "string"
        },
        "transferJob": {
          "$ref": "TransferJob",
          "description": "Required. The job to update. `transferJob` is expected to specify only four fields: description, transfer_spec, notification_config, and status. An `UpdateTransferJobRequest` that specifies other fields will be rejected with the error INVALID_ARGUMENT."
        },
        "updateTransferJobFieldMask": {
          "description": "The field mask of the fields in `transferJob` that are to be updated in this request. Fields in `transferJob` that can be updated are: description, transfer_spec, notification_config, and status. To update the `transfer_spec` of the job, a complete transfer specification must be provided. An incomplete specification missing any required fields will be rejected with the error INVALID_ARGUMENT.",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Storage Transfer API",
  "version": "v1",
  "version_module": true
}