masanos note

🔧 Get json from a spreadsheet using GoogleSheetsAPI v4.

2022-12-10
iconicon

Google Console

Access to Google API Console

Search "spreadsheet"

Click to enable this API

Transition to the API details page.

Click "Credentials"

Application restrictions: HTTP referrers (web sites)

Website Restrictions: Add your domain

API restrictions

Select Google Sheets API



"SHOW KEY" and copy.

Spreadsheet

Make Data & Change viewer auth "Anyone with the link"

check id
https://docs.google.com/spreadsheets/d/{id}/edit#gid=0

API Endpoint

https://sheets.googleapis.com/v4/spreadsheets/{id}/values/{sheet name}?key={API Key}
If you want to try it directly from your browser, delete "Website Restrictions" domains.
And enter the API endpoint directly in the browser and try to access.
You can get data

{
  "range": "data!A1:Z1000",
  "majorDimension": "ROWS",
  "values": [
    [
      "id",
      "name"
    ],
    [
      "1",
      "white"
    ],
    [
      "2",
      "black"
    ],
    [
      "3",
      "blue"
    ],
    [
      "4",
      "pink"
    ]
  ]
}


Query Params

 "majorDimension": "COLUMNS",

{
  "range": "data!A1:Z1000",
  "majorDimension": "COLUMNS",
  "values": [
    [
      "id",
      "1",
      "2",
      "3",
      "4"
    ],
    [
      "name",
      "white",
      "black",
      "blue",
      "pink"
    ]
  ]
}


Error

If you don't specify a API key. API key not valid. Please pass a valid API key.

{
  "error": {
    "code": 400,
    "message": "API key not valid. Please pass a valid API key.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.ErrorInfo",
        "reason": "API_KEY_INVALID",
        "domain": "googleapis.com",
        "metadata": {
          "service": "sheets.googleapis.com"
        }
      }
    ]
  }
}

Ref.

query params

Related Notessupabase with Vue3 Vue3 with bootstrap-icons[vue3]Install bootstrap5[vue3] install[Nuxt3]The first thing I do when launching a nuxt3 project. (^3.5.2)[Nuxt3][Bootstrap]Use Bootstrap icons with Nuxt3.[Node.js] Storing API results in js🔧[GA4][GTM]Configure GA4 in GTM🔧[Nuxt3]Using Google Tag manager with NUXT3🔧[GA4][BigQuery]Linking GA4 and BigQuery🔧When you want to scrape a SPA site, PhantomJsCloud is solution.🐛Error brew -v | update-reset🔧Use Google Spreadsheet as API with Nuxt3.🔧[Python]Install Python to Mac[Nuxt3]Install stable version of Nuxt 3.0.0. | npx nuxi init nuxt3-appMake Ranking with MySQLwatch & v-model | Vue3 (Nuxt3)window & document | Nuxt3Using custom domain, Hosting to GitHub Pages with Nuxt3GA4 with Nuxt3📝MySQL - Date Function - Tips Use Nuxt3 props🔧Use MicroCMS with Nuxt3🔧Using GoogleFont with Nuxt3📝Error - Deprecation Warning: $weight: Passing a number without unit % (100) is deprecated. - Bootstrap5 📝using sass with nuxt📝Firebase9 Google Authentication with Nuxt3.📝Set favicon in Nuxt3📝Use bootstrap5 with Nuxt3🐛Error Code: 1290. The MySQL server is running with the --secure-file-priv option so it cannot execute this statement[Nuxt3] How to separate source directoriesmicroCMS & GitHub Actions & Nuxt3Using highlight in Nuxt3.use package.json value🔧frontmatter-markdown-loader & highlight.js🔧Install Font Awesome on Nuxt2 via npm.Github pages with GitHub ActionsCannot find module '~/*/*.vue' or its corresponding type declarations.Vetur(2307)🐛Cannot find module. Consider using '--resolveJsonModule' to import module with '.json' extension.ts(2732)TypeScript Object.🔧Bootstrap5 with Nuxt2processmd with Nuxt2🔧[MySQL]Install MySQL Workbench🔧Convert Markdown to HTML. convert frontmatter to json🔧Install homebrew, nvm, node to Mac🔧[MySQL]Record of installing and starting mysql with homebrew.🎨 Display the photo full screen and overlay the header and footer on top.🔧Set git repository to created project.[Nuxt3] Make Header & Footer
A record of the development is left in a web note.
Masanos
I want to make the world I see happy. Little by little, I am preparing to start a business. Thank you for your support.
Buy Me A Coffee
Copyright© masanos All Rights Reserved.