Augmented Operations Management API (1.0.0)

Overview

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.

Core Functionality

The API enables users and automated systems to:

  1. Manage Data: Perform CRUD operations on Locations, Resources, Tasks, Operations, and Assignments.
  2. Track Operations Times: Handle various time representations and update task details, including imposing delays. Task updates create new versions, preserving history.
  3. Assignments: Assign or reassign operation to resources.
  4. Detect Conflicts: Identify situations where an assigned conflicting (overlapping) with another based on their expected time windows.
  5. Resolve Conflicts: Offer mechanisms to resolve individual scheduling conflicts through AI.
  6. Optimize Globally: Offer global optimization of the schedule using various solvers to minimize conflicts and reassignments while optimizing for rules.
  7. 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.
  8. Real-time Updates: Delivers real-time notifications about changes to Assignments and Operations via WebSockets to subscribed clients.
  9. 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/

Users

User management (authentication, current user details).

Operations

Locations

Managing locations and viewing their associated resources.

Operations

Resources

Managing resources (CRUD, listing).

Operations

Operations

Managing operations. Includes CRUD and listing with time/version filters.

Operations

Tasks

Updating details (time, uncertainty) of individual tasks within operations.

Operations

Assignments

Managing the assignment of operations to resources (CRUD, bulk operations, deactivation, listing per operation).

Operations

Conflict Resolution

Resolving specific scheduling conflicts using heuristic search methods (streaming and non-streaming).

Operations

Optimization

Globally optimizing the schedule using one of the solvers to minimize conflicts and reassignments while optimizing for rules.

Operations

Organizations & Planning

Managing the plannings and organizations you have access to.

Operations

AI Agent

Interacting with the conversational AI assistant for planning and queries.

Operations

Utility

Utility endpoints, such as generating schedule visualizations.

Operations

Token

API authentication token management (e.g., obtaining auth tokens).

Operations

Tags

Our mechanism for indicating constraints, penalties or preferences.

Operations

Rules

Can be used together with Tags to specify preferences or penalties.

Operations

Dependencies

Operations

Operation Groups

Operations

Creates a new operation group

Request

Creates a new operation group associated with a planning.

Security
tokenAuth
Bodyapplication/jsonrequired
planningstring(uuid)required
externalIdstring or null
metadataobject
curl -i -X POST \
  https://api.acc.adm.wearetransformers.nl/v1/operation-groups/ \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "planning": "2d429708-7857-4300-9552-6e473ce0d566",
    "externalId": "string",
    "metadata": {}
  }'

Responses

Bodyapplication/json
idstring(uuid)read-onlyrequired
planningstring(uuid)required
externalIdstring or null
operationsArray of objects(Operation)read-onlyrequired
operations[].​idstring(uuid)
operations[].​externalIdstring or null
operations[].​inboundTaskobject(Task)required
operations[].​inboundTask.​taskNamestringrequired
operations[].​inboundTask.​plannedTimestring(date-time)required
operations[].​inboundTask.​expectedTimestring(date-time)required
operations[].​inboundTask.​sigmanumber(double)>= 0required
operations[].​inboundTask.​skewFactornumber(double)required
operations[].​inboundTask.​actualTimestring or null(date-time)required
operations[].​inboundTask.​distributionMeanstring or null(date-time)required
operations[].​inboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​inboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​inboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​inboundTask.​validTostring(date-time)read-onlyrequired
operations[].​inboundTask.​imposedDelayInSecondsinteger
operations[].​inboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​inboundTask.​isMockboolean
Default false
operations[].​outboundTaskobject(Task)required
operations[].​outboundTask.​taskNamestringrequired
operations[].​outboundTask.​plannedTimestring(date-time)required
operations[].​outboundTask.​expectedTimestring(date-time)required
operations[].​outboundTask.​sigmanumber(double)>= 0required
operations[].​outboundTask.​skewFactornumber(double)required
operations[].​outboundTask.​actualTimestring or null(date-time)required
operations[].​outboundTask.​distributionMeanstring or null(date-time)required
operations[].​outboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​outboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​outboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​outboundTask.​validTostring(date-time)read-onlyrequired
operations[].​outboundTask.​imposedDelayInSecondsinteger
operations[].​outboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​outboundTask.​isMockboolean
Default false
operations[].​metadataAviationStandMetadataSchema (object) or MaritimeBerthOperationMetadataSchema (object)
One of:
operations[].​operationNamestringread-onlyrequired
operations[].​isFixedToResourcebooleanrequired
operations[].​tagsArray of strings(uuid)required
operations[].​requiredTagsArray of stringsread-onlyrequired
operations[].​planningstring(uuid)required
operations[].​descriptionstring or null
operations[].​operationDependenciesArray of objects(OperationDependency)read-onlyrequired
operations[].​operationDependencies[].​idstring(uuid)read-onlyrequired
operations[].​operationDependencies[].​fromOperationstring(uuid)required
operations[].​operationDependencies[].​toOperationstring(uuid)required
operations[].​operationDependencies[].​typestring(OperationDependencyTypeEnum)required
  • PRECEDENCE - Precedence
  • GAP - Gap
