Ir al contenido

mobile_push

El dominio mobile_push tiene 6 acciones. En la superficie meta se alcanzan todas a través de arcane_mobile_push; en la individual, cada una es una herramienta propia; en la dinámica se ejecutan con arcane_execute_action y el ID canónico.

AcciónTítuloTipo
mobile_push.device_deleteRemove a mobile devicedestructiva
mobile_push.device_registerRegister a mobile deviceescritura
mobile_push.device_testSend a test pushescritura
mobile_push.device_updateUpdate a mobile deviceescritura
mobile_push.pairing_token_createIssue a pairing tokenescritura
mobile_push.statusGet mobile push statuslectura

Remove a mobile device

  • Tipo: destructiva — exige confirm: true
  • Parámetros obligatorios: id
  • Meta-herramienta: arcane_mobile_push con "action": "device_delete"
  • Herramienta individual: arcane_mobile_push_device_delete
  • Ruta de Arcane: DELETE /api/apns/devices/{id}
  • ID de operación: delete-apns-device
  • Uso: Unregisters one of the caller’s own devices (id from mobile_push.status devices[].id) so it receives no more pushes. It is only removed from Arcane, the relay is not contacted. To drop every device of every user and revoke the relay channel, set apnsEnabled to false with settings.update instead (that cleanup runs in the background after settings.update returns).
  • Acciones relacionadas: mobile_push.status, settings.update

Register a mobile device

  • Tipo: escritura
  • Parámetros obligatorios: label, recipientId
  • Meta-herramienta: arcane_mobile_push con "action": "device_register"
  • Herramienta individual: arcane_mobile_push_device_register
  • Ruta de Arcane: POST /api/apns/devices
  • ID de operación: register-apns-device
  • Uso: Registers a device for the calling user: recipientId (1-128 chars, the device’s identifier at the push relay) and label (max 100) are required. events maps event types (image_update, container_update, vulnerability_found, prune_report, auto_heal) to true/false and defaults to all five on when omitted. environmentIds limits pushes to those environments (empty means all). Upserts by recipientId: re-registering your own device replaces its label, events and environmentIds, a recipientId owned by another user fails with 409, and it fails with 403 while apnsEnabled is off. Returns the device with its id. Pushes for an environment only reach the device if its user has the containers:list permission there.
  • Acciones relacionadas: mobile_push.pairing_token_create, mobile_push.status, mobile_push.device_test, mobile_push.device_update, environment.list

Send a test push

  • Tipo: escritura
  • Parámetros obligatorios: id
  • Meta-herramienta: arcane_mobile_push con "action": "device_test"
  • Herramienta individual: arcane_mobile_push_device_test
  • Ruta de Arcane: POST /api/apns/devices/{id}/test
  • ID de operación: test-apns-device
  • Uso: Sends a test push to one of the caller’s own devices through the relay (id from mobile_push.status devices[].id). The relay call is synchronous despite the “queued” reply message, so an unreachable or rejecting relay fails with 502, apnsEnabled off with 403, and an unknown or deleted device with 404. Success only means the relay accepted it, not that the phone displayed it.
  • Acciones relacionadas: mobile_push.status, mobile_push.device_register, notification.test

Update a mobile device

  • Tipo: escritura
  • Parámetros obligatorios: id
  • Meta-herramienta: arcane_mobile_push con "action": "device_update"
  • Herramienta individual: arcane_mobile_push_device_update
  • Ruta de Arcane: PATCH /api/apns/devices/{id}
  • ID de operación: update-apns-device
  • Uso: Changes one of the caller’s own devices (id from mobile_push.status devices[].id, others’ devices give 404). Only supplied fields change, but events replaces the whole event map (unlisted event types stop being pushed) and environmentIds replaces the whole list (empty means all environments). Unlike device_register it does not check apnsEnabled, so it also works while push is off. Returns the updated device.
  • Acciones relacionadas: mobile_push.status, mobile_push.device_test, environment.list

Issue a pairing token

Issue a short-lived signed token the mobile app presents to the push relay

  • Tipo: escritura
  • Parámetros obligatorios: ninguno
  • Meta-herramienta: arcane_mobile_push con "action": "pairing_token_create"
  • Herramienta individual: arcane_mobile_push_pairing_token_create
  • Ruta de Arcane: POST /api/apns/pairing-token
  • ID de operación: create-apns-pairing-token
  • Uso: Issues a signed pairing token for the Arcane mobile app to present to the push relay. Returns token, channelId and expiresAt (valid 5 minutes). Fails with 403 unless apnsEnabled is true (settings.update). When no relay channel exists yet it first registers one at the relay, failing with 502 if the relay is unreachable.
  • Acciones relacionadas: mobile_push.status, mobile_push.device_register, settings.update

Get mobile push status

Whether mobile push is enabled and the caller’s registered devices

  • Tipo: lectura
  • Parámetros obligatorios: ninguno
  • Meta-herramienta: arcane_mobile_push con "action": "status"
  • Herramienta individual: arcane_mobile_push_status
  • Ruta de Arcane: GET /api/apns/status
  • ID de operación: get-apns-status
  • Uso: Start here for mobile push: returns enabled (the apnsEnabled setting, always false in agent mode), relayUrl, channelId (only while enabled) and devices, which lists only the calling user’s own devices. devices[].id is the id for mobile_push.device_update, device_test and device_delete. Needs an authenticated user, and push is switched on or off with settings.update apnsEnabled.
  • Acciones relacionadas: mobile_push.pairing_token_create, mobile_push.device_register, mobile_push.device_update, settings.update