View Source GoogleApi.Storage.V1.Api.Objects (google_api_storage v0.46.0)

API calls for all endpoints tagged Objects.

Summary

Functions

Initiates a long-running bulk restore operation on the specified bucket.

Concatenates a list of existing objects into a new object in the same bucket.

Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.

Retrieves a list of objects matching the criteria.

Tests a set of permissions on the given object to see which, if any, are held by the caller.

Functions

storage_objects_bulk_restore(connection, bucket, optional_params \\ [], opts \\ [])

@spec storage_objects_bulk_restore(
  Tesla.Env.client(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.GoogleLongrunningOperation.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Initiates a long-running bulk restore operation on the specified bucket.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :body (type: GoogleApi.Storage.V1.Model.BulkRestoreObjectsRequest.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.GoogleLongrunningOperation{}} on success
  • {:error, info} on failure

storage_objects_compose(connection, destination_bucket, destination_object, optional_params \\ [], opts \\ [])

@spec storage_objects_compose(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Concatenates a list of existing objects into a new object in the same bucket.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • destination_bucket (type: String.t) - Name of the bucket containing the source objects. The destination object is stored in this bucket.
  • destination_object (type: String.t) - Name of the new object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :destinationPredefinedAcl (type: String.t) - Apply a predefined set of access controls to the destination object.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :kmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.ComposeRequest.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_copy(connection, source_bucket, source_object, destination_bucket, destination_object, optional_params \\ [], opts \\ [])

@spec storage_objects_copy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Copies a source object to a destination object. Optionally overrides metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • source_bucket (type: String.t) - Name of the bucket in which to find the source object.
  • source_object (type: String.t) - Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • destination_bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • destination_object (type: String.t) - Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :destinationKmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :destinationPredefinedAcl (type: String.t) - Apply a predefined set of access controls to the destination object.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration does not match the given value.
    • :ifSourceGenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation matches the given value.
    • :ifSourceGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation does not match the given value.
    • :ifSourceMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration matches the given value.
    • :ifSourceMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration does not match the given value.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :sourceGeneration (type: String.t) - If present, selects a specific revision of the source object (as opposed to the latest version, the default).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_delete(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_delete(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, nil} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()}

Deletes an object and its metadata. Deletions are permanent if versioning is not enabled for the bucket, or if the generation parameter is used.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, permanently deletes a specific revision of this object (as opposed to the latest version, the default).
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %{}} on success
  • {:error, info} on failure

storage_objects_get(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_get(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Retrieves an object or its metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl.
    • :restoreToken (type: String.t) - Restore token used to differentiate soft-deleted objects with the same name and generation. Only applicable for hierarchical namespace buckets and if softDeleted is set to true. This parameter is optional, and is only required in the rare case when there are multiple soft-deleted objects with the same name and generation.
    • :softDeleted (type: boolean()) - If true, only soft-deleted object versions will be listed. The default is false. For more information, see Soft Delete.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_get_iam_policy(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_get_iam_policy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Policy.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Returns an IAM policy for the specified object.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Policy{}} on success
  • {:error, info} on failure

storage_objects_insert(connection, bucket, optional_params \\ [], opts \\ [])

@spec storage_objects_insert(Tesla.Env.client(), String.t(), keyword(), keyword()) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Stores a new object and metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :contentEncoding (type: String.t) - If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :kmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :name (type: String.t) - Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_insert_iodata(connection, bucket, upload_type, metadata, data, optional_params \\ [], opts \\ [])

@spec storage_objects_insert_iodata(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  GoogleApi.Storage.V1.Model.Object.t(),
  iodata(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Stores a new object and metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.
  • upload_type (type: String.t) - Upload type. Must be "multipart".
  • metadata (type: GoogleApi.Storage.V1.Model.Object.t) - object metadata
  • data (type: iodata) - Content to upload, as a string or iolist
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :contentEncoding (type: String.t) - If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :kmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :name (type: String.t) - Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_insert_resumable(connection, bucket, upload_type, optional_params \\ [], opts \\ [])

@spec storage_objects_insert_resumable(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, nil} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()}

Stores a new object and metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.
  • upload_type (type: String.t) - Upload type. Must be "resumable".
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :contentEncoding (type: String.t) - If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :kmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :name (type: String.t) - Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %{}} on success
  • {:error, info} on failure

storage_objects_insert_simple(connection, bucket, upload_type, metadata, data, optional_params \\ [], opts \\ [])

@spec storage_objects_insert_simple(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  GoogleApi.Storage.V1.Model.Object.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Stores a new object and metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.
  • upload_type (type: String.t) - Upload type. Must be "multipart".
  • metadata (type: GoogleApi.Storage.V1.Model.Object.t) - object metadata
  • data (type: String.t) - Path to file containing content to upload
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :contentEncoding (type: String.t) - If set, sets the contentEncoding property of the final object to this value. Setting this parameter is equivalent to setting the contentEncoding metadata property. This can be useful when uploading an object with uploadType=media to indicate the encoding of the content being uploaded.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :kmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :name (type: String.t) - Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_list(connection, bucket, optional_params \\ [], opts \\ [])

@spec storage_objects_list(Tesla.Env.client(), String.t(), keyword(), keyword()) ::
  {:ok, GoogleApi.Storage.V1.Model.Objects.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Retrieves a list of objects matching the criteria.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to look for objects.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :delimiter (type: String.t) - Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.
    • :endOffset (type: String.t) - Filter results to objects whose names are lexicographically before endOffset. If startOffset is also set, the objects listed will have names between startOffset (inclusive) and endOffset (exclusive).
    • :includeFoldersAsPrefixes (type: boolean()) - Only applicable if delimiter is set to '/'. If true, will also include folders and managed folders (besides objects) in the returned prefixes.
    • :includeTrailingDelimiter (type: boolean()) - If true, objects that end in exactly one instance of delimiter will have their metadata included in items in addition to prefixes.
    • :matchGlob (type: String.t) - Filter results to objects and prefixes that match this glob pattern.
    • :maxResults (type: integer()) - Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.
    • :pageToken (type: String.t) - A previously-returned page token representing part of the larger set of results to view.
    • :prefix (type: String.t) - Filter results to objects whose names begin with this prefix.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl.
    • :softDeleted (type: boolean()) - If true, only soft-deleted object versions will be listed. The default is false. For more information, see Soft Delete.
    • :startOffset (type: String.t) - Filter results to objects whose names are lexicographically equal to or after startOffset. If endOffset is also set, the objects listed will have names between startOffset (inclusive) and endOffset (exclusive).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :versions (type: boolean()) - If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Objects{}} on success
  • {:error, info} on failure

storage_objects_move(connection, bucket, source_object, destination_object, optional_params \\ [], opts \\ [])

@spec storage_objects_move(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Moves the source object to the destination object in the same bucket.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • source_object (type: String.t) - Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • destination_object (type: String.t) - Name of the destination object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the destination object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object. ifGenerationMatch and ifGenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the destination object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.ifGenerationMatch and ifGenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration matches the given value. ifMetagenerationMatch and ifMetagenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration does not match the given value. ifMetagenerationMatch and ifMetagenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifSourceGenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation matches the given value. ifSourceGenerationMatch and ifSourceGenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifSourceGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation does not match the given value. ifSourceGenerationMatch and ifSourceGenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifSourceMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration matches the given value. ifSourceMetagenerationMatch and ifSourceMetagenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :ifSourceMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration does not match the given value. ifSourceMetagenerationMatch and ifSourceMetagenerationNotMatch conditions are mutually exclusive: it's an error for both of them to be set in the request.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_patch(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_patch(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Patches an object's metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :overrideUnlockedRetention (type: boolean()) - Must be true to remove the retention configuration, reduce its unlocked retention period, or change its mode from unlocked to locked.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request, for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_restore(connection, bucket, object, generation, optional_params \\ [], opts \\ [])

@spec storage_objects_restore(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Restores a soft-deleted object.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • generation (type: String.t) - Selects a specific revision of this object.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :copySourceAcl (type: boolean()) - If true, copies the source object's ACL; otherwise, uses the bucket's default object ACL. The default is false.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's one live generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether none of the object's live generations match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's one live metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether none of the object's live metagenerations match the given value.
    • :projection (type: String.t) - Set of properties to return. Defaults to full.
    • :restoreToken (type: String.t) - Restore token used to differentiate sof-deleted objects with the same name and generation. Only applicable for hierarchical namespace buckets. This parameter is optional, and is only required in the rare case when there are multiple soft-deleted objects with the same name and generation.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_rewrite(connection, source_bucket, source_object, destination_bucket, destination_object, optional_params \\ [], opts \\ [])

@spec storage_objects_rewrite(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.RewriteResponse.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Rewrites a source object to a destination object. Optionally overrides metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • source_bucket (type: String.t) - Name of the bucket in which to find the source object.
  • source_object (type: String.t) - Name of the source object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • destination_bucket (type: String.t) - Name of the bucket in which to store the new object. Overrides the provided object metadata's bucket value, if any.
  • destination_object (type: String.t) - Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :destinationKmsKeyName (type: String.t) - Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.
    • :destinationPredefinedAcl (type: String.t) - Apply a predefined set of access controls to the destination object.
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the destination object's current metageneration does not match the given value.
    • :ifSourceGenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation matches the given value.
    • :ifSourceGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current generation does not match the given value.
    • :ifSourceMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration matches the given value.
    • :ifSourceMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the source object's current metageneration does not match the given value.
    • :maxBytesRewrittenPerCall (type: String.t) - The maximum number of bytes that will be rewritten per rewrite request. Most callers shouldn't need to specify this parameter - it is primarily in place to support testing. If specified the value must be an integral multiple of 1 MiB (1048576). Also, this only applies to requests where the source and destination span locations and/or storage classes. Finally, this value must not change across rewrite calls else you'll get an error that the rewriteToken is invalid.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl, unless the object resource specifies the acl property, when it defaults to full.
    • :rewriteToken (type: String.t) - Include this field (from the previous rewrite response) on each rewrite request after the first one, until the rewrite response 'done' flag is true. Calls that provide a rewriteToken can omit all other request fields, but if included those fields must match the values provided in the first rewrite request.
    • :sourceGeneration (type: String.t) - If present, selects a specific revision of the source object (as opposed to the latest version, the default).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.RewriteResponse{}} on success
  • {:error, info} on failure

storage_objects_set_iam_policy(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_set_iam_policy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Policy.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Updates an IAM policy for the specified object.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Policy.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Policy{}} on success
  • {:error, info} on failure

storage_objects_test_iam_permissions(connection, bucket, object, permissions, optional_params \\ [], opts \\ [])

@spec storage_objects_test_iam_permissions(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  [String.t()],
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.TestIamPermissionsResponse.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Tests a set of permissions on the given object to see which, if any, are held by the caller.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • permissions (type: list(String.t)) - Permissions to test.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.TestIamPermissionsResponse{}} on success
  • {:error, info} on failure

storage_objects_update(connection, bucket, object, optional_params \\ [], opts \\ [])

@spec storage_objects_update(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.Storage.V1.Model.Object.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Updates an object's metadata.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which the object resides.
  • object (type: String.t) - Name of the object. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :generation (type: String.t) - If present, selects a specific revision of this object (as opposed to the latest version, the default).
    • :ifGenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current generation matches the given value. Setting to 0 makes the operation succeed only if there are no live versions of the object.
    • :ifGenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current generation does not match the given value. If no live object exists, the precondition fails. Setting to 0 makes the operation succeed only if there is a live version of the object.
    • :ifMetagenerationMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration matches the given value.
    • :ifMetagenerationNotMatch (type: String.t) - Makes the operation conditional on whether the object's current metageneration does not match the given value.
    • :overrideUnlockedRetention (type: boolean()) - Must be true to remove the retention configuration, reduce its unlocked retention period, or change its mode from unlocked to locked.
    • :predefinedAcl (type: String.t) - Apply a predefined set of access controls to this object.
    • :projection (type: String.t) - Set of properties to return. Defaults to full.
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :body (type: GoogleApi.Storage.V1.Model.Object.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Object{}} on success
  • {:error, info} on failure

storage_objects_watch_all(connection, bucket, optional_params \\ [], opts \\ [])

@spec storage_objects_watch_all(Tesla.Env.client(), String.t(), keyword(), keyword()) ::
  {:ok, GoogleApi.Storage.V1.Model.Channel.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Watch for changes on all objects in a bucket.

Parameters

  • connection (type: GoogleApi.Storage.V1.Connection.t) - Connection to server
  • bucket (type: String.t) - Name of the bucket in which to look for objects.
  • optional_params (type: keyword()) - Optional parameters
    • :alt (type: String.t) - Data format for the response.
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - 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.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - An opaque string that represents a user for quota purposes. Must not exceed 40 characters.
    • :uploadType (type: String.t) - Upload protocol for media (e.g. "media", "multipart", "resumable").
    • :userIp (type: String.t) - Deprecated. Please use quotaUser instead.
    • :delimiter (type: String.t) - Returns results in a directory-like mode. items will contain only objects whose names, aside from the prefix, do not contain delimiter. Objects whose names, aside from the prefix, contain delimiter will have their name, truncated after the delimiter, returned in prefixes. Duplicate prefixes are omitted.
    • :endOffset (type: String.t) - Filter results to objects whose names are lexicographically before endOffset. If startOffset is also set, the objects listed will have names between startOffset (inclusive) and endOffset (exclusive).
    • :includeTrailingDelimiter (type: boolean()) - If true, objects that end in exactly one instance of delimiter will have their metadata included in items in addition to prefixes.
    • :maxResults (type: integer()) - Maximum number of items plus prefixes to return in a single page of responses. As duplicate prefixes are omitted, fewer total results may be returned than requested. The service will use this parameter or 1,000 items, whichever is smaller.
    • :pageToken (type: String.t) - A previously-returned page token representing part of the larger set of results to view.
    • :prefix (type: String.t) - Filter results to objects whose names begin with this prefix.
    • :projection (type: String.t) - Set of properties to return. Defaults to noAcl.
    • :startOffset (type: String.t) - Filter results to objects whose names are lexicographically equal to or after startOffset. If endOffset is also set, the objects listed will have names between startOffset (inclusive) and endOffset (exclusive).
    • :userProject (type: String.t) - The project to be billed for this request. Required for Requester Pays buckets.
    • :versions (type: boolean()) - If true, lists all versions of an object as distinct results. The default is false. For more information, see Object Versioning.
    • :resource (type: GoogleApi.Storage.V1.Model.Channel.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.Storage.V1.Model.Channel{}} on success
  • {:error, info} on failure