Product operations
The exact operations served by this product and its model tools.
Create a project with POST /api/v1/projects. Include setup: true to run setup in the same call; the response includes setup.task with durable run and stream handles. Omit the flag for manual configuration.
The OpenAPI document and operation catalog come from the same declaration as these routes and tools.
Contract hash: ba60bc4e01588ca4123f181c09f24e7e6516da10115b361b15a29b2b8d8b036b.
| HTTP | Action | Model tool |
| --- | --- | --- |
| POST /api/v1/custom-actions | create Custom Actions. Owner-defined quick actions — a label, an emoji and the prompt they launch. | custom_actions_create |
| DELETE /api/v1/custom-actions/{id} | delete Custom Actions. Owner-defined quick actions — a label, an emoji and the prompt they launch. | custom_actions_delete |
| GET /api/v1/custom-actions/{id} | get Custom Actions. Owner-defined quick actions — a label, an emoji and the prompt they launch. | custom_actions_get |
| GET /api/v1/custom-actions | list Custom Actions. Owner-defined quick actions — a label, an emoji and the prompt they launch. | custom_actions_list |
| PATCH /api/v1/custom-actions/{id} | update Custom Actions. Owner-defined quick actions — a label, an emoji and the prompt they launch. | custom_actions_update |
| POST /api/v1/dashboards/{id}/events | Append an event to Dashboards | dashboards_append_event |
| POST /api/v1/dashboards | create Dashboards. Boards that put a site's live state on a screen. | dashboards_create |
| DELETE /api/v1/dashboards/{id} | delete Dashboards. Boards that put a site's live state on a screen. | dashboards_delete |
| GET /api/v1/dashboards/{id}/events | Read events for Dashboards | dashboards_events |
| GET /api/v1/dashboards/{id} | get Dashboards. Boards that put a site's live state on a screen. | dashboards_get |
| GET /api/v1/dashboards | list Dashboards. Boards that put a site's live state on a screen. | dashboards_list |
| PATCH /api/v1/dashboards/{id} | update Dashboards. Boards that put a site's live state on a screen. | dashboards_update |
| POST /api/v1/devices/{id}/events | Append an event to Devices | devices_append_event |
| POST /api/v1/devices | create Devices. CANedge loggers, cameras and other hardware reporting telemetry. | devices_create |
| GET /api/v1/devices/{id}/events | Read events for Devices | devices_events |
| GET /api/v1/devices/{id} | get Devices. CANedge loggers, cameras and other hardware reporting telemetry. | devices_get |
| GET /api/v1/devices | list Devices. CANedge loggers, cameras and other hardware reporting telemetry. | devices_list |
| POST /api/v1/devices/provision | Provision hardware and return its one-time credential | HTTP only |
| PATCH /api/v1/devices/{id} | update Devices. CANedge loggers, cameras and other hardware reporting telemetry. | devices_update |
| POST /api/v1/display-shares | Create, rotate or revoke a scoped display link | HTTP only |
| POST /api/v1/equipment/{id}/events | Append an event to Equipment | equipment_append_event |
| POST /api/v1/equipment | create Equipment. Machines on your site — the unit numbers your crew already uses. | equipment_create |
| GET /api/v1/equipment/{id}/events | Read events for Equipment | equipment_events |
| GET /api/v1/equipment/{id} | get Equipment. Machines on your site — the unit numbers your crew already uses. | equipment_get |
| GET /api/v1/equipment | list Equipment. Machines on your site — the unit numbers your crew already uses. | equipment_list |
| PATCH /api/v1/equipment/{id} | update Equipment. Machines on your site — the unit numbers your crew already uses. | equipment_update |
| GET /api/v1/learnings/{id} | get Learnings. What the agent learned about your site, kept as create/remove facts. | learnings_get |
| GET /api/v1/learnings | list Learnings. What the agent learned about your site, kept as create/remove facts. | learnings_list |
| POST /api/v1/locations | create Locations. Sites, pits and zones your machines are assigned to. | locations_create |
| GET /api/v1/locations/{id} | get Locations. Sites, pits and zones your machines are assigned to. | locations_get |
| GET /api/v1/locations | list Locations. Sites, pits and zones your machines are assigned to. | locations_list |
| PATCH /api/v1/locations/{id} | update Locations. Sites, pits and zones your machines are assigned to. | locations_update |
| POST /api/v1/mechanics/{id}/events | Append an event to Mechanics | mechanics_append_event |
| POST /api/v1/mechanics | create Mechanics. The crew who maintain the machines. | mechanics_create |
| GET /api/v1/mechanics/{id}/events | Read events for Mechanics | mechanics_events |
| GET /api/v1/mechanics/{id} | get Mechanics. The crew who maintain the machines. | mechanics_get |
| GET /api/v1/mechanics | list Mechanics. The crew who maintain the machines. | mechanics_list |
| PATCH /api/v1/mechanics/{id} | update Mechanics. The crew who maintain the machines. | mechanics_update |
| POST /api/v1/operators/{id}/events | Append an event to Operators | operators_append_event |
| POST /api/v1/operators | create Operators. The crew who run the machines. | operators_create |
| GET /api/v1/operators/{id}/events | Read events for Operators | operators_events |
| GET /api/v1/operators/{id} | get Operators. The crew who run the machines. | operators_get |
| GET /api/v1/operators | list Operators. The crew who run the machines. | operators_list |
| PATCH /api/v1/operators/{id} | update Operators. The crew who run the machines. | operators_update |
| POST /api/v1/playlists/{id}/events | Append an event to TV Playlists | playlists_append_event |
| POST /api/v1/playlists | create TV Playlists. Rotations of dashboards for an office TV. | playlists_create |
| DELETE /api/v1/playlists/{id} | delete TV Playlists. Rotations of dashboards for an office TV. | playlists_delete |
| GET /api/v1/playlists/{id}/events | Read events for TV Playlists | playlists_events |
| GET /api/v1/playlists/{id} | get TV Playlists. Rotations of dashboards for an office TV. | playlists_get |
| GET /api/v1/playlists | list TV Playlists. Rotations of dashboards for an office TV. | playlists_list |
| PATCH /api/v1/playlists/{id} | update TV Playlists. Rotations of dashboards for an office TV. | playlists_update |
| GET /api/v1/preferences/{id} | get Preferences. Per-project dashboard state (notification read/cleared markers). | preferences_get |
| POST /api/v1/projects/{project_id}/setup | Set up the project with AI | projects_setup |
| GET /api/v1/projects/{project_id}/setup | Read setup evidence and missing requirements | projects_setup_status |
| POST /api/v1/repair-tickets/{id}/events | Append an event to Repair Tickets | repair_tickets_append_event |
| POST /api/v1/repair-tickets | create Repair Tickets. Work to be done on a machine, from flagged to fixed. | repair_tickets_create |
| GET /api/v1/repair-tickets/{id}/events | Read events for Repair Tickets | repair_tickets_events |
| GET /api/v1/repair-tickets/{id} | get Repair Tickets. Work to be done on a machine, from flagged to fixed. | repair_tickets_get |
| GET /api/v1/repair-tickets | list Repair Tickets. Work to be done on a machine, from flagged to fixed. | repair_tickets_list |
| PATCH /api/v1/repair-tickets/{id} | update Repair Tickets. Work to be done on a machine, from flagged to fixed. | repair_tickets_update |
| POST /api/v1/shift-reports/{id}/events | Append an event to Shift Reports | shift_reports_append_event |
| POST /api/v1/shift-reports | create Shift Reports. What each shift moved, and what stopped it. | shift_reports_create |
| GET /api/v1/shift-reports/{id}/events | Read events for Shift Reports | shift_reports_events |
| GET /api/v1/shift-reports/{id} | get Shift Reports. What each shift moved, and what stopped it. | shift_reports_get |
| GET /api/v1/shift-reports | list Shift Reports. What each shift moved, and what stopped it. | shift_reports_list |
| POST /api/v1/skill-imports | Import an immutable skill revision | skills_import |
| GET /api/v1/skill-revisions/{revision_id} | Read and verify an immutable skill revision | skills_revision |
| POST /api/v1/tasks/{task_id}/cancel | Cancel a task's active run | tasks_cancel |
| GET /api/v1/tasks/{task_id} | Read a task with its latest run receipt | tasks_get |
| GET /api/v1/tasks/{task_id}/runs | List a task's run receipts | tasks_runs |
| POST /api/v1/devices/link | Link confirmed devices to project equipment | telemetry_devices_link |
| POST /api/v1/devices/match-suggestions | Suggest equipment matches without changing assignments | telemetry_devices_match |
| POST /api/v1/telemetry/devices/resolve | Resolve device serials within the current workspace | telemetry_devices_resolve |
Write retries use Idempotency-Key. Changing input under the same key returns 409. An unfinished acknowledgement remains a named operation_in_progress conflict; never retry it under a new key without inspecting the resource.
Review configuration edits require If-Match with the current quoted revision. A run executes its saved revision; subsequent edits change the next attempt.