2024-06-05 12:19:46 +02:00
---
id: GoogleSheets
sidebar_class_name: GoogleSheets
---
< img src = {require('../../static/img/APIs/GoogleSheets.png').default} width = '64px' / >
# Google Sheets
2024-06-05 14:34:54 +02:00
This section is dedicated to the library for working with API Google Sheets. On this page, all the steps necessary to start working are described
2024-06-05 12:19:46 +02:00
:::important
2024-06-05 14:34:54 +02:00
If you're already using the API to interact with other Google Workspace services and have completed the initial setup, you can skip the steps for **Creating a Project** and **Setting Up OAuth** . You just need to enable the Google Sheets** service in your existing project and reacquire the token (the last two steps in the instructions).
2024-06-05 12:19:46 +02:00
:::
## Getting started
< hr / >
2024-06-05 14:34:54 +02:00
### Project creation
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
1. Go to the [Google Cloud Console ](https://console.cloud.google.com ) and create a project
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/1.png )
2024-06-05 14:34:54 +02:00
2. Select the created project and in the side menu go to APIs and Services -> OAuth consent screen
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/2.png )
2024-06-05 14:34:54 +02:00
3. Choose External
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/3.png )
2024-06-05 14:34:54 +02:00
4. Fill in the fields: App name, User support email, and Email addresses (all fields with asterisks)
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/4.png )
2024-06-05 14:34:54 +02:00
5. Click on Next and then Save and continue on the last tab
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/5.png )
2024-06-05 14:34:54 +02:00
6. Click on Publish App
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/6.png )
< hr / >
2024-06-05 14:34:54 +02:00
### OAuth settings
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
1. In the side menu, select Credentials -> Create Credentials -> OAuth client ID
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/7.png )
2024-06-05 14:34:54 +02:00
2. Enter the name and choose Application type - Desktop app
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/8.png )
2024-06-05 14:34:54 +02:00
3. Save ClientID and Client Secret
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/9.png )
< hr / >
2024-06-05 14:34:54 +02:00
### Enable service - Google Sheets
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
1. Go to [page Sheets in Marketplace ](https://console.cloud.google.com/marketplace/product/google/sheets.googleapis.com )
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
2. Click Enable
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleSheets/1.png )
< hr / >
2024-06-05 14:34:54 +02:00
### Token retrieval
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
1. Pass the ClientID to the function OPI_GoogleWorkspace.FormCodeRetrievalLink() with boolean parameters of the services you use. The function will result in a URL that needs to be opened in the browser. Authorize with your Google account
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/10.png )
2024-06-05 14:34:54 +02:00
2. Copy the code from the URL after authorization
2024-06-05 12:19:46 +02:00
![BF ](../../static/img/Docs/GoogleCalendar/11.png )
2024-06-05 14:34:54 +02:00
3. Use the obtained code, ClientID, and Client Secret to call the function OPI_GoogleWorkspace.GetTokenByCode(ClientID, ClientSecret, Code)
2024-06-05 12:19:46 +02:00
2024-06-05 14:34:54 +02:00
```json title="Result of the function GetTokenByCode() if converted to JSON"
2024-06-05 12:19:46 +02:00
{
"token_type": "Bearer",
"refresh_token": "1//09au6OES3JN9oCgYIARAAGAkSNwF-L9Ir1B7uawfwafT1wE0FKO519Xj6JxawfawfyjMyJ_QlUZYLHZqw",
"scope": "https://www.googleapis.com/auth/...",
"expires_in": 3599,
"access_token": "ya29.a0AfB_byA344tXkIawdawdwadadhyZQV8bSZn_snNXtY2HLb7l71awdawdawdad-ASgpzyOSWIvEmPruhUa_1yCCq6jvoD0r_q-fNEsARrH8zpJ3c6LNGWvwdg8CXsSxYaCgYKAWkSawfwafawfrCK0EP5kZY_A0171"
}
```
2024-06-05 14:34:54 +02:00
4. Use the **access_token** to pass as a Token parameter when calling functions of the library, and the **refresh_token** - to obtain a new access_token (function OPI_GoogleWorkspace.RefreshToken(ClientID, ClientSecret, RefreshToken)), when the old one expires. When refreshing the token, the refresh_token is not updated - you can use the same one to get a new access_token each time.