Invoke GCS Bucket Request Activity
Use this activity to execute Bucket related operations like READ, UPSERT(Combination of INSERT and UPDATE) and DELETE within your Google Cloud Storage project on Google Cloud Storage Platform.
-
Read is the default operation.
-
There is a default 2 seconds delay between deleting or upserting two buckets.
| Operation | Activity Icon (Changes with the operation selected) |
|---|---|
| Read |
|
| Upsert | ![]() |
| Delete | ![]() |
General
The General tab contains the following fields.
| Field | Module Property? | Visual Diff? | Description |
|---|---|---|---|
| Name | No | Yes | The name to be displayed as the label for the activity in the process. |
| Google CS Connection | Yes | Yes | Shared configuration resource containing the information about the GoogleCS Connection. |
| Operation | No | Yes | Type of operation for the Invoke GCS Bucket Request activity. |
Description
On the Description tab, provide a short description for the activity.
Input
The Input tab displays the input schema of the activity as a tree structure. You must enter information as required for any mandatory fields.
Read Operation
(-Dbw.engine.activity.async.waitTime=600000 <in miliseconds>) for time out to avoid encountering a fault. The activity is timed out after the default time if the VM argument is not specified.| Field | Description |
|---|---|
| Bucket.Name | Name of the bucket |
| metaGenerationMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration does not match. |
| metaGenerationNotMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration matches. |
| userProject | An option to define the billing user project. This option is required by buckets with `requester_pays` flag enabled to assign operation costs. |
Upsert Operation
| Field | Description | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| name | Name of the bucket | ||||||||||||||||||
| acl | Access controls on the bucket, containing one or more bucketAccessControls Resources. If iamConfiguration.uniformBucketLevelAccess.enabled is set to true, this field is omitted in responses, and requests that specify this field fail with a 400 Bad Request response. |
||||||||||||||||||
| acl.entity |
The entity that has the permission for the following fields:
Note: If entity is user or group then email is mandatory. If entity is domain then domain is mandatory. If entity is project then projectRole and projectId is mandatory. For any other values, it takes default value as 'allAuthenticatedUsers'.
|
||||||||||||||||||
| acl.entity.type | The type of entity. | ||||||||||||||||||
| acl.entity.domain | The domain associated with the entity. | ||||||||||||||||||
| acl.entity.email | The email address associated with the entity. | ||||||||||||||||||
| acl.entity.projectRole | The projectRole associated with the entity. | ||||||||||||||||||
| acl.entity.projectId |
The projectId associated with the entity. |
||||||||||||||||||
| acl.role |
The access permission for the entity. Acceptable values are:
|
||||||||||||||||||
| billing | The bucket billing configuration. | ||||||||||||||||||
| billing.requesterPays | To enable or disable requester pays. | ||||||||||||||||||
| ismetaGenerationMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration does not match. | ||||||||||||||||||
| ismetaGenerationNotMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration matches. | ||||||||||||||||||
| predefinedAcl | An option for specifying the predefined ACL configuration for a bucket. | ||||||||||||||||||
| predefinedDefaultObjectAcl | An option for specifying the default ACL configuration for blobs of a bucket. | ||||||||||||||||||
| projection |
Set of properties to return. This value has a default of noAcl if the bucket resource does not specify acl or defaultObjectAcl properties when it defaults to full. Acceptable values are:
This option is valid only if the bucket has fine grained(ACL) permissions associated with it. Not to be used with uniform permissions. |
||||||||||||||||||
| userProject | An option to define the billing user project. This option is required by buckets with `requester_pays` flag enabled to assign operation costs. | ||||||||||||||||||
| cors | The Cross-Origin Resource Sharing (CORS) configuration of the bucket. | ||||||||||||||||||
| cors.maxAgeSeconds | The value (in seconds) to return in the Access-Control-Max-Age header used in preflight responses. | ||||||||||||||||||
| cors.method |
The list of HTTP methods on which the CORS response headers like "GET", "OPTIONS", "POST", and so on can be included. Note: "*" is permitted in the list of methods. This means "any method".
|
||||||||||||||||||
| cors.responseHeader | The list of HTTP headers to give permission for the user-agent to share across domains (other than the simple response headers ). | ||||||||||||||||||
| defaultEventBasedHold | To decide whether or not to automatically apply an eventBasedHold to new objects added to the bucket. | ||||||||||||||||||
| iamConfiguration | The IAM configuration of the bucket. | ||||||||||||||||||
| iamConfiguration.isUniformBucketLevelAccessEnabled | Sets whether uniform bucket-level access is enabled for this bucket. When this is enabled, access to the bucket is configured through IAM, and legacy ACL policies do not work. When this is first enabled, uniformBucketLevelAccess.lockedTime is set by the API automatically. This field can then be disabled until the time specified, after which it becomes immutable and calls to change it fail. If this is enabled, calls to access legacy ACL information fail. |
||||||||||||||||||
| label | The bucket labels provided by the user in key or value pairs. | ||||||||||||||||||
| label.key | Key for label. | ||||||||||||||||||
| label.value | Value for label. | ||||||||||||||||||
| lifecycle | The lifecycle configuration of the bucket. | ||||||||||||||||||
| lifecycle.action | The action to take. | ||||||||||||||||||
| lifecycle.action.type | Type of the action. Currently, "Delete" and "SetStorageClass" are supported. For the type "delete" of lifecycle rules - storage class field is not required to be set. | ||||||||||||||||||
| lifecycle.action.storageClass | StorageClass of lifecycle. The valid values are STANDARD, NEARLINE, COLDLINE, ARCHIVE. | ||||||||||||||||||
| lifecycle.condition | The condition/s under which the action is taken. | ||||||||||||||||||
| lifecycle.condition.age | Age of an object (in days). This condition is fulfilled when an object reaches the specified age. | ||||||||||||||||||
| lifecycle.condition.createdBefore | A date in the YYYY-MM-DD format. This condition is fulfilled when an object is created before midnight of the specified date in UTC. | ||||||||||||||||||
| lifecycle.condition.customTimeBefore | A date in the YYYY-MM-DD format. This condition is satisfied when the customTime metadata for the object is set to an earlier date than the date used in this lifecycle condition. | ||||||||||||||||||
| lifecycle.condition.daysSinceCustomTime | Days since the date set in the customTime metadata for the object. This condition is satisfied when the current date and time is at least the specified number of days after the customTime. | ||||||||||||||||||
| lifecycle.condition.daysSinceNonCurrentTime | Relevant only for versioned objects. This condition is fulfilled when an object has been noncurrent for more than the specified number of days. | ||||||||||||||||||
| lifecycle.condition.isLive | Relevant only for versioned objects. If the value is true, this condition matches the live version of objects; if the value is false, it matches noncurrent versions of objects. | ||||||||||||||||||
| lifecycle.condition.matchesStorageClass | Objects having any of the storage classes specified by this condition are matched. Values include "STANDARD", "NEARLINE", "COLDLINE", "ARCHIVE", "MULTI_REGIONAL", "REGIONAL", and "DURABLE_REDUCED_AVAILABILITY". | ||||||||||||||||||
| lifecycle.condition.nonCurrentTimesBefore | Relevant only for versioned objects. A date in the YYYY-MM-DD format. This condition is satisfied for objects that became noncurrent on a date prior to the one specified in this condition. | ||||||||||||||||||
| lifecycle.condition.numberOfNewerVersions | Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object. | ||||||||||||||||||
| location | The location of the bucket. | ||||||||||||||||||
| logging | The logging configuration of the bucket that defines the destination bucket and a name prefix for the current bucket logs. | ||||||||||||||||||
| logging.logBucket | The destination of the bucket where the logs of the current bucket must be placed. | ||||||||||||||||||
| logging.logObjectPrefix | A prefix for the log object names. The default prefix is the bucket name. | ||||||||||||||||||
| retentionPolicy | The policy that defines the minimum age an object in the bucket must reach before it can be deleted or replaced. | ||||||||||||||||||
| retentionPolicy.retentionPeriod | The period of time (in seconds) for which the objects in the bucket must be retained and cannot be deleted, replaced, or made noncurrent. The value must be greater than 0 seconds and less than 3,155,760,000 seconds. | ||||||||||||||||||
| storageClass | The default storage class of a bucket. | ||||||||||||||||||
| versioning | The versioning configuration of the bucket. | ||||||||||||||||||
| versioning.isVersioningEnabled | Sets whether versioning be enabled for the bucket. Versioning is fully enabled when set to true. | ||||||||||||||||||
| website | The website configuration of the bucket, decides the behavior of the bucket contents when accessed as website. | ||||||||||||||||||
| website.mainPageSuffix | If the requested object path is missing, the service ensures the path has a trailing '/'. Append this suffix to retrieve the resulting object. This creates index.html objects to represent directory pages. | ||||||||||||||||||
| website.notFoundPage | If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service returns the named object from this bucket as the content for a 404 Not Found result. |
Delete Operation
| Field | Description |
|---|---|
| Name | Name of the bucket |
| metaGenerationMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration does not match. |
| metaGenerationNotMatch | An option for bucket metageneration match. If this option is used the request fails if metageneration matches. |
| userProject | An option for billing user project of the bucket. This option is only used by the buckets with 'requester_pays' flag. |
| requestedPolicyVersion | Policy version for IAM policy. |
Output
The Output tab shows the response of the invoked service. The Output tab displays the output schema of the activity as a tree structure. The output is read-only.
Read Operation
| Field | Description | |||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| name | Name of the bucket. | |||||||||||||||||||||
| acl | Access controls on the bucket, containing one or more bucketAccessControls Resources. If iamConfiguration.uniformBucketLevelAccess.enabled is set to true, this field is omitted in responses, and requests that specify this field fail with a 400 Bad Request response. |
|||||||||||||||||||||
| acl.entity | The type of entity. | |||||||||||||||||||||
| acl.entity.type | The type of entity. | |||||||||||||||||||||
| acl.role |
The access permission for the entity. Acceptable values are:
|
|||||||||||||||||||||
| acl.etag | Entity tag for the bucket. | |||||||||||||||||||||
| acl.id | The id of the bucket. | |||||||||||||||||||||
| billing | The billing configuration of the bucket. | |||||||||||||||||||||
| requesterPays | To enable or disable requester pays. | |||||||||||||||||||||
| cors | The Cross-Origin Resource Sharing (CORS) configuration of the bucket. | |||||||||||||||||||||
| cors.maxAgeSeconds | The value (in seconds) to return in the Access-Control-Max-Age header used in preflight responses. | |||||||||||||||||||||
| cors.method |
The list of HTTP methods on which the CORS response headers like "GET", "OPTIONS", "POST", and so on can be included. Note: "*" is permitted in the list of methods. This means "any method".
|
|||||||||||||||||||||
| cors.responseHeader | The list of HTTP headers to give permission for the user-agent to share across domains (other than the simple response headers ). | |||||||||||||||||||||
| cors.origin |
The list of Origins that can receive CORS response headers. Note: "*" is permitted in the list of origins. This means "any Origin".
|
|||||||||||||||||||||
| defaultAcl | Access controls on the bucket, containing one or more bucketAccessControls Resources. If iamConfiguration.uniformBucketLevelAccess.enabled is set to true, this field is omitted in responses, and requests that specify this field fail with a 400 Bad Request response. |
|||||||||||||||||||||
| defaultAcl.entity |
The entity that has the permission for the following fields:
Note: If entity is user or group then email is mandatory. If entity is domain then domain is mandatory. If entity is project then projectRole and projectId is mandatory. For any other values, it takes default value as 'allAuthenticatedUsers'.
|
|||||||||||||||||||||
| defaultAcl.entity.type | The type of entity. | |||||||||||||||||||||
| defaultAcl.role |
The access permission for the entity. Acceptable values are:
|
|||||||||||||||||||||
| defaultAcl.etag | Entity tag for the bucket. | |||||||||||||||||||||
| defaultAcl.id | The ID of the bucket. | |||||||||||||||||||||
| defaultEventBasedHold | To automatically apply or not to apply an eventBasedHold to new objects added to the bucket. | |||||||||||||||||||||
| generateId | Service-generated ID for the bucket. | |||||||||||||||||||||
| iamConfiguration | The IAM configuration of the bucket. | |||||||||||||||||||||
| iamConfiguration.isUniformBucketLevelAccessEnabled | Specifies whether uniformBucketLevelAccessEnabled or not. | |||||||||||||||||||||
| iamConfiguration.isUniformBucketLevelAccessLockedTime | Locked time for uniformBucketLevelAccess. | |||||||||||||||||||||
| label | The bucket labels provided by the user in key or value pairs. | |||||||||||||||||||||
| label.key | Key for label. | |||||||||||||||||||||
| label.value | Value for label. | |||||||||||||||||||||
| lifecycle | The lifecycle configuration of the bucket. | |||||||||||||||||||||
| lifecycle.action | The action to take. | |||||||||||||||||||||
| lifecycle.action.type | Type of the action. Currently, "Delete" and "SetStorageClass" are supported. For the type "delete" of lifecycle rules - storage class field is not required to be set. | |||||||||||||||||||||
| lifecycle.condition | The condition/s under which the action is taken. | |||||||||||||||||||||
| lifecycle.condition.age | Age of an object (in days). This condition is fulfilled when an object reaches the specified age. | |||||||||||||||||||||
| lifecycle.condition.createdBefore | Date in the format YYYY-MM-DD. The date of object creation before midnight of the specified date in UTC. | |||||||||||||||||||||
| lifecycle.condition.customTimeBefore | Date in the format YYYY-MM-DD. This condition is satisfied when the customTime metadata for the object is set to an earlier date than the date used in this lifecycle condition. | |||||||||||||||||||||
| lifecycle.condition.daysSinceCustomTime | Days since the date set in the customTime metadata for the object. This condition is satisfied when the current date and time is at least the specified number of days after the customTime. | |||||||||||||||||||||
| lifecycle.condition.daysSinceNonCurrentTime | Relevant only for versioned objects. This condition is satisfied when an object has been noncurrent for more than the specified number of days. | |||||||||||||||||||||
| lifecycle.condition.isLive | Relevant only for versioned objects. If the value is true, this condition matches the live version of objects; if the value is false, it matches noncurrent versions of objects. | |||||||||||||||||||||
| lifecycle.condition.matchesStorageClass | Objects having any of the storage classes specified by this condition will be matched. Values include "STANDARD", "NEARLINE", "COLDLINE", "ARCHIVE", "MULTI_REGIONAL", "REGIONAL", and "DURABLE_REDUCED_AVAILABILITY". | |||||||||||||||||||||
| lifecycle.condition.nonCurrentTimeBefore | Relevant only for versioned objects. A date in the format YYYY-MM-DD. This condition is satisfied for objects that became noncurrent on a date prior to the one specified in this condition. | |||||||||||||||||||||
| lifecycle.condition.numberOfNewerVersions | Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object. | |||||||||||||||||||||
| location | The location of the bucket. | |||||||||||||||||||||
| locationType | The type of the location that the bucket is in. This is determined by the location property. |
|||||||||||||||||||||
| logging | The logging configuration of the bucket that defines the destination bucket and a name prefix for the current bucket logs. | |||||||||||||||||||||
| logBucket | The destination bucket where the logs of the current bucket must be placed. | |||||||||||||||||||||
| logObjectPrefix | A prefix for log object names. The default prefix is the bucket name. | |||||||||||||||||||||
| metageneration | The metadata generation of the bucket. | |||||||||||||||||||||
| objectName | The name of the object. | |||||||||||||||||||||
| objectID | Generated ID for the bucket. | |||||||||||||||||||||
| retentionPolicy | The policy that defines the minimum age an object in the bucket must reach before it can be deleted or replaced. | |||||||||||||||||||||
| retentionPolicy.retentionPeriod | The period of time (in seconds) for which the objects in the bucket must be retained and cannot be deleted, replaced, or made noncurrent. The value must be greater than 0 seconds and less than 3,155,760,000 seconds. | |||||||||||||||||||||
| retentionPolicy.retentionEffectiveTime | The retention effective time a policy took effect if a retention policy is defined as a Long. | |||||||||||||||||||||
| retentionPolicy.isRetentionPolicyLocked | Returns Boolean showing whether retention policy is locked or not. | |||||||||||||||||||||
| selfLink | The URL of the bucket. | |||||||||||||||||||||
| storageClass | The default storage class of a bucket. | |||||||||||||||||||||
| timeCreated | The creation time of the bucket. | |||||||||||||||||||||
| timeUpdated | Returns the last modification time of the metadata of the bucket expressed as the number of milliseconds since the Unix epoch. | |||||||||||||||||||||
| versioning | The versioning configuration of the bucket. | |||||||||||||||||||||
| versioning.isversioningEnabled | Specifies whether versioning is enabled or not. | |||||||||||||||||||||
| website | The website configuration of the bucket, decides the behavior of the bucket contents when accessed as website. | |||||||||||||||||||||
| website.mainPageSuffix | If the requested object path is missing, the service ensures the path has a trailing '/'. Append this suffix to retrieve the resulting object. This creates index.html objects to represent directory pages. | |||||||||||||||||||||
| website.notFoundpage | If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service returns the named object from this bucket as the content for a 404 Not Found result. |
Upsert Operation
| Field | Description | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| name | Name of the bucket. | |||||||||
| acl | Access controls on the bucket, containing one or more bucketAccessControls Resources. If iamConfiguration.uniformBucketLevelAccess.enabled is set to true, this field is omitted in responses, and requests that specify this field fail with a 400 Bad Request response. |
|||||||||
| acl.entity | The type of entity. | |||||||||
| acl.entity.type | The type of entity. | |||||||||
| acl.role |
The access permission for the entity. Acceptable values are:
|
|||||||||
| acl.etag | Entity tag for the bucket. | |||||||||
| acl.id | The id of the bucket. | |||||||||
| billing | The billing configuration of the bucket. | |||||||||
| billing.requesterPays | To enable or disable requester pays. | |||||||||
| cors | The Cross-Origin Resource Sharing (CORS) configuration of the bucket. | |||||||||
| cors.maxAgeSeconds | The value (in seconds) to return in the Access-Control-Max-Age header used in preflight responses. | |||||||||
| cors.method |
The list of HTTP methods on which the CORS response headers like "GET", "OPTIONS", "POST", and so on can be included. Note: "*" is permitted in the list of methods. This means "any method".
|
|||||||||
| responseHeader | The list of HTTP headers to give permission for the user-agent to share across domains (other than the simple response headers ). | |||||||||
| cors.origin |
The list of Origins that can receive CORS response headers. Note: "*" is permitted in the list of origins. This means "any Origin".
|
|||||||||
| defaultEventBasedHold | To automatically apply or not to apply an eventBasedHold to new objects added to the bucket. | |||||||||
| generateId | Service-generated ID for the bucket. | |||||||||
| iamConfiguration | The IAM configuration of the bucket. | |||||||||
| iamConfiguration.isUniformBucketLevelAccessEnabled | Specifies whether uniformBucketLevelAccessEnabled or not. | |||||||||
| iamConfiguration.isUniformBucketLevelAccessLockedTime | Locked time for uniformBucketLevelAccess. | |||||||||
| label | The bucket labels provided by the user in key or value pairs. | |||||||||
| label.key | Key for label. | |||||||||
| label.value | Value for label. | |||||||||
| lifecycle | The lifecycle configuration of the bucket. | |||||||||
| lifecycle.action | he lifecycle action to take. | |||||||||
| lifecycle.action.type | Type of the action. | |||||||||
| lifecycle.condition | The condition/s under which the action is taken. | |||||||||
| lifecycle.condition.age | Age of an object, in days. | |||||||||
| lifecycle.condition.createdBefore | Date in the format YYYY-MM-DD. The date of object creation before midnight of the specified date in UTC. | |||||||||
| lifecycle.condition.customTimeBefore | Date in the format YYYY-MM-DD. This condition is satisfied when the customTime metadata for the object is set to an earlier date than the date used in this lifecycle condition. | |||||||||
| lifecycle.condition.daysSinceCustomTime | Days since the date set in the customTime metadata for the object. This condition is satisfied when the current date and time is at least the specified number of days after the customTime. | |||||||||
| lifecycle.condition.daysSinceNonCurrentTime | Relevant only for versioned objects. This condition is satisfied when an object has been noncurrent for more than the specified number of days. | |||||||||
| lifecycle.condition.isLive | Relevant only for versioned objects. If the value is true, this condition matches the live version of objects; if the value is false, it matches noncurrent versions of objects. | |||||||||
| lifecycle.condition.matchesStorageClass | Objects having any of the storage classes specified by this condition will be matched. Values include "STANDARD", "NEARLINE", "COLDLINE", "ARCHIVE", "MULTI_REGIONAL", "REGIONAL", and "DURABLE_REDUCED_AVAILABILITY". | |||||||||
| lifecycle.condition.nonCurrentTimeBefore | Relevant only for versioned objects. A date in the format YYYY-MM-DD. This condition is satisfied for objects that became noncurrent on a date prior to the one specified in this condition. | |||||||||
| lifecycle.condition.numberOfNewerVersions | Relevant only for versioned objects. If the value is N, this condition is satisfied when there are at least N versions (including the live version) newer than this version of the object. | |||||||||
| Bucket.location | The location of the bucket. | |||||||||
| locationType | The type of the location that the bucket is in. This is determined by the location property. |
|||||||||
| logging | The logging configuration of the bucket that defines the destination bucket and a name prefix for the current bucket logs. | |||||||||
| logging.logBucket | The destination bucket where the logs of the current bucket must be placed. | |||||||||
| logging.logObjectPrefix | A prefix for log object names. The default prefix is the bucket name. | |||||||||
| metageneration | The metadata generation of the bucket. | |||||||||
| retentionPolicy | The policy that defines the minimum age an object in the bucket must reach before it can be deleted or replaced. | |||||||||
| retentionPolicy.retentionPeriod | The period of time (in seconds) for which the objects in the bucket must be retained and cannot be deleted, replaced, or made noncurrent. The value must be greater than 0 seconds and less than 3,155,760,000 seconds. | |||||||||
| retentionPolicy.retentionEffectiveTime | The retention effective time a policy took effect if a retention policy is defined as a Long. | |||||||||
| retentionPolicy.isRetentionPolicyLocked | Returns Boolean showing whether retention policy is locked or not. | |||||||||
| selfLink | The URL of the bucket. | |||||||||
| storageClass | The default storage class of a bucket. | |||||||||
| timeCreated | The creation time of the bucket. | |||||||||
| timeUpdated | Returns the last modification time of the metadata of the bucket expressed as the number of milliseconds since the Unix epoch. | |||||||||
| versioning | The versioning configuration of the bucket. | |||||||||
| versioning.isversioningEnabled | Specifies whether versioning is enabled or not. | |||||||||
| website | The website configuration of the bucket, decides the behavior of the bucket contents when accessed as website. | |||||||||
| website.mainPageSuffix | If the requested object path is missing, the service ensures the path has a trailing '/'. Append this suffix to retrieve the resulting object. This creates index.html objects to represent directory pages. | |||||||||
| website.notFoundpage | If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service returns the named object from this bucket as the content for a 404 Not Found result. |
Delete Operation
| Field | Description |
|---|---|
| name | The name of the bucket. |
| status | Status of the operation. |
Fault
The Fault tab lists exceptions that are thrown by this activity. The following table lists the types of exceptions thrown by the Invoke GCS Bucket Request activity:
| Error Schema Element | Datatype | Description |
|---|---|---|
| GCSException | String | It has a msg and msgCode field for the exception. |
| GCSValidationException | String |
It has a |
| msg | String | The error message returned by the plug-in. |
| msgCode | String | The error code returned by the plug-in. |

