class Google::Apis::WorkflowsV1::WorkflowsService

Workflows API

Manage workflow definitions. To execute workflows and manage executions, see

the Workflows Executions API.

@example

require 'google/apis/workflows_v1'

Workflows = Google::Apis::WorkflowsV1 # Alias the module
service = Workflows::WorkflowsService.new

@see cloud.google.com/workflows

Attributes

key[RW]

@return [String]

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.
quota_user[RW]

@return [String]

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

Public Class Methods

new() click to toggle source
Calls superclass method
# File lib/google/apis/workflows_v1/service.rb, line 46
def initialize
  super('https://workflows.googleapis.com/', '',
        client_name: 'google-apis-workflows_v1',
        client_version: Google::Apis::WorkflowsV1::GEM_VERSION)
  @batch_path = 'batch'
end

Public Instance Methods

create_project_location_workflow(parent, workflow_object = nil, workflow_id: nil, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Creates a new workflow. If a workflow with the specified name already exists in the specified project and location, the long running operation will return ALREADY_EXISTS error. @param [String] parent

Required. Project and location in which the workflow should be created. Format:
projects/`project`/locations/`location`

@param [Google::Apis::WorkflowsV1::Workflow] workflow_object @param [String] workflow_id

Required. The ID of the workflow to be created. It has to fulfill the
following requirements: * Must contain only letters, numbers, underscores and
hyphens. * Must start with a letter. * Must be between 1-64 characters. * Must
end with a number or a letter. * Must be unique within the customer project
and location.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Operation] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Operation]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 266
def create_project_location_workflow(parent, workflow_object = nil, workflow_id: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v1/{+parent}/workflows', options)
  command.request_representation = Google::Apis::WorkflowsV1::Workflow::Representation
  command.request_object = workflow_object
  command.response_representation = Google::Apis::WorkflowsV1::Operation::Representation
  command.response_class = Google::Apis::WorkflowsV1::Operation
  command.params['parent'] = parent unless parent.nil?
  command.query['workflowId'] = workflow_id unless workflow_id.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
delete_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code. UNIMPLEMENTED`. @param [String] name

The name of the operation resource to be deleted.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Empty] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Empty]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 149
def delete_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:delete, 'v1/{+name}', options)
  command.response_representation = Google::Apis::WorkflowsV1::Empty::Representation
  command.response_class = Google::Apis::WorkflowsV1::Empty
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
delete_project_location_workflow(name, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Deletes a workflow with the specified name. This method also cancels and deletes all running executions of the workflow. @param [String] name

Required. Name of the workflow to be deleted. Format: projects/`project`/
locations/`location`/workflows/`workflow`

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Operation] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Operation]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 301
def delete_project_location_workflow(name, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:delete, 'v1/{+name}', options)
  command.response_representation = Google::Apis::WorkflowsV1::Operation::Representation
  command.response_class = Google::Apis::WorkflowsV1::Operation
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
get_project_location(name, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Gets information about a location. @param [String] name

Resource name for the location.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Location] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Location]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 73
def get_project_location(name, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+name}', options)
  command.response_representation = Google::Apis::WorkflowsV1::Location::Representation
  command.response_class = Google::Apis::WorkflowsV1::Location
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. @param [String] name

The name of the operation resource.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Operation] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Operation]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 180
def get_project_location_operation(name, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+name}', options)
  command.response_representation = Google::Apis::WorkflowsV1::Operation::Representation
  command.response_class = Google::Apis::WorkflowsV1::Operation
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
get_project_location_workflow(name, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Gets details of a single Workflow. @param [String] name

Required. Name of the workflow which information should be retrieved. Format:
projects/`project`/locations/`location`/workflows/`workflow`

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Workflow] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Workflow]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 332
def get_project_location_workflow(name, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+name}', options)
  command.response_representation = Google::Apis::WorkflowsV1::Workflow::Representation
  command.response_class = Google::Apis::WorkflowsV1::Workflow
  command.params['name'] = name unless name.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
list_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `“/v1/`name=users/*`/operations”` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id. @param [String] name

The name of the operation's parent resource.

@param [String] filter

The standard list filter.

@param [Fixnum] page_size

The standard list page size.

@param [String] page_token

The standard list page token.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::ListOperationsResponse] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::ListOperationsResponse]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 223
def list_project_location_operations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+name}/operations', options)
  command.response_representation = Google::Apis::WorkflowsV1::ListOperationsResponse::Representation
  command.response_class = Google::Apis::WorkflowsV1::ListOperationsResponse
  command.params['name'] = name unless name.nil?
  command.query['filter'] = filter unless filter.nil?
  command.query['pageSize'] = page_size unless page_size.nil?
  command.query['pageToken'] = page_token unless page_token.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
list_project_location_workflows(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Lists Workflows in a given project and location. The default order is not specified. @param [String] parent

Required. Project and location from which the workflows should be listed.
Format: projects/`project`/locations/`location`

@param [String] filter

Filter to restrict results to specific workflows.

@param [String] order_by

Comma-separated list of fields that that specify the order of the results.
Default sorting order for a field is ascending. To specify descending order
for a field, append a " desc" suffix. If not specified, the results will be
returned in an unspecified order.

@param [Fixnum] page_size

Maximum number of workflows to return per call. The service may return fewer
than this value. If the value is not specified, a default value of 500 will be
used. The maximum permitted value is 1000 and values greater than 1000 will be
coerced down to 1000.

@param [String] page_token

A page token, received from a previous `ListWorkflows` call. Provide this to
retrieve the subsequent page. When paginating, all other parameters provided
to `ListWorkflows` must match the call that provided the page token.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::ListWorkflowsResponse] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::ListWorkflowsResponse]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 380
def list_project_location_workflows(parent, filter: nil, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+parent}/workflows', options)
  command.response_representation = Google::Apis::WorkflowsV1::ListWorkflowsResponse::Representation
  command.response_class = Google::Apis::WorkflowsV1::ListWorkflowsResponse
  command.params['parent'] = parent unless parent.nil?
  command.query['filter'] = filter unless filter.nil?
  command.query['orderBy'] = order_by unless order_by.nil?
  command.query['pageSize'] = page_size unless page_size.nil?
  command.query['pageToken'] = page_token unless page_token.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Lists information about the supported locations for this service. @param [String] name

The resource that owns the locations collection, if applicable.

@param [String] filter

A filter to narrow down results to a preferred subset. The filtering language
accepts strings like "displayName=tokyo", and is documented in more detail in [
AIP-160](https://google.aip.dev/160).

@param [Fixnum] page_size

The maximum number of results to return. If not set, the service selects a
default.

@param [String] page_token

A page token received from the `next_page_token` field in the response. Send
that page token to receive the subsequent page.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::ListLocationsResponse] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::ListLocationsResponse]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 113
def list_project_locations(name, filter: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:get, 'v1/{+name}/locations', options)
  command.response_representation = Google::Apis::WorkflowsV1::ListLocationsResponse::Representation
  command.response_class = Google::Apis::WorkflowsV1::ListLocationsResponse
  command.params['name'] = name unless name.nil?
  command.query['filter'] = filter unless filter.nil?
  command.query['pageSize'] = page_size unless page_size.nil?
  command.query['pageToken'] = page_token unless page_token.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end
patch_project_location_workflow(name, workflow_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) click to toggle source

Updates an existing workflow. Running this method has no impact on already running executions of the workflow. A new revision of the workflow may be created as a result of a successful update operation. In that case, such revision will be used in new workflow executions. @param [String] name

The resource name of the workflow. Format: projects/`project`/locations/`
location`/workflows/`workflow`

@param [Google::Apis::WorkflowsV1::Workflow] workflow_object @param [String] update_mask

List of fields to be updated. If not present, the entire workflow will be
updated.

@param [String] fields

Selector specifying which fields to include in a partial response.

@param [String] quota_user

Available to use for quota purposes for server-side applications. Can be any
arbitrary string assigned to a user, but should not exceed 40 characters.

@param [Google::Apis::RequestOptions] options

Request-specific options

@yield [result, err] Result & error if block supplied @yieldparam result [Google::Apis::WorkflowsV1::Operation] parsed result object @yieldparam err [StandardError] error object if request failed

@return [Google::Apis::WorkflowsV1::Operation]

@raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification @raise [Google::Apis::AuthorizationError] Authorization is required

# File lib/google/apis/workflows_v1/service.rb, line 422
def patch_project_location_workflow(name, workflow_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:patch, 'v1/{+name}', options)
  command.request_representation = Google::Apis::WorkflowsV1::Workflow::Representation
  command.request_object = workflow_object
  command.response_representation = Google::Apis::WorkflowsV1::Operation::Representation
  command.response_class = Google::Apis::WorkflowsV1::Operation
  command.params['name'] = name unless name.nil?
  command.query['updateMask'] = update_mask unless update_mask.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

Protected Instance Methods

apply_command_defaults(command) click to toggle source
# File lib/google/apis/workflows_v1/service.rb, line 437
def apply_command_defaults(command)
  command.query['key'] = key unless key.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
end