blob: 6e19e0754f12dc4c301c7c94c501e762e624b460 [file] [log] [blame]
// Copyright 2024 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package script provides access to the Apps Script API.
//
// For product documentation, see: https://developers.google.com/apps-script/api/
//
// # Library status
//
// These client libraries are officially supported by Google. However, this
// library is considered complete and is in maintenance mode. This means
// that we will address critical bugs and security issues but will not add
// any new features.
//
// When possible, we recommend using our newer
// [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go)
// that are still actively being worked and iterated on.
//
// # Creating a client
//
// Usage example:
//
// import "google.golang.org/api/script/v1"
// ...
// ctx := context.Background()
// scriptService, err := script.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for
// authentication. For information on how to create and obtain Application
// Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// # Other authentication options
//
// By default, all available scopes (see "Constants") are used to authenticate.
// To restrict scopes, use [google.golang.org/api/option.WithScopes]:
//
// scriptService, err := script.NewService(ctx, option.WithScopes(script.UserinfoEmailScope))
//
// To use an API key for authentication (note: some APIs do not support API
// keys), use [google.golang.org/api/option.WithAPIKey]:
//
// scriptService, err := script.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth
// flow, use [google.golang.org/api/option.WithTokenSource]:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// scriptService, err := script.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See [google.golang.org/api/option.ClientOption] for details on options.
package script // import "google.golang.org/api/script/v1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
internal "google.golang.org/api/internal"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
var _ = internaloption.WithDefaultEndpoint
var _ = internal.Version
const apiId = "script:v1"
const apiName = "script"
const apiVersion = "v1"
const basePath = "https://script.googleapis.com/"
const basePathTemplate = "https://script.UNIVERSE_DOMAIN/"
const mtlsBasePath = "https://script.mtls.googleapis.com/"
const defaultUniverseDomain = "googleapis.com"
// OAuth2 scopes used by this API.
const (
// Read, compose, send, and permanently delete all your email from Gmail
MailGoogleComScope = "https://mail.google.com/"
// See, edit, share, and permanently delete all the calendars you can access
// using Google Calendar
WwwGoogleComCalendarFeedsScope = "https://www.google.com/calendar/feeds"
// See, edit, download, and permanently delete your contacts
WwwGoogleComM8FeedsScope = "https://www.google.com/m8/feeds"
// View and manage the provisioning of groups on your domain
AdminDirectoryGroupScope = "https://www.googleapis.com/auth/admin.directory.group"
// View and manage the provisioning of users on your domain
AdminDirectoryUserScope = "https://www.googleapis.com/auth/admin.directory.user"
// See, edit, create, and delete all your Google Docs documents
DocumentsScope = "https://www.googleapis.com/auth/documents"
// See, edit, create, and delete all of your Google Drive files
DriveScope = "https://www.googleapis.com/auth/drive"
// View and manage your forms in Google Drive
FormsScope = "https://www.googleapis.com/auth/forms"
// View and manage forms that this application has been installed in
FormsCurrentonlyScope = "https://www.googleapis.com/auth/forms.currentonly"
// View and manage your Google Groups
GroupsScope = "https://www.googleapis.com/auth/groups"
// Create and update Google Apps Script deployments
ScriptDeploymentsScope = "https://www.googleapis.com/auth/script.deployments"
// View Google Apps Script deployments
ScriptDeploymentsReadonlyScope = "https://www.googleapis.com/auth/script.deployments.readonly"
// View Google Apps Script project's metrics
ScriptMetricsScope = "https://www.googleapis.com/auth/script.metrics"
// View Google Apps Script processes
ScriptProcessesScope = "https://www.googleapis.com/auth/script.processes"
// Create and update Google Apps Script projects
ScriptProjectsScope = "https://www.googleapis.com/auth/script.projects"
// View Google Apps Script projects
ScriptProjectsReadonlyScope = "https://www.googleapis.com/auth/script.projects.readonly"
// See, edit, create, and delete all your Google Sheets spreadsheets
SpreadsheetsScope = "https://www.googleapis.com/auth/spreadsheets"
// See your primary Google Account email address
UserinfoEmailScope = "https://www.googleapis.com/auth/userinfo.email"
)
// NewService creates a new Service.
func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) {
scopesOption := internaloption.WithDefaultScopes(
"https://mail.google.com/",
"https://www.google.com/calendar/feeds",
"https://www.google.com/m8/feeds",
"https://www.googleapis.com/auth/admin.directory.group",
"https://www.googleapis.com/auth/admin.directory.user",
"https://www.googleapis.com/auth/documents",
"https://www.googleapis.com/auth/drive",
"https://www.googleapis.com/auth/forms",
"https://www.googleapis.com/auth/forms.currentonly",
"https://www.googleapis.com/auth/groups",
"https://www.googleapis.com/auth/script.deployments",
"https://www.googleapis.com/auth/script.deployments.readonly",
"https://www.googleapis.com/auth/script.metrics",
"https://www.googleapis.com/auth/script.processes",
"https://www.googleapis.com/auth/script.projects",
"https://www.googleapis.com/auth/script.projects.readonly",
"https://www.googleapis.com/auth/spreadsheets",
"https://www.googleapis.com/auth/userinfo.email",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
opts = append(opts, internaloption.WithDefaultUniverseDomain(defaultUniverseDomain))
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new Service. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.Processes = NewProcessesService(s)
s.Projects = NewProjectsService(s)
s.Scripts = NewScriptsService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Processes *ProcessesService
Projects *ProjectsService
Scripts *ScriptsService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewProcessesService(s *Service) *ProcessesService {
rs := &ProcessesService{s: s}
return rs
}
type ProcessesService struct {
s *Service
}
func NewProjectsService(s *Service) *ProjectsService {
rs := &ProjectsService{s: s}
rs.Deployments = NewProjectsDeploymentsService(s)
rs.Versions = NewProjectsVersionsService(s)
return rs
}
type ProjectsService struct {
s *Service
Deployments *ProjectsDeploymentsService
Versions *ProjectsVersionsService
}
func NewProjectsDeploymentsService(s *Service) *ProjectsDeploymentsService {
rs := &ProjectsDeploymentsService{s: s}
return rs
}
type ProjectsDeploymentsService struct {
s *Service
}
func NewProjectsVersionsService(s *Service) *ProjectsVersionsService {
rs := &ProjectsVersionsService{s: s}
return rs
}
type ProjectsVersionsService struct {
s *Service
}
func NewScriptsService(s *Service) *ScriptsService {
rs := &ScriptsService{s: s}
return rs
}
type ScriptsService struct {
s *Service
}
// Content: The Content resource.
type Content struct {
// Files: 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.
Files []*File `json:"files,omitempty"`
// ScriptId: The script project's Drive ID.
ScriptId string `json:"scriptId,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Files") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Files") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Content) MarshalJSON() ([]byte, error) {
type NoMethod Content
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// CreateProjectRequest: Request to create a script project. Request to create
// a script project.
type CreateProjectRequest struct {
// ParentId: 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.
ParentId string `json:"parentId,omitempty"`
// Title: The title for the project.
Title string `json:"title,omitempty"`
// ForceSendFields is a list of field names (e.g. "ParentId") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ParentId") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *CreateProjectRequest) MarshalJSON() ([]byte, error) {
type NoMethod CreateProjectRequest
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Deployment: Representation of a single script deployment.
type Deployment struct {
// DeploymentConfig: The deployment configuration.
DeploymentConfig *DeploymentConfig `json:"deploymentConfig,omitempty"`
// DeploymentId: The deployment ID for this deployment.
DeploymentId string `json:"deploymentId,omitempty"`
// EntryPoints: The deployment's entry points.
EntryPoints []*EntryPoint `json:"entryPoints,omitempty"`
// UpdateTime: Last modified date time stamp.
UpdateTime string `json:"updateTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DeploymentConfig") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeploymentConfig") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Deployment) MarshalJSON() ([]byte, error) {
type NoMethod Deployment
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// DeploymentConfig: Metadata the defines how a deployment is configured.
type DeploymentConfig struct {
// Description: The description for this deployment.
Description string `json:"description,omitempty"`
// ManifestFileName: The manifest file name for this deployment.
ManifestFileName string `json:"manifestFileName,omitempty"`
// ScriptId: The script project's Drive ID.
ScriptId string `json:"scriptId,omitempty"`
// VersionNumber: The version number on which this deployment is based.
VersionNumber int64 `json:"versionNumber,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *DeploymentConfig) MarshalJSON() ([]byte, error) {
type NoMethod DeploymentConfig
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Empty: 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); }
type Empty struct {
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
}
// EntryPoint: A configuration that defines how a deployment is accessed
// externally.
type EntryPoint struct {
// AddOn: Add-on properties.
AddOn *GoogleAppsScriptTypeAddOnEntryPoint `json:"addOn,omitempty"`
// EntryPointType: The type of the entry point.
//
// Possible values:
// "ENTRY_POINT_TYPE_UNSPECIFIED" - An unspecified entry point.
// "WEB_APP" - A web application entry point.
// "EXECUTION_API" - An API executable entry point.
// "ADD_ON" - An Add-On entry point.
EntryPointType string `json:"entryPointType,omitempty"`
// ExecutionApi: An entry point specification for Apps Script API execution
// calls.
ExecutionApi *GoogleAppsScriptTypeExecutionApiEntryPoint `json:"executionApi,omitempty"`
// WebApp: An entry point specification for web apps.
WebApp *GoogleAppsScriptTypeWebAppEntryPoint `json:"webApp,omitempty"`
// ForceSendFields is a list of field names (e.g. "AddOn") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AddOn") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *EntryPoint) MarshalJSON() ([]byte, error) {
type NoMethod EntryPoint
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ExecuteStreamResponse: The response for executing or debugging a function in
// an Apps Script project.
type ExecuteStreamResponse struct {
// Result: The result of the execution.
Result *ScriptExecutionResult `json:"result,omitempty"`
// ForceSendFields is a list of field names (e.g. "Result") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Result") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ExecuteStreamResponse) MarshalJSON() ([]byte, error) {
type NoMethod ExecuteStreamResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ExecutionError: 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.
type ExecutionError struct {
// ErrorMessage: The error message thrown by Apps Script, usually localized
// into the user's language.
ErrorMessage string `json:"errorMessage,omitempty"`
// ErrorType: The error type, for example `TypeError` or `ReferenceError`. If
// the error type is unavailable, this field is not included.
ErrorType string `json:"errorType,omitempty"`
// ScriptStackTraceElements: An array of objects that provide a stack trace
// through the script to show where the execution failed, with the deepest call
// first.
ScriptStackTraceElements []*ScriptStackTraceElement `json:"scriptStackTraceElements,omitempty"`
// ForceSendFields is a list of field names (e.g. "ErrorMessage") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ErrorMessage") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ExecutionError) MarshalJSON() ([]byte, error) {
type NoMethod ExecutionError
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ExecutionRequest: 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.
type ExecutionRequest struct {
// DevMode: 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`.
DevMode bool `json:"devMode,omitempty"`
// Function: 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`.
Function string `json:"function,omitempty"`
// Parameters: 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.
Parameters []interface{} `json:"parameters,omitempty"`
// SessionState: *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.
SessionState string `json:"sessionState,omitempty"`
// ForceSendFields is a list of field names (e.g. "DevMode") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DevMode") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ExecutionRequest) MarshalJSON() ([]byte, error) {
type NoMethod ExecutionRequest
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ExecutionResponse: 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.
type ExecutionResponse struct {
// Result: 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`.
Result interface{} `json:"result,omitempty"`
// ForceSendFields is a list of field names (e.g. "Result") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Result") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ExecutionResponse) MarshalJSON() ([]byte, error) {
type NoMethod ExecutionResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// File: 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.
type File struct {
// CreateTime: Creation date timestamp. This read-only field is only visible to
// users who have WRITER permission for the script project.
CreateTime string `json:"createTime,omitempty"`
// FunctionSet: The defined set of functions in the script file, if any.
FunctionSet *GoogleAppsScriptTypeFunctionSet `json:"functionSet,omitempty"`
// LastModifyUser: The user who modified the file most recently. This read-only
// field is only visible to users who have WRITER permission for the script
// project.
LastModifyUser *GoogleAppsScriptTypeUser `json:"lastModifyUser,omitempty"`
// Name: The name of the file. The file extension is not part of the file name,
// which can be identified from the type field.
Name string `json:"name,omitempty"`
// Source: The file content.
Source string `json:"source,omitempty"`
// Type: The type of the file.
//
// Possible values:
// "ENUM_TYPE_UNSPECIFIED" - Undetermined file type; never actually used.
// "SERVER_JS" - An Apps Script server-side code file.
// "HTML" - A file containing client-side HTML.
// "JSON" - A file in JSON format. This type is only used for the script
// project's manifest. The manifest file content must match the structure of a
// valid [ScriptManifest](/apps-script/concepts/manifests)
Type string `json:"type,omitempty"`
// UpdateTime: Last modified date timestamp. This read-only field is only
// visible to users who have WRITER permission for the script project.
UpdateTime string `json:"updateTime,omitempty"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *File) MarshalJSON() ([]byte, error) {
type NoMethod File
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeAddOnEntryPoint: An add-on entry point.
type GoogleAppsScriptTypeAddOnEntryPoint struct {
// AddOnType: The add-on's required list of supported container types.
//
// Possible values:
// "UNKNOWN_ADDON_TYPE" - Default value, unknown add-on type.
// "GMAIL" - Add-on type for Gmail.
// "DATA_STUDIO" - Add-on type for Data Studio.
AddOnType string `json:"addOnType,omitempty"`
// Description: The add-on's optional description.
Description string `json:"description,omitempty"`
// HelpUrl: The add-on's optional help URL.
HelpUrl string `json:"helpUrl,omitempty"`
// PostInstallTipUrl: The add-on's required post install tip URL.
PostInstallTipUrl string `json:"postInstallTipUrl,omitempty"`
// ReportIssueUrl: The add-on's optional report issue URL.
ReportIssueUrl string `json:"reportIssueUrl,omitempty"`
// Title: The add-on's required title.
Title string `json:"title,omitempty"`
// ForceSendFields is a list of field names (e.g. "AddOnType") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AddOnType") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeAddOnEntryPoint) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeAddOnEntryPoint
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeExecutionApiConfig: API executable entry point
// configuration.
type GoogleAppsScriptTypeExecutionApiConfig struct {
// Access: Who has permission to run the API executable.
//
// Possible values:
// "UNKNOWN_ACCESS" - Default value, should not be used.
// "MYSELF" - Only the user who deployed the web app or executable can access
// it. Note that this is not necessarily the owner of the script project.
// "DOMAIN" - Only users in the same domain as the user who deployed the web
// app or executable can access it.
// "ANYONE" - Any logged in user can access the web app or executable.
// "ANYONE_ANONYMOUS" - Any user, logged in or not, can access the web app or
// executable.
Access string `json:"access,omitempty"`
// ForceSendFields is a list of field names (e.g. "Access") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Access") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeExecutionApiConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeExecutionApiConfig
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeExecutionApiEntryPoint: An API executable entry point.
type GoogleAppsScriptTypeExecutionApiEntryPoint struct {
// EntryPointConfig: The entry point's configuration.
EntryPointConfig *GoogleAppsScriptTypeExecutionApiConfig `json:"entryPointConfig,omitempty"`
// ForceSendFields is a list of field names (e.g. "EntryPointConfig") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EntryPointConfig") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeExecutionApiEntryPoint) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeExecutionApiEntryPoint
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeFunction: Represents a function in a script project.
type GoogleAppsScriptTypeFunction struct {
// Name: The function name in the script project.
Name string `json:"name,omitempty"`
// Parameters: The ordered list of parameter names of the function in the
// script project.
Parameters []string `json:"parameters,omitempty"`
// ForceSendFields is a list of field names (e.g. "Name") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeFunction) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeFunction
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeFunctionSet: A set of functions. No duplicates are
// permitted.
type GoogleAppsScriptTypeFunctionSet struct {
// Values: A list of functions composing the set.
Values []*GoogleAppsScriptTypeFunction `json:"values,omitempty"`
// ForceSendFields is a list of field names (e.g. "Values") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Values") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeFunctionSet) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeFunctionSet
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeProcess: 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.
type GoogleAppsScriptTypeProcess struct {
// Duration: Duration the execution spent executing.
Duration string `json:"duration,omitempty"`
// FunctionName: Name of the function the started the execution.
FunctionName string `json:"functionName,omitempty"`
// ProcessStatus: The executions status.
//
// Possible values:
// "PROCESS_STATUS_UNSPECIFIED" - Unspecified status.
// "RUNNING" - The process is currently running.
// "PAUSED" - The process has paused.
// "COMPLETED" - The process has completed.
// "CANCELED" - The process was cancelled.
// "FAILED" - The process failed.
// "TIMED_OUT" - The process timed out.
// "UNKNOWN" - Process status unknown.
// "DELAYED" - The process is delayed, waiting for quota.
// "EXECUTION_DISABLED" - AppsScript executions are disabled by Admin.
ProcessStatus string `json:"processStatus,omitempty"`
// ProcessType: The executions type.
//
// Possible values:
// "PROCESS_TYPE_UNSPECIFIED" - Unspecified type.
// "ADD_ON" - The process was started from an add-on entry point.
// "EXECUTION_API" - The process was started using the Apps Script API.
// "TIME_DRIVEN" - The process was started from a time-based trigger.
// "TRIGGER" - The process was started from an event-based trigger.
// "WEBAPP" - The process was started from a web app entry point.
// "EDITOR" - The process was started using the Apps Script IDE.
// "SIMPLE_TRIGGER" - The process was started from a G Suite simple trigger.
// "MENU" - The process was started from a G Suite menu item.
// "BATCH_TASK" - The process was started as a task in a batch job.
ProcessType string `json:"processType,omitempty"`
// ProjectName: Name of the script being executed.
ProjectName string `json:"projectName,omitempty"`
// RuntimeVersion: Which version of maestro to use to execute the script.
//
// Possible values:
// "RUNTIME_VERSION_UNSPECIFIED" - Runtime version unset / unknown.
// "DEPRECATED_ES5" - Legacy rhino version of the Apps script runtime
// "V8" - Current default V8 version of the apps script runtime.
RuntimeVersion string `json:"runtimeVersion,omitempty"`
// StartTime: Time the execution started.
StartTime string `json:"startTime,omitempty"`
// UserAccessLevel: The executing users access level to the script.
//
// Possible values:
// "USER_ACCESS_LEVEL_UNSPECIFIED" - User access level unspecified
// "NONE" - The user has no access.
// "READ" - The user has read-only access.
// "WRITE" - The user has write access.
// "OWNER" - The user is an owner.
UserAccessLevel string `json:"userAccessLevel,omitempty"`
// ForceSendFields is a list of field names (e.g. "Duration") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Duration") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeProcess) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeProcess
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeUser: A simple user profile resource.
type GoogleAppsScriptTypeUser struct {
// Domain: The user's domain.
Domain string `json:"domain,omitempty"`
// Email: The user's identifying email address.
Email string `json:"email,omitempty"`
// Name: The user's display name.
Name string `json:"name,omitempty"`
// PhotoUrl: The user's photo.
PhotoUrl string `json:"photoUrl,omitempty"`
// ForceSendFields is a list of field names (e.g. "Domain") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Domain") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeUser) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeUser
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeWebAppConfig: Web app entry point configuration.
type GoogleAppsScriptTypeWebAppConfig struct {
// Access: Who has permission to run the web app.
//
// Possible values:
// "UNKNOWN_ACCESS" - Default value, should not be used.
// "MYSELF" - Only the user who deployed the web app or executable can access
// it. Note that this is not necessarily the owner of the script project.
// "DOMAIN" - Only users in the same domain as the user who deployed the web
// app or executable can access it.
// "ANYONE" - Any logged in user can access the web app or executable.
// "ANYONE_ANONYMOUS" - Any user, logged in or not, can access the web app or
// executable.
Access string `json:"access,omitempty"`
// ExecuteAs: Who to execute the web app as.
//
// Possible values:
// "UNKNOWN_EXECUTE_AS" - Default value, should not be used.
// "USER_ACCESSING" - The script runs as the user accessing the web app.
// "USER_DEPLOYING" - The script runs as the user who deployed the web app.
// Note that this is not necessarily the owner of the script project.
ExecuteAs string `json:"executeAs,omitempty"`
// ForceSendFields is a list of field names (e.g. "Access") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Access") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeWebAppConfig) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeWebAppConfig
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// GoogleAppsScriptTypeWebAppEntryPoint: A web application entry point.
type GoogleAppsScriptTypeWebAppEntryPoint struct {
// EntryPointConfig: The entry point's configuration.
EntryPointConfig *GoogleAppsScriptTypeWebAppConfig `json:"entryPointConfig,omitempty"`
// Url: The URL for the web application.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "EntryPointConfig") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EntryPointConfig") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *GoogleAppsScriptTypeWebAppEntryPoint) MarshalJSON() ([]byte, error) {
type NoMethod GoogleAppsScriptTypeWebAppEntryPoint
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ListDeploymentsResponse: Response with the list of deployments for the
// specified Apps Script project.
type ListDeploymentsResponse struct {
// Deployments: The list of deployments.
Deployments []*Deployment `json:"deployments,omitempty"`
// NextPageToken: The token that can be used in the next call to get the next
// page of results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Deployments") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Deployments") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ListDeploymentsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListDeploymentsResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ListScriptProcessesResponse: Response with the list of Process resources.
type ListScriptProcessesResponse struct {
// NextPageToken: Token for the next page of results. If empty, there are no
// more pages remaining.
NextPageToken string `json:"nextPageToken,omitempty"`
// Processes: List of processes matching request parameters.
Processes []*GoogleAppsScriptTypeProcess `json:"processes,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ListScriptProcessesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListScriptProcessesResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ListUserProcessesResponse: Response with the list of Process resources.
type ListUserProcessesResponse struct {
// NextPageToken: Token for the next page of results. If empty, there are no
// more pages remaining.
NextPageToken string `json:"nextPageToken,omitempty"`
// Processes: List of processes matching request parameters.
Processes []*GoogleAppsScriptTypeProcess `json:"processes,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ListUserProcessesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListUserProcessesResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ListValue: `ListValue` is a wrapper around a repeated field of values.
type ListValue struct {
// Values: Repeated field of dynamically typed values.
Values []*Value `json:"values,omitempty"`
// ForceSendFields is a list of field names (e.g. "Values") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Values") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ListValue) MarshalJSON() ([]byte, error) {
type NoMethod ListValue
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ListVersionsResponse: Response with the list of the versions for the
// specified script project.
type ListVersionsResponse struct {
// NextPageToken: The token use to fetch the next page of records. if not exist
// in the response, that means no more versions to list.
NextPageToken string `json:"nextPageToken,omitempty"`
// Versions: The list of versions.
Versions []*Version `json:"versions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ListVersionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListVersionsResponse
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Metrics: Resource containing usage stats for a given script, based on the
// supplied filter and mask present in the request.
type Metrics struct {
// ActiveUsers: Number of active users.
ActiveUsers []*MetricsValue `json:"activeUsers,omitempty"`
// FailedExecutions: Number of failed executions.
FailedExecutions []*MetricsValue `json:"failedExecutions,omitempty"`
// TotalExecutions: Number of total executions.
TotalExecutions []*MetricsValue `json:"totalExecutions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ActiveUsers") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ActiveUsers") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Metrics) MarshalJSON() ([]byte, error) {
type NoMethod Metrics
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// MetricsValue: Metrics value that holds number of executions counted.
type MetricsValue struct {
// EndTime: Required field indicating the end time of the interval.
EndTime string `json:"endTime,omitempty"`
// StartTime: Required field indicating the start time of the interval.
StartTime string `json:"startTime,omitempty"`
// Value: Indicates the number of executions counted.
Value uint64 `json:"value,omitempty,string"`
// ForceSendFields is a list of field names (e.g. "EndTime") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "EndTime") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *MetricsValue) MarshalJSON() ([]byte, error) {
type NoMethod MetricsValue
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Operation: 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.
type Operation struct {
// Done: 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.
Done bool `json:"done,omitempty"`
// Error: If a `run` call succeeds but the script function (or Apps Script
// itself) throws an exception, this 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.
Error *Status `json:"error,omitempty"`
// Response: If the script function returns successfully, this field contains
// an ExecutionResponse object with the function's return value.
Response googleapi.RawMessage `json:"response,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Done") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Done") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Operation) MarshalJSON() ([]byte, error) {
type NoMethod Operation
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Project: The script project resource.
type Project struct {
// CreateTime: When the script was created.
CreateTime string `json:"createTime,omitempty"`
// Creator: User who originally created the script.
Creator *GoogleAppsScriptTypeUser `json:"creator,omitempty"`
// LastModifyUser: User who last modified the script.
LastModifyUser *GoogleAppsScriptTypeUser `json:"lastModifyUser,omitempty"`
// ParentId: 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.
ParentId string `json:"parentId,omitempty"`
// ScriptId: The script project's Drive ID.
ScriptId string `json:"scriptId,omitempty"`
// Title: The title for the project.
Title string `json:"title,omitempty"`
// UpdateTime: When the script was last updated.
UpdateTime string `json:"updateTime,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Project) MarshalJSON() ([]byte, error) {
type NoMethod Project
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ScriptExecutionResult: The result of an execution.
type ScriptExecutionResult struct {
// ReturnValue: The returned value of the execution.
ReturnValue *Value `json:"returnValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "ReturnValue") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ReturnValue") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ScriptExecutionResult) MarshalJSON() ([]byte, error) {
type NoMethod ScriptExecutionResult
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// ScriptStackTraceElement: A stack trace through the script that shows where
// the execution failed.
type ScriptStackTraceElement struct {
// Function: The name of the function that failed.
Function string `json:"function,omitempty"`
// LineNumber: The line number where the script failed.
LineNumber int64 `json:"lineNumber,omitempty"`
// ForceSendFields is a list of field names (e.g. "Function") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Function") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *ScriptStackTraceElement) MarshalJSON() ([]byte, error) {
type NoMethod ScriptStackTraceElement
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Status: 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.
type Status struct {
// Code: 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.
Code int64 `json:"code,omitempty"`
// Details: An array that contains a single ExecutionError object that provides
// information about the nature of the error.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: 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.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API requests
// with the JSON null value. By default, fields with empty values are omitted
// from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Status) MarshalJSON() ([]byte, error) {
type NoMethod Status
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Struct: `Struct` represents a structured data value, consisting of fields
// which map to dynamically typed values.
type Struct struct {
// Fields: Unordered map of dynamically typed values.
Fields map[string]Value `json:"fields,omitempty"`
// ForceSendFields is a list of field names (e.g. "Fields") to unconditionally
// include in API requests. By default, fields with empty or default values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Fields") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Struct) MarshalJSON() ([]byte, error) {
type NoMethod Struct
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// UpdateDeploymentRequest: Request with deployment information to update an
// existing deployment.
type UpdateDeploymentRequest struct {
// DeploymentConfig: The deployment configuration.
DeploymentConfig *DeploymentConfig `json:"deploymentConfig,omitempty"`
// ForceSendFields is a list of field names (e.g. "DeploymentConfig") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DeploymentConfig") to include in
// API requests with the JSON null value. By default, fields with empty values
// are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *UpdateDeploymentRequest) MarshalJSON() ([]byte, error) {
type NoMethod UpdateDeploymentRequest
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
// Value: `Value` represents a dynamically typed value which is the outcome of
// an executed script.
type Value struct {
// BoolValue: Represents a boolean value.
BoolValue bool `json:"boolValue,omitempty"`
// BytesValue: Represents raw byte values.
BytesValue string `json:"bytesValue,omitempty"`
// DateValue: Represents a date in ms since the epoch.
DateValue int64 `json:"dateValue,omitempty,string"`
// ListValue: Represents a repeated `Value`.
ListValue *ListValue `json:"listValue,omitempty"`
// NullValue: Represents a null value.
//
// Possible values:
// "NULL_VALUE" - Null value.
NullValue string `json:"nullValue,omitempty"`
// NumberValue: Represents a double value.
NumberValue float64 `json:"numberValue,omitempty"`
// ProtoValue: Represents a structured proto value.
ProtoValue googleapi.RawMessage `json:"protoValue,omitempty"`
// StringValue: Represents a string value.
StringValue string `json:"stringValue,omitempty"`
// StructValue: Represents a structured value.
StructValue *Struct `json:"structValue,omitempty"`
// ForceSendFields is a list of field names (e.g. "BoolValue") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "BoolValue") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Value) MarshalJSON() ([]byte, error) {
type NoMethod Value
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
func (s *Value) UnmarshalJSON(data []byte) error {
type NoMethod Value
var s1 struct {
NumberValue gensupport.JSONFloat64 `json:"numberValue"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.NumberValue = float64(s1.NumberValue)
return nil
}
// Version: 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.
type Version struct {
// CreateTime: When the version was created.
CreateTime string `json:"createTime,omitempty"`
// Description: The description for this version.
Description string `json:"description,omitempty"`
// ScriptId: The script project's Drive ID.
ScriptId string `json:"scriptId,omitempty"`
// VersionNumber: The incremental ID that is created by Apps Script when a
// version is created. This is system assigned number and is immutable once
// created.
VersionNumber int64 `json:"versionNumber,omitempty"`
// ServerResponse contains the HTTP response code and headers from the server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreateTime") to
// unconditionally include in API requests. By default, fields with empty or
// default values are omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more
// details.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateTime") to include in API
// requests with the JSON null value. By default, fields with empty values are
// omitted from API requests. See
// https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details.
NullFields []string `json:"-"`
}
func (s *Version) MarshalJSON() ([]byte, error) {
type NoMethod Version
return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields)
}
type ProcessesListCall struct {
s *Service
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// List: List information about processes made by or on behalf of a user, such
// as process type and current status.
func (r *ProcessesService) List() *ProcessesListCall {
c := &ProcessesListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
return c
}
// PageSize sets the optional parameter "pageSize": The maximum number of
// returned processes per page of results. Defaults to 50.
func (c *ProcessesListCall) PageSize(pageSize int64) *ProcessesListCall {
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
return c
}
// PageToken sets the optional parameter "pageToken": The token for continuing
// a previous list request on the next page. This should be set to the value of
// `nextPageToken` from a previous response.
func (c *ProcessesListCall) PageToken(pageToken string) *ProcessesListCall {
c.urlParams_.Set("pageToken", pageToken)
return c
}
// UserProcessFilterDeploymentId sets the optional parameter
// "userProcessFilter.deploymentId": Optional field used to limit returned
// processes to those originating from projects with a specific deployment ID.
func (c *ProcessesListCall) UserProcessFilterDeploymentId(userProcessFilterDeploymentId string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.deploymentId", userProcessFilterDeploymentId)
return c
}
// UserProcessFilterEndTime sets the optional parameter
// "userProcessFilter.endTime": Optional field used to limit returned processes
// to those that completed on or before the given timestamp.
func (c *ProcessesListCall) UserProcessFilterEndTime(userProcessFilterEndTime string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.endTime", userProcessFilterEndTime)
return c
}
// UserProcessFilterFunctionName sets the optional parameter
// "userProcessFilter.functionName": Optional field used to limit returned
// processes to those originating from a script function with the given
// function name.
func (c *ProcessesListCall) UserProcessFilterFunctionName(userProcessFilterFunctionName string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.functionName", userProcessFilterFunctionName)
return c
}
// UserProcessFilterProjectName sets the optional parameter
// "userProcessFilter.projectName": Optional field used to limit returned
// processes to those originating from projects with project names containing a
// specific string.
func (c *ProcessesListCall) UserProcessFilterProjectName(userProcessFilterProjectName string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.projectName", userProcessFilterProjectName)
return c
}
// UserProcessFilterScriptId sets the optional parameter
// "userProcessFilter.scriptId": Optional field used to limit returned
// processes to those originating from projects with a specific script ID.
func (c *ProcessesListCall) UserProcessFilterScriptId(userProcessFilterScriptId string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.scriptId", userProcessFilterScriptId)
return c
}
// UserProcessFilterStartTime sets the optional parameter
// "userProcessFilter.startTime": Optional field used to limit returned
// processes to those that were started on or after the given timestamp.
func (c *ProcessesListCall) UserProcessFilterStartTime(userProcessFilterStartTime string) *ProcessesListCall {
c.urlParams_.Set("userProcessFilter.startTime", userProcessFilterStartTime)
return c
}
// UserProcessFilterStatuses sets the optional parameter
// "userProcessFilter.statuses": Optional field used to limit returned
// processes to those having one of the specified process statuses.
//
// Possible values:
//
// "PROCESS_STATUS_UNSPECIFIED" - Unspecified status.
// "RUNNING" - The process is currently running.
// "PAUSED" - The process has paused.
// "COMPLETED" - The process has completed.
// "CANCELED" - The process was cancelled.
// "FAILED" - The process failed.
// "TIMED_OUT" - The process timed out.
// "UNKNOWN" - Process status unknown.
// "DELAYED" - The process is delayed, waiting for quota.
// "EXECUTION_DISABLED" - AppsScript executions are disabled by Admin.
func (c *ProcessesListCall) UserProcessFilterStatuses(userProcessFilterStatuses ...string) *ProcessesListCall {
c.urlParams_.SetMulti("userProcessFilter.statuses", append([]string{}, userProcessFilterStatuses...))
return c
}
// UserProcessFilterTypes sets the optional parameter
// "userProcessFilter.types": Optional field used to limit returned processes
// to those having one of the specified process types.
//
// Possible values:
//
// "PROCESS_TYPE_UNSPECIFIED" - Unspecified type.
// "ADD_ON" - The process was started from an add-on entry point.
// "EXECUTION_API" - The process was started using the Apps Script API.
// "TIME_DRIVEN" - The process was started from a time-based trigger.
// "TRIGGER" - The process was started from an event-based trigger.
// "WEBAPP" - The process was started from a web app entry point.
// "EDITOR" - The process was started using the Apps Script IDE.
// "SIMPLE_TRIGGER" - The process was started from a G Suite simple trigger.
// "MENU" - The process was started from a G Suite menu item.
// "BATCH_TASK" - The process was started as a task in a batch job.
func (c *ProcessesListCall) UserProcessFilterTypes(userProcessFilterTypes ...string) *ProcessesListCall {
c.urlParams_.SetMulti("userProcessFilter.types", append([]string{}, userProcessFilterTypes...))
return c
}
// UserProcessFilterUserAccessLevels sets the optional parameter
// "userProcessFilter.userAccessLevels": Optional field used to limit returned
// processes to those having one of the specified user access levels.
//
// Possible values:
//
// "USER_ACCESS_LEVEL_UNSPECIFIED" - User access level unspecified
// "NONE" - The user has no access.
// "READ" - The user has read-only access.
// "WRITE" - The user has write access.
// "OWNER" - The user is an owner.
func (c *ProcessesListCall) UserProcessFilterUserAccessLevels(userProcessFilterUserAccessLevels ...string) *ProcessesListCall {
c.urlParams_.SetMulti("userProcessFilter.userAccessLevels", append([]string{}, userProcessFilterUserAccessLevels...))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProcessesListCall) Fields(s ...googleapi.Field) *ProcessesListCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProcessesListCall) IfNoneMatch(entityTag string) *ProcessesListCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProcessesListCall) Context(ctx context.Context) *ProcessesListCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProcessesListCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProcessesListCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/processes")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.processes.list" call.
// Any non-2xx status code is an error. Response headers are in either
// *ListUserProcessesResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *ProcessesListCall) Do(opts ...googleapi.CallOption) (*ListUserProcessesResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &ListUserProcessesResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func (c *ProcessesListCall) Pages(ctx context.Context, f func(*ListUserProcessesResponse) error) error {
c.ctx_ = ctx
defer c.PageToken(c.urlParams_.Get("pageToken"))
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.PageToken(x.NextPageToken)
}
}
type ProcessesListScriptProcessesCall struct {
s *Service
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// ListScriptProcesses: List information about a script's executed processes,
// such as process type and current status.
func (r *ProcessesService) ListScriptProcesses() *ProcessesListScriptProcessesCall {
c := &ProcessesListScriptProcessesCall{s: r.s, urlParams_: make(gensupport.URLParams)}
return c
}
// PageSize sets the optional parameter "pageSize": The maximum number of
// returned processes per page of results. Defaults to 50.
func (c *ProcessesListScriptProcessesCall) PageSize(pageSize int64) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
return c
}
// PageToken sets the optional parameter "pageToken": The token for continuing
// a previous list request on the next page. This should be set to the value of
// `nextPageToken` from a previous response.
func (c *ProcessesListScriptProcessesCall) PageToken(pageToken string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("pageToken", pageToken)
return c
}
// ScriptId sets the optional parameter "scriptId": The script ID of the
// project whose processes are listed.
func (c *ProcessesListScriptProcessesCall) ScriptId(scriptId string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("scriptId", scriptId)
return c
}
// ScriptProcessFilterDeploymentId sets the optional parameter
// "scriptProcessFilter.deploymentId": Optional field used to limit returned
// processes to those originating from projects with a specific deployment ID.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterDeploymentId(scriptProcessFilterDeploymentId string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("scriptProcessFilter.deploymentId", scriptProcessFilterDeploymentId)
return c
}
// ScriptProcessFilterEndTime sets the optional parameter
// "scriptProcessFilter.endTime": Optional field used to limit returned
// processes to those that completed on or before the given timestamp.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterEndTime(scriptProcessFilterEndTime string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("scriptProcessFilter.endTime", scriptProcessFilterEndTime)
return c
}
// ScriptProcessFilterFunctionName sets the optional parameter
// "scriptProcessFilter.functionName": Optional field used to limit returned
// processes to those originating from a script function with the given
// function name.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterFunctionName(scriptProcessFilterFunctionName string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("scriptProcessFilter.functionName", scriptProcessFilterFunctionName)
return c
}
// ScriptProcessFilterStartTime sets the optional parameter
// "scriptProcessFilter.startTime": Optional field used to limit returned
// processes to those that were started on or after the given timestamp.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterStartTime(scriptProcessFilterStartTime string) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("scriptProcessFilter.startTime", scriptProcessFilterStartTime)
return c
}
// ScriptProcessFilterStatuses sets the optional parameter
// "scriptProcessFilter.statuses": Optional field used to limit returned
// processes to those having one of the specified process statuses.
//
// Possible values:
//
// "PROCESS_STATUS_UNSPECIFIED" - Unspecified status.
// "RUNNING" - The process is currently running.
// "PAUSED" - The process has paused.
// "COMPLETED" - The process has completed.
// "CANCELED" - The process was cancelled.
// "FAILED" - The process failed.
// "TIMED_OUT" - The process timed out.
// "UNKNOWN" - Process status unknown.
// "DELAYED" - The process is delayed, waiting for quota.
// "EXECUTION_DISABLED" - AppsScript executions are disabled by Admin.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterStatuses(scriptProcessFilterStatuses ...string) *ProcessesListScriptProcessesCall {
c.urlParams_.SetMulti("scriptProcessFilter.statuses", append([]string{}, scriptProcessFilterStatuses...))
return c
}
// ScriptProcessFilterTypes sets the optional parameter
// "scriptProcessFilter.types": Optional field used to limit returned processes
// to those having one of the specified process types.
//
// Possible values:
//
// "PROCESS_TYPE_UNSPECIFIED" - Unspecified type.
// "ADD_ON" - The process was started from an add-on entry point.
// "EXECUTION_API" - The process was started using the Apps Script API.
// "TIME_DRIVEN" - The process was started from a time-based trigger.
// "TRIGGER" - The process was started from an event-based trigger.
// "WEBAPP" - The process was started from a web app entry point.
// "EDITOR" - The process was started using the Apps Script IDE.
// "SIMPLE_TRIGGER" - The process was started from a G Suite simple trigger.
// "MENU" - The process was started from a G Suite menu item.
// "BATCH_TASK" - The process was started as a task in a batch job.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterTypes(scriptProcessFilterTypes ...string) *ProcessesListScriptProcessesCall {
c.urlParams_.SetMulti("scriptProcessFilter.types", append([]string{}, scriptProcessFilterTypes...))
return c
}
// ScriptProcessFilterUserAccessLevels sets the optional parameter
// "scriptProcessFilter.userAccessLevels": Optional field used to limit
// returned processes to those having one of the specified user access levels.
//
// Possible values:
//
// "USER_ACCESS_LEVEL_UNSPECIFIED" - User access level unspecified
// "NONE" - The user has no access.
// "READ" - The user has read-only access.
// "WRITE" - The user has write access.
// "OWNER" - The user is an owner.
func (c *ProcessesListScriptProcessesCall) ScriptProcessFilterUserAccessLevels(scriptProcessFilterUserAccessLevels ...string) *ProcessesListScriptProcessesCall {
c.urlParams_.SetMulti("scriptProcessFilter.userAccessLevels", append([]string{}, scriptProcessFilterUserAccessLevels...))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProcessesListScriptProcessesCall) Fields(s ...googleapi.Field) *ProcessesListScriptProcessesCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProcessesListScriptProcessesCall) IfNoneMatch(entityTag string) *ProcessesListScriptProcessesCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProcessesListScriptProcessesCall) Context(ctx context.Context) *ProcessesListScriptProcessesCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProcessesListScriptProcessesCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProcessesListScriptProcessesCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/processes:listScriptProcesses")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.processes.listScriptProcesses" call.
// Any non-2xx status code is an error. Response headers are in either
// *ListScriptProcessesResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *ProcessesListScriptProcessesCall) Do(opts ...googleapi.CallOption) (*ListScriptProcessesResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &ListScriptProcessesResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func (c *ProcessesListScriptProcessesCall) Pages(ctx context.Context, f func(*ListScriptProcessesResponse) error) error {
c.ctx_ = ctx
defer c.PageToken(c.urlParams_.Get("pageToken"))
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.PageToken(x.NextPageToken)
}
}
type ProjectsCreateCall struct {
s *Service
createprojectrequest *CreateProjectRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Creates a new, empty script project with no script files and a base
// manifest file.
func (r *ProjectsService) Create(createprojectrequest *CreateProjectRequest) *ProjectsCreateCall {
c := &ProjectsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.createprojectrequest = createprojectrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsCreateCall) Fields(s ...googleapi.Field) *ProjectsCreateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsCreateCall) Context(ctx context.Context) *ProjectsCreateCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsCreateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsCreateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.createprojectrequest)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.create" call.
// Any non-2xx status code is an error. Response headers are in either
// *Project.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsCreateCall) Do(opts ...googleapi.CallOption) (*Project, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Project{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsGetCall struct {
s *Service
scriptId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Gets a script project's metadata.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsService) Get(scriptId string) *ProjectsGetCall {
c := &ProjectsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsGetCall) Fields(s ...googleapi.Field) *ProjectsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsGetCall) IfNoneMatch(entityTag string) *ProjectsGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsGetCall) Context(ctx context.Context) *ProjectsGetCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.get" call.
// Any non-2xx status code is an error. Response headers are in either
// *Project.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsGetCall) Do(opts ...googleapi.CallOption) (*Project, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Project{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsGetContentCall struct {
s *Service
scriptId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// GetContent: Gets the content of the script project, including the code
// source and metadata for each script file.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsService) GetContent(scriptId string) *ProjectsGetContentCall {
c := &ProjectsGetContentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
return c
}
// VersionNumber sets the optional parameter "versionNumber": The version
// number of the project to retrieve. If not provided, the project's HEAD
// version is returned.
func (c *ProjectsGetContentCall) VersionNumber(versionNumber int64) *ProjectsGetContentCall {
c.urlParams_.Set("versionNumber", fmt.Sprint(versionNumber))
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsGetContentCall) Fields(s ...googleapi.Field) *ProjectsGetContentCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsGetContentCall) IfNoneMatch(entityTag string) *ProjectsGetContentCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsGetContentCall) Context(ctx context.Context) *ProjectsGetContentCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsGetContentCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsGetContentCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/content")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.getContent" call.
// Any non-2xx status code is an error. Response headers are in either
// *Content.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsGetContentCall) Do(opts ...googleapi.CallOption) (*Content, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Content{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsGetMetricsCall struct {
s *Service
scriptId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// GetMetrics: Get metrics data for scripts, such as number of executions and
// active users.
//
// - scriptId: Required field indicating the script to get metrics for.
func (r *ProjectsService) GetMetrics(scriptId string) *ProjectsGetMetricsCall {
c := &ProjectsGetMetricsCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
return c
}
// MetricsFilterDeploymentId sets the optional parameter
// "metricsFilter.deploymentId": Optional field indicating a specific
// deployment to retrieve metrics from.
func (c *ProjectsGetMetricsCall) MetricsFilterDeploymentId(metricsFilterDeploymentId string) *ProjectsGetMetricsCall {
c.urlParams_.Set("metricsFilter.deploymentId", metricsFilterDeploymentId)
return c
}
// MetricsGranularity sets the optional parameter "metricsGranularity":
// Required field indicating what granularity of metrics are returned.
//
// Possible values:
//
// "UNSPECIFIED_GRANULARITY" - Default metric granularity used to query no
//
// metrics.
//
// "WEEKLY" - Represents weekly metrics.
// "DAILY" - Represents daily metrics over a period of 7 days.
func (c *ProjectsGetMetricsCall) MetricsGranularity(metricsGranularity string) *ProjectsGetMetricsCall {
c.urlParams_.Set("metricsGranularity", metricsGranularity)
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsGetMetricsCall) Fields(s ...googleapi.Field) *ProjectsGetMetricsCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsGetMetricsCall) IfNoneMatch(entityTag string) *ProjectsGetMetricsCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsGetMetricsCall) Context(ctx context.Context) *ProjectsGetMetricsCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsGetMetricsCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsGetMetricsCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/metrics")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.getMetrics" call.
// Any non-2xx status code is an error. Response headers are in either
// *Metrics.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsGetMetricsCall) Do(opts ...googleapi.CallOption) (*Metrics, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Metrics{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsUpdateContentCall struct {
s *Service
scriptId string
content *Content
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// UpdateContent: Updates the content of the specified script project. This
// content is stored as the HEAD version, and is used when the script is
// executed as a trigger, in the script editor, in add-on preview mode, or as a
// web app or Apps Script API in development mode. This clears all the existing
// files in the project.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsService) UpdateContent(scriptId string, content *Content) *ProjectsUpdateContentCall {
c := &ProjectsUpdateContentCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.content = content
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsUpdateContentCall) Fields(s ...googleapi.Field) *ProjectsUpdateContentCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsUpdateContentCall) Context(ctx context.Context) *ProjectsUpdateContentCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsUpdateContentCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsUpdateContentCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.content)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/content")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("PUT", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.updateContent" call.
// Any non-2xx status code is an error. Response headers are in either
// *Content.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsUpdateContentCall) Do(opts ...googleapi.CallOption) (*Content, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Content{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsDeploymentsCreateCall struct {
s *Service
scriptId string
deploymentconfig *DeploymentConfig
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Creates a deployment of an Apps Script project.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsDeploymentsService) Create(scriptId string, deploymentconfig *DeploymentConfig) *ProjectsDeploymentsCreateCall {
c := &ProjectsDeploymentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.deploymentconfig = deploymentconfig
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsDeploymentsCreateCall) Fields(s ...googleapi.Field) *ProjectsDeploymentsCreateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsDeploymentsCreateCall) Context(ctx context.Context) *ProjectsDeploymentsCreateCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsDeploymentsCreateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsDeploymentsCreateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.deploymentconfig)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/deployments")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.deployments.create" call.
// Any non-2xx status code is an error. Response headers are in either
// *Deployment.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsDeploymentsCreateCall) Do(opts ...googleapi.CallOption) (*Deployment, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Deployment{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsDeploymentsDeleteCall struct {
s *Service
scriptId string
deploymentId string
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Delete: Deletes a deployment of an Apps Script project.
//
// - deploymentId: The deployment ID to be undeployed.
// - scriptId: The script project's Drive ID.
func (r *ProjectsDeploymentsService) Delete(scriptId string, deploymentId string) *ProjectsDeploymentsDeleteCall {
c := &ProjectsDeploymentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.deploymentId = deploymentId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsDeploymentsDeleteCall) Fields(s ...googleapi.Field) *ProjectsDeploymentsDeleteCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsDeploymentsDeleteCall) Context(ctx context.Context) *ProjectsDeploymentsDeleteCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsDeploymentsDeleteCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsDeploymentsDeleteCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/deployments/{deploymentId}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("DELETE", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
"deploymentId": c.deploymentId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.deployments.delete" call.
// Any non-2xx status code is an error. Response headers are in either
// *Empty.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsDeploymentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Empty{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsDeploymentsGetCall struct {
s *Service
scriptId string
deploymentId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Gets a deployment of an Apps Script project.
//
// - deploymentId: The deployment ID.
// - scriptId: The script project's Drive ID.
func (r *ProjectsDeploymentsService) Get(scriptId string, deploymentId string) *ProjectsDeploymentsGetCall {
c := &ProjectsDeploymentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.deploymentId = deploymentId
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsDeploymentsGetCall) Fields(s ...googleapi.Field) *ProjectsDeploymentsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsDeploymentsGetCall) IfNoneMatch(entityTag string) *ProjectsDeploymentsGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsDeploymentsGetCall) Context(ctx context.Context) *ProjectsDeploymentsGetCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsDeploymentsGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsDeploymentsGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/deployments/{deploymentId}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
"deploymentId": c.deploymentId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.deployments.get" call.
// Any non-2xx status code is an error. Response headers are in either
// *Deployment.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsDeploymentsGetCall) Do(opts ...googleapi.CallOption) (*Deployment, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Deployment{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsDeploymentsListCall struct {
s *Service
scriptId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// List: Lists the deployments of an Apps Script project.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsDeploymentsService) List(scriptId string) *ProjectsDeploymentsListCall {
c := &ProjectsDeploymentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
return c
}
// PageSize sets the optional parameter "pageSize": The maximum number of
// deployments on each returned page. Defaults to 50.
func (c *ProjectsDeploymentsListCall) PageSize(pageSize int64) *ProjectsDeploymentsListCall {
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
return c
}
// PageToken sets the optional parameter "pageToken": The token for continuing
// a previous list request on the next page. This should be set to the value of
// `nextPageToken` from a previous response.
func (c *ProjectsDeploymentsListCall) PageToken(pageToken string) *ProjectsDeploymentsListCall {
c.urlParams_.Set("pageToken", pageToken)
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsDeploymentsListCall) Fields(s ...googleapi.Field) *ProjectsDeploymentsListCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsDeploymentsListCall) IfNoneMatch(entityTag string) *ProjectsDeploymentsListCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsDeploymentsListCall) Context(ctx context.Context) *ProjectsDeploymentsListCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsDeploymentsListCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsDeploymentsListCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/deployments")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.deployments.list" call.
// Any non-2xx status code is an error. Response headers are in either
// *ListDeploymentsResponse.ServerResponse.Header or (if a response was
// returned at all) in error.(*googleapi.Error).Header. Use
// googleapi.IsNotModified to check whether the returned error was because
// http.StatusNotModified was returned.
func (c *ProjectsDeploymentsListCall) Do(opts ...googleapi.CallOption) (*ListDeploymentsResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &ListDeploymentsResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func (c *ProjectsDeploymentsListCall) Pages(ctx context.Context, f func(*ListDeploymentsResponse) error) error {
c.ctx_ = ctx
defer c.PageToken(c.urlParams_.Get("pageToken"))
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.PageToken(x.NextPageToken)
}
}
type ProjectsDeploymentsUpdateCall struct {
s *Service
scriptId string
deploymentId string
updatedeploymentrequest *UpdateDeploymentRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Update: Updates a deployment of an Apps Script project.
//
// - deploymentId: The deployment ID for this deployment.
// - scriptId: The script project's Drive ID.
func (r *ProjectsDeploymentsService) Update(scriptId string, deploymentId string, updatedeploymentrequest *UpdateDeploymentRequest) *ProjectsDeploymentsUpdateCall {
c := &ProjectsDeploymentsUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.deploymentId = deploymentId
c.updatedeploymentrequest = updatedeploymentrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsDeploymentsUpdateCall) Fields(s ...googleapi.Field) *ProjectsDeploymentsUpdateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsDeploymentsUpdateCall) Context(ctx context.Context) *ProjectsDeploymentsUpdateCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsDeploymentsUpdateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsDeploymentsUpdateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.updatedeploymentrequest)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/deployments/{deploymentId}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("PUT", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
"deploymentId": c.deploymentId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.deployments.update" call.
// Any non-2xx status code is an error. Response headers are in either
// *Deployment.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsDeploymentsUpdateCall) Do(opts ...googleapi.CallOption) (*Deployment, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Deployment{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsVersionsCreateCall struct {
s *Service
scriptId string
version *Version
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Create: Creates a new immutable version using the current code, with a
// unique version number.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsVersionsService) Create(scriptId string, version *Version) *ProjectsVersionsCreateCall {
c := &ProjectsVersionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.version = version
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsVersionsCreateCall) Fields(s ...googleapi.Field) *ProjectsVersionsCreateCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsVersionsCreateCall) Context(ctx context.Context) *ProjectsVersionsCreateCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsVersionsCreateCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsVersionsCreateCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.version)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/versions")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.versions.create" call.
// Any non-2xx status code is an error. Response headers are in either
// *Version.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsVersionsCreateCall) Do(opts ...googleapi.CallOption) (*Version, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Version{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsVersionsGetCall struct {
s *Service
scriptId string
versionNumber int64
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// Get: Gets a version of a script project.
//
// - scriptId: The script project's Drive ID.
// - versionNumber: The version number.
func (r *ProjectsVersionsService) Get(scriptId string, versionNumber int64) *ProjectsVersionsGetCall {
c := &ProjectsVersionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.versionNumber = versionNumber
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsVersionsGetCall) Fields(s ...googleapi.Field) *ProjectsVersionsGetCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsVersionsGetCall) IfNoneMatch(entityTag string) *ProjectsVersionsGetCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsVersionsGetCall) Context(ctx context.Context) *ProjectsVersionsGetCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsVersionsGetCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsVersionsGetCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/versions/{versionNumber}")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
"versionNumber": strconv.FormatInt(c.versionNumber, 10),
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.versions.get" call.
// Any non-2xx status code is an error. Response headers are in either
// *Version.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ProjectsVersionsGetCall) Do(opts ...googleapi.CallOption) (*Version, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Version{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
type ProjectsVersionsListCall struct {
s *Service
scriptId string
urlParams_ gensupport.URLParams
ifNoneMatch_ string
ctx_ context.Context
header_ http.Header
}
// List: List the versions of a script project.
//
// - scriptId: The script project's Drive ID.
func (r *ProjectsVersionsService) List(scriptId string) *ProjectsVersionsListCall {
c := &ProjectsVersionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
return c
}
// PageSize sets the optional parameter "pageSize": The maximum number of
// versions on each returned page. Defaults to 50.
func (c *ProjectsVersionsListCall) PageSize(pageSize int64) *ProjectsVersionsListCall {
c.urlParams_.Set("pageSize", fmt.Sprint(pageSize))
return c
}
// PageToken sets the optional parameter "pageToken": The token for continuing
// a previous list request on the next page. This should be set to the value of
// `nextPageToken` from a previous response.
func (c *ProjectsVersionsListCall) PageToken(pageToken string) *ProjectsVersionsListCall {
c.urlParams_.Set("pageToken", pageToken)
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ProjectsVersionsListCall) Fields(s ...googleapi.Field) *ProjectsVersionsListCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// IfNoneMatch sets an optional parameter which makes the operation fail if the
// object's ETag matches the given value. This is useful for getting updates
// only after the object has changed since the last request.
func (c *ProjectsVersionsListCall) IfNoneMatch(entityTag string) *ProjectsVersionsListCall {
c.ifNoneMatch_ = entityTag
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ProjectsVersionsListCall) Context(ctx context.Context) *ProjectsVersionsListCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ProjectsVersionsListCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ProjectsVersionsListCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_)
if c.ifNoneMatch_ != "" {
reqHeaders.Set("If-None-Match", c.ifNoneMatch_)
}
var body io.Reader = nil
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/projects/{scriptId}/versions")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("GET", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.projects.versions.list" call.
// Any non-2xx status code is an error. Response headers are in either
// *ListVersionsResponse.ServerResponse.Header or (if a response was returned
// at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to
// check whether the returned error was because http.StatusNotModified was
// returned.
func (c *ProjectsVersionsListCall) Do(opts ...googleapi.CallOption) (*ListVersionsResponse, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &ListVersionsResponse{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}
// Pages invokes f for each page of results.
// A non-nil error returned from f will halt the iteration.
// The provided context supersedes any context provided to the Context method.
func (c *ProjectsVersionsListCall) Pages(ctx context.Context, f func(*ListVersionsResponse) error) error {
c.ctx_ = ctx
defer c.PageToken(c.urlParams_.Get("pageToken"))
for {
x, err := c.Do()
if err != nil {
return err
}
if err := f(x); err != nil {
return err
}
if x.NextPageToken == "" {
return nil
}
c.PageToken(x.NextPageToken)
}
}
type ScriptsRunCall struct {
s *Service
scriptId string
executionrequest *ExecutionRequest
urlParams_ gensupport.URLParams
ctx_ context.Context
header_ http.Header
}
// Run: Runs a function in an Apps Script project. The script project must be
// deployed for use with the Apps Script API and the calling application must
// share the same Cloud Platform project. This method requires authorization
// with an OAuth 2.0 token that includes at least one of the scopes listed in
// the Authorization (#authorization-scopes) 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 script
// project **Overview** page and scroll down to "Project OAuth Scopes." The
// error `403, PERMISSION_DENIED: The caller does not have permission`
// indicates that the Cloud Platform project used to authorize the request is
// not the same as the one used by the script.
//
// - scriptId: The script ID of the script to be executed. Find the script ID
// on the **Project settings** page under "IDs." As multiple executable APIs
// can be deployed in new IDE for same script, this field should be populated
// with DeploymentID generated while deploying in new IDE instead of script
// ID.
func (r *ScriptsService) Run(scriptId string, executionrequest *ExecutionRequest) *ScriptsRunCall {
c := &ScriptsRunCall{s: r.s, urlParams_: make(gensupport.URLParams)}
c.scriptId = scriptId
c.executionrequest = executionrequest
return c
}
// Fields allows partial responses to be retrieved. See
// https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more
// details.
func (c *ScriptsRunCall) Fields(s ...googleapi.Field) *ScriptsRunCall {
c.urlParams_.Set("fields", googleapi.CombineFields(s))
return c
}
// Context sets the context to be used in this call's Do method.
func (c *ScriptsRunCall) Context(ctx context.Context) *ScriptsRunCall {
c.ctx_ = ctx
return c
}
// Header returns a http.Header that can be modified by the caller to add
// headers to the request.
func (c *ScriptsRunCall) Header() http.Header {
if c.header_ == nil {
c.header_ = make(http.Header)
}
return c.header_
}
func (c *ScriptsRunCall) doRequest(alt string) (*http.Response, error) {
reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_)
var body io.Reader = nil
body, err := googleapi.WithoutDataWrapper.JSONReader(c.executionrequest)
if err != nil {
return nil, err
}
c.urlParams_.Set("alt", alt)
c.urlParams_.Set("prettyPrint", "false")
urls := googleapi.ResolveRelative(c.s.BasePath, "v1/scripts/{scriptId}:run")
urls += "?" + c.urlParams_.Encode()
req, err := http.NewRequest("POST", urls, body)
if err != nil {
return nil, err
}
req.Header = reqHeaders
googleapi.Expand(req.URL, map[string]string{
"scriptId": c.scriptId,
})
return gensupport.SendRequest(c.ctx_, c.s.client, req)
}
// Do executes the "script.scripts.run" call.
// Any non-2xx status code is an error. Response headers are in either
// *Operation.ServerResponse.Header or (if a response was returned at all) in
// error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check
// whether the returned error was because http.StatusNotModified was returned.
func (c *ScriptsRunCall) Do(opts ...googleapi.CallOption) (*Operation, error) {
gensupport.SetOptions(c.urlParams_, opts...)
res, err := c.doRequest("json")
if res != nil && res.StatusCode == http.StatusNotModified {
if res.Body != nil {
res.Body.Close()
}
return nil, gensupport.WrapError(&googleapi.Error{
Code: res.StatusCode,
Header: res.Header,
})
}
if err != nil {
return nil, err
}
defer googleapi.CloseBody(res)
if err := googleapi.CheckResponse(res); err != nil {
return nil, gensupport.WrapError(err)
}
ret := &Operation{
ServerResponse: googleapi.ServerResponse{
Header: res.Header,
HTTPStatusCode: res.StatusCode,
},
}
target := &ret
if err := gensupport.DecodeResponse(target, res); err != nil {
return nil, err
}
return ret, nil
}