Cliente¶
Punto de entrada del SDK. Toda interacción con la API pasa por una instancia de DatosMexico.
datos_mexico.client.DatosMexico ¶
DatosMexico(
base_url: str = DEFAULT_BASE_URL,
timeout: float = DEFAULT_TIMEOUT_SECONDS,
cache_ttl: int = DEFAULT_CACHE_TTL_SECONDS,
max_retries: int = DEFAULT_MAX_RETRIES,
user_agent: str | None = None,
logger: Logger | None = None,
)
Cliente oficial para la API del Observatorio Datos México.
Examples:
Uso básico:
>>> from datos_mexico import DatosMexico
>>> client = DatosMexico()
>>> health = client.health()
>>> print(health.status)
ok
Con context manager (recomendado, cierra recursos automáticamente):
>>> with DatosMexico() as client:
... stats = client.cdmx.dashboard_stats()
... print(f"{stats.total_servidores:,} servidores")
246,831 servidores
Configuración personalizada:
>>> client = DatosMexico(
... timeout=60.0,
... cache_ttl=600,
... max_retries=5,
... )
Attributes:
| Name | Type | Description |
|---|---|---|
cdmx |
Namespace del dataset Servidores Públicos CDMX. |
|
consar |
Namespace del dataset CONSAR/SAR (pensiones). |
|
enigh |
Namespace del dataset ENIGH 2024 NS (hogares INEGI). |
|
comparativo |
Endpoints cross-dataset CDMX x CONSAR x ENIGH. |
|
personas |
Tabla normalizada de personas del padrón CDMX. |
|
nombramientos |
Tabla normalizada de nombramientos del padrón CDMX. |
|
demo |
Dataset didáctico del curso ITAM Bases de Datos. |
|
export |
Descarga del padrón CDMX en formato CSV. |
health ¶
Consulta GET /health para verificar que la API responde.
El endpoint health no se cachea: cada llamada ejecuta una request fresca al servidor.
Returns:
| Type | Description |
|---|---|
HealthResponse
|
|
Raises:
| Type | Description |
|---|---|
NetworkError
|
Si no se puede contactar la API. |
TimeoutError
|
Si la API no responde dentro del timeout. |
ApiError
|
Si la API responde con un status code de error. |