Skip to content

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

User management (authentication, current user details).

Operations

Managing locations and viewing their associated resources.

Operations

Managing resources (CRUD, listing).

Operations

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

Operations

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

Operations

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

Operations

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

Operations

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

Operations

Managing the plannings and organizations you have access to.

Operations

Interacting with the conversational AI assistant for planning and queries.

Operations

Request

Accepts chat history input and streams agent-generated responses in NDJSON format.

Security
tokenAuth
Path
idstring(uuid)required
Bodyapplication/jsonrequired
chat_historyArray of objects(Chat History)required
chat_history[].​typestring(Type)required
chat_history[].​contentstring(Content)required
virtual_stateAviationVirtualStateInput (object) or MaritimeBerthVirtualStateInput (object) or VirtualStateInput (object)(Virtual State)required
Any of:

This is a placeholder for the AviationStandPlanningAdapter's virtual state input.

virtual_state.​experimental_tools_enabledboolean(Experimental Tools Enabled)

Whether experimental tools are enabled

Default false
virtual_state.​display_window_startinteger(Display Window Start)required
virtual_state.​display_window_endinteger(Display Window End)required
virtual_state.​selected_timeinteger(Selected Time)required
virtual_state.​forward_windowinteger(Forward Window)required
virtual_state.​current_timeinteger(Current Time)required
virtual_state.​controlsobject(AviationControlPanelState)required
virtual_state.​controls.​attach_callbackboolean(Attach Callback)

Whether to attach a callback to the solver for live updates

Default true
virtual_state.​controls.​resolution_balancenumber(Resolution Balance)required

0 strives for minimal conflicts whereas 1 strives for minimal overlap

virtual_state.​controls.​rule_adherencenumber(Rule Adherence)required

0 strives for the goal of the strategy, while 1 strives for optimal rule value

virtual_state.​controls.​max_runtimeinteger(Max Runtime)

Maximum runtime in seconds for the solver, default is 90 seconds

Default 60
virtual_state.​controls.​optimality_gapnumber(Optimality Gap)

The acceptable optimality gap for the solver, default is 0

Default 0
virtual_state.​controls.​strategystring(AviationSolutionStrategy)required
Enum"default""least_moves""max_resilience"
virtual_state.​controls.​ignore_freeze_and_pastboolean(Ignore Freeze And Past)

Ignore freeze window and allow edits in the past

Default false
virtual_state.​controls.​lock_left_edgeboolean(Lock Left Edge)

Lock assignments that cross the left edge of the display window

Default true
virtual_state.​controls.​lock_right_edgeboolean(Lock Right Edge)

Lock assignments that cross the right edge of the display window

Default true
virtual_state.​controls.​restrict_moves_to_same_locationboolean(Restrict Moves To Same Location)

Restrict candidate resources to the same location as the current assignment

Default true
virtual_state.​freeze_windowinteger(Freeze Window)

Duration in seconds after the current_time during which no changes are allowed.

Default 0
virtual_state.​workspace_idWorkspace Id (string) or Workspace Id (null)(Workspace Id)

Workspace ID for workspace-aware queries. None = mainline only.

Default null
Any of:

Workspace ID for workspace-aware queries. None = mainline only.

string(uuid4)(Workspace Id)
Default null
curl -i -X POST \
  'https://api.acc.adm.wearetransformers.nl/v1/plannings/{id}/agent/' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "chat_history": [
      {
        "type": "string",
        "content": "string"
      }
    ],
    "virtual_state": {
      "experimental_tools_enabled": false,
      "display_window_start": 0,
      "display_window_end": 0,
      "selected_time": 0,
      "forward_window": 0,
      "current_time": 0,
      "controls": {
        "attach_callback": true,
        "resolution_balance": 0,
        "rule_adherence": 0,
        "max_runtime": 60,
        "optimality_gap": 0,
        "strategy": "default",
        "ignore_freeze_and_past": false,
        "lock_left_edge": true,
        "lock_right_edge": true,
        "restrict_moves_to_same_location": true
      },
      "freeze_window": 0,
      "workspace_id": null
    }
  }'

Responses

Bodyapplication/json
string

A streaming response providing agent-generated responses incrementally.

Response
application/json
"string"

Utility endpoints, such as generating schedule visualizations.

Operations

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

Our mechanism for indicating constraints, penalties or preferences.

Operations

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

Operations
Operations
Operations
Operations
Operations
Operations
Operations