User management (authentication, current user details).
API Reference//
- v1_plannings_assignments_list
Create Assignment
Deactivate an assignment
Bulk create assignments
v1_plannings_assignments_...
Augmented Operations Management API (1.0.0)
This API provides backend services for the Augmented Decision Making application, focusing on the efficient scheduling and assignment of tasks Operations to a given Resources.
The system models the following key entities:
- Locations: Representing physical areas
- Resources: Specific assignable assets within a location.
- Tasks: Represent individual events, jobs. Tasks include detailed time information (planned, expected, actual) and model uncertainty using statistical parameters (sigma, skew factor, distribution mean/earliest/latest). Tasks also support versioning to track updates.
- Operations: Represent a complete operation, linking an inbound task to an outbound task. Operations contain relevant metadata.
- Assignments: Link an Operation to a specific Resource for a given time period.
- Tags: Can be used to restrict possible assignments as well as indicate preferences or penalties.
- Rules: Can be used to specify preferences or penalties in conjunction with the tagging mechanism.
The API enables users and automated systems to:
- Manage Data: Perform CRUD operations on Locations, Resources, Tasks, Operations, and Assignments.
- Track Operations Times: Handle various time representations and update task details, including imposing delays. Task updates create new versions, preserving history.
- Assignments: Assign or reassign operation to resources.
- Detect Conflicts: Identify situations where an assigned conflicting (overlapping) with another based on their expected time windows.
- Resolve Conflicts: Offer mechanisms to resolve individual scheduling conflicts through AI.
- Optimize Globally: Offer global optimization of the schedule using various solvers to minimize conflicts and reassignments while optimizing for rules.
- AI Assistance: Interact with an AI agent (via the
/agent/endpoint) using natural language to query the schedule, identify conflicts, request moves, or trigger conflict resolution processes. The agent utilizes specialized tools to interact with the system's state. - Real-time Updates: Delivers real-time notifications about changes to Assignments and Operations via WebSockets to subscribed clients.
- Virtual State Management: Allows temporary modifications to the schedule (virtual assignments) for "what-if" scenarios or agent-driven planning before potentially persisting changes.
Download OpenAPI description
Languages
Servers
Acceptance Environment
https://api.acc.adm.wearetransformers.nl
Request
Creates a new assignment (with its parts) for an operation. If X-Workspace-Id header is set, creates in workspace (branch-on-first-write). Otherwise creates on mainline and deactivates any existing active assignment.
Security
tokenAuth
- Acceptance Environmenthttps://api.acc.adm.wearetransformers.nl/v1/assignments/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.acc.adm.wearetransformers.nl/v1/assignments/ \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"operation": "fc63ceec-84f0-4df1-a7e8-77c5f8c0b283",
"planning": "2d429708-7857-4300-9552-6e473ce0d566",
"parts": [
{
"startAt": "2019-08-24T14:15:22Z",
"endAt": "2019-08-24T14:15:22Z",
"resource": "d008879e-b5d9-47da-af4e-3c8f40b7c9ee",
"isFixed": true,
"metadata": {
"kind": "maritime_berth",
"position": null
}
}
]
}'Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "operation": "fc63ceec-84f0-4df1-a7e8-77c5f8c0b283", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "parts": [ { … } ], "assignedAt": "2019-08-24T14:15:22Z", "validTo": "2019-08-24T14:15:22Z", "assignedBy": "string", "workspace": "3f216741-15dd-4e46-b5ac-0077a2640e89", "tombstone": true }
- Acceptance Environmenthttps://api.acc.adm.wearetransformers.nl/v1/assignments/{id}/deactivate/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
'https://api.acc.adm.wearetransformers.nl/v1/assignments/{id}/deactivate/' \
-H 'Authorization: YOUR_API_KEY_HERE'Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "operation": "fc63ceec-84f0-4df1-a7e8-77c5f8c0b283", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "parts": [ { … } ], "assignedAt": "2019-08-24T14:15:22Z", "validTo": "2019-08-24T14:15:22Z", "assignedBy": "string", "workspace": "3f216741-15dd-4e46-b5ac-0077a2640e89", "tombstone": true }
- Acceptance Environmenthttps://api.acc.adm.wearetransformers.nl/v1/assignments/bulk/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
https://api.acc.adm.wearetransformers.nl/v1/assignments/bulk/ \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '[
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"planning": "2d429708-7857-4300-9552-6e473ce0d566",
"operation": "fc63ceec-84f0-4df1-a7e8-77c5f8c0b283",
"parts": [
{
"startAt": "2019-08-24T14:15:22Z",
"endAt": "2019-08-24T14:15:22Z",
"resource": "d008879e-b5d9-47da-af4e-3c8f40b7c9ee",
"metadata": {
"kind": "maritime_berth",
"position": null
},
"isFixed": false
}
]
}
]'Response
application/json
{ "created_assignments": 0 }
Query
Which time reference to use for filtering operations. Options: 'expectedTime95Interval' (p05–p95), 'expectedTime90Interval' (p10–p90), 'expectedTime' (point estimate), 'scheduledTime' (planned time).
expectedTime95Interval- expectedTime95IntervalexpectedTime90Interval- expectedTime90IntervalexpectedTime- expectedTimescheduledTime- scheduledTime
Default "expectedTime95Interval"
Enum"expectedTime95Interval""expectedTime90Interval""expectedTime""scheduledTime"
- Acceptance Environmenthttps://api.acc.adm.wearetransformers.nl/v1/plannings/{id}/assignments/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://api.acc.adm.wearetransformers.nl/v1/plannings/{id}/assignments/?active=true&end_timestamp=0&operation=0&range_field=expectedTime95Interval&start_timestamp=0' \
-H 'Authorization: YOUR_API_KEY_HERE'Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "operation": "fc63ceec-84f0-4df1-a7e8-77c5f8c0b283", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "parts": [ … ], "assignedAt": "2019-08-24T14:15:22Z", "validTo": "2019-08-24T14:15:22Z", "assignedBy": "string", "workspace": "3f216741-15dd-4e46-b5ac-0077a2640e89", "tombstone": true } ]