Enum"PRECEDENCE""GAP"
operations[].​operationDependencies[].​minOffsetinteger or null
operations[].​operationDependencies[].​maxOffsetinteger or null
operations[].​operationDependencies[].​createdAtstring(date-time)read-onlyrequired
operations[].​operationDependencies[].​updatedAtstring(date-time)read-onlyrequired
operations[].​groupstring or null(uuid)

Group to which this operation belongs, e.g., a portcall.

metadataobject
createdAtstring(date-time)read-onlyrequired
updatedAtstring(date-time)read-onlyrequired
Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "externalId": "string", "operations": [ {} ], "metadata": {}, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Get all operations in an operation group

Request

Lists all operations in an operation group.

Security
tokenAuth
Path
idstring(uuid)required
curl -i -X GET \
  'https://api.acc.adm.wearetransformers.nl/v1/operation-groups/{id}/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
idstring(uuid)read-onlyrequired
planningstring(uuid)required
externalIdstring or null
operationsArray of objects(Operation)read-onlyrequired
operations[].​idstring(uuid)
operations[].​externalIdstring or null
operations[].​inboundTaskobject(Task)required
operations[].​inboundTask.​taskNamestringrequired
operations[].​inboundTask.​plannedTimestring(date-time)required
operations[].​inboundTask.​expectedTimestring(date-time)required
operations[].​inboundTask.​sigmanumber(double)>= 0required
operations[].​inboundTask.​skewFactornumber(double)required
operations[].​inboundTask.​actualTimestring or null(date-time)required
operations[].​inboundTask.​distributionMeanstring or null(date-time)required
operations[].​inboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​inboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​inboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​inboundTask.​validTostring(date-time)read-onlyrequired
operations[].​inboundTask.​imposedDelayInSecondsinteger
operations[].​inboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​inboundTask.​isMockboolean
Default false
operations[].​outboundTaskobject(Task)required
operations[].​outboundTask.​taskNamestringrequired
operations[].​outboundTask.​plannedTimestring(date-time)required
operations[].​outboundTask.​expectedTimestring(date-time)required
operations[].​outboundTask.​sigmanumber(double)>= 0required
operations[].​outboundTask.​skewFactornumber(double)required
operations[].​outboundTask.​actualTimestring or null(date-time)required
operations[].​outboundTask.​distributionMeanstring or null(date-time)required
operations[].​outboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​outboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​outboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​outboundTask.​validTostring(date-time)read-onlyrequired
operations[].​outboundTask.​imposedDelayInSecondsinteger
operations[].​outboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​outboundTask.​isMockboolean
Default false
operations[].​metadataAviationStandMetadataSchema (object) or MaritimeBerthOperationMetadataSchema (object)
One of:
operations[].​operationNamestringread-onlyrequired
operations[].​isFixedToResourcebooleanrequired
operations[].​tagsArray of strings(uuid)required
operations[].​requiredTagsArray of stringsread-onlyrequired
operations[].​planningstring(uuid)required
operations[].​descriptionstring or null
operations[].​operationDependenciesArray of objects(OperationDependency)read-onlyrequired
operations[].​operationDependencies[].​idstring(uuid)read-onlyrequired
operations[].​operationDependencies[].​fromOperationstring(uuid)required
operations[].​operationDependencies[].​toOperationstring(uuid)required
operations[].​operationDependencies[].​typestring(OperationDependencyTypeEnum)required
  • PRECEDENCE - Precedence
  • GAP - Gap
