# Copyright 2017 Google Inc. # # 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 class is auto generated by the swagger code generator program. # https://github.com/swagger-api/swagger-codegen.git # Do not edit the class manually. defmodule GoogleApi.Script.V1.Api.Scripts do @moduledoc """ API calls for all endpoints tagged `Scripts`. """ alias GoogleApi.Script.V1.Connection import GoogleApi.Script.V1.RequestBuilder @doc """ Runs a function in an Apps Script project. The project must be deployed for use with the Apps Script Execution API. This method requires authorization with an OAuth 2.0 token that includes at least one of the scopes listed in the [Authorization](#authorization) section; script projects that do not require authorization cannot be executed through this API. To find the correct scopes to include in the authentication token, open the project in the script editor, then select **File > Project properties** and click the **Scopes** tab. ## Parameters - connection (GoogleApi.Script.V1.Connection): Connection to server - script_id (String): The script ID of the script to be executed. To find the script ID, open the project in the script editor and select **File > Project properties**. - opts (KeywordList): [optional] Optional parameters - :quota_user (String): Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. - :pp (Boolean): Pretty-print response. - :bearer_token (String): OAuth bearer token. - :oauth_token (String): OAuth 2.0 token for the current user. - :upload_protocol (String): Upload protocol for media (e.g. \"raw\", \"multipart\"). - :pretty_print (Boolean): Returns response with indentations and line breaks. - :fields (String): Selector specifying which fields to include in a partial response. - :upload_type (String): Legacy upload protocol for media (e.g. \"media\", \"multipart\"). - :__/xgafv (String): V1 error format. - :callback (String): JSONP - :alt (String): Data format for response. - :access_token (String): OAuth access token. - :key (String): API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. - :body (ExecutionRequest): ## Returns {:ok, %GoogleApi.Script.V1.Model.Operation{}} on success {:error, info} on failure """ @spec script_scripts_run(Tesla.Env.client, String.t, keyword()) :: {:ok, GoogleApi.Script.V1.Model.Operation.t} | {:error, Tesla.Env.t} def script_scripts_run(connection, script_id, opts \\ []) do optional_params = %{ :"quotaUser" => :query, :"pp" => :query, :"bearer_token" => :query, :"oauth_token" => :query, :"upload_protocol" => :query, :"prettyPrint" => :query, :"fields" => :query, :"uploadType" => :query, :"$.xgafv" => :query, :"callback" => :query, :"alt" => :query, :"access_token" => :query, :"key" => :query, :"body" => :body } %{} |> method(:post) |> url("/v1/scripts/{scriptId}:run", %{ "scriptId" => URI.encode_www_form(script_id) }) |> add_optional_params(optional_params, opts) |> Enum.into([]) |> (&Connection.request(connection, &1)).() |> decode(%GoogleApi.Script.V1.Model.Operation{}) end end