Files
fn_registry/python/functions/infra/http_get_json.md
T
egutierrez 988e901066 docs: params/output semántico en 506 funciones para composabilidad
Añade campos params y output al frontmatter YAML de las 506 funciones del registry.
Cada parámetro tiene descripción semántica (qué representa, unidades, rango típico)
y cada función describe qué produce su output. Permite a agentes razonar sobre
cadenas de composición (ej: prices → log_return → sharpe_ratio) sin leer código.
2026-04-05 18:45:16 +02:00

1.7 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
http_get_json function py infra 1.0.0 impure http_get_json(url: str, headers: dict[str, str] | None = None, params: dict[str, str] | None = None, timeout: float = 30.0) -> dict GET request que espera JSON. Agrega Accept: application/json automaticamente. Lanza RuntimeError si status >= 400 con status code, url truncada y primeros 200 chars del body.
http
json
get
client
network
stdlib
infra
false error_go_core
json
urllib.error
urllib.parse
urllib.request
name desc
url URL base para la solicitud GET
name desc
headers diccionario opcional de headers HTTP personalizados
name desc
params diccionario opcional de parametros de query
name desc
timeout timeout en segundos para la solicitud (defecto 30.0)
diccionario con la respuesta JSON parseada true
mock de respuesta 200 con JSON
mock de respuesta 404 → error con status code
mock de respuesta con JSON invalido → error descriptivo
params serializados como query string
headers custom enviados
python/functions/infra/http_get_json_test.py python/functions/infra/http_get_json.py

Ejemplo

data = http_get_json(
    "https://api.example.com/users",
    params={"page": "1", "limit": "50"},
    headers={"X-Api-Key": "secret"},
)
print(data["total"])

Notas

Solo usa stdlib (urllib). Sin dependencias externas. El error incluye los primeros 200 chars del body para facilitar debugging en produccion. Params se serializa con urlencode antes de concatenar a la URL.