Enum"PRECEDENCE""GAP"
operations[].​operationDependencies[].​minOffsetinteger or null
operations[].​operationDependencies[].​maxOffsetinteger or null
operations[].​operationDependencies[].​createdAtstring(date-time)read-onlyrequired
operations[].​operationDependencies[].​updatedAtstring(date-time)read-onlyrequired
operations[].​groupstring or null(uuid)

Group to which this operation belongs, e.g., a portcall.

metadataobject
createdAtstring(date-time)read-onlyrequired
updatedAtstring(date-time)read-onlyrequired
Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "externalId": "string", "operations": [ {} ], "metadata": {}, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Update an operation group

Request

Updates specific fields of the operation group.

Security
tokenAuth
Path
idstring(uuid)required
Bodyapplication/json
planningstring(uuid)
externalIdstring or null
metadataobject
curl -i -X PATCH \
  'https://api.acc.adm.wearetransformers.nl/v1/operation-groups/{id}/' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "planning": "2d429708-7857-4300-9552-6e473ce0d566",
    "externalId": "string",
    "metadata": {}
  }'

Responses

Bodyapplication/json
idstring(uuid)read-onlyrequired
planningstring(uuid)required
externalIdstring or null
operationsArray of objects(Operation)read-onlyrequired
operations[].​idstring(uuid)
operations[].​externalIdstring or null
operations[].​inboundTaskobject(Task)required
operations[].​inboundTask.​taskNamestringrequired
operations[].​inboundTask.​plannedTimestring(date-time)required
operations[].​inboundTask.​expectedTimestring(date-time)required
operations[].​inboundTask.​sigmanumber(double)>= 0required
operations[].​inboundTask.​skewFactornumber(double)required
operations[].​inboundTask.​actualTimestring or null(date-time)required
operations[].​inboundTask.​distributionMeanstring or null(date-time)required
operations[].​inboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​inboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​inboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​inboundTask.​validTostring(date-time)read-onlyrequired
operations[].​inboundTask.​imposedDelayInSecondsinteger
operations[].​inboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​inboundTask.​isMockboolean
Default false
operations[].​outboundTaskobject(Task)required
operations[].​outboundTask.​taskNamestringrequired
operations[].​outboundTask.​plannedTimestring(date-time)required
operations[].​outboundTask.​expectedTimestring(date-time)required
operations[].​outboundTask.​sigmanumber(double)>= 0required
operations[].​outboundTask.​skewFactornumber(double)required
operations[].​outboundTask.​actualTimestring or null(date-time)required
operations[].​outboundTask.​distributionMeanstring or null(date-time)required
operations[].​outboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​outboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​outboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​outboundTask.​validTostring(date-time)read-onlyrequired
operations[].​outboundTask.​imposedDelayInSecondsinteger
operations[].​outboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​outboundTask.​isMockboolean
Default false
operations[].​metadataAviationStandMetadataSchema (object) or MaritimeBerthOperationMetadataSchema (object)
One of:
operations[].​operationNamestringread-onlyrequired
operations[].​isFixedToResourcebooleanrequired
operations[].​tagsArray of strings(uuid)required
operations[].​requiredTagsArray of stringsread-onlyrequired
operations[].​planningstring(uuid)required
operations[].​descriptionstring or null
operations[].​operationDependenciesArray of objects(OperationDependency)read-onlyrequired
operations[].​operationDependencies[].​idstring(uuid)read-onlyrequired
operations[].​operationDependencies[].​fromOperationstring(uuid)required
operations[].​operationDependencies[].​toOperationstring(uuid)required
operations[].​operationDependencies[].​typestring(OperationDependencyTypeEnum)required
  • PRECEDENCE - Precedence
  • GAP - Gap
Enum"PRECEDENCE""GAP"
operations[].​operationDependencies[].​minOffsetinteger or null
operations[].​operationDependencies[].​maxOffsetinteger or null
operations[].​operationDependencies[].​createdAtstring(date-time)read-onlyrequired
operations[].​operationDependencies[].​updatedAtstring(date-time)read-onlyrequired
operations[].​groupstring or null(uuid)

Group to which this operation belongs, e.g., a portcall.

