Registrar tu dispositivo (provisioning)

Crear Disp_modelo + Dispositivo + obtener ApiToken via API REST.

Flow completo de provisioning

1. Crear Disp_modelo (plantilla)        → Define sensores+actuadores
2. Crear Dispositivo desde el modelo    → Signal materializa Sensor/Actuador
                                         + crea Gafete propio del device
                                         + crea ApiToken único
3. GET /dispositivos/{id}/api-tokens/    → Te devuelve el token.key
4. Flashear firmware con esas creds      → Listo

1. Crear el Disp_modelo (plantilla)

Define qué sensores y actuadores tiene tu hardware. Reusable para clones.

curl -X POST https://abior.art/api/desar/disp-modelos/ \
  -H "Authorization: Token <TU_USER_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "alias": "ESP32 + DHT22 + Relay",
    "desc": "Modelo casero: lee temp+humedad y controla un relay",
    "driver_key": "mqtt_native",
    "emprendimiento": "<TU_EMPRENDIMIENTO_UUID>",
    "sensor_templates": [
      {"code": "temp", "name": "Temperatura", "unit": "C"},
      {"code": "hum",  "name": "Humedad",     "unit": "%"}
    ],
    "actuador_templates": [
      {"code": "ventilador", "name": "Ventilador", "tipo": "on_off"}
    ]
  }'

2. Crear el Dispositivo físico

curl -X POST https://abior.art/api/desar/dispositivos/ \
  -H "Authorization: Token <TU_USER_TOKEN>" \
  -H "Content-Type: application/json" \
  -d '{
    "alias": "Granja - sector A",
    "modelo": "<DISP_MODELO_UUID>",
    "driver_key": "mqtt_native",
    "emprendimiento": "<TU_EMPRENDIMIENTO_UUID>"
  }'

Al crearse, un signal post_save corre automáticamente:

  • Materializa los Sensor y Actuador desde los templates del modelo.
  • Crea un Gafete para que el device tenga identidad en el emprendimiento.
  • Crea un ApiToken único asociado a ese gafete.

3. Obtener el ApiToken

curl -X GET https://abior.art/api/desar/dispositivos/<DEVICE_UUID>/api-tokens/ \
  -H "Authorization: Token <TU_USER_TOKEN>"

Respuesta:

[
  {
    "key": "abc123def456...",
    "created": "2026-04-29T05:30:00Z",
    "expires_at": null
  }
]

Guarda ese key en tu firmware. Es el usuario MQTT y la credencial para los webhooks HTTP.

4. (Opcional) Listar sensores y actuadores del device

curl https://abior.art/api/desar/sensores/?dispositivo=<DEVICE_UUID> \
  -H "Authorization: Token <TU_USER_TOKEN>"

curl https://abior.art/api/desar/actuadores/?dispositivo=<DEVICE_UUID> \
  -H "Authorization: Token <TU_USER_TOKEN>"

Cada sensor y actuador tiene su code (slug que aparece en los topics MQTT).

Volver al capítulo completo

Registrar tu dispositivo (provisioning) — Conectar dispositivos IoT a Abior — guía técnica para makers — Abior | Abior