{"id":26094074,"url":"https://github.com/statismike/deepgs4","last_synced_at":"2025-10-19T09:36:52.573Z","repository":{"id":61371530,"uuid":"537170213","full_name":"StatisMike/deepgs4","owner":"StatisMike","description":"Create and send requests to GoogleSheets API v4 on deep level - manipulate singular cells, create charts, formulas etc.","archived":false,"fork":false,"pushed_at":"2022-12-13T12:03:29.000Z","size":517,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-03-07T14:34:58.020Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"R","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/StatisMike.png","metadata":{"files":{"readme":"README.Rmd","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-09-15T19:04:41.000Z","updated_at":"2022-10-22T20:37:54.000Z","dependencies_parsed_at":"2023-01-28T12:01:52.179Z","dependency_job_id":null,"html_url":"https://github.com/StatisMike/deepgs4","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StatisMike%2Fdeepgs4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StatisMike%2Fdeepgs4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StatisMike%2Fdeepgs4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StatisMike%2Fdeepgs4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/StatisMike","download_url":"https://codeload.github.com/StatisMike/deepgs4/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242692343,"owners_count":20170228,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-03-09T12:49:43.841Z","updated_at":"2025-10-19T09:36:47.539Z","avatar_url":"https://github.com/StatisMike.png","language":"R","funding_links":[],"categories":[],"sub_categories":[],"readme":"---\noutput: github_document\n---\n\n\u003c!-- README.md is generated from README.Rmd. Please edit that file --\u003e\n\n```{r, include = FALSE}\nknitr::opts_chunk$set(\n  collapse = TRUE,\n  comment = \"#\u003e\",\n  fig.path = \"man/figures/README-\",\n  out.width = \"100%\"\n)\n```\n\n# deepgs4\n\n## Overview\n\n\u003c!-- badges: start --\u003e\n[![Lifecycle: experimental](https://img.shields.io/badge/lifecycle-experimental-orange.svg)](https://lifecycle.r-lib.org/articles/stages.html#experimental)\n[![Codecov test coverage](https://codecov.io/gh/StatisMike/deepgs4/branch/main/graph/badge.svg)](https://app.codecov.io/gh/StatisMike/deepgs4?branch=main)\n\u003c!-- badges: end --\u003e\n\nThe goal of `deepgs4` is to provide a low-level access to Google Sheets API, in\nopposition to [googlesheets4](https://github.com/tidyverse/googlesheets4){target=\"_blank\"}\npackage, which provides high-level access. It basically means that `deepgs4`\nallows operations on *cell-level*, and `googlesheets4` on *sheet-level*. \n\nIf you want to create great looking report in Google Sheet - and produce them\nprogramatically, with custom formats, addition of formulas, creation of charts,\nmerge cells etc: the low-level access is an inevitability. If you want to only \nread, write and append *data.frame-like* data into and from Google Sheets\nthe high-level access would be enough.\n\n## Installation\n\nYou can install the development version of deepgs4 from [GitHub](https://github.com/) with:\n\n``` r\n# install.packages(\"devtools\")\ndevtools::install_github(\"StatisMike/deepgs4\")\n```\n\n## Currently available functionalities\n\nUltimate goal of this package is to bind every Google Sheets API object on the\nR side to allow for as easy as possible request generation. There is still a\nlong way to go, but currently some functionalities are provided:\n\n- `send_create_req()` allowing Spreadsheet creation\n- `send_get_req()` allowing retrieval of data by Sheets API\n- `send_batchUpdate_req()` allowing updating spreadsheets with lower-level \n`dgs4Req` objects:\n  - Sheet creation, update and deletion\n  - CellData creation allowing:\n    - entering numeric (and date/datetime with the help of `dgs4_serial_number()`), \n    character, boolean and formula values\n    - formatting individual cells (or parts of the cells)\n    - coercing into *RowData* and *GridData*\n    - helpers: `to_RowData_from_df()` and `to_GridData_from_df()` are also available\n    for coercing `data.frame` into these objects\n  - Updating and appending *RowData* to the sheet\n  - Modifying the columns and rows properties (eg. their width and height)\n  - Creation, modification and deletion of conditional format rules\n  - Creation, modification and deletion of BasicCharts\n  - Pasting data into sheets: either by cut-paste or copy-paste from the same\n  spreadsheet or by providing delimited text or html\n  \n- package oauth client available in `dgs4_auth()` is currently running in\ndevelopment mode, so getting your own token through `deepgs4` alone is not\ncurrently available. If you plan on contributing, contact me to add your google\naccount into allowed emails.\n  - it is possible to use `googlesheets4` token with `dgs4_auth(token = googlesheets4::gs4_token())`\n  - or provide a service account with `dgs4_auth(path = \"path_to_service_account_json.json\")`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstatismike%2Fdeepgs4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstatismike%2Fdeepgs4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstatismike%2Fdeepgs4/lists"}