---
name: bq_list_datasets
kind: function
lang: py
domain: infra
version: "1.0.0"
purity: impure
signature: "def bq_list_datasets(client: BQClient) -> list[dict]"
description: "Lista todos los datasets del proyecto de Google BigQuery. Usa client._client.list_datasets() del SDK oficial."
tags: [bigquery, gcp, dataset, list, google-cloud, python]
uses_functions: []
uses_types: []
returns: []
returns_optional: false
error_type: "error_go_core"
imports: [google-cloud-bigquery]
params:
  - name: client
    desc: "instancia autenticada de BQClient"
output: "lista de dicts con dataset_id, project y full_id por cada dataset del proyecto"
tested: false
tests: []
test_file_path: ""
file_path: "python/functions/bigquery/datasets.py"
---

## Ejemplo

```python
from bigquery.client import bq_auth
from bigquery.datasets import bq_list_datasets

client = bq_auth("my-project")
datasets = bq_list_datasets(client)
for ds in datasets:
    print(ds["dataset_id"], ds["full_id"])
# analytics  my-project.analytics
# raw_data   my-project.raw_data
```

## Notas

Retorna solo campos basicos (dataset_id, project, full_id). Para obtener detalles completos (location, description, labels) usar `bq_get_dataset` sobre cada item.
El SDK retorna un iterador; esta funcion lo materializa en una lista completa.
Si el proyecto no tiene datasets, retorna lista vacia `[]`.
