/sips/<cups>
🔍 Consulta de Datos CUPS
Obtiene información completa de un punto de suministro desde el Sistema SIPS
📝 Descripción
Este endpoint permite consultar información detallada de un punto de suministro mediante su código CUPS (Código Universal del Punto de Suministro). Se conecta directamente con el Sistema de Información del Punto de Suministro (SIPS) para obtener datos actualizados.
La respuesta incluye información del cliente, características técnicas del punto de suministro, datos del contador, información de la tarifa contratada y el estado actual del suministro.
🔧 Parámetros
Parámetros de Ruta
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
cups |
string | Requerido | Código CUPS del punto de suministro. Debe ser un código válido de 20-22 caracteres. |
📤 Respuestas
✅ Respuesta Exitosa (200 OK)
Retorna un objeto JSON con toda la información del punto de suministro.
Estructura de la Respuesta:
| Campo | Tipo | Descripción |
|---|---|---|
cups |
string | Código CUPS del punto de suministro |
direccion |
object | Información de la dirección del punto de suministro |
titular |
object | Datos del titular del contrato |
caracteristicas_tecnicas |
object | Características técnicas del suministro (potencia, tensión, etc.) |
tarifa |
object | Información de la tarifa contratada |
comercializadora |
string | Nombre de la comercializadora actual |
distribuidora |
string | Nombre de la distribuidora de la zona |
estado |
string | Estado actual del suministro (activo, suspendido, etc.) |
Ejemplo de Respuesta:
{
"cups": "ES0031405678912345AB1F",
"direccion": {
"tipo_via": "CALLE",
"nombre_via": "MAYOR",
"numero": "15",
"escalera": "A",
"piso": "3",
"puerta": "B",
"codigo_postal": "28013",
"municipio": "MADRID",
"provincia": "MADRID"
},
"titular": {
"nombre": "JUAN GARCIA LOPEZ",
"tipo_documento": "NIF",
"numero_documento": "12345678A",
"telefono": "666555444",
"email": "juan.garcia@email.com"
},
"caracteristicas_tecnicas": {
"tension": "Baja Tensión",
"potencia_contratada": {
"p1": 3.45,
"p2": 3.45
},
"potencia_maxima": 10.0,
"tipo_contador": "Digital",
"telemedida": true
},
"tarifa": {
"codigo": "2.0TD",
"descripcion": "Tarifa 2.0TD - Baja tensión con discriminación horaria",
"peajes": "2.0TD"
},
"comercializadora": {
"nombre": "COMERCIALIZADORA EJEMPLO S.A.",
"codigo": "0123"
},
"distribuidora": {
"nombre": "DISTRIBUIDORA ELECTRICA S.A.",
"codigo": "0001"
},
"estado": "activo",
"fecha_alta": "2020-05-15",
"ultima_lectura": {
"fecha": "2025-11-30",
"tipo": "Real",
"activa": 1523.5,
"reactiva": 45.2
}
}
❌ Respuestas de Error
400 Bad Request
El CUPS proporcionado no es válido o está mal formado.
{
"error": "El código CUPS proporcionado no es válido"
}
404 Not Found
No se proporcionó el parámetro CUPS o el CUPS no se encuentra en el sistema.
{
"error": "CUPS parameter is required"
}
500 Internal Server Error
Error interno del servidor o error de conexión con el sistema SIPS.
{
"error": "Se ha producido un error interno contacte con em"
}
💻 Ejemplos de Uso
cURL
curl -X GET "http://localhost:5000/sips/ES0031405678912345AB1F" \
-H "Accept: application/json"
Python (requests)
import requests
cups = "ES0031405678912345AB1F"
url = f"http://localhost:5000/sips/{cups}"
response = requests.get(url)
if response.status_code == 200:
data = response.json()
print(f"CUPS: {data['cups']}")
print(f"Titular: {data['titular']['nombre']}")
print(f"Estado: {data['estado']}")
else:
print(f"Error: {response.json()['error']}")
JavaScript (fetch)
const cups = 'ES0031405678912345AB1F';
const url = `http://localhost:5000/sips/${cups}`;
fetch(url)
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
console.log('CUPS:', data.cups);
console.log('Titular:', data.titular.nombre);
console.log('Estado:', data.estado);
})
.catch(error => {
console.error('Error:', error);
});
PowerShell
$cups = "ES0031405678912345AB1F"
$url = "http://localhost:5000/sips/$cups"
$response = Invoke-RestMethod -Uri $url -Method Get
Write-Host "CUPS: $($response.cups)"
Write-Host "Titular: $($response.titular.nombre)"
Write-Host "Estado: $($response.estado)"
🔄 Flujo de Trabajo
- Cliente realiza petición: Envía una solicitud GET con el código CUPS en la URL
- Autenticación SIPS: El servidor obtiene un token de autenticación del sistema SIPS
- Consulta de datos: Se realiza la consulta al sistema SIPS con el token obtenido
- Procesamiento: Los datos recibidos se procesan y formatean
- Respuesta: Se devuelve la información en formato JSON al cliente
📊 Casos de Uso
1. Validación de CUPS
Verificar que un código CUPS existe y está activo en el sistema antes de proceder con una contratación o cambio de titularidad.
2. Obtención de Datos del Titular
Recuperar información del titular actual para procesos de verificación o actualización de datos de contacto.
3. Consulta de Características Técnicas
Conocer las características técnicas del punto de suministro (potencia contratada, tipo de contador) para calcular tarifas o planificar modificaciones.
4. Verificación de Comercializadora
Identificar la comercializadora actual del suministro para procesos de cambio de comercializadora o portabilidad.
⚠️ Limitaciones y Consideraciones
- 🔒 La información devuelta depende de los permisos y acceso al sistema SIPS
- ⏱️ El tiempo de respuesta puede variar según la carga del sistema SIPS
- 📊 Algunos campos pueden estar vacíos si no hay información disponible
- 🔄 Los datos son consultados en tiempo real, por lo que reflejan el estado actual
- ⚡ Se recomienda implementar un sistema de caché para consultas frecuentes
- 🔐 El token de autenticación se renueva automáticamente en cada petición
🔗 Endpoints Relacionados
/sips_..._mendix_por_meses/<cups>
Histórico Mensual Detallado (Mendix)
Obtiene el consumo P1-P6 de los últimos 12 meses en formato Mendix (JSON). Es el endpoint recomendado para alimentar gráficos de consumo.
/sips_datos_consumos_mendix/<cups>
Consumos Mensualizados (Mendix)
Obtiene datos históricos de consumo mensualizado en formato Mendix (XML).
/sips_datos_consumos_periodos_mendix/<cups>
Consumos por Períodos (Mendix)
Consulta consumos desglosados por períodos tarifarios en formato Mendix (XML).
/sips_datos_anuales_mendix/<cups>
Consumos Anuales (Mendix)
Consulta datos agregados anuales por períodos en formato Mendix (JSON).