libredte_lib_sdk.client module
Cliente HTTP delgado para la API de LibreDTE Lib (core.libredte.cl).
- class libredte_lib_sdk.client.ApiClient(base_url: str | None = None, *, api_token: str | None = None, timeout: float = 30.0, http_client: Client | None = None)
Bases:
objectDespacha operaciones contra la API de LibreDTE Lib.
Traduce un operation_id con el formato paquete.componente.worker::operacion (el mismo que usa libredte-lib-core-dispatcher) a la ruta HTTP equivalente: POST /{paquete}/{componente}/{worker}/{operacion}.
No sabe nada de DTE ni de reglas de negocio: solo hace la llamada HTTP y normaliza la respuesta (el data del sobre JSON en éxito, los bytes crudos si la respuesta no es JSON, o una excepción tipada si la API respondió un error). La orquestación vive en billing/*/*.py.
Por defecto apunta a core.libredte.cl. Es configurable (base_url o la variable de entorno LIBREDTE_LIB_SDK_BASE_URL) para apuntar a pro.libredte.cl u otro ambiente.
- call(operation_id: str, **parameters: Any) Any
Ejecuta operation_id con parameters y devuelve su resultado.
parameters se manda tal cual como el objeto parameters del body JSON que espera la API (ej. bag=…, request=…).
- close() None
Cierra la conexión HTTP, si este cliente es dueño de ella.