Xyrelis Developers

Autenticación y límites

Cada petición lleva la clave en la cabecera Authorization: Bearer. Las claves empiezan por xyr_live_ (datos reales) o xyr_test_ (pruebas). Xyrelis solo guarda su huella SHA-256: si la pierde, revóquela y cree otra.

Permisos

parcelas:leerVer parcelas (nombre, superficie, SIGPAC, polígono)
cuaderno:leerVer el cuaderno de campo (riegos, tratamientos, abonados, observaciones)
cuaderno:escribirAnotar riegos y observaciones en el cuaderno
sensores:leerVer dispositivos y el último valor de cada sensor
satelite:leerVer las series de índices de satélite
clima:leerVer la meteorología diaria de la estación de la parcela
operativa:leerVer almacén, partes, fichajes, siniestros, abonado, recetas, ecorregímenes (con SIGPAC e importes), certificaciones, lonjas, bolsa de precios y futuros, ayudas (BDNS), normativa (UE, BOE, CC. AA.) y dron
operativa:escribirCrear partes y fichajes, movimientos de almacén, siniestros y comprobar tratamientos
cuaderno:sincronizarCrear, modificar y borrar cualquier entrada del cuaderno (tratamientos, abonados, cosechas...)
iot:leerVer dispositivos, actuadores, instalaciones, series de datos y alarmas
iot:escribirRenombrar actuadores, cambiar límites y reconocer alarmas
iot:accionarAccionar válvulas y actuadores (abrir, cerrar, regar)
avisos:leerVer los avisos de la cuenta
avisos:escribirDescartar avisos
calendario:leerVer las tareas del calendario
calendario:escribirCrear, completar y borrar tareas del calendario
analisis:leerVer el análisis de cada parcela y el mapa
informes:leerDescargar los informes en PDF (cuaderno y campaña)
ia:leerVer los chats del asistente IA y el resultado de sus trabajos
ia:usarPreguntar al asistente IA (también con foto para diagnóstico) y borrar chats
perfil:leerVer los datos básicos de la cuenta (nombre, correo, preferencias) en /yo
*Acceso completo: todos los permisos anteriores

Uso de la clave

Toda la API necesita clave: sin la cabecera se responde 401 (sin_clave). La única excepción es la especificación https://xyrelis.es/api/v1/openapi.json.

# Guarde la clave en una variable de entorno, nunca en el código ni en el repositorio
export XYR="xyr_live_…"
curl -H "Authorization: Bearer $XYR" https://xyrelis.es/api/v1/yo

/yo (con el permiso parcelas:leer) devuelve la clave en uso (nombre, permisos, entorno y límite efectivo): sirve para comprobar que la clave funciona.

import os, requests
r = requests.get("https://xyrelis.es/api/v1/parcelas", headers={"Authorization": f"Bearer {os.environ['XYR']}"}, timeout=30)
r.raise_for_status()

Límite de peticiones

Cada clave tiene un límite de peticiones por minuto. Si al crearla no se indica, se usa el límite por defecto (ahora 60). Ninguna clave puede pasar del máximo (ahora 600 para su cuenta). NorthDelta puede ajustar el límite de una clave o el tope de una cuenta. Si lo hace, el cambio se aplica en menos de un minuto, sin cambiar de clave.

¿Necesita más? Si su integración necesita límites o máximos mayores (más peticiones por minuto, más claves o un tope de cuenta a medida), o quiere plantear un desarrollo o proyecto en conjunto con Xyrelis, póngase en contacto con nosotros en administracion@northdeltasl.es o desde el formulario de contacto. Podemos ampliar los máximos de su cuenta por encima del general, sin cambiar de clave.

Cada respuesta trae X-RateLimit-Limit (el límite efectivo) y X-RateLimit-Remaining. Al pasarse se responde 429 con Retry-After (segundos de espera). Espere ese tiempo antes de reintentar.

HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 0
{"error": {"codigo": "limite", "mensaje": "Ha superado el límite de 60 peticiones por minuto."}}

Si necesita más, pídalo a NorthDelta indicando el nombre de la clave.

Errores

{"error": {"codigo": "sin_permiso", "mensaje": "La clave no tiene el permiso «cuaderno:escribir»."}}
400 / 422Parámetros o datos no válidos
401Sin clave, clave revocada o caducada
403Falta el permiso o la cuenta no está activa
404La parcela no existe o no es suya
429Límite superado