datadis_python.client package
Subpackages
- datadis_python.client.v1 package
- datadis_python.client.v2 package
- Submodules
- Module contents
DatadisClientV2SimpleDatadisClientV2SimpleDatadisClientV2.__enter__()SimpleDatadisClientV2.__exit__()SimpleDatadisClientV2.__init__()SimpleDatadisClientV2.authenticate()SimpleDatadisClientV2.close()SimpleDatadisClientV2.get_consumption()SimpleDatadisClientV2.get_contract_detail()SimpleDatadisClientV2.get_distributors()SimpleDatadisClientV2.get_max_power()SimpleDatadisClientV2.get_reactive_data()SimpleDatadisClientV2.get_supplies()
Submodules
- datadis_python.client.base module
BaseDatadisClientBaseDatadisClient.__init__()BaseDatadisClient.authenticate()BaseDatadisClient.ensure_authenticated()BaseDatadisClient.make_authenticated_request()BaseDatadisClient.close()BaseDatadisClient.__enter__()BaseDatadisClient.__exit__()BaseDatadisClient.get_supplies()BaseDatadisClient.get_distributors()BaseDatadisClient.get_contract_detail()BaseDatadisClient.get_consumption()BaseDatadisClient.get_max_power()
- datadis_python.client.datadis_client module
- datadis_python.client.unified module
DatadisClientDatadisClient.__init__()DatadisClient.v1DatadisClient.v2DatadisClient.get_supplies()DatadisClient.get_distributors()DatadisClient.get_contract_detail()DatadisClient.get_consumption()DatadisClient.get_max_power()DatadisClient.get_reactive_data()DatadisClient.get_cups_list()DatadisClient.get_distributor_codes()DatadisClient.close()DatadisClient.__enter__()DatadisClient.__exit__()DatadisClient.get_client_info()
Module contents
Clientes para la API de Datadis - Todas las versiones.
Este módulo proporciona clientes para interactuar con las diferentes versiones de la API de Datadis.
- class datadis_python.client.DatadisClient(username, password, timeout=90, retries=5)[fuente]
Bases:
objectCliente unificado que permite acceso a ambas versiones de la API.
- Parámetros:
- __enter__()[fuente]
Context manager entry.
- Devuelve:
Instancia del cliente
- Tipo del valor devuelto:
- __exit__(exc_type, exc_val, exc_tb)[fuente]
Context manager exit.
- Parámetros:
exc_type (Optional[type]) – Tipo de excepción
exc_val (Optional[BaseException]) – Valor de la excepción
exc_tb (Optional[TracebackType]) – Traceback de la excepción
- get_client_info()[fuente]
Obtiene información sobre el estado de los clientes.
- Devuelve:
Diccionario con información de estado
- Tipo del valor devuelto:
- get_consumption(cups, distributor_code, date_from, date_to, measurement_type=0, point_type=None)[fuente]
Obtiene datos de consumo (usa API v2).
Para usar v1: client.v1.get_consumption(…)
- Parámetros:
- Devuelve:
Respuesta con datos de consumo
- Tipo del valor devuelto:
- get_contract_detail(cups, distributor_code)[fuente]
Obtiene detalle del contrato (usa API v2).
Para usar v1: client.v1.get_contract_detail(cups, distributor_code)
- Parámetros:
- Devuelve:
Respuesta con detalle del contrato
- Tipo del valor devuelto:
- get_cups_list()[fuente]
Obtiene solo códigos CUPS (método de conveniencia de v1).
- Devuelve:
Lista de códigos CUPS
- Tipo del valor devuelto:
List[str]
- get_distributor_codes()[fuente]
Obtiene solo códigos de distribuidores (método de conveniencia de v1).
- Devuelve:
Lista de códigos de distribuidores
- Tipo del valor devuelto:
List[str]
- get_distributors()[fuente]
Obtiene distribuidores (usa API v2).
Para usar v1: client.v1.get_distributors()
- Devuelve:
Respuesta con distribuidores
- Tipo del valor devuelto:
- get_max_power(cups, distributor_code, date_from, date_to)[fuente]
Obtiene datos de potencia máxima (usa API v2).
Para usar v1: client.v1.get_max_power(…)
- Parámetros:
- Devuelve:
Respuesta con datos de potencia máxima
- Tipo del valor devuelto:
- get_reactive_data(cups, distributor_code, date_from, date_to)[fuente]
Obtiene datos de energía reactiva (solo disponible en v2).
- Parámetros:
- Devuelve:
Lista de datos de energía reactiva
- Tipo del valor devuelto:
List[ReactiveData]
- get_supplies(distributor_code=None)[fuente]
Obtiene puntos de suministro (usa API v2).
Para usar v1: client.v1.get_supplies()
- Parámetros:
distributor_code (Optional[str]) – Código de la distribuidora
- Devuelve:
Respuesta con puntos de suministro
- Tipo del valor devuelto:
- property v1: DatadisClientV1
Cliente API v1 para respuestas en formato raw.
- Devuelve:
Cliente v1 inicializado
- Tipo del valor devuelto:
- property v2: DatadisClientV2
Cliente API v2 para respuestas tipadas con Pydantic.
- Devuelve:
Cliente v2 inicializado
- Tipo del valor devuelto:
- datadis_python.client.DatadisClientV1
alias de
SimpleDatadisClientV1
- class datadis_python.client.DatadisClientV2(username, password, timeout=90, retries=5)[fuente]
Bases:
BaseDatadisClientCliente para API v2 de Datadis.
Características: - Devuelve datos raw exactamente como los proporciona la API - Endpoints v2 con estructura de respuesta actualizada - Validación de parámetros de entrada - Manejo de errores de distribuidor en formato v2
- Parámetros:
- get_consumption(cups, distributor_code, date_from, date_to, measurement_type=0, point_type=None, authorized_nif=None)[fuente]
Buscar los datos de consumo.
- Parámetros:
cups (str) – Los CUPS de los que querremos saber los datos de consumo.
distributor_code (str) – Código del distribuidor, que se obtiene con la solicitud de obtención de suministros.
date_from (str) – Fecha de inicio entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
date_to (str) – Fecha de finalización entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
measurement_type (int) – Establézcalo en 0 (Cero) si desea obtener el consumo por hora y en 1 (Uno) si desea obtener el consumo por cuarto de hora. La consulta cuarta horaria solo está disponible para los PointType 1 y 2, y en el caso de la distribuidora E-distribución adicionalmente el PointType 3.
point_type (Optional[int]) – Código de tipo de punto, que se obtiene con la solicitud de obtención de suministros.
authorized_nif (Optional[str]) – Solo en caso que se quiera obtener los datos de consumo de un NIF autorizado.
- Devuelve:
Respuesta con datos de consumo validados y errores de distribuidora en formato v2.
- Tipo del valor devuelto:
- get_contract_detail(cups, distributor_code, authorized_nif=None)[fuente]
Buscar el detalle del contrato.
- Parámetros:
cups (str) – Los CUPS de los que querremos saber los detalles del contrato. Solo puede buscar un CUPS por pedido.
distributor_code (str) – Código del distribuidor, que se obtiene con la solicitud de obtención de suministros.
authorized_nif (Optional[str]) – Solo en el caso de que quieras obtener el detalle del contrato del NIF autorizado.
- Devuelve:
Respuesta con datos de contrato validados y errores de distribuidora en formato v2.
- Tipo del valor devuelto:
- get_distributors(authorized_nif=None)[fuente]
Obtiene una lista de códigos de distribuidores en los que el usuario tiene suministros.
- Parámetros:
authorized_nif (Optional[str]) – Únicamente en caso de querer obtener el listado de códigos de distribuidoras que disponen de suministros del NIF autorizado.
- Devuelve:
Respuesta con códigos de distribuidores validados y errores en formato v2.
- Tipo del valor devuelto:
- Note:
Códigos de distribuidora: (1: Viesgo, 2: E-distribución, 3: E-redes, 4: ASEME, 5: UFD, 6: EOSA, 7:CIDE, 8: IDE)
- get_max_power(cups, distributor_code, date_from, date_to, authorized_nif=None)[fuente]
Busca la potencia máxima y te aparecerá el resultado en kW.
- Parámetros:
cups (str) – Las CUPS de las que querremos conocer los detalles del contrato.
distributor_code (str) – Código del distribuidor, que se obtiene con la solicitud de obtención de suministros.
date_from (str) – Fecha de inicio entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
date_to (str) – Fecha de finalización entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
authorized_nif (Optional[str]) – Solo en el caso de que quieras obtener el detalle del contrato del NIF autorizado.
- Devuelve:
Respuesta con datos de potencia máxima validados y errores de distribuidora en formato v2.
- Tipo del valor devuelto:
- get_reactive_data(cups, distributor_code, date_from, date_to, authorized_nif=None)[fuente]
Buscar datos de energía reactiva (solo disponible en v2).
- Parámetros:
cups (str) – Los CUPS de los que querremos saber los datos de consumo.
distributor_code (str) – Código del distribuidor, que se obtiene con la solicitud de obtención de suministros.
date_from (str) – Fecha de inicio entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
date_to (str) – Fecha de finalización entre los datos de búsqueda. Formato: AAAA/MM. Ejemplo = 2020/02.
authorized_nif (Optional[str]) – Solo en caso que se quiera obtener los datos de consumo de un NIF autorizado.
- Devuelve:
Lista de objetos ReactiveData validados.
- Tipo del valor devuelto:
List[ReactiveData]
- get_supplies(authorized_nif=None, distributor_code=None)[fuente]
Buscar todos los suministros.
- Parámetros:
authorized_nif (Optional[str]) – Si queremos buscar suministros de personas que hemos autorizado, podemos buscarlo con el NIF de las personas autorizadas.
distributor_code (Optional[str]) – Código del distribuidor, que se obtiene con la solicitud de distribuidoras con suministros: /get-distributors-with-supplies. Para consultar los suministros de una sola distribuidora.
- Devuelve:
Respuesta con suministros validados y errores de distribuidora en formato v2.
- Tipo del valor devuelto:
- datadis_python.client.DatadisClientLegacy
alias de
DatadisClient