metadataobject
createdAtstring(date-time)read-onlyrequired
updatedAtstring(date-time)read-onlyrequired
Response
application/json
{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "externalId": "string", "operations": [ {} ], "metadata": {}, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" }

Remove an operation group

Request

Removes a grouping of operations. Leaves the operations itself untouched.

Security
tokenAuth
Path
idstring(uuid)required
curl -i -X DELETE \
  'https://api.acc.adm.wearetransformers.nl/v1/operation-groups/{id}/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

No Content

Response
No content

Get all operation groups for a given planning

Request

Gets all operations in an operation group for a given planning.

Security
tokenAuth
Path
idstring(uuid)required
curl -i -X GET \
  'https://api.acc.adm.wearetransformers.nl/v1/plannings/{id}/operation-groups/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/jsonArray [
idstring(uuid)read-onlyrequired
planningstring(uuid)required
externalIdstring or null
operationsArray of objects(Operation)read-onlyrequired
operations[].​idstring(uuid)
operations[].​externalIdstring or null
operations[].​inboundTaskobject(Task)required
operations[].​inboundTask.​taskNamestringrequired
operations[].​inboundTask.​plannedTimestring(date-time)required
operations[].​inboundTask.​expectedTimestring(date-time)required
operations[].​inboundTask.​sigmanumber(double)>= 0required
operations[].​inboundTask.​skewFactornumber(double)required
operations[].​inboundTask.​actualTimestring or null(date-time)required
operations[].​inboundTask.​distributionMeanstring or null(date-time)required
operations[].​inboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​inboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​inboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​inboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​inboundTask.​validTostring(date-time)read-onlyrequired
operations[].​inboundTask.​imposedDelayInSecondsinteger
operations[].​inboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​inboundTask.​isMockboolean
Default false
operations[].​outboundTaskobject(Task)required
operations[].​outboundTask.​taskNamestringrequired
operations[].​outboundTask.​plannedTimestring(date-time)required
operations[].​outboundTask.​expectedTimestring(date-time)required
operations[].​outboundTask.​sigmanumber(double)>= 0required
operations[].​outboundTask.​skewFactornumber(double)required
operations[].​outboundTask.​actualTimestring or null(date-time)required
operations[].​outboundTask.​distributionMeanstring or null(date-time)required
operations[].​outboundTask.​distributionEarlieststring(date-time)read-onlyrequired
operations[].​outboundTask.​distributionLateststring(date-time)read-onlyrequired
operations[].​outboundTask.​createdAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​updatedAtstring(date-time)read-onlyrequired
operations[].​outboundTask.​validFromstring(date-time)read-onlyrequired
operations[].​outboundTask.​validTostring(date-time)read-onlyrequired
operations[].​outboundTask.​imposedDelayInSecondsinteger
operations[].​outboundTask.​derivedExpectedTimestring(date-time)read-onlyrequired
operations[].​outboundTask.​isMockboolean
Default false
operations[].​metadataAviationStandMetadataSchema (object) or MaritimeBerthOperationMetadataSchema (object)
One of:
operations[].​operationNamestringread-onlyrequired
operations[].​isFixedToResourcebooleanrequired
operations[].​tagsArray of strings(uuid)required
operations[].​requiredTagsArray of stringsread-onlyrequired
operations[].​planningstring(uuid)required
operations[].​descriptionstring or null
operations[].​operationDependenciesArray of objects(OperationDependency)read-onlyrequired
operations[].​operationDependencies[].​idstring(uuid)read-onlyrequired
operations[].​operationDependencies[].​fromOperationstring(uuid)required
operations[].​operationDependencies[].​toOperationstring(uuid)required
operations[].​operationDependencies[].​typestring(OperationDependencyTypeEnum)required
  • PRECEDENCE - Precedence
  • GAP - Gap
Enum"PRECEDENCE""GAP"
operations[].​operationDependencies[].​minOffsetinteger or null
operations[].​operationDependencies[].​maxOffsetinteger or null
operations[].​operationDependencies[].​createdAtstring(date-time)read-onlyrequired
operations[].​operationDependencies[].​updatedAtstring(date-time)read-onlyrequired
operations[].​groupstring or null(uuid)

Group to which this operation belongs, e.g., a portcall.

metadataobject
createdAtstring(date-time)read-onlyrequired
updatedAtstring(date-time)read-onlyrequired
]
Response
application/json
[ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "planning": "2d429708-7857-4300-9552-6e473ce0d566", "externalId": "string", "operations": [], "metadata": {}, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ]