# Copyright 2019 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # NOTE: This file is auto generated by the elixir code generator program. # Do not edit this file manually. defmodule GoogleApi.Dataflow.V1b3.Api.Projects do @moduledoc """ API calls for all endpoints tagged `Projects`. """ alias GoogleApi.Dataflow.V1b3.Connection alias GoogleApi.Gax.{Request, Response} @library_version Mix.Project.config() |> Keyword.get(:version, "") @doc """ Deletes a snapshot. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the snapshot belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The location that contains this snapshot. * `:snapshotId` (*type:* `String.t`) - The ID of the snapshot. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_delete_snapshots(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_delete_snapshots( connection, project_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query, :snapshotId => :query } request = Request.new() |> Request.method(:delete) |> Request.url("/v1b3/projects/{projectId}/snapshots", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse{}]) end @doc """ Send a worker_message to the service. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project to send the WorkerMessages to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_worker_messages(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_worker_messages(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/WorkerMessages", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse{}] ) end @doc """ List the jobs of a project across all regions. **Note:** This method doesn't support filtering the list of jobs by name. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the jobs. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:filter` (*type:* `String.t`) - The kind of filter to use. * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `:name` (*type:* `String.t`) - Optional. The job name. * `:pageSize` (*type:* `integer()`) - If there are many jobs, limit response to at most this many. The actual number of jobs returned will be the lesser of max_responses and an unspecified server-defined limit. * `:pageToken` (*type:* `String.t`) - Set this to the 'next_page_token' field of a previous response to request additional results in a long list. * `:view` (*type:* `String.t`) - Deprecated. ListJobs always returns summaries now. Use GetJob for other JobViews. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_aggregated(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListJobsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_aggregated(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :filter => :query, :location => :query, :name => :query, :pageSize => :query, :pageToken => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/jobs:aggregated", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}]) end @doc """ Creates a Cloud Dataflow job. To create a job, we recommend using `projects.locations.jobs.create` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.create` is not recommended, as your job will always start in `us-central1`. Do not enter confidential information when you supply string values using the API. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `:replaceJobId` (*type:* `String.t`) - Deprecated. This field is now in the Job message. * `:view` (*type:* `String.t`) - The level of information requested in response. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.Job.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_create(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_create(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query, :replaceJobId => :query, :view => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Gets the state of the specified Cloud Dataflow job. To get the state of a job, we recommend using `projects.locations.jobs.get` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.get` is not recommended, as you can only get the state of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `job_id` (*type:* `String.t`) - The job ID. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `:view` (*type:* `String.t`) - The level of information requested in response. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_get( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_get( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Request the job status. To request the status of a job, we recommend using `projects.locations.jobs.getMetrics` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.getMetrics` is not recommended, as you can only request the status of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `job_id` (*type:* `String.t`) - The job to get metrics for. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `:startTime` (*type:* `DateTime.t`) - Return only metric data that has changed since this time. Default is to return all information about all metrics for the job. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.JobMetrics{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_get_metrics( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.JobMetrics.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_get_metrics( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query, :startTime => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/metrics", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.JobMetrics{}]) end @doc """ List the jobs of a project. To list the jobs of a project in a region, we recommend using `projects.locations.jobs.list` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). To list the all jobs across all regions, use `projects.jobs.aggregated`. Using `projects.jobs.list` is not recommended, because you can only get the list of jobs that are running in `us-central1`. `projects.locations.jobs.list` and `projects.jobs.list` support filtering the list of jobs by name. Filtering by name isn't supported by `projects.jobs.aggregated`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the jobs. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:filter` (*type:* `String.t`) - The kind of filter to use. * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `:name` (*type:* `String.t`) - Optional. The job name. * `:pageSize` (*type:* `integer()`) - If there are many jobs, limit response to at most this many. The actual number of jobs returned will be the lesser of max_responses and an unspecified server-defined limit. * `:pageToken` (*type:* `String.t`) - Set this to the 'next_page_token' field of a previous response to request additional results in a long list. * `:view` (*type:* `String.t`) - Deprecated. ListJobs always returns summaries now. Use GetJob for other JobViews. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListJobsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_list(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :filter => :query, :location => :query, :name => :query, :pageSize => :query, :pageToken => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/jobs", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}]) end @doc """ Snapshot the state of a streaming job. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the job to be snapshotted. * `job_id` (*type:* `String.t`) - The job to be snapshotted. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SnapshotJobRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Snapshot{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_snapshot( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Snapshot.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_snapshot( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}:snapshot", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Snapshot{}]) end @doc """ Updates the state of an existing Cloud Dataflow job. To update the state of an existing job, we recommend using `projects.locations.jobs.update` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.update` is not recommended, as you can only update the state of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `job_id` (*type:* `String.t`) - The job ID. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `:updateMask` (*type:* `String.t`) - The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.Job.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_update( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_update( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query, :updateMask => :query, :body => :body } request = Request.new() |> Request.method(:put) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Get encoded debug configuration for component. Not cacheable. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project id. * `job_id` (*type:* `String.t`) - The job id. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.GetDebugConfigRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_debug_get_config( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_debug_get_config( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse{}]) end @doc """ Send encoded debug capture data for component. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project id. * `job_id` (*type:* `String.t`) - The job id. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_debug_send_capture( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_debug_send_capture( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse{}] ) end @doc """ Request the job status. To request the status of a job, we recommend using `projects.locations.jobs.messages.list` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.messages.list` is not recommended, as you can only request the status of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `job_id` (*type:* `String.t`) - The job to get messages about. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:endTime` (*type:* `DateTime.t`) - Return only messages with timestamps < end_time. The default is now (i.e. return up to the latest messages available). * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `:minimumImportance` (*type:* `String.t`) - Filter to only get messages with importance >= level * `:pageSize` (*type:* `integer()`) - If specified, determines the maximum number of messages to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results. * `:pageToken` (*type:* `String.t`) - If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned. * `:startTime` (*type:* `DateTime.t`) - If specified, return only messages with timestamps >= start_time. The default is the job creation time (i.e. beginning of messages). * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_messages_list( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_messages_list( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :endTime => :query, :location => :query, :minimumImportance => :query, :pageSize => :query, :pageToken => :query, :startTime => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/messages", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse{}]) end @doc """ Leases a dataflow WorkItem to run. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Identifies the project this worker belongs to. * `job_id` (*type:* `String.t`) - Identifies the workflow job this worker belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_work_items_lease( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_work_items_lease( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse{}]) end @doc """ Reports the status of dataflow WorkItems leased by a worker. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the WorkItem's job. * `job_id` (*type:* `String.t`) - The job which the WorkItem is part of. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_jobs_work_items_report_status( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_jobs_work_items_report_status( connection, project_id, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse{}] ) end @doc """ Send a worker_message to the service. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project to send the WorkerMessages to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_worker_messages( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_worker_messages( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/WorkerMessages", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.SendWorkerMessagesResponse{}] ) end @doc """ Launch a job with a FlexTemplate. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - Required. The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. E.g., us-central1, us-west1. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.LaunchFlexTemplateRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.LaunchFlexTemplateResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_flex_templates_launch( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.LaunchFlexTemplateResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_flex_templates_launch( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/flexTemplates:launch", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.LaunchFlexTemplateResponse{}] ) end @doc """ Creates a Cloud Dataflow job. To create a job, we recommend using `projects.locations.jobs.create` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.create` is not recommended, as your job will always start in `us-central1`. Do not enter confidential information when you supply string values using the API. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:replaceJobId` (*type:* `String.t`) - Deprecated. This field is now in the Job message. * `:view` (*type:* `String.t`) - The level of information requested in response. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.Job.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_create( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_create( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :replaceJobId => :query, :view => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Gets the state of the specified Cloud Dataflow job. To get the state of a job, we recommend using `projects.locations.jobs.get` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.get` is not recommended, as you can only get the state of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `job_id` (*type:* `String.t`) - The job ID. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:view` (*type:* `String.t`) - The level of information requested in response. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_get( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_get( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Request detailed information about the execution status of the job. EXPERIMENTAL. This API is subject to change or removal without notice. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job to get execution details for. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:pageSize` (*type:* `integer()`) - If specified, determines the maximum number of stages to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results. * `:pageToken` (*type:* `String.t`) - If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.JobExecutionDetails{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_get_execution_details( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.JobExecutionDetails.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_get_execution_details( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :pageSize => :query, :pageToken => :query } request = Request.new() |> Request.method(:get) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/executionDetails", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.JobExecutionDetails{}]) end @doc """ Request the job status. To request the status of a job, we recommend using `projects.locations.jobs.getMetrics` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.getMetrics` is not recommended, as you can only request the status of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job to get metrics for. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:startTime` (*type:* `DateTime.t`) - Return only metric data that has changed since this time. Default is to return all information about all metrics for the job. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.JobMetrics{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_get_metrics( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.JobMetrics.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_get_metrics( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :startTime => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/metrics", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.JobMetrics{}]) end @doc """ List the jobs of a project. To list the jobs of a project in a region, we recommend using `projects.locations.jobs.list` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). To list the all jobs across all regions, use `projects.jobs.aggregated`. Using `projects.jobs.list` is not recommended, because you can only get the list of jobs that are running in `us-central1`. `projects.locations.jobs.list` and `projects.jobs.list` support filtering the list of jobs by name. Filtering by name isn't supported by `projects.jobs.aggregated`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the jobs. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:filter` (*type:* `String.t`) - The kind of filter to use. * `:name` (*type:* `String.t`) - Optional. The job name. * `:pageSize` (*type:* `integer()`) - If there are many jobs, limit response to at most this many. The actual number of jobs returned will be the lesser of max_responses and an unspecified server-defined limit. * `:pageToken` (*type:* `String.t`) - Set this to the 'next_page_token' field of a previous response to request additional results in a long list. * `:view` (*type:* `String.t`) - Deprecated. ListJobs always returns summaries now. Use GetJob for other JobViews. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_list( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListJobsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_list( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :filter => :query, :name => :query, :pageSize => :query, :pageToken => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListJobsResponse{}]) end @doc """ Snapshot the state of a streaming job. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the job to be snapshotted. * `location` (*type:* `String.t`) - The location that contains this job. * `job_id` (*type:* `String.t`) - The job to be snapshotted. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SnapshotJobRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Snapshot{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_snapshot( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Snapshot.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_snapshot( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}:snapshot", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Snapshot{}]) end @doc """ Updates the state of an existing Cloud Dataflow job. To update the state of an existing job, we recommend using `projects.locations.jobs.update` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.update` is not recommended, as you can only update the state of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains this job. * `job_id` (*type:* `String.t`) - The job ID. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:updateMask` (*type:* `String.t`) - The list of fields to update relative to Job. If empty, only RequestedJobState will be considered for update. If the FieldMask is not empty and RequestedJobState is none/empty, The fields specified in the update mask will be the only ones considered for update. If both RequestedJobState and update_mask are specified, an error will be returned as we cannot update both state and mask. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.Job.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_update( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_update( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :updateMask => :query, :body => :body } request = Request.new() |> Request.method(:put) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Get encoded debug configuration for component. Not cacheable. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job id. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.GetDebugConfigRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_debug_get_config( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_debug_get_config( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/getConfig", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.GetDebugConfigResponse{}]) end @doc """ Send encoded debug capture data for component. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job id. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_debug_send_capture( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_debug_send_capture( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/debug/sendCapture", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.SendDebugCaptureResponse{}] ) end @doc """ Request the job status. To request the status of a job, we recommend using `projects.locations.jobs.messages.list` with a [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints). Using `projects.jobs.messages.list` is not recommended, as you can only request the status of jobs that are running in `us-central1`. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job to get messages about. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:endTime` (*type:* `DateTime.t`) - Return only messages with timestamps < end_time. The default is now (i.e. return up to the latest messages available). * `:minimumImportance` (*type:* `String.t`) - Filter to only get messages with importance >= level * `:pageSize` (*type:* `integer()`) - If specified, determines the maximum number of messages to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results. * `:pageToken` (*type:* `String.t`) - If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned. * `:startTime` (*type:* `DateTime.t`) - If specified, return only messages with timestamps >= start_time. The default is the job creation time (i.e. beginning of messages). * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_messages_list( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_messages_list( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :endTime => :query, :minimumImportance => :query, :pageSize => :query, :pageToken => :query, :startTime => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/messages", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListJobMessagesResponse{}]) end @doc """ Lists snapshots. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project ID to list snapshots for. * `location` (*type:* `String.t`) - The location to list snapshots in. * `job_id` (*type:* `String.t`) - If specified, list snapshots created from this job. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_snapshots_list( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_snapshots_list( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/snapshots", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}]) end @doc """ Request detailed information about the execution status of a stage of the job. EXPERIMENTAL. This API is subject to change or removal without notice. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - A project id. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the job specified by job_id. * `job_id` (*type:* `String.t`) - The job to get execution details for. * `stage_id` (*type:* `String.t`) - The stage for which to fetch information. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:endTime` (*type:* `DateTime.t`) - Upper time bound of work items to include, by start time. * `:pageSize` (*type:* `integer()`) - If specified, determines the maximum number of work items to return. If unspecified, the service may choose an appropriate default, or may return an arbitrarily large number of results. * `:pageToken` (*type:* `String.t`) - If supplied, this should be the value of next_page_token returned by an earlier call. This will cause the next page of results to be returned. * `:startTime` (*type:* `DateTime.t`) - Lower time bound of work items to include, by start time. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.StageExecutionDetails{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_stages_get_execution_details( Tesla.Env.client(), String.t(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.StageExecutionDetails.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_stages_get_execution_details( connection, project_id, location, job_id, stage_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :endTime => :query, :pageSize => :query, :pageToken => :query, :startTime => :query } request = Request.new() |> Request.method(:get) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/stages/{stageId}/executionDetails", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1), "stageId" => URI.encode(stage_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.StageExecutionDetails{}]) end @doc """ Leases a dataflow WorkItem to run. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Identifies the project this worker belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the WorkItem's job. * `job_id` (*type:* `String.t`) - Identifies the workflow job this worker belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_work_items_lease( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_work_items_lease( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:lease", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.LeaseWorkItemResponse{}]) end @doc """ Reports the status of dataflow WorkItems leased by a worker. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project which owns the WorkItem's job. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) that contains the WorkItem's job. * `job_id` (*type:* `String.t`) - The job which the WorkItem is part of. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_jobs_work_items_report_status( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_jobs_work_items_report_status( connection, project_id, location, job_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url( "/v1b3/projects/{projectId}/locations/{location}/jobs/{jobId}/workItems:reportStatus", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "jobId" => URI.encode(job_id, &URI.char_unreserved?/1) } ) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode( opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ReportWorkItemStatusResponse{}] ) end @doc """ Deletes a snapshot. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the snapshot belongs to. * `location` (*type:* `String.t`) - The location that contains this snapshot. * `snapshot_id` (*type:* `String.t`) - The ID of the snapshot. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_snapshots_delete( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_snapshots_delete( connection, project_id, location, snapshot_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query } request = Request.new() |> Request.method(:delete) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/snapshots/{snapshotId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "snapshotId" => URI.encode(snapshot_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.DeleteSnapshotResponse{}]) end @doc """ Gets information about a snapshot. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the snapshot belongs to. * `location` (*type:* `String.t`) - The location that contains this snapshot. * `snapshot_id` (*type:* `String.t`) - The ID of the snapshot. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Snapshot{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_snapshots_get( Tesla.Env.client(), String.t(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Snapshot.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_snapshots_get( connection, project_id, location, snapshot_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/snapshots/{snapshotId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1), "snapshotId" => URI.encode(snapshot_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Snapshot{}]) end @doc """ Lists snapshots. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project ID to list snapshots for. * `location` (*type:* `String.t`) - The location to list snapshots in. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:jobId` (*type:* `String.t`) - If specified, list snapshots created from this job. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_snapshots_list( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_snapshots_list( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :jobId => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/snapshots", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}]) end @doc """ Creates a Cloud Dataflow job from a template. Do not enter confidential information when you supply string values using the API. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.CreateJobFromTemplateRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_templates_create( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_templates_create( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/templates", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Get the template associated with a template. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:gcsPath` (*type:* `String.t`) - Required. A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'. * `:view` (*type:* `String.t`) - The view to retrieve. Defaults to METADATA_ONLY. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_templates_get( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_templates_get( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :gcsPath => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/templates:get", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse{}]) end @doc """ Launch a template. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:"dynamicTemplate.gcsPath"` (*type:* `String.t`) - Path to dynamic template spec file on Cloud Storage. The file must be a Json serialized DynamicTemplateFieSpec object. * `:"dynamicTemplate.stagingLocation"` (*type:* `String.t`) - Cloud Storage path for staging dependencies. Must be a valid Cloud Storage URL, beginning with `gs://`. * `:gcsPath` (*type:* `String.t`) - A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'. * `:validateOnly` (*type:* `boolean()`) - If true, the request is validated but not actually executed. Defaults to false. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.LaunchTemplateParameters.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_locations_templates_launch( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_locations_templates_launch( connection, project_id, location, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :"dynamicTemplate.gcsPath" => :query, :"dynamicTemplate.stagingLocation" => :query, :gcsPath => :query, :validateOnly => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/locations/{location}/templates:launch", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "location" => URI.encode(location, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse{}]) end @doc """ Gets information about a snapshot. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The ID of the Cloud Platform project that the snapshot belongs to. * `snapshot_id` (*type:* `String.t`) - The ID of the snapshot. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:location` (*type:* `String.t`) - The location that contains this snapshot. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Snapshot{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_snapshots_get( Tesla.Env.client(), String.t(), String.t(), keyword(), keyword() ) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Snapshot.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_snapshots_get( connection, project_id, snapshot_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :location => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/snapshots/{snapshotId}", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1), "snapshotId" => URI.encode(snapshot_id, &(URI.char_unreserved?(&1) || &1 == ?/)) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Snapshot{}]) end @doc """ Lists snapshots. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - The project ID to list snapshots for. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:jobId` (*type:* `String.t`) - If specified, list snapshots created from this job. * `:location` (*type:* `String.t`) - The location to list snapshots in. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_snapshots_list(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_snapshots_list(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :jobId => :query, :location => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/snapshots", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.ListSnapshotsResponse{}]) end @doc """ Creates a Cloud Dataflow job from a template. Do not enter confidential information when you supply string values using the API. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.CreateJobFromTemplateRequest.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.Job{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_templates_create(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.Job.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_templates_create( connection, project_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/templates", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.Job{}]) end @doc """ Get the template associated with a template. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:gcsPath` (*type:* `String.t`) - Required. A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'. * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. * `:view` (*type:* `String.t`) - The view to retrieve. Defaults to METADATA_ONLY. * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_templates_get(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_templates_get(connection, project_id, optional_params \\ [], opts \\ []) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :gcsPath => :query, :location => :query, :view => :query } request = Request.new() |> Request.method(:get) |> Request.url("/v1b3/projects/{projectId}/templates:get", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.GetTemplateResponse{}]) end @doc """ Launch a template. ## Parameters * `connection` (*type:* `GoogleApi.Dataflow.V1b3.Connection.t`) - Connection to server * `project_id` (*type:* `String.t`) - Required. The ID of the Cloud Platform project that the job belongs to. * `optional_params` (*type:* `keyword()`) - Optional parameters * `:"$.xgafv"` (*type:* `String.t`) - V1 error format. * `:access_token` (*type:* `String.t`) - OAuth access token. * `:alt` (*type:* `String.t`) - Data format for response. * `:callback` (*type:* `String.t`) - JSONP * `: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`) - 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. * `:uploadType` (*type:* `String.t`) - Legacy upload protocol for media (e.g. "media", "multipart"). * `:upload_protocol` (*type:* `String.t`) - Upload protocol for media (e.g. "raw", "multipart"). * `:"dynamicTemplate.gcsPath"` (*type:* `String.t`) - Path to dynamic template spec file on Cloud Storage. The file must be a Json serialized DynamicTemplateFieSpec object. * `:"dynamicTemplate.stagingLocation"` (*type:* `String.t`) - Cloud Storage path for staging dependencies. Must be a valid Cloud Storage URL, beginning with `gs://`. * `:gcsPath` (*type:* `String.t`) - A Cloud Storage path to the template from which to create the job. Must be valid Cloud Storage URL, beginning with 'gs://'. * `:location` (*type:* `String.t`) - The [regional endpoint] (https://cloud.google.com/dataflow/docs/concepts/regional-endpoints) to which to direct the request. * `:validateOnly` (*type:* `boolean()`) - If true, the request is validated but not actually executed. Defaults to false. * `:body` (*type:* `GoogleApi.Dataflow.V1b3.Model.LaunchTemplateParameters.t`) - * `opts` (*type:* `keyword()`) - Call options ## Returns * `{:ok, %GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse{}}` on success * `{:error, info}` on failure """ @spec dataflow_projects_templates_launch(Tesla.Env.client(), String.t(), keyword(), keyword()) :: {:ok, GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse.t()} | {:ok, Tesla.Env.t()} | {:ok, list()} | {:error, any()} def dataflow_projects_templates_launch( connection, project_id, optional_params \\ [], opts \\ [] ) do optional_params_config = %{ :"$.xgafv" => :query, :access_token => :query, :alt => :query, :callback => :query, :fields => :query, :key => :query, :oauth_token => :query, :prettyPrint => :query, :quotaUser => :query, :uploadType => :query, :upload_protocol => :query, :"dynamicTemplate.gcsPath" => :query, :"dynamicTemplate.stagingLocation" => :query, :gcsPath => :query, :location => :query, :validateOnly => :query, :body => :body } request = Request.new() |> Request.method(:post) |> Request.url("/v1b3/projects/{projectId}/templates:launch", %{ "projectId" => URI.encode(project_id, &URI.char_unreserved?/1) }) |> Request.add_optional_params(optional_params_config, optional_params) |> Request.library_version(@library_version) connection |> Connection.execute(request) |> Response.decode(opts ++ [struct: %GoogleApi.Dataflow.V1b3.Model.LaunchTemplateResponse{}]) end end