Nexa API · v1

Developers

Webhooks

Event catalogue

Everything Nexa can tell you about, and exactly what each one looks like on the wire.

An endpoint subscribes to the events it wants; the rest are not delivered to it. Event types are permanent — we add to this list, we do not rename or remove.

Each event names the scope your key needs to fetch the object it points at. An alarm.raised without assets:read tells you a fault exists and leaves you unable to look at the machine.

Operations

operation.createdneeds operations:read

A work order was opened, by a person in the portal or through the API.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.created",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "assigned",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-24T07:30:00.000Z"
    }
  }
}
operation.updatedneeds operations:read

An operation's details changed — title, description, notes, skill or amount.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.updated",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "assigned",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-24T07:30:00.000Z"
    }
  }
}
operation.assignedneeds operations:read

An operation was assigned or reassigned to a technician or a vendor.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.assigned",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "assigned",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-24T07:30:00.000Z"
    }
  }
}
operation.rescheduledneeds operations:read

An operation's scheduled date or time moved.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.rescheduled",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "assigned",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-26T13:00:00.000Z"
    }
  }
}
operation.cancelledneeds operations:read

An operation was called off before it was carried out.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.cancelled",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "cancelled",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-24T07:30:00.000Z"
    }
  }
}
operation.completedneeds operations:read

An operation was closed out with a completion report. Terminal.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "operation.completed",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "8c1e93a0-2d7f-4b8c-9b3d-5f2c1a7e4c81",
      "object": "operation",
      "status": "completed",
      "title": "Line 2 conveyor — bearing noise",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "assignee_type": "technician",
      "technician_id": "3a91cc70-1b44-4e9f-bb02-77de55aa1122",
      "vendor_id": null,
      "scheduled_for": "2026-09-24T07:30:00.000Z"
    }
  }
}

Assets

asset.createdneeds assets:read

A new asset or machine was added to the register.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "asset.created",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "object": "asset",
      "name": "Conveyor CV-02",
      "reference": "CNV-0042",
      "status": "operational",
      "category": "machine",
      "building_id": "1f0a6e52-4a19-8c33-90ab-12cd34efb7d4",
      "room_id": "6e524a19-8c33-90ab-12cd-34efb7d41f0a"
    }
  }
}
asset.updatedneeds assets:read

An asset's details changed.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "asset.updated",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "object": "asset",
      "name": "Conveyor CV-02",
      "reference": "CNV-0042",
      "status": "operational",
      "category": "machine",
      "building_id": "1f0a6e52-4a19-8c33-90ab-12cd34efb7d4",
      "room_id": "6e524a19-8c33-90ab-12cd-34efb7d41f0a"
    }
  }
}
asset.status_changedneeds assets:read

An asset moved between operational, under maintenance, out of service or retired. The event to drive an availability view from — it carries the previous status so you do not have to keep your own copy.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "asset.status_changed",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "object": "asset",
      "name": "Conveyor CV-02",
      "reference": "CNV-0042",
      "status": "under_maintenance",
      "category": "machine",
      "building_id": "1f0a6e52-4a19-8c33-90ab-12cd34efb7d4",
      "room_id": "6e524a19-8c33-90ab-12cd-34efb7d41f0a",
      "previous_status": "operational"
    }
  }
}

Alarms

alarm.raisedneeds assets:read

A machine alarm fired from telemetry. Only ever emitted for businesses with the Machine telemetry feature.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "alarm.raised",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "d4e5f6a7-b8c9-40d1-92e3-f4a5b6c7d8e9",
      "object": "alarm",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "code": "E-207",
      "severity": "critical",
      "raised_at": "2026-09-23T10:03:58.000Z",
      "cleared_at": null
    }
  }
}
alarm.clearedneeds assets:read

A machine alarm returned to normal.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "alarm.cleared",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "id": "d4e5f6a7-b8c9-40d1-92e3-f4a5b6c7d8e9",
      "object": "alarm",
      "asset_id": "b7d41f0a-6e52-4a19-8c33-90ab12cd34ef",
      "code": "E-207",
      "severity": "critical",
      "raised_at": "2026-09-23T10:03:58.000Z",
      "cleared_at": "2026-09-23T11:47:12.000Z"
    }
  }
}

Platform

webhook.ping

A test delivery. Sent when you register an endpoint and whenever you press Send test event. Every endpoint receives it whether or not it is subscribed.

Example payload
{
  "id": "evt_5f2c1a7e-9b3d-4c81-a0e6-2d7f4b8c1e93",
  "type": "webhook.ping",
  "created_at": "2026-09-23T10:04:00.000Z",
  "api_version": "2026-09-01",
  "data": {
    "object": {
      "object": "ping",
      "message": "If you are reading this, your endpoint is reachable and the signature verified."
    }
  }
}
On this page