Locus Order API

The Order API from Locus — 8 operation(s) for order.

Operations 9

GET /client/{clientId}/order Get an order #
GET /client/{clientId}/order/{orderId} Get an order #
PUT /client/{clientId}/order/{orderId} Create an order #
PUT /client/{clientId}/order/{orderId}/park #
PUT /client/{clientId}/order/{orderId}/cancel #
PUT /client/{clientId}/order/{orderId}/open #
PUT /client/{clientId}/order/{orderId}/complete #
POST /client/{clientId}/order/{orderId}/reschedule #
PUT /client/{clientId}/order/{orderId}/verify-inventory Inventory Verification #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/locus-sh-order-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

locus-sh-order-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Locus HomebaseMaster Order API
  description: Manage your deliveries with the Locus API
  version: 1.0.0
servers:
- url: https://oms.locus-api.com/v1
tags:
- name: Order
paths:
  /client/{clientId}/order:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    get:
      summary: Get an order
      operationId: getOrderBySourceId
      parameters:
      - name: sourceOrderId
        in: query
        description: Source Id of the order
        required: true
        schema:
          type: string
      tags:
      - Order
      responses:
        '200':
          description: The latest order in terms of orderDate with the given sourceOrderId
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
      security:
      - locusauth: []
  /client/{clientId}/order/{orderId}:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    get:
      summary: Get an order
      operationId: getOrder
      parameters:
      - name: include
        in: query
        description: Comma separated list of extra fields that should be included for the Order. Supported values are HOMEBASE & LOCATION
        required: false
        schema:
          type: string
      tags:
      - Order
      responses:
        '200':
          description: Requested Order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
      security:
      - locusauth: []
    put:
      summary: Create an order
      operationId: createOrder
      parameters:
      - name: suffix
        in: query
        description: Append given suffix to all orderIds, if provided
        required: false
        schema:
          type: string
      - $ref: '#/components/parameters/OverwriteParam'
      tags:
      - Order
      responses:
        '200':
          description: Created Order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateOrderRequest'
        description: Order create request
        required: true
  /client/{clientId}/order/{orderId}/park:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    put:
      description: Update status as parked for a single order
      operationId: parkOrder
      tags:
      - Order
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ParkOrderRequest'
        description: park request
  /client/{clientId}/order/{orderId}/cancel:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    put:
      description: Update status as cancelled for a single order
      operationId: cancelOrder
      tags:
      - Order
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CancelOrderRequest'
        description: cancel order request
  /client/{clientId}/order/{orderId}/open:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    put:
      description: Update status as open for a single order
      operationId: openOrder
      tags:
      - Order
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
      security:
      - locusauth: []
  /client/{clientId}/order/{orderId}/complete:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    put:
      description: Update the order status to COMPLETE
      operationId: completeOrder
      tags:
      - Order
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompleteOrderRequest'
        description: Complete order request
        required: true
  /client/{clientId}/order/{orderId}/reschedule:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    post:
      description: Reschedule the order for given date
      operationId: rescheduleOrder
      tags:
      - Order
      responses:
        '200':
          description: Success response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GenericResponse'
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderRescheduleRequest'
        description: Order reschedule request
        required: true
  /client/{clientId}/order/{orderId}/verify-inventory:
    parameters:
    - $ref: '#/components/parameters/ClientIdParam'
    - $ref: '#/components/parameters/OrderIdParam'
    put:
      summary: Inventory Verification
      operationId: verifyInventory
      tags:
      - Order
      responses:
        '200':
          description: Void response
      security:
      - locusauth: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InventoryVerificationRequest'
        required: true
