{
 "kind": "discovery#restDescription",
 "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/FcNWZezE05ypidUunx03uCyJR70\"",
 "discoveryVersion": "v1",
 "id": "script:v1",
 "name": "script",
 "version": "v1",
 "revision": "20160801",
 "title": "Google Apps Script Execution API",
 "description": "Executes Google Apps Script projects.",
 "ownerDomain": "google.com",
 "ownerName": "Google",
 "icons": {
  "x16": "http://www.google.com/images/icons/product/search-16.gif",
  "x32": "http://www.google.com/images/icons/product/search-32.gif"
 },
 "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/scripts/run",
 "protocol": "rest",
 "baseUrl": "https://script.googleapis.com/",
 "basePath": "",
 "rootUrl": "https://script.googleapis.com/",
 "servicePath": "",
 "batchPath": "batch",
 "parameters": {
  "access_token": {
   "type": "string",
   "description": "OAuth access token.",
   "location": "query"
  },
  "alt": {
   "type": "string",
   "description": "Data format for response.",
   "default": "json",
   "enumDescriptions": [
    "Responses with Content-Type of application/json",
    "Media download with context-dependent Content-Type",
    "Responses with Content-Type of application/x-protobuf"
   ],
   "location": "query"
  },
  "bearer_token": {
   "type": "string",
   "description": "OAuth bearer token.",
   "location": "query"
  },
  "callback": {
   "type": "string",
   "description": "JSONP",
   "location": "query"
  },
  "fields": {
   "type": "string",
   "description": "Selector specifying which fields to include in a partial response.",
   "location": "query"
  },
  "key": {
   "type": "string",
   "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
   "location": "query"
  },
  "oauth_token": {
   "type": "string",
   "description": "OAuth 2.0 token for the current user.",
   "location": "query"
  },
  "pp": {
   "type": "boolean",
   "description": "Pretty-print response.",
   "default": "true",
   "location": "query"
  },
  "prettyPrint": {
   "type": "boolean",
   "description": "Returns response with indentations and line breaks.",
   "default": "true",
   "location": "query"
  },
  "quotaUser": {
   "type": "string",
   "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
   "location": "query"
  },
  "upload_protocol": {
   "type": "string",
   "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
   "location": "query"
  },
  "uploadType": {
   "type": "string",
   "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
   "location": "query"
  },
  "$.xgafv": {
   "type": "string",
   "description": "V1 error format.",
   "enumDescriptions": [
    "v1 error format",
    "v2 error format"
   ],
   "location": "query"
  }
 },
 "auth": {
  "oauth2": {
   "scopes": {
    "https://mail.google.com/": {
     "description": "View and manage your mail"
    },
    "https://www.google.com/calendar/feeds": {
     "description": "Manage your calendars"
    },
    "https://www.google.com/m8/feeds": {
     "description": "Manage your contacts"
    },
    "https://www.googleapis.com/auth/admin.directory.group": {
     "description": "View and manage the provisioning of groups on your domain"
    },
    "https://www.googleapis.com/auth/admin.directory.user": {
     "description": "View and manage the provisioning of users on your domain"
    },
    "https://www.googleapis.com/auth/drive": {
     "description": "View and manage the files in your Google Drive"
    },
    "https://www.googleapis.com/auth/forms": {
     "description": "View and manage your forms in Google Drive"
    },
    "https://www.googleapis.com/auth/forms.currentonly": {
     "description": "View and manage forms that this application has been installed in"
    },
    "https://www.googleapis.com/auth/groups": {
     "description": "View and manage your Google Groups"
    },
    "https://www.googleapis.com/auth/spreadsheets": {
     "description": "View and manage your spreadsheets in Google Drive"
    },
    "https://www.googleapis.com/auth/userinfo.email": {
     "description": "View your email address"
    }
   }
  }
 },
 "schemas": {
  "ExecutionRequest": {
   "id": "ExecutionRequest",
   "type": "object",
   "description": "A request to run the function in a script. The script is identified by the specified `script_id`. Executing a function on a script will return results based on the implementation of the script.",
   "properties": {
    "function": {
     "type": "string",
     "description": "The name of the function to execute in the given script. The name does not include parentheses or parameters."
    },
    "parameters": {
     "type": "array",
     "description": "The parameters to be passed to the function being executed. The type for each parameter should match the expected type in Apps Script. Parameters cannot be Apps Script-specific objects (such as a `Document` or `Calendar`); they can only be primitive types such as a `string`, `number`, `array`, `object`, or `boolean`. Optional.",
     "items": {
      "type": "any"
     }
    },
    "sessionState": {
     "type": "string",
     "description": "This field is not used."
    },
    "devMode": {
     "type": "boolean",
     "description": "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 Execution API. Optional; default is `false`."
    }
   }
  },
  "Operation": {
   "id": "Operation",
   "type": "object",
   "description": "The response will not arrive until the function finishes executing. The maximum runtime is listed in the guide to [limitations in Apps Script](https://developers.google.com/apps-script/guides/services/quotas#current_limitations).\nIf the script function returns successfully, the `response` field will contain an `ExecutionResponse` object with the function's return value in the object's `result` field.\n\nIf the script function (or Apps Script itself) throws an exception, the `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error.\n\nIf the `run` call itself fails (for example, because of a malformed request or an authorization error), the method will return an HTTP response code in the 4XX range with a different format for the response body. Client libraries will automatically convert a 4XX response into an exception class.",
   "properties": {
    "name": {
     "type": "string",
     "description": "This field is not used."
    },
    "metadata": {
     "type": "object",
     "description": "This field is not used.",
     "additionalProperties": {
      "type": "any",
      "description": "Properties of the object. Contains field @type with type URL."
     }
    },
    "done": {
     "type": "boolean",
     "description": "This field is not used."
    },
    "error": {
     "$ref": "Status",
     "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, this field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single `ExecutionError` object that provides information about the nature of the error."
    },
    "response": {
     "type": "object",
     "description": "If the script function returns successfully, this field will contain an `ExecutionResponse` object with the function's return value as the object's `result` field.",
     "additionalProperties": {
      "type": "any",
      "description": "Properties of the object. Contains field @type with type URL."
     }
    }
   }
  },
  "Status": {
   "id": "Status",
   "type": "object",
   "description": "If a `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's `error` field will contain this `Status` object.",
   "properties": {
    "code": {
     "type": "integer",
     "description": "The status code, which should be an enum value of google.rpc.Code.",
     "format": "int32"
    },
    "message": {
     "type": "string",
     "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client."
    },
    "details": {
     "type": "array",
     "description": "An array that contains a single `ExecutionError` object that provides information about the nature of the error.",
     "items": {
      "type": "object",
      "additionalProperties": {
       "type": "any",
       "description": "Properties of the object. Contains field @type with type URL."
      }
     }
    }
   }
  },
  "ExecutionError": {
   "id": "ExecutionError",
   "type": "object",
   "description": "An object that provides information about the nature of an error in the Apps Script Execution API. If an `run` call succeeds but the script function (or Apps Script itself) throws an exception, the response body's `error` field will contain a `Status` object. The `Status` object's `details` field will contain an array with a single one of these `ExecutionError` objects.",
   "properties": {
    "scriptStackTraceElements": {
     "type": "array",
     "description": "An array of objects that provide a stack trace through the script to show where the execution failed, with the deepest call first.",
     "items": {
      "$ref": "ScriptStackTraceElement"
     }
    },
    "errorMessage": {
     "type": "string",
     "description": "The error message thrown by Apps Script, usually localized into the user's language."
    },
    "errorType": {
     "type": "string",
     "description": "The error type, for example `TypeError` or `ReferenceError`. If the error type is unavailable, this field is not included."
    }
   }
  },
  "ScriptStackTraceElement": {
   "id": "ScriptStackTraceElement",
   "type": "object",
   "description": "A stack trace through the script that shows where the execution failed.",
   "properties": {
    "function": {
     "type": "string",
     "description": "The name of the function that failed."
    },
    "lineNumber": {
     "type": "integer",
     "description": "The line number where the script failed.",
     "format": "int32"
    }
   }
  },
  "ExecutionResponse": {
   "id": "ExecutionResponse",
   "type": "object",
   "description": "An object that provides the return value of a function executed through the Apps Script Execution API. If an `run` call succeeds and the script function returns successfully, the response body's `response` field will contain this `ExecutionResponse` object.",
   "properties": {
    "result": {
     "type": "any",
     "description": "The return value of the script function. The type will match the type returned in Apps Script. Functions called through the Execution API cannot return Apps Script-specific objects (such as a `Document` or `Calendar`); they can only return primitive types such as a `string`, `number`, `array`, `object`, or `boolean`."
    },
    "status": {
     "type": "string",
     "enum": [
      "SUCCESS",
      "CANCELED"
     ]
    }
   }
  }
 },
 "resources": {
  "scripts": {
   "methods": {
    "run": {
     "id": "script.scripts.run",
     "path": "v1/scripts/{scriptId}:run",
     "httpMethod": "POST",
     "description": "Runs a function in an Apps Script project that has been deployed for use with the Apps Script Execution API. This method requires authorization with an OAuth 2.0 token that includes at least one of the scopes listed in the [Authentication](#authentication) section; script projects that do not require authorization cannot be executed through this API. To find the correct scopes to include in the authentication token, open the project in the script editor, then select **File \u003e Project properties** and click the **Scopes** tab.",
     "parameters": {
      "scriptId": {
       "type": "string",
       "description": "The project key of the script to be executed. To find the project key, open the project in the script editor, then select **File \u003e Project properties**.",
       "required": true,
       "location": "path"
      }
     },
     "parameterOrder": [
      "scriptId"
     ],
     "request": {
      "$ref": "ExecutionRequest"
     },
     "response": {
      "$ref": "Operation"
     },
     "scopes": [
      "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/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/spreadsheets",
      "https://www.googleapis.com/auth/userinfo.email"
     ]
    }
   }
  }
 }
}
