Update Readme and added additional lines into config.example to express the option to have multiple documents and service accounts.

This commit is contained in:
2026-07-05 15:27:10 +01:00
parent abf08b6334
commit f979d9f0e4
3 changed files with 28 additions and 19 deletions
-13
View File
@@ -45,16 +45,3 @@ To configure multiple keys with per-key rate limits:
```
The app will round-robin requests across configured keys and respect `rateLimitPerMinute` values.
## Storing keys safely
- Do not commit `config.json` with keys to version control. Add `config.json` to `.gitignore`.
- Alternatively, keep a `config.json.example` in the repo and place the real keys in a local `config.json`.
- If you prefer to use environment variables, you can have a small loader script that reads an env var and writes `config.json` before running the app.
## Troubleshooting
- If you get quota or 403 errors, check API restrictions, project quotas, and whether the key is restricted to the wrong IP/referrer.
- Use multiple keys to spread requests if you hit per-key quotas.
*** End of guide ***
+14 -6
View File
@@ -37,14 +37,20 @@ This guide explains how to create a Google service account, enable the Sheets AP
## 5. Configure the project
In `config.json`, set the `credentialsPath` field to the JSON file path, and remove any `apiKey` or `apiKeys` entries if you are using service account auth.
Example:
In `config.json`, add the service account credentials under the `serviceAccounts` array. Here's an example using service account authentication:
```json
{
"credentialsPath": "credentials.json",
"rateLimitPerMinute": 50,
"serviceAccounts": [
{
"path": "credentials.json",
"rateLimitPerMinute": 50
},
{
"path": "credentials.json",
"rateLimitPerMinute": 50
}
],
"documents": [
{
"documentId": "YOUR_SPREADSHEET_ID",
@@ -58,4 +64,6 @@ Example:
}
]
}
```
```
The app will round-robin requests across configured accounts and respect `rateLimitPerMinute` values.
+14
View File
@@ -13,6 +13,10 @@
{
"path": "credentials.json",
"rateLimitPerMinute": 50
},
{
"path": "credentials_2.json",
"rateLimitPerMinute": 50
}
],
"documents": [
@@ -25,6 +29,16 @@
"outputFilename": "sheet1.csv"
}
]
},
{
"documentId": "YOUR_SPREADSHEET_ID_2",
"outputDir": "output/your-document-2",
"sheets": [
{
"name": "Sheet1",
"outputFilename": "sheet1.csv"
}
]
}
]
}