components:
  schemas:
    DateSlotInfoElement:
      properties:
        date:
          type: string
        slotIds:
          type: array
          items:
            type: string
    PaymentInstrumentType:
      description: Denotes the type of payment instrument
      type: string
      enum:
      - CASH
      - COUPON
      - ECOD
      - ONLINE
    ChecklistItems:
      properties:
        customerCompleted:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        customerCancelled:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        homebaseCompleted:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        homebaseCancelled:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
    OrderFreightCostMetadata:
      properties:
        freightCost:
          $ref: '#/components/schemas/FreightCost'
    TransactionDetail:
      $ref: https://swagger.locus-api.com/oms.yaml#/definitions/TransactionDetail
    ContractId:
      type: object
    OrderPaymentStatus:
      description: Payment status of an order.
      type: string
      enum:
      - PAID
      - PARTIALLY_PAID
      - UNPAID
      - PENDING
    OrderCostEnum:
      description: Status based on contract calculation. Possible values DISABLED, CONTRACT_MISSING, CALCULATION_FAILURE, AVAILABLE
      type: string
      enum:
      - DISABLED
      - CONTRACT_MISSING
      - CALCULATION_FAILURE
      - AVAILABLE
    LineItemPart:
      description: A part of the line item which can be shipped separately
      required:
      - volume
      properties:
        id:
          type: string
        volume:
          $ref: '#/components/schemas/Volume'
        weight:
          $ref: '#/components/schemas/Weight'
        originalWeight:
          $ref: '#/components/schemas/Weight'
        dimensions:
          $ref: '#/components/schemas/OmsDimensions'
        piecesCount:
          type: integer
          format: int32
          default: 1
    FreightCost:
      $ref: https://swagger.locus-api.com/common-entities.yaml#/definitions/FreightCost
    TourCostMetadata:
      properties:
        dispatchedFreightCost:
          $ref: '#/components/schemas/TourFreightCostMetadata'
    LineItemSummary:
      properties:
        totalWeight:
          description: Sum of individual weights of all parts
          $ref: '#/components/schemas/Weight'
        totalVolume:
          description: Sum of individual volumes of all parts
          $ref: '#/components/schemas/Volume'
        totalReweighCount:
          type: integer
          format: int32
          default: 0
    Reason:
      properties:
        reasonDescription:
          type: string
    Payment:
      description: A payment request, through any of the payment instruments.
      required:
      - instrument
      - desiredAmount
      - status
      - createdOn
      - updatedOn
      properties:
        amountId:
          type: string
        transactionId:
          type: string
        instrument:
          $ref: '#/components/schemas/PaymentInstrument'
        paymentId:
          $ref: '#/components/schemas/PaymentId'
        desiredAmount:
          $ref: '#/components/schemas/Amount'
        actualAmount:
          $ref: '#/components/schemas/Amount'
        reconciledAmount:
          $ref: '#/components/schemas/Amount'
        amountEditable:
          type: boolean
          description: Boolean that denotes whether or not amount can be edited after the invoice is generated. This can support partial payments.
        status:
          $ref: '#/components/schemas/PaymentStatus'
        createdOn:
          description: Timestamp of creation
          type: string
          format: date-time
        updatedOn:
          description: Timestamp of last update
          type: string
          format: date-time
        latestActor:
          description: Actor who triggered this payment
          $ref: '#/components/schemas/Actor'
        additionalInfo:
          description: Additional information that needs to be shared for the payment
          type: object
          additionalProperties:
            type: string
        reconciledAmountChecklistValues:
          $ref: '#/components/schemas/Checklist'
        reconciledOn:
          description: Timestamp of last update
          type: string
          format: date-time
    OrderGeocodedLocation:
      properties:
        city:
          type: string
        state:
          type: string
    GeocodingConfidence:
      $ref: https://swagger.locus-api.com/geocoding.yaml#/definitions/GeocodingConfidence
    ParkOrderRequest:
      properties:
        reason:
          $ref: '#/components/schemas/Reason'
    OrderStatusUpdate:
      description: Merge patch request wrapper
      properties:
        channel:
          $ref: '#/components/schemas/FulfillmentChannel'
        orderStatus:
          $ref: '#/components/schemas/OrderStatus'
        orderSubStatus:
          $ref: '#/components/schemas/OrderSubStatus'
        orderMetadata:
          $ref: '#/components/schemas/OrderMetadata'
        updatedBy:
          type: string
        updatedOn:
          type: string
          format: date-time
    PaymentId:
      description: Id of the payment instrument as identified by a provider
      required:
      - instrumentId
      - paymentId
      properties:
        instrumentId:
          $ref: '#/components/schemas/ProviderInstrumentId'
        paymentId:
          description: Id for the payment as identified by the provider.
          type: string
    ChecklistItem:
      $ref: https://swagger.locus-api.com/task.yaml#/definitions/ChecklistItem
    DeliveryAttempt:
      description: Delivery attempt history
      properties:
        statusUpdates:
          type: array
          items:
            $ref: '#/components/schemas/OrderStatusUpdate'
    OmsDimensions:
      description: Dimensions of an item
      properties:
        length:
          description: Length of the item in meters
          type: number
          format: double
        breadth:
          description: Breadth of the item in meters
          type: number
          format: double
        height:
          description: Height of the item in meters
          type: number
          format: double
        unit:
          $ref: '#/components/schemas/LengthUnit'
    AmountType:
      description: Payment status of an order.
      type: string
      enum:
      - CURRENT
      - EXECUTED
    Amount:
      description: Amount of an item
      properties:
        amount:
          type: number
          format: double
        currency:
          type: string
          description: Currency for the amount. Value should be one of the active codes of official ISO 4217 currency names. Examples are INR, USD, AED, GBP etc
        symbol:
          type: string
          description: A symbol for the currency. If missing, will default to currency string
    PromiseInformation:
      allOf:
      - $ref: '#/components/schemas/CreatePromiseInformationRequest'
      - type: object
        properties:
          promiseId:
            type: string
          slotId:
            type: string
          date:
            type: string
          dateSlots:
            type: array
            items:
              $ref: '#/components/schemas/DateSlotInfoElement'
          timeline:
            type: array
            items:
              $ref: '#/components/schemas/PromiseTimelineElement'
    MinimalMasterLineItem:
      properties:
        id:
          description: An identifier for the SKU. If provided, details related to line item will be populated using sku master of the client
          type: string
        name:
          description: Name of the item
          type: string
        code:
          description: Line Item Code
          type: string
        parts:
          type: array
          items:
            $ref: '#/components/schemas/MasterLineItemPart'
    StructuredAddress:
      description: A real world address
      properties:
        id:
          description: An id for the address
          type: string
        placeName:
          description: Name of the place
          type: string
        localityName:
          description: Name of the locality if available
          type: string
        formattedAddress:
          description: Text representation of the address.
          type: string
        subLocalityName:
          description: Name of the sub-locality if available
          type: string
        pincode:
          description: Zipcode for the address
          type: string
        city:
          description: City of the address
          type: string
        state:
          description: State of the address
          type: string
        countryCode:
          description: Country code to uniquely identify the country
          type: string
        locationType:
          description: Possible values currently are STANDALONE_APARTMENT, GATED_COMMUNITY, INDEPENDENT_PREMISES
          type: string
        placeHash:
          description: Hashed value of placeName for internal use
          type: string
        locationSource:
          $ref: '#/components/schemas/LocationSource'
        locationName:
          description: Location name to be populated from location entity
          type: string
    ProviderInstrumentId:
      description: Id of the payment instrument as identified by a provider
      required:
      - providerId
      - instrumentId
      properties:
        providerId:
          description: Id of payment instrument provider. For eg, razor-pay for RazorPay instruments. This should be one of the supported values.
          type: string
        instrumentId:
          description: Id of the payment instrument as identified by the provider.
          type: string
    Actor:
      type: object
    OrderStatus:
      description: Order status enum
      type: string
      enum:
      - OPEN
      - CONFIRMED
      - PLANNING
      - PLANNED
      - ASSIGNED
      - EXECUTING
      - COMPLETED
      - CANCELLED
      - PARKED
      - RECEIVED
    MinimalLatLng:
      description: A latitude, longitude pair
      required:
      - lat
      - lng
      properties:
        lat:
          type: number
          format: double
        lng:
          type: number
          format: double
    AutoSortDetails:
      description: details containing the route
      properties:
        route:
          description: Route for given order
          $ref: '#/components/schemas/MinimalAutosortRoute'
        versionedMapIds:
          type: array
          items:
            $ref: '#/components/schemas/VersionedMapId'
        autosortId:
          description: Id of the auto sort request
          type: string
    TransitCode:
      properties:
        code:
          type: string
        description:
          type: string
    AppFields:
      $ref: https://swagger.locus-api.com/task.yaml#/definitions/AppFields
    ResponseSource:
      $ref: https://swagger.locus-api.com/geocoding.yaml#/definitions/ResponseSource
    Quantity:
      description: Quantity of items
      required:
      - value
      - unit
      properties:
        value:
          description: Quantity of the item in the given unit.
          type: integer
          format: int32
        unit:
          type: string
    LineItemTransactionStatus:
      allOf:
      - $ref: '#/components/schemas/BaseLineItemTransactionStatus'
      - type: object
        properties:
          transactionStatus:
            $ref: '#/components/schemas/TransactionStatus'
          homebaseTransactionStatus:
            $ref: '#/components/schemas/TransactionStatus'
          outboundTransactionStatus:
            $ref: '#/components/schemas/TransactionStatus'
          boxDetailSummary:
            $ref: '#/components/schemas/BoxDetailSummary'
    OrderRescheduleRequest:
      properties:
        customerRescheduleRequest:
          $ref: '#/components/schemas/RescheduleRequest'
        homebaseRescheduleRequest:
          $ref: '#/components/schemas/RescheduleRequest'
    CratingInfo:
      $ref: https://swagger.locus-api.com/task.yaml#/definitions/CratingInfo
    TourDetail:
      description: Tour details
      properties:
        tourId:
          type: string
        sequence:
          type: integer
          format: int32
        riderId:
          type: string
        riderName:
          type: string
        riderNumber:
          type: string
        transporterId:
          type: string
        transporterName:
          type: string
        transporterType:
          $ref: '#/components/schemas/TransporterType'
        vehicleModelId:
          type: string
        vehicleModelName:
          type: string
        vehicleId:
          type: string
        vehicleName:
          type: string
        vehicleRegistrationNumber:
          type: string
        tourStartTime:
          type: string
          format: date-time
        tourEndTime:
          type: string
          format: date-time
        tourTravelDistance:
          type: integer
          format: int32
        isSortedForTour:
          type: boolean
          default: false
        costMetadata:
          $ref: '#/components/schemas/TourCostMetadata'
        isMultiTrip:
          type: boolean
        parentTourId:
          type: string
        customProperties:
          type: object
          additionalProperties:
            type: string
    BaseCostBreakup:
      type: object
    PodVerificationStatusEnum:
      $ref: https://swagger.locus-api.com/task.yaml#/definitions/PodVerificationStatusEnum
    CompleteOrderRequest:
      description: Order complete request
      properties:
        orderId:
          type: string
        timestamp:
          type: string
          format: date-time
        homebaseTimestamp:
          type: string
          format: date-time
        lineItems:
          type: array
          items:
            $ref: '#/components/schemas/LineItemTransactionStatus'
        customerTransactionStatus:
          $ref: '#/components/schemas/TransactionDetail'
        homebaseTransactionStatus:
          $ref: '#/components/schemas/TransactionDetail'
        isSoftComplete:
          type: boolean
          description: Flag to denote if completion of order to be treated as soft or hard
          default: false
    Order:
      description: Order model
      allOf:
      - $ref: '#/components/schemas/CreateOrderRequest'
      - type: object
        properties:
          homebase:
            type: object
          location:
            type: object
          parentOrderId:
            description: Id to identify parent of orders that have split
            type: string
          orderStatus:
            $ref: '#/components/schemas/OrderStatus'
          orderSubStatus:
            $ref: '#/components/schemas/OrderSubStatus'
          channel:
            $ref: '#/components/schemas/FulfillmentChannel'
          mode:
            $ref: '#/components/schemas/FulfillmentMode'
          masterLineItems:
            type: array
            items:
              $ref: '#/components/schemas/MinimalMasterLineItem'
          orderMetadata:
            $ref: '#/components/schemas/OrderMetadata'
          automationMetadata:
            $ref: '#/components/schemas/AutomationMetadata'
          lastCallbackTimestamp:
            description: Timestamp of last callback from downstream
            type: string
            format: date-time
          combinedSkills:
            type: array
            items:
              type: string
          history:
            type: array
            items:
              $ref: '#/components/schemas/DeliveryAttempt'
          timeline:
            type: array
            items:
              $ref: '#/components/schemas/TimelineEntry'
          transactionDurationInfo:
            $ref: '#/components/schemas/TransactionDurationInfo'
          obfuscated:
            type: boolean
            default: false
          classVersion:
            type: integer
            format: int32
            default: 1
          geocodingMetadata:
            $ref: '#/components/schemas/GeocodingMetadata'
          autosortDetails:
            $ref: '#/components/schemas/AutoSortDetails'
          effectiveVolume:
            $ref: '#/components/schemas/Volume'
          effectiveWeight:
            $ref: '#/components/schemas/Weight'
          channelSelected:
            type: boolean
            default: false
          amountInformation:
            $ref: '#/components/schemas/OrderAmountInformation'
          lineItemDetails:
            $ref: '#/components/schemas/LineItemDetails'
          promiseInformation:
            $ref: '#/components/schemas/PromiseInformation'
          boxDetailSummary:
            $ref: '#/components/schemas/BoxDetailSummary'
    MinimalLineItem:
      description: A single item contained in the order
      required:
      - name
      - quantity
      properties:
        id:
          description: An identifier for the SKU. If provided, details related to line item will be populated using sku master of the client
          type: string
        lineItemId:
          description: An identifier for the line item.
          type: string
        skuId:
          description: An identifier for the line item.
          type: string
        packId:
          description: A unique identifier of the line item, this is different from sku id. This would be unique across orders and only one qunatity of line item can exist with this id.
          type: string
        name:
          description: Name of the item
          type: string
        description:
          description: description of the item
          type: string
        handlingUnit:
          $ref: '#/components/schemas/HandlingUnitEnum'
          default: QUANTITY
        quantity:
          description: Quantity of the item
          type: integer
          format: int32
          default: 0
        quantityUnit:
          type: string
        price:
          $ref: '#/components/schemas/Amount'
        commodityCode:
          $ref: '#/components/schemas/TransitCode'
        parts:
          type: array
          items:
            $ref: '#/components/schemas/LineItemPart'
        customProperties:
          description: Additional properties which clients wants to have along with standard entity properties
          type: object
          additionalProperties:
            type: string
        summary:
          description: Summarized data of all line item parts
          $ref: '#/components/schemas/LineItemSummary'
        totalVolume:
          description: total volume of the line item multiplied by it's quantity
          $ref: '#/components/schemas/Volume'
        totalWeight:
          description: total weight of the line item multiplied by it's quantity
          $ref: '#/components/schemas/Weight'
        handlingUnits:
          type: array
          items:
            $ref: '#/components/schemas/HandlingUnitEnum'
        boxDetailSummary:
          $ref: '#/components/schemas/BoxDetailSummary'
        canRiderEdit:
          description: flag to denote whether the rider is allowed to edit the line item
          type: boolean
          default: true
    BoxDetailSummary:
      properties:
        totalCases:
          type: integer
          format: int32
        totalPieces:
          type: integer
          format: int32
        quantityUnit:
          type: string
        boxUnit:
          type: string
    EntityDefinition:
      type: object
    RescheduleRequest:
      properties:
        rescheduleDate:
          type: string
          description: The date for which order is to be rescheduled. It should be ISO Date. eg. 2017-09-14
        rescheduleSlot:
          $ref: '#/components/schemas/TimeSlot'
        reason:
          $ref: '#/components/schemas/Reason'
        slotId:
          type: string
    LineItemDetails:
      $ref: https://swagger.locus-api.com/oms.yaml#/definitions/LineItemDetails
    PaymentStatus:
      description: Status of the payment
      type: string
      enum:
      - PENDING
      - SUCCESS
      - FAILED
      - CANCELLED
    BaseTransactionStatus:
      required:
      - triggerTime
      - transactedQuantity
      - checklistValues
      properties:
        orderedQuantity:
          description: Quantity of the item that has been ordered
          type: integer
          format: int32
        transactedQuantity:
          description: Quantity of the item that has been transacted
          type: integer
          format: int32
        checklistValues:
          $ref: '#/components/schemas/Checklist'
        triggerTime:
          description: Time when the transaction status update was triggered on the client side
          type: string
          format: date-time
        actor:
          $ref: '#/components/schemas/Actor'
        status:
          $ref: '#/components/schemas/OrderDetailStatusEnum'
    ContractCostMetadata:
      properties:
        contractId:
          $ref: '#/components/schemas/ContractId'
        status:
          $ref: '#/components/schemas/OrderCostEnum'
        totalCost:
          description: Total cost for the given request
          type: number
          format: double
        costBreakup:
          type: array
          items:
            $ref: '#/components/schemas/BaseCostBreakup'
    LocationSource:
      description: location provider source.
      type: string
      enum:
      - LOCATION_MASTER
    SlaStatusEnum:
      $ref: https://swagger.locus-api.com/task.yaml#/definitions/SlaStatusEnum
    TransactionStatus:
      allOf:
      - $ref: '#/components/schemas/BaseTransactionStatus'
      - type: object
        properties:
          orderedWeight:
            description: Weight of the item that has been ordered
            $ref: '#/components/schemas/Weight'
          transactedWeight:
            description: Weight of the item that has been transacted
            $ref: '#/components/schemas/Weight'
          orderedVolume:
            description: Volume of the item that has been ordered
            $ref: '#/components/schemas/Volume'
          transactedVolume:
            description: Volume of the item that has been transacted
            $ref: '#/components/schemas/Volume'
    InventoryVerificationRequest:
      description: Inventory Verification Request
      required:
      - isInventoryVerified
      properties:
        isInventoryVerified:
          type: boolean
        verifyAt:
          type: string
          format: date-time
    BaseLineItemTransactionStatus:
      description: Transaction status of a line item
      properties:
        id:
          type: string
          description: id of the line item
        reconcileQuantity:
          type: integer
          format: int32
          default: 0
        handlingUnit:
          $ref: '#/components/schemas/HandlingUnitEnum'
    Volume:
      description: Volume of an item
      required:
      - value
      - unit
      properties:
        value:
          description: Value of the volume in the given unit.
          type: string
        unit:
          $ref: '#/components/schemas/VolumeUnit'
    VolumeUnit:
      description: Unit for volume
      type: string
      enum:
      - CMM
      - CCM
      - CC
      - CM
      - M3
      - CIN
      - CI
      - CFT
      - CF
      - CYD
      - IC
      - TC
      - L
    TimelineEntry:
      required:
      - type
      - updatedOn
      - updatedBy
      properties:
        type:
          description: Timeline entry type
          type: string
          default: STATUS_UPDATE
          enum:
          - STATUS_UPDATE
          - VERIFIED
          - RESCHEDULE
          - NOTES_UPDATE
          - TEAM_UPDATE
          - DELIVERY_WINDOW_UPDATE
          - PAYMENT_UPDATE
          - EXECUTED_AMOUNT_UPDATE
          - CURRENT_AMOUNT_UPDATE
        channel:
          $ref: '#/components/schemas/FulfillmentChannel'
        orderStatus:
          $ref: '#/components/schemas/OrderStatus'
        orderSubStatus:
          $ref: '#/components/schemas/OrderSubStatus'
        updatedBy:
          type: string
        updatedOn:
          type: string
          format: date-time
        eventTimestamp:
          type: string
          format: date-time
        reasonCode:
          $ref: '#/components/schemas/ReasonCode'
        reasonDescription:
          type: string
        source:
          description: Origin of the request (Dashboard, Application)
          type: string
        invalidEntry:
          description: flag to denote out of order, async and other invalid entry
          type: boolean
          default: false
        attributes:
          type: object
          additionalProperties:
            type: object
    CreatePromiseInformationRequest:
      properties:
        serviceTypeId:
          type: string
    FulfillmentChannel:
      description: Channel through which the Order is fulfilled
      type: string
      enum:
      - DISPATCH_IQ
      - TRACK_IQ
      - ORCHESTRATION_IQ
      - TOUR_DISPATCH_MANAGEMENT
    TransactionChecklistItems:
      properties:
        outboundChecklist:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        inboundChecklist:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        assetInboundChecklist:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
        cashInboundChecklist:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistItem'
    PaymentInstrument:
      description: A method of payment
      required:
      - instrumentType
      - instrumentName
      properties:
        instrumentType:
          $ref: '#/components/schemas/PaymentInstrumentType'
        instrumentName:
          description: A human friendly name for the payment instrument
          type: string
        providerInstrumentId:
          $ref: '#/components/schemas/ProviderInstrumentId'
    Sh

# --- truncated at 32 KB (60 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/locus-sh/refs/heads/main/openapi/locus-sh-order-api-openapi.yml