Files
fn_registry/python/functions/infra/http_get_json.md
T
egutierrez 9fd0ca9cac feat: funciones Python infra y tipos Python (core, datascience, infra)
Infra: cache_to_file, cache_to_sqlite, http_download_file, http_get_json,
http_post_json, read_file_with_encoding, safe_extract_zip, scan_directory,
setup_logger, normalize_zip_filenames.
Tipos: 30+ tipos core (agent_action, context, task, message, parse_result...),
6 tipos datascience (entity_candidate, extraction_result...), 2 tipos infra.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 17:11:43 +02:00

1.4 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, 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 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
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.