1204 lines
44 KiB
Ruby
1204 lines
44 KiB
Ruby
# Copyright 2015 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.
|
|
|
|
require 'date'
|
|
require 'google/apis/core/base_service'
|
|
require 'google/apis/core/json_representation'
|
|
require 'google/apis/core/hashable'
|
|
require 'google/apis/errors'
|
|
|
|
module Google
|
|
module Apis
|
|
module ScriptV1
|
|
|
|
# The Content resource.
|
|
class Content
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The list of script project files. One of the files is a script manifest; it
|
|
# must be named "appsscript", must have type of JSON, and include the manifest
|
|
# configurations for the project.
|
|
# Corresponds to the JSON property `files`
|
|
# @return [Array<Google::Apis::ScriptV1::File>]
|
|
attr_accessor :files
|
|
|
|
# The script project's Drive ID.
|
|
# Corresponds to the JSON property `scriptId`
|
|
# @return [String]
|
|
attr_accessor :script_id
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@files = args[:files] if args.key?(:files)
|
|
@script_id = args[:script_id] if args.key?(:script_id)
|
|
end
|
|
end
|
|
|
|
# Request to create a script project.
|
|
class CreateProjectRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The Drive ID of a parent file that the created script project is bound to.
|
|
# This is usually the ID of a Google Doc, Google Sheet, Google Form, or Google
|
|
# Slides file. If not set, a standalone script project is created.
|
|
# Corresponds to the JSON property `parentId`
|
|
# @return [String]
|
|
attr_accessor :parent_id
|
|
|
|
# The title for the project.
|
|
# Corresponds to the JSON property `title`
|
|
# @return [String]
|
|
attr_accessor :title
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@parent_id = args[:parent_id] if args.key?(:parent_id)
|
|
@title = args[:title] if args.key?(:title)
|
|
end
|
|
end
|
|
|
|
# Representation of a single script deployment.
|
|
class Deployment
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Metadata the defines how a deployment is configured.
|
|
# Corresponds to the JSON property `deploymentConfig`
|
|
# @return [Google::Apis::ScriptV1::DeploymentConfig]
|
|
attr_accessor :deployment_config
|
|
|
|
# The deployment ID for this deployment.
|
|
# Corresponds to the JSON property `deploymentId`
|
|
# @return [String]
|
|
attr_accessor :deployment_id
|
|
|
|
# The deployment's entry points.
|
|
# Corresponds to the JSON property `entryPoints`
|
|
# @return [Array<Google::Apis::ScriptV1::EntryPoint>]
|
|
attr_accessor :entry_points
|
|
|
|
# Last modified date time stamp.
|
|
# Corresponds to the JSON property `updateTime`
|
|
# @return [String]
|
|
attr_accessor :update_time
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@deployment_config = args[:deployment_config] if args.key?(:deployment_config)
|
|
@deployment_id = args[:deployment_id] if args.key?(:deployment_id)
|
|
@entry_points = args[:entry_points] if args.key?(:entry_points)
|
|
@update_time = args[:update_time] if args.key?(:update_time)
|
|
end
|
|
end
|
|
|
|
# Metadata the defines how a deployment is configured.
|
|
class DeploymentConfig
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The description for this deployment.
|
|
# Corresponds to the JSON property `description`
|
|
# @return [String]
|
|
attr_accessor :description
|
|
|
|
# The manifest file name for this deployment.
|
|
# Corresponds to the JSON property `manifestFileName`
|
|
# @return [String]
|
|
attr_accessor :manifest_file_name
|
|
|
|
# The script project's Drive ID.
|
|
# Corresponds to the JSON property `scriptId`
|
|
# @return [String]
|
|
attr_accessor :script_id
|
|
|
|
# The version number on which this deployment is based.
|
|
# Corresponds to the JSON property `versionNumber`
|
|
# @return [Fixnum]
|
|
attr_accessor :version_number
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@description = args[:description] if args.key?(:description)
|
|
@manifest_file_name = args[:manifest_file_name] if args.key?(:manifest_file_name)
|
|
@script_id = args[:script_id] if args.key?(:script_id)
|
|
@version_number = args[:version_number] if args.key?(:version_number)
|
|
end
|
|
end
|
|
|
|
# A generic empty message that you can re-use to avoid defining duplicated empty
|
|
# messages in your APIs. A typical example is to use it as the request or the
|
|
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
|
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
|
# `Empty` is empty JSON object ````.
|
|
class Empty
|
|
include Google::Apis::Core::Hashable
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
end
|
|
end
|
|
|
|
# A configuration that defines how a deployment is accessed externally.
|
|
class EntryPoint
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# An add-on entry point.
|
|
# Corresponds to the JSON property `addOn`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeAddOnEntryPoint]
|
|
attr_accessor :add_on
|
|
|
|
# The type of the entry point.
|
|
# Corresponds to the JSON property `entryPointType`
|
|
# @return [String]
|
|
attr_accessor :entry_point_type
|
|
|
|
# An API executable entry point.
|
|
# Corresponds to the JSON property `executionApi`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeExecutionApiEntryPoint]
|
|
attr_accessor :execution_api
|
|
|
|
# A web application entry point.
|
|
# Corresponds to the JSON property `webApp`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeWebAppEntryPoint]
|
|
attr_accessor :web_app
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@add_on = args[:add_on] if args.key?(:add_on)
|
|
@entry_point_type = args[:entry_point_type] if args.key?(:entry_point_type)
|
|
@execution_api = args[:execution_api] if args.key?(:execution_api)
|
|
@web_app = args[:web_app] if args.key?(:web_app)
|
|
end
|
|
end
|
|
|
|
# The response for executing or debugging a function in an Apps Script project.
|
|
class ExecuteStreamResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The result of an execution.
|
|
# Corresponds to the JSON property `result`
|
|
# @return [Google::Apis::ScriptV1::ScriptExecutionResult]
|
|
attr_accessor :result
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@result = args[:result] if args.key?(:result)
|
|
end
|
|
end
|
|
|
|
# An object that provides information about the nature of an error resulting
|
|
# from an attempted execution of a script function using the Apps Script API. If
|
|
# a run call succeeds but the script function (or Apps Script itself) throws an
|
|
# exception, the response body's error field contains a Status object. The `
|
|
# Status` object's `details` field contains an array with a single one of these `
|
|
# ExecutionError` objects.
|
|
class ExecutionError
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The error message thrown by Apps Script, usually localized into the user's
|
|
# language.
|
|
# Corresponds to the JSON property `errorMessage`
|
|
# @return [String]
|
|
attr_accessor :error_message
|
|
|
|
# The error type, for example `TypeError` or `ReferenceError`. If the error type
|
|
# is unavailable, this field is not included.
|
|
# Corresponds to the JSON property `errorType`
|
|
# @return [String]
|
|
attr_accessor :error_type
|
|
|
|
# An array of objects that provide a stack trace through the script to show
|
|
# where the execution failed, with the deepest call first.
|
|
# Corresponds to the JSON property `scriptStackTraceElements`
|
|
# @return [Array<Google::Apis::ScriptV1::ScriptStackTraceElement>]
|
|
attr_accessor :script_stack_trace_elements
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@error_message = args[:error_message] if args.key?(:error_message)
|
|
@error_type = args[:error_type] if args.key?(:error_type)
|
|
@script_stack_trace_elements = args[:script_stack_trace_elements] if args.key?(:script_stack_trace_elements)
|
|
end
|
|
end
|
|
|
|
# A request to run the function in a script. The script is identified by the
|
|
# specified `script_id`. Executing a function on a script returns results based
|
|
# on the implementation of the script.
|
|
class ExecutionRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# If `true` and the user is an owner of the script, the script runs at the most
|
|
# recently saved version rather than the version deployed for use with the Apps
|
|
# Script API. Optional; default is `false`.
|
|
# Corresponds to the JSON property `devMode`
|
|
# @return [Boolean]
|
|
attr_accessor :dev_mode
|
|
alias_method :dev_mode?, :dev_mode
|
|
|
|
# The name of the function to execute in the given script. The name does not
|
|
# include parentheses or parameters. It can reference a function in an included
|
|
# library such as `Library.libFunction1`.
|
|
# Corresponds to the JSON property `function`
|
|
# @return [String]
|
|
attr_accessor :function
|
|
|
|
# The parameters to be passed to the function being executed. The object type
|
|
# for each parameter should match the expected type in Apps Script. Parameters
|
|
# cannot be Apps Script-specific object types (such as a `Document` or a `
|
|
# Calendar`); they can only be primitive types such as `string`, `number`, `
|
|
# array`, `object`, or `boolean`. Optional.
|
|
# Corresponds to the JSON property `parameters`
|
|
# @return [Array<Object>]
|
|
attr_accessor :parameters
|
|
|
|
# *Deprecated*. For use with Android add-ons only. An ID that represents the
|
|
# user's current session in the Android app for Google Docs or Sheets, included
|
|
# as extra data in the [Intent](https://developer.android.com/guide/components/
|
|
# intents-filters.html) that launches the add-on. When an Android add-on is run
|
|
# with a session state, it gains the privileges of a [bound](https://developers.
|
|
# google.com/apps-script/guides/bound) script—that is, it can access information
|
|
# like the user's current cursor position (in Docs) or selected cell (in Sheets).
|
|
# To retrieve the state, call `Intent.getStringExtra("com.google.android.apps.
|
|
# docs.addons.SessionState")`. Optional.
|
|
# Corresponds to the JSON property `sessionState`
|
|
# @return [String]
|
|
attr_accessor :session_state
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@dev_mode = args[:dev_mode] if args.key?(:dev_mode)
|
|
@function = args[:function] if args.key?(:function)
|
|
@parameters = args[:parameters] if args.key?(:parameters)
|
|
@session_state = args[:session_state] if args.key?(:session_state)
|
|
end
|
|
end
|
|
|
|
# An object that provides the return value of a function executed using the Apps
|
|
# Script API. If the script function returns successfully, the response body's
|
|
# response field contains this `ExecutionResponse` object.
|
|
class ExecutionResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The return value of the script function. The type matches the object type
|
|
# returned in Apps Script. Functions called using the Apps Script API cannot
|
|
# return Apps Script-specific objects (such as a `Document` or a `Calendar`);
|
|
# they can only return primitive types such as a `string`, `number`, `array`, `
|
|
# object`, or `boolean`.
|
|
# Corresponds to the JSON property `result`
|
|
# @return [Object]
|
|
attr_accessor :result
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@result = args[:result] if args.key?(:result)
|
|
end
|
|
end
|
|
|
|
# An individual file within a script project. A file is a third-party source
|
|
# code created by one or more developers. It can be a server-side JS code, HTML,
|
|
# or a configuration file. Each script project can contain multiple files.
|
|
class File
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Creation date timestamp. This read-only field is only visible to users who
|
|
# have WRITER permission for the script project.
|
|
# Corresponds to the JSON property `createTime`
|
|
# @return [String]
|
|
attr_accessor :create_time
|
|
|
|
# A set of functions. No duplicates are permitted.
|
|
# Corresponds to the JSON property `functionSet`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeFunctionSet]
|
|
attr_accessor :function_set
|
|
|
|
# A simple user profile resource.
|
|
# Corresponds to the JSON property `lastModifyUser`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeUser]
|
|
attr_accessor :last_modify_user
|
|
|
|
# The name of the file. The file extension is not part of the file name, which
|
|
# can be identified from the type field.
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
# The file content.
|
|
# Corresponds to the JSON property `source`
|
|
# @return [String]
|
|
attr_accessor :source
|
|
|
|
# The type of the file.
|
|
# Corresponds to the JSON property `type`
|
|
# @return [String]
|
|
attr_accessor :type
|
|
|
|
# Last modified date timestamp. This read-only field is only visible to users
|
|
# who have WRITER permission for the script project.
|
|
# Corresponds to the JSON property `updateTime`
|
|
# @return [String]
|
|
attr_accessor :update_time
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@create_time = args[:create_time] if args.key?(:create_time)
|
|
@function_set = args[:function_set] if args.key?(:function_set)
|
|
@last_modify_user = args[:last_modify_user] if args.key?(:last_modify_user)
|
|
@name = args[:name] if args.key?(:name)
|
|
@source = args[:source] if args.key?(:source)
|
|
@type = args[:type] if args.key?(:type)
|
|
@update_time = args[:update_time] if args.key?(:update_time)
|
|
end
|
|
end
|
|
|
|
# An add-on entry point.
|
|
class GoogleAppsScriptTypeAddOnEntryPoint
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The add-on's required list of supported container types.
|
|
# Corresponds to the JSON property `addOnType`
|
|
# @return [String]
|
|
attr_accessor :add_on_type
|
|
|
|
# The add-on's optional description.
|
|
# Corresponds to the JSON property `description`
|
|
# @return [String]
|
|
attr_accessor :description
|
|
|
|
# The add-on's optional help URL.
|
|
# Corresponds to the JSON property `helpUrl`
|
|
# @return [String]
|
|
attr_accessor :help_url
|
|
|
|
# The add-on's required post install tip URL.
|
|
# Corresponds to the JSON property `postInstallTipUrl`
|
|
# @return [String]
|
|
attr_accessor :post_install_tip_url
|
|
|
|
# The add-on's optional report issue URL.
|
|
# Corresponds to the JSON property `reportIssueUrl`
|
|
# @return [String]
|
|
attr_accessor :report_issue_url
|
|
|
|
# The add-on's required title.
|
|
# Corresponds to the JSON property `title`
|
|
# @return [String]
|
|
attr_accessor :title
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@add_on_type = args[:add_on_type] if args.key?(:add_on_type)
|
|
@description = args[:description] if args.key?(:description)
|
|
@help_url = args[:help_url] if args.key?(:help_url)
|
|
@post_install_tip_url = args[:post_install_tip_url] if args.key?(:post_install_tip_url)
|
|
@report_issue_url = args[:report_issue_url] if args.key?(:report_issue_url)
|
|
@title = args[:title] if args.key?(:title)
|
|
end
|
|
end
|
|
|
|
# API executable entry point configuration.
|
|
class GoogleAppsScriptTypeExecutionApiConfig
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Who has permission to run the API executable.
|
|
# Corresponds to the JSON property `access`
|
|
# @return [String]
|
|
attr_accessor :access
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@access = args[:access] if args.key?(:access)
|
|
end
|
|
end
|
|
|
|
# An API executable entry point.
|
|
class GoogleAppsScriptTypeExecutionApiEntryPoint
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# API executable entry point configuration.
|
|
# Corresponds to the JSON property `entryPointConfig`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeExecutionApiConfig]
|
|
attr_accessor :entry_point_config
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@entry_point_config = args[:entry_point_config] if args.key?(:entry_point_config)
|
|
end
|
|
end
|
|
|
|
# Represents a function in a script project.
|
|
class GoogleAppsScriptTypeFunction
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The function name in the script project.
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@name = args[:name] if args.key?(:name)
|
|
end
|
|
end
|
|
|
|
# A set of functions. No duplicates are permitted.
|
|
class GoogleAppsScriptTypeFunctionSet
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# A list of functions composing the set.
|
|
# Corresponds to the JSON property `values`
|
|
# @return [Array<Google::Apis::ScriptV1::GoogleAppsScriptTypeFunction>]
|
|
attr_accessor :values
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@values = args[:values] if args.key?(:values)
|
|
end
|
|
end
|
|
|
|
# Representation of a single script process execution that was started from the
|
|
# script editor, a trigger, an application, or using the Apps Script API. This
|
|
# is distinct from the `Operation` resource, which only represents executions
|
|
# started via the Apps Script API.
|
|
class GoogleAppsScriptTypeProcess
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Duration the execution spent executing.
|
|
# Corresponds to the JSON property `duration`
|
|
# @return [String]
|
|
attr_accessor :duration
|
|
|
|
# Name of the function the started the execution.
|
|
# Corresponds to the JSON property `functionName`
|
|
# @return [String]
|
|
attr_accessor :function_name
|
|
|
|
# The executions status.
|
|
# Corresponds to the JSON property `processStatus`
|
|
# @return [String]
|
|
attr_accessor :process_status
|
|
|
|
# The executions type.
|
|
# Corresponds to the JSON property `processType`
|
|
# @return [String]
|
|
attr_accessor :process_type
|
|
|
|
# Name of the script being executed.
|
|
# Corresponds to the JSON property `projectName`
|
|
# @return [String]
|
|
attr_accessor :project_name
|
|
|
|
# Time the execution started.
|
|
# Corresponds to the JSON property `startTime`
|
|
# @return [String]
|
|
attr_accessor :start_time
|
|
|
|
# The executing users access level to the script.
|
|
# Corresponds to the JSON property `userAccessLevel`
|
|
# @return [String]
|
|
attr_accessor :user_access_level
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@duration = args[:duration] if args.key?(:duration)
|
|
@function_name = args[:function_name] if args.key?(:function_name)
|
|
@process_status = args[:process_status] if args.key?(:process_status)
|
|
@process_type = args[:process_type] if args.key?(:process_type)
|
|
@project_name = args[:project_name] if args.key?(:project_name)
|
|
@start_time = args[:start_time] if args.key?(:start_time)
|
|
@user_access_level = args[:user_access_level] if args.key?(:user_access_level)
|
|
end
|
|
end
|
|
|
|
# A simple user profile resource.
|
|
class GoogleAppsScriptTypeUser
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The user's domain.
|
|
# Corresponds to the JSON property `domain`
|
|
# @return [String]
|
|
attr_accessor :domain
|
|
|
|
# The user's identifying email address.
|
|
# Corresponds to the JSON property `email`
|
|
# @return [String]
|
|
attr_accessor :email
|
|
|
|
# The user's display name.
|
|
# Corresponds to the JSON property `name`
|
|
# @return [String]
|
|
attr_accessor :name
|
|
|
|
# The user's photo.
|
|
# Corresponds to the JSON property `photoUrl`
|
|
# @return [String]
|
|
attr_accessor :photo_url
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@domain = args[:domain] if args.key?(:domain)
|
|
@email = args[:email] if args.key?(:email)
|
|
@name = args[:name] if args.key?(:name)
|
|
@photo_url = args[:photo_url] if args.key?(:photo_url)
|
|
end
|
|
end
|
|
|
|
# Web app entry point configuration.
|
|
class GoogleAppsScriptTypeWebAppConfig
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Who has permission to run the web app.
|
|
# Corresponds to the JSON property `access`
|
|
# @return [String]
|
|
attr_accessor :access
|
|
|
|
# Who to execute the web app as.
|
|
# Corresponds to the JSON property `executeAs`
|
|
# @return [String]
|
|
attr_accessor :execute_as
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@access = args[:access] if args.key?(:access)
|
|
@execute_as = args[:execute_as] if args.key?(:execute_as)
|
|
end
|
|
end
|
|
|
|
# A web application entry point.
|
|
class GoogleAppsScriptTypeWebAppEntryPoint
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Web app entry point configuration.
|
|
# Corresponds to the JSON property `entryPointConfig`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeWebAppConfig]
|
|
attr_accessor :entry_point_config
|
|
|
|
# The URL for the web application.
|
|
# Corresponds to the JSON property `url`
|
|
# @return [String]
|
|
attr_accessor :url
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@entry_point_config = args[:entry_point_config] if args.key?(:entry_point_config)
|
|
@url = args[:url] if args.key?(:url)
|
|
end
|
|
end
|
|
|
|
# Response with the list of deployments for the specified Apps Script project.
|
|
class ListDeploymentsResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The list of deployments.
|
|
# Corresponds to the JSON property `deployments`
|
|
# @return [Array<Google::Apis::ScriptV1::Deployment>]
|
|
attr_accessor :deployments
|
|
|
|
# The token that can be used in the next call to get the next page of results.
|
|
# Corresponds to the JSON property `nextPageToken`
|
|
# @return [String]
|
|
attr_accessor :next_page_token
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@deployments = args[:deployments] if args.key?(:deployments)
|
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
end
|
|
end
|
|
|
|
# Response with the list of Process resources.
|
|
class ListScriptProcessesResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Token for the next page of results. If empty, there are no more pages
|
|
# remaining.
|
|
# Corresponds to the JSON property `nextPageToken`
|
|
# @return [String]
|
|
attr_accessor :next_page_token
|
|
|
|
# List of processes matching request parameters.
|
|
# Corresponds to the JSON property `processes`
|
|
# @return [Array<Google::Apis::ScriptV1::GoogleAppsScriptTypeProcess>]
|
|
attr_accessor :processes
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
@processes = args[:processes] if args.key?(:processes)
|
|
end
|
|
end
|
|
|
|
# Response with the list of Process resources.
|
|
class ListUserProcessesResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Token for the next page of results. If empty, there are no more pages
|
|
# remaining.
|
|
# Corresponds to the JSON property `nextPageToken`
|
|
# @return [String]
|
|
attr_accessor :next_page_token
|
|
|
|
# List of processes matching request parameters.
|
|
# Corresponds to the JSON property `processes`
|
|
# @return [Array<Google::Apis::ScriptV1::GoogleAppsScriptTypeProcess>]
|
|
attr_accessor :processes
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
@processes = args[:processes] if args.key?(:processes)
|
|
end
|
|
end
|
|
|
|
# `ListValue` is a wrapper around a repeated field of values.
|
|
class ListValue
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Repeated field of dynamically typed values.
|
|
# Corresponds to the JSON property `values`
|
|
# @return [Array<Google::Apis::ScriptV1::Value>]
|
|
attr_accessor :values
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@values = args[:values] if args.key?(:values)
|
|
end
|
|
end
|
|
|
|
# Response with the list of the versions for the specified script project.
|
|
class ListVersionsResponse
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The token use to fetch the next page of records. if not exist in the response,
|
|
# that means no more versions to list.
|
|
# Corresponds to the JSON property `nextPageToken`
|
|
# @return [String]
|
|
attr_accessor :next_page_token
|
|
|
|
# The list of versions.
|
|
# Corresponds to the JSON property `versions`
|
|
# @return [Array<Google::Apis::ScriptV1::Version>]
|
|
attr_accessor :versions
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
|
@versions = args[:versions] if args.key?(:versions)
|
|
end
|
|
end
|
|
|
|
# Resource containing usage stats for a given script, based on the supplied
|
|
# filter and mask present in the request.
|
|
class Metrics
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Number of active users.
|
|
# Corresponds to the JSON property `activeUsers`
|
|
# @return [Array<Google::Apis::ScriptV1::MetricsValue>]
|
|
attr_accessor :active_users
|
|
|
|
# Number of failed executions.
|
|
# Corresponds to the JSON property `failedExecutions`
|
|
# @return [Array<Google::Apis::ScriptV1::MetricsValue>]
|
|
attr_accessor :failed_executions
|
|
|
|
# Number of total executions.
|
|
# Corresponds to the JSON property `totalExecutions`
|
|
# @return [Array<Google::Apis::ScriptV1::MetricsValue>]
|
|
attr_accessor :total_executions
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@active_users = args[:active_users] if args.key?(:active_users)
|
|
@failed_executions = args[:failed_executions] if args.key?(:failed_executions)
|
|
@total_executions = args[:total_executions] if args.key?(:total_executions)
|
|
end
|
|
end
|
|
|
|
# Metrics value that holds number of executions counted.
|
|
class MetricsValue
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Required field indicating the end time of the interval.
|
|
# Corresponds to the JSON property `endTime`
|
|
# @return [String]
|
|
attr_accessor :end_time
|
|
|
|
# Required field indicating the start time of the interval.
|
|
# Corresponds to the JSON property `startTime`
|
|
# @return [String]
|
|
attr_accessor :start_time
|
|
|
|
# Indicates the number of executions counted.
|
|
# Corresponds to the JSON property `value`
|
|
# @return [Fixnum]
|
|
attr_accessor :value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@end_time = args[:end_time] if args.key?(:end_time)
|
|
@start_time = args[:start_time] if args.key?(:start_time)
|
|
@value = args[:value] if args.key?(:value)
|
|
end
|
|
end
|
|
|
|
# A representation of an execution of an Apps Script function started with run.
|
|
# The execution response does not arrive until the function finishes executing.
|
|
# The maximum execution runtime is listed in the [Apps Script quotas guide](/
|
|
# apps-script/guides/services/quotas#current_limitations). After execution has
|
|
# started, it can have one of four outcomes: - If the script function returns
|
|
# successfully, the response field contains an ExecutionResponse object with the
|
|
# function's return value in the object's `result` field. - If the script
|
|
# function (or Apps Script itself) throws an exception, the error field contains
|
|
# a Status object. The `Status` object's `details` field contains an array with
|
|
# a single ExecutionError object that provides information about the nature of
|
|
# the error. - If the execution has not yet completed, the done field is `false`
|
|
# and the neither the `response` nor `error` fields are present. - If the `run`
|
|
# call itself fails (for example, because of a malformed request or an
|
|
# authorization error), the method returns an HTTP response code in the 4XX
|
|
# range with a different format for the response body. Client libraries
|
|
# automatically convert a 4XX response into an exception class.
|
|
class Operation
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# This field indicates whether the script execution has completed. A completed
|
|
# execution has a populated `response` field containing the ExecutionResponse
|
|
# from function that was executed.
|
|
# Corresponds to the JSON property `done`
|
|
# @return [Boolean]
|
|
attr_accessor :done
|
|
alias_method :done?, :done
|
|
|
|
# If a `run` call succeeds but the script function (or Apps Script itself)
|
|
# throws an exception, the response body's error field contains this `Status`
|
|
# object.
|
|
# Corresponds to the JSON property `error`
|
|
# @return [Google::Apis::ScriptV1::Status]
|
|
attr_accessor :error
|
|
|
|
# If the script function returns successfully, this field contains an
|
|
# ExecutionResponse object with the function's return value.
|
|
# Corresponds to the JSON property `response`
|
|
# @return [Hash<String,Object>]
|
|
attr_accessor :response
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@done = args[:done] if args.key?(:done)
|
|
@error = args[:error] if args.key?(:error)
|
|
@response = args[:response] if args.key?(:response)
|
|
end
|
|
end
|
|
|
|
# The script project resource.
|
|
class Project
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# When the script was created.
|
|
# Corresponds to the JSON property `createTime`
|
|
# @return [String]
|
|
attr_accessor :create_time
|
|
|
|
# A simple user profile resource.
|
|
# Corresponds to the JSON property `creator`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeUser]
|
|
attr_accessor :creator
|
|
|
|
# A simple user profile resource.
|
|
# Corresponds to the JSON property `lastModifyUser`
|
|
# @return [Google::Apis::ScriptV1::GoogleAppsScriptTypeUser]
|
|
attr_accessor :last_modify_user
|
|
|
|
# The parent's Drive ID that the script will be attached to. This is usually the
|
|
# ID of a Google Document or Google Sheet. This filed is optional, and if not
|
|
# set, a stand-alone script will be created.
|
|
# Corresponds to the JSON property `parentId`
|
|
# @return [String]
|
|
attr_accessor :parent_id
|
|
|
|
# The script project's Drive ID.
|
|
# Corresponds to the JSON property `scriptId`
|
|
# @return [String]
|
|
attr_accessor :script_id
|
|
|
|
# The title for the project.
|
|
# Corresponds to the JSON property `title`
|
|
# @return [String]
|
|
attr_accessor :title
|
|
|
|
# When the script was last updated.
|
|
# Corresponds to the JSON property `updateTime`
|
|
# @return [String]
|
|
attr_accessor :update_time
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@create_time = args[:create_time] if args.key?(:create_time)
|
|
@creator = args[:creator] if args.key?(:creator)
|
|
@last_modify_user = args[:last_modify_user] if args.key?(:last_modify_user)
|
|
@parent_id = args[:parent_id] if args.key?(:parent_id)
|
|
@script_id = args[:script_id] if args.key?(:script_id)
|
|
@title = args[:title] if args.key?(:title)
|
|
@update_time = args[:update_time] if args.key?(:update_time)
|
|
end
|
|
end
|
|
|
|
# The result of an execution.
|
|
class ScriptExecutionResult
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# `Value` represents a dynamically typed value which is the outcome of an
|
|
# executed script.
|
|
# Corresponds to the JSON property `returnValue`
|
|
# @return [Google::Apis::ScriptV1::Value]
|
|
attr_accessor :return_value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@return_value = args[:return_value] if args.key?(:return_value)
|
|
end
|
|
end
|
|
|
|
# A stack trace through the script that shows where the execution failed.
|
|
class ScriptStackTraceElement
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The name of the function that failed.
|
|
# Corresponds to the JSON property `function`
|
|
# @return [String]
|
|
attr_accessor :function
|
|
|
|
# The line number where the script failed.
|
|
# Corresponds to the JSON property `lineNumber`
|
|
# @return [Fixnum]
|
|
attr_accessor :line_number
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@function = args[:function] if args.key?(:function)
|
|
@line_number = args[:line_number] if args.key?(:line_number)
|
|
end
|
|
end
|
|
|
|
# If a `run` call succeeds but the script function (or Apps Script itself)
|
|
# throws an exception, the response body's error field contains this `Status`
|
|
# object.
|
|
class Status
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# The status code. For this API, this value either: - 10, indicating a `
|
|
# SCRIPT_TIMEOUT` error, - 3, indicating an `INVALID_ARGUMENT` error, or - 1,
|
|
# indicating a `CANCELLED` execution.
|
|
# Corresponds to the JSON property `code`
|
|
# @return [Fixnum]
|
|
attr_accessor :code
|
|
|
|
# An array that contains a single ExecutionError object that provides
|
|
# information about the nature of the error.
|
|
# Corresponds to the JSON property `details`
|
|
# @return [Array<Hash<String,Object>>]
|
|
attr_accessor :details
|
|
|
|
# A developer-facing error message, which is in English. Any user-facing error
|
|
# message is localized and sent in the details field, or localized by the client.
|
|
# Corresponds to the JSON property `message`
|
|
# @return [String]
|
|
attr_accessor :message
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@code = args[:code] if args.key?(:code)
|
|
@details = args[:details] if args.key?(:details)
|
|
@message = args[:message] if args.key?(:message)
|
|
end
|
|
end
|
|
|
|
# `Struct` represents a structured data value, consisting of fields which map to
|
|
# dynamically typed values.
|
|
class Struct
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Unordered map of dynamically typed values.
|
|
# Corresponds to the JSON property `fields`
|
|
# @return [Hash<String,Google::Apis::ScriptV1::Value>]
|
|
attr_accessor :fields
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@fields = args[:fields] if args.key?(:fields)
|
|
end
|
|
end
|
|
|
|
# Request with deployment information to update an existing deployment.
|
|
class UpdateDeploymentRequest
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Metadata the defines how a deployment is configured.
|
|
# Corresponds to the JSON property `deploymentConfig`
|
|
# @return [Google::Apis::ScriptV1::DeploymentConfig]
|
|
attr_accessor :deployment_config
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@deployment_config = args[:deployment_config] if args.key?(:deployment_config)
|
|
end
|
|
end
|
|
|
|
# `Value` represents a dynamically typed value which is the outcome of an
|
|
# executed script.
|
|
class Value
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# Represents a boolean value.
|
|
# Corresponds to the JSON property `boolValue`
|
|
# @return [Boolean]
|
|
attr_accessor :bool_value
|
|
alias_method :bool_value?, :bool_value
|
|
|
|
# Represents raw byte values.
|
|
# Corresponds to the JSON property `bytesValue`
|
|
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
|
# @return [String]
|
|
attr_accessor :bytes_value
|
|
|
|
# Represents a date in ms since the epoch.
|
|
# Corresponds to the JSON property `dateValue`
|
|
# @return [Fixnum]
|
|
attr_accessor :date_value
|
|
|
|
# `ListValue` is a wrapper around a repeated field of values.
|
|
# Corresponds to the JSON property `listValue`
|
|
# @return [Google::Apis::ScriptV1::ListValue]
|
|
attr_accessor :list_value
|
|
|
|
# Represents a null value.
|
|
# Corresponds to the JSON property `nullValue`
|
|
# @return [String]
|
|
attr_accessor :null_value
|
|
|
|
# Represents a double value.
|
|
# Corresponds to the JSON property `numberValue`
|
|
# @return [Float]
|
|
attr_accessor :number_value
|
|
|
|
# Represents a structured proto value.
|
|
# Corresponds to the JSON property `protoValue`
|
|
# @return [Hash<String,Object>]
|
|
attr_accessor :proto_value
|
|
|
|
# Represents a string value.
|
|
# Corresponds to the JSON property `stringValue`
|
|
# @return [String]
|
|
attr_accessor :string_value
|
|
|
|
# `Struct` represents a structured data value, consisting of fields which map to
|
|
# dynamically typed values.
|
|
# Corresponds to the JSON property `structValue`
|
|
# @return [Google::Apis::ScriptV1::Struct]
|
|
attr_accessor :struct_value
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@bool_value = args[:bool_value] if args.key?(:bool_value)
|
|
@bytes_value = args[:bytes_value] if args.key?(:bytes_value)
|
|
@date_value = args[:date_value] if args.key?(:date_value)
|
|
@list_value = args[:list_value] if args.key?(:list_value)
|
|
@null_value = args[:null_value] if args.key?(:null_value)
|
|
@number_value = args[:number_value] if args.key?(:number_value)
|
|
@proto_value = args[:proto_value] if args.key?(:proto_value)
|
|
@string_value = args[:string_value] if args.key?(:string_value)
|
|
@struct_value = args[:struct_value] if args.key?(:struct_value)
|
|
end
|
|
end
|
|
|
|
# A resource representing a script project version. A version is a "snapshot" of
|
|
# a script project and is similar to a read-only branched release. When creating
|
|
# deployments, the version to use must be specified.
|
|
class Version
|
|
include Google::Apis::Core::Hashable
|
|
|
|
# When the version was created.
|
|
# Corresponds to the JSON property `createTime`
|
|
# @return [String]
|
|
attr_accessor :create_time
|
|
|
|
# The description for this version.
|
|
# Corresponds to the JSON property `description`
|
|
# @return [String]
|
|
attr_accessor :description
|
|
|
|
# The script project's Drive ID.
|
|
# Corresponds to the JSON property `scriptId`
|
|
# @return [String]
|
|
attr_accessor :script_id
|
|
|
|
# The incremental ID that is created by Apps Script when a version is created.
|
|
# This is system assigned number and is immutable once created.
|
|
# Corresponds to the JSON property `versionNumber`
|
|
# @return [Fixnum]
|
|
attr_accessor :version_number
|
|
|
|
def initialize(**args)
|
|
update!(**args)
|
|
end
|
|
|
|
# Update properties of this object
|
|
def update!(**args)
|
|
@create_time = args[:create_time] if args.key?(:create_time)
|
|
@description = args[:description] if args.key?(:description)
|
|
@script_id = args[:script_id] if args.key?(:script_id)
|
|
@version_number = args[:version_number] if args.key?(:version_number)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
end
|