Is there a way to export a BigQuery table's schema as JSON?
a way to dump schema from an existing table to a JSON file (preferably from the command-line). Is that possible?
try below
bq show bigquery-public-data:samples.wikipedia
You can use –format flag to prettify output
--format: none|json|prettyjson|csv|sparse|pretty:
Format for command output. Options include:
none: ...
pretty: formatted table output
sparse: simpler table output
prettyjson: easy-to-read JSON format
json: maximally compact JSON
csv: csv format with header
The first three are intended to be human-readable, and the latter three are for passing to another program. If no format is selected, one will be chosen based on the command run.
Realized I provided partial answer :o)
Below does what PO wanted
bq show --format=prettyjson bigquery-public-data:samples.wikipedia | jq '.schema.fields'
You can add the flag --schema
[1] in order to avoid table data information.
bq show --schema --format=prettyjson [PROJECT_ID]:[DATASET].[TABLE] > [SCHEMA_FILE]
bq show --schema --format=prettyjson mydataset.mytable > /tmp/myschema.json
[1] https://cloud.google.com/bigquery/docs/managing-table-schemas