Skip to main content

Command-line interface for gformlib – manage Google Forms from the terminal.

Project description

gformlib-cli

PyPI version Python versions CI Documentation Status License: MIT

gformlib-cli is the official command-line interface for gformlib — manage Google Forms directly from your terminal.

Features

  • Create Google Forms from a JSON config file
  • Update form title, description, and add questions
  • Retrieve form metadata and structure
  • List form responses with optional filtering
  • Delete forms (with confirmation)
  • Service account & OAuth 2.0 authentication
  • Beautiful Rich terminal output
  • Full type annotations (PEP 561 compliant)

Installation

pip install gformlib-cli

Quickstart

Authenticate

Pass a service account key file with every command:

gformcli form create form.json --service-account sa.json

Or set the environment variable once:

export GOOGLE_APPLICATION_CREDENTIALS=/path/to/sa.json
gformcli form create form.json

Create a form

gformcli form create form.json --service-account sa.json

form.json:

{
  "title": "Customer Survey",
  "description": "Tell us how we're doing.",
  "questions": [
    {"title": "Your name", "type": "short_answer", "required": true},
    {
      "title": "Overall rating",
      "type": "scale",
      "low": 1,
      "high": 5,
      "low_label": "Poor",
      "high_label": "Excellent"
    }
  ]
}

Update a form

gformcli form update <FORM_ID> update.json --service-account sa.json

Get form info

gformcli form get <FORM_ID> --service-account sa.json

List responses

gformcli form responses <FORM_ID> --service-account sa.json

Delete a form

gformcli form delete <FORM_ID> --yes --service-account sa.json

Authentication

Method Flag Notes
Service Account --service-account / -s Recommended for server/CI
OAuth 2.0 --credentials / -c Browser consent on first run
Env var GOOGLE_APPLICATION_CREDENTIALS Fallback, service account

Command reference

gformcli form create   CONFIG_FILE  [AUTH OPTIONS]
gformcli form update   FORM_ID  CONFIG_FILE  [AUTH OPTIONS]
gformcli form get      FORM_ID  [AUTH OPTIONS]
gformcli form responses FORM_ID  [--filter STR]  [--page-size N]  [AUTH OPTIONS]
gformcli form delete   FORM_ID  [--yes]  [AUTH OPTIONS]

Run gformcli --help or gformcli form <command> --help for full option details.

Development

git clone https://github.com/andhit-r/gformlib-cli
cd gformlib-cli
python -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]"
pytest

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gformlib_cli-0.1.1.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gformlib_cli-0.1.1-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file gformlib_cli-0.1.1.tar.gz.

File metadata

  • Download URL: gformlib_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gformlib_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 9ea99f269e31a576c0baa424797e3e34b5af43b8ddeb6f6375f02dd831e3f13c
MD5 cb4c65ae5eff68c2f598dbe6df5b4827
BLAKE2b-256 3bb86b8e86584eec8ea9f0df2086a8ca52dfcd8de255549f228ddc74a87b2cc3

See more details on using hashes here.

Provenance

The following attestation bundles were made for gformlib_cli-0.1.1.tar.gz:

Publisher: publish.yml on andhit-r/gformlib-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gformlib_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: gformlib_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for gformlib_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 74c511581e5076517ee6ddea5ea1d722485a5f6fe3c908289eb3e007b4083d03
MD5 3aebee4e33d663cad662326b938e5b97
BLAKE2b-256 9ceb6db6b3317321d104c96bc738ef7772b526b8321f72f8339c91b66d95e6d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for gformlib_cli-0.1.1-py3-none-any.whl:

Publisher: publish.yml on andhit-r/gformlib-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page