@maxim_mazurok/gapi.client.script-v1 v0.0.20250602
TypeScript typings for Apps Script API v1
Manages and executes Google Apps Script projects. For detailed description please check documentation.
Installing
Install typings for Apps Script API:
npm install @types/gapi.client.script-v1 --save-devUsage
You need to initialize Google API client in your code:
gapi.load('client', () => {
// now we can use gapi.client
// ...
});Then load api client wrapper:
gapi.client.load(
'https://script.googleapis.com/$discovery/rest?version=v1',
() => {
// now we can use:
// gapi.client.script
},
);// Deprecated, use discovery document URL, see https://github.com/google/google-api-javascript-client/blob/master/docs/reference.md#----gapiclientloadname----version----callback--
gapi.client.load('script', 'v1', () => {
// now we can use:
// gapi.client.script
});Don't forget to authenticate your client before sending any request to resources:
// declare client_id registered in Google Developers Console
var client_id = '',
scope = [
// Read, compose, send, and permanently delete all your email from Gmail
'https://mail.google.com/',
// See, edit, share, and permanently delete all the calendars you can access using Google Calendar
'https://www.google.com/calendar/feeds',
// See, edit, download, and permanently delete your contacts
'https://www.google.com/m8/feeds',
// View and manage the provisioning of groups on your domain
'https://www.googleapis.com/auth/admin.directory.group',
// View and manage the provisioning of users on your domain
'https://www.googleapis.com/auth/admin.directory.user',
// See, edit, create, and delete all your Google Docs documents
'https://www.googleapis.com/auth/documents',
// See, edit, create, and delete all of your Google Drive files
'https://www.googleapis.com/auth/drive',
// View and manage your forms in Google Drive
'https://www.googleapis.com/auth/forms',
// View and manage forms that this application has been installed in
'https://www.googleapis.com/auth/forms.currentonly',
// View and manage your Google Groups
'https://www.googleapis.com/auth/groups',
// Create and update Google Apps Script deployments
'https://www.googleapis.com/auth/script.deployments',
// View Google Apps Script deployments
'https://www.googleapis.com/auth/script.deployments.readonly',
// View Google Apps Script project's metrics
'https://www.googleapis.com/auth/script.metrics',
// View Google Apps Script processes
'https://www.googleapis.com/auth/script.processes',
// Create and update Google Apps Script projects
'https://www.googleapis.com/auth/script.projects',
// View Google Apps Script projects
'https://www.googleapis.com/auth/script.projects.readonly',
// See, edit, create, and delete all your Google Sheets spreadsheets
'https://www.googleapis.com/auth/spreadsheets',
// See your primary Google Account email address
'https://www.googleapis.com/auth/userinfo.email',
],
immediate = true;
// ...
gapi.auth.authorize(
{client_id: client_id, scope: scope, immediate: immediate},
authResult => {
if (authResult && !authResult.error) {
/* handle successful authorization */
} else {
/* handle authorization error */
}
},
);After that you can use Apps Script API resources:
/*
List information about processes made by or on behalf of a user, such as process type and current status.
*/
await gapi.client.script.processes.list({});
/*
List information about a script's executed processes, such as process type and current status.
*/
await gapi.client.script.processes.listScriptProcesses({});
/*
Creates a new, empty script project with no script files and a base manifest file.
*/
await gapi.client.script.projects.create({});
/*
Gets a script project's metadata.
*/
await gapi.client.script.projects.get({scriptId: 'scriptId'});
/*
Gets the content of the script project, including the code source and metadata for each script file.
*/
await gapi.client.script.projects.getContent({scriptId: 'scriptId'});
/*
Get metrics data for scripts, such as number of executions and active users.
*/
await gapi.client.script.projects.getMetrics({scriptId: 'scriptId'});
/*
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.
*/
await gapi.client.script.projects.updateContent({scriptId: 'scriptId'});
/*
*/
await gapi.client.script.scripts.run({scriptId: 'scriptId'});12 months ago
5 months ago
7 months ago
7 months ago
9 months ago
6 months ago
8 months ago
6 months ago
8 months ago
7 months ago
11 months ago
12 months ago
5 months ago
9 months ago
10 months ago
11 months ago
8 months ago
6 months ago
8 months ago
11 months ago
9 months ago
10 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago