Lokki Delivery API

The Delivery API from Lokki — 13 operation(s) for delivery.

Business capability
Logistics Operations Management BC-520.50

Operations 13

POST /v2/delivery/create #
GET /v2/delivery/getDeliveryDistance/{lat}/{lng} #
GET /v2/delivery/getAll #
GET /v2/delivery/getbyDate/{date} #
GET /v2/delivery/getNotAssignedbyDate/{date} #
GET /v2/delivery/getById/{id} #
GET /v2/delivery/getStopById/{companyId}/{deliveryId}/{deliveryStopId} #
GET /v2/delivery/getByOrderId/{orderId}/{type} #
PUT /v2/delivery/update/{id} #
PUT /v2/delivery/updateStopDelivered/{deliveryId}/{deliveryStopId} #
DELETE /v2/delivery/delete/{id} #
POST /v2/delivery/sendMail/{date} #
POST /v2/delivery/signDelivery/{companyId}/{deliveryId}/{deliveryStopId} #

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/lokki-delivery-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

lokki-delivery-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Lokki Delivery API
  description: The main API powering the Lokki Dashboard and Online Store
  version: '2.0'
  contact: {}
servers: []
security:
- x-access-token: []
tags:
- name: Delivery
paths:
  /v2/delivery/create:
    post:
      operationId: createDelivery
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUpdateDeliveryDto'
      responses:
        '201':
          description: ''
      tags:
      - Delivery
  /v2/delivery/getDeliveryDistance/{lat}/{lng}:
    get:
      operationId: getDeliveryDistance
      parameters:
      - name: lat
        required: true
        in: path
        schema:
          type: number
      - name: lng
        required: true
        in: path
        schema:
          type: number
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: number
      tags:
      - Delivery
  /v2/delivery/getAll:
    get:
      operationId: getAllDeliveries
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryJourneyList'
      tags:
      - Delivery
  /v2/delivery/getbyDate/{date}:
    get:
      operationId: getDeliveriesByDate
      parameters:
      - name: date
        required: true
        in: path
        schema:
          format: date-time
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryJourneyList'
      tags:
      - Delivery
  /v2/delivery/getNotAssignedbyDate/{date}:
    get:
      operationId: getNotAssignedDeliveriesByDate
      parameters:
      - name: date
        required: true
        in: path
        schema:
          format: date-time
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryJourney'
      tags:
      - Delivery
  /v2/delivery/getById/{id}:
    get:
      operationId: getDeliveryById
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Delivery
  /v2/delivery/getStopById/{companyId}/{deliveryId}/{deliveryStopId}:
    get:
      operationId: getDeliveryStopById
      parameters:
      - name: companyId
        required: true
        in: path
        schema:
          type: string
      - name: deliveryId
        required: true
        in: path
        schema:
          type: string
      - name: deliveryStopId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OnlineStoreDeliveryStop'
      tags:
      - Delivery
  /v2/delivery/getByOrderId/{orderId}/{type}:
    get:
      operationId: getDeliveryByOrderId
      parameters:
      - name: orderId
        required: true
        in: path
        schema:
          type: string
      - name: type
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeliveryByOrder'
      tags:
      - Delivery
  /v2/delivery/update/{id}:
    put:
      operationId: updateDeliveryJourney
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUpdateDeliveryDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Delivery
  /v2/delivery/updateStopDelivered/{deliveryId}/{deliveryStopId}:
    put:
      operationId: updateDeliveryStopDelivered
      parameters:
      - name: deliveryId
        required: true
        in: path
        schema:
          type: string
      - name: deliveryStopId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDeliveryStopDeliveredDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
      tags:
      - Delivery
  /v2/delivery/delete/{id}:
    delete:
      operationId: deleteDelivery
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
      tags:
      - Delivery
  /v2/delivery/sendMail/{date}:
    post:
      operationId: sendDeliveryMail
      parameters:
      - name: date
        required: true
        in: path
        schema:
          format: date-time
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Delivery
  /v2/delivery/signDelivery/{companyId}/{deliveryId}/{deliveryStopId}:
    post:
      operationId: signDelivery
      parameters:
      - name: companyId
        required: true
        in: path
        schema:
          type: string
      - name: deliveryId
        required: true
        in: path
        schema:
          type: string
      - name: deliveryStopId
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      tags:
      - Delivery
components:
  schemas:
    HistoryInspectionField:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        answers:
          type: array
          items:
            $ref: '#/components/schemas/HistoryInspectionAnswer'
      required:
      - id
      - name
      - answers
    Status:
      type: object
      properties:
        category:
          type: string
        name:
          type: string
        color:
          type: string
        id:
          type: string
        statusId:
          type: string
      required:
      - category
      - name
      - color
      - id
      - statusId
    AttachedFile:
      type: object
      properties:
        name:
          type: string
        key:
          type: string
        size:
          type: number
        type:
          type: string
        uid:
          type: string
      required:
      - name
      - key
      - size
      - type
    PointSchema:
      type: object
      properties:
        type:
          type: string
        coordinates:
          type: array
          items:
            type: number
      required:
      - type
      - coordinates
    Delivery:
      type: object
      properties:
        status:
          type: boolean
        departureAddress:
          allOf:
          - $ref: '#/components/schemas/DeliveryAddress'
        departurePrice:
          type: number
        departureReferencePrice:
          type: number
        departureDeliveredDate:
          format: date-time
          type: string
        arrivalAddress:
          allOf:
          - $ref: '#/components/schemas/DeliveryAddress'
        arrivalPrice:
          type: number
        arrivalReferencePrice:
          type: number
        arrivalDeliveredDate:
          format: date-time
          type: string
        price:
          type: number
      required:
      - status
      - departureAddress
      - departurePrice
      - departureReferencePrice
      - departureDeliveredDate
      - arrivalAddress
      - arrivalPrice
      - arrivalReferencePrice
      - arrivalDeliveredDate
    SentMailRecipients:
      type: object
      properties:
        main:
          type: string
        cc:
          type: array
          items:
            type: string
      required:
      - main
      - cc
    OrderMessageAutoCancel:
      type: object
      properties:
        type:
          type: string
          default: AUTO_CANCEL
          enum:
          - AUTO_CANCEL
        message:
          type: string
        id:
          type: string
        date:
          format: date-time
          type: string
        solved:
          type: boolean
      required:
      - type
      - message
      - id
      - date
      - solved
    DocumentStateEvent:
      type: object
      properties:
        eventId:
          type: string
        productsHistoryId:
          type: string
      required:
      - eventId
      - productsHistoryId
    CustomerSkisetInfos:
      type: object
      properties:
        customerId:
          type:
          - string
          - 'null'
      required:
      - customerId
    HistoryAttachedFile:
      type: object
      properties:
        name:
          type: string
        key:
          type: string
        size:
          type: number
        type:
          type: string
        url:
          type: string
      required:
      - name
      - key
      - size
      - type
    DocumentLink:
      type: object
      properties:
        createdDate:
          format: date-time
          type: string
        id:
          type: string
        documentModelId:
          type: string
        isEmailSend:
          type: boolean
        isSigned:
          type: boolean
        link:
          type: string
        name:
          type: string
        comment:
          type: string
        lang:
          type: string
      required:
      - createdDate
      - id
      - documentModelId
      - isEmailSend
      - isSigned
      - link
      - name
      - comment
      - lang
    WarrantedProducts:
      type: object
      properties:
        productId:
          type: string
        subProductId:
          type: string
        serialNumber:
          type: string
        margin:
          type: number
        pricePerDay:
          type: number
        tulipProductId:
          type: string
        tulipContractOptionType:
          type: string
          enum:
          - OPTION
          - INCLUSION
          - HIDDEN_INCLUSION
        packId:
          type: string
      required:
      - productId
      - subProductId
      - serialNumber
      - margin
      - pricePerDay
      - tulipProductId
      - tulipContractOptionType
    SubProduct:
      type: object
      properties:
        id:
          type: string
        isAvailable:
          type: boolean
        printed:
          type: boolean
        serialNumber:
          type: string
        archive:
          type: boolean
        externalQrCode:
          type: string
        notAvailableRanges:
          type: array
          items:
            $ref: '#/components/schemas/NotAvailableRange'
      required:
      - id
      - isAvailable
      - printed
      - serialNumber
      - archive
      - externalQrCode
      - notAvailableRanges
    ShifterInfo:
      type: object
      properties:
        shifterId:
          type: string
        status:
          type: string
          enum:
          - IMPORTED
          - TO_IMPORT
          - NONE
        importedDate:
          format: date-time
          type:
          - string
          - 'null'
      required:
      - shifterId
      - status
      - importedDate
    CustomerField:
      type: object
      properties:
        label:
          $ref: '#/components/schemas/LocalizedContent'
        value:
          type: string
        id:
          type: string
      required:
      - label
      - value
      - id
    CompleteOrder:
      type: object
      properties:
        messages:
          type: array
          items:
            oneOf:
            - $ref: '#/components/schemas/OrderMessageCancel'
            - $ref: '#/components/schemas/OrderMessageQuestion'
            - $ref: '#/components/schemas/OrderMessageAutoCancel'
        id:
          type: string
        startDate:
          format: date-time
          type: string
        startDateProductAvailable:
          format: date-time
          type: string
        endDate:
          format: date-time
          type: string
        endDateProductAvailable:
          format: date-time
          type: string
        durationInHours:
          type: number
        discount:
          type: number
        vat:
          type: number
        totalTTC:
          type: number
        totalHT:
          type: number
        remark:
          type: string
        hiddenNote:
          type: string
        attachedFiles:
          type: array
          items:
            $ref: '#/components/schemas/AttachedFile'
        labelCalendar:
          type: string
        products:
          type: array
          items:
            $ref: '#/components/schemas/OrderProduct'
        packs:
          type: array
          items:
            $ref: '#/components/schemas/OrderPack'
        services:
          type: array
          items:
            $ref: '#/components/schemas/OrderService'
        customItems:
          type: array
          items:
            $ref: '#/components/schemas/CustomItem'
        customer:
          $ref: '#/components/schemas/Customer'
        isConfirmationEmailSend:
          type: boolean
        companyId:
          type: string
        colorCalendar:
          type: string
        status:
          type: array
          items:
            $ref: '#/components/schemas/Status'
        delivery:
          $ref: '#/components/schemas/Delivery'
        documents:
          type: array
          items:
            $ref: '#/components/schemas/Document'
        documentLink:
          type: array
          items:
            $ref: '#/components/schemas/DocumentLink'
        departurePoint:
          type: string
        arrivalPoint:
          type: string
        additionalTimeBeforeOrder:
          type: number
        additionalTimeAfterOrder:
          type: number
        orderStatus:
          enum:
          - TO_COME
          - IN_PROGRESS
          - ENDED
          type: string
        documentsState:
          type: array
          items:
            $ref: '#/components/schemas/DocumentState'
        documentStateLink:
          type: array
          items:
            $ref: '#/components/schemas/DocumentStateLink'
        promoCode:
          allOf:
          - $ref: '#/components/schemas/PromoCode'
        extInvoiceNumber:
          type: string
        opinionBoosterSent:
          type: boolean
        type:
          enum:
          - ORDER
          - PRE_BOOKING
          - PRE_BOOKING_ADMIN
          - CANCELED
          type: string
        sentMails:
          type: array
          items:
            $ref: '#/components/schemas/SentMailDataDto'
        createdFrom:
          enum:
          - DASHBOARD
          - QUICK_ORDER
          - ONLINE_STORE
          - RENTAL_PLACE_B2B
          - RENTAL_PLACE_LOKKI
          - BORNE
          - SKISET
          - SKIMIUM
          - UNKNOWN
          - TEST
          - ADMIN_IMPORT
          type: string
        referral:
          enum:
          - HEXPLO
          - MOLLOW
          - HOURRAIL
          - YOUBOOK
          - OISE_FUN
          - OUTDOOR_ACTIVE
          - GENERATION_VOYAGE
          - DECATHLON_OUTDOOR
          type: string
        g8Info:
          allOf:
          - $ref: '#/components/schemas/G8Info'
        shifterInfo:
          allOf:
          - $ref: '#/components/schemas/ShifterInfo'
        updatedAt:
          format: date-time
          type: string
        createdAt:
          format: date-time
          type: string
        canceledAt:
          format: date-time
          type: string
        renterConfirmedAt:
          format: date-time
          type: string
        renterManualConfirmationEmailAt:
          format: date-time
          type: string
        renterAutoConfirmationEmailSentAt:
          format: date-time
          type: string
        tulipInformation:
          allOf:
          - $ref: '#/components/schemas/TulipInformation'
        warrantedProducts:
          type: array
          items:
            $ref: '#/components/schemas/WarrantedProducts'
        rpTracking:
          $ref: '#/components/schemas/RpTracking'
        attribution:
          $ref: '#/components/schemas/OrderAttribution'
        skisetInfos:
          $ref: '#/components/schemas/OrderSkisetInfos'
        company:
          $ref: '#/components/schemas/OrderCompanyDetails'
        requestDate:
          format: date-time
          type: string
        requestToOrderDate:
          format: date-time
          type: string
        requestId:
          type: string
        quoteRequestId:
          type: string
        isRequest:
          type: boolean
        depositPrice:
          type: number
        isDepositManuallyEdited:
          type: boolean
        offlineId:
          type: string
      required:
      - messages
      - id
      - startDate
      - startDateProductAvailable
      - endDate
      - endDateProductAvailable
      - durationInHours
      - discount
      - vat
      - totalTTC
      - totalHT
      - remark
      - hiddenNote
      - attachedFiles
      - labelCalendar
      - products
      - packs
      - services
      - customItems
      - customer
      - isConfirmationEmailSend
      - companyId
      - colorCalendar
      - status
      - delivery
      - documents
      - documentLink
      - departurePoint
      - arrivalPoint
      - additionalTimeBeforeOrder
      - additionalTimeAfterOrder
      - orderStatus
      - documentsState
      - documentStateLink
      - promoCode
      - extInvoiceNumber
      - opinionBoosterSent
      - type
      - sentMails
      - createdFrom
      - g8Info
      - shifterInfo
      - updatedAt
      - createdAt
      - tulipInformation
      - warrantedProducts
      - isRequest
      - depositPrice
    DocumentStateLink:
      type: object
      properties:
        createdDate:
          format: date-time
          type: string
        id:
          type: string
        isEmailSend:
          type: boolean
        isSigned:
          type: boolean
        link:
          type: string
        name:
          type: string
        scope:
          type: string
          enum:
          - DEPART
          - RETOUR
        productsInfo:
          type: array
          items:
            $ref: '#/components/schemas/DocumentStateLinkProductsInfo'
      required:
      - createdDate
      - id
      - isEmailSend
      - isSigned
      - link
      - name
      - scope
      - productsInfo
    CustomItem:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        numberSelected:
          type: number
        price:
          type: number
      required:
      - id
      - name
      - numberSelected
      - price
    TulipInfos:
      type: object
      properties:
        address:
          type: string
        zipcode:
          type: string
        city:
          type: string
        managerFirstName:
          type: string
        managerLastName:
          type: string
        sirenNumber:
          type: string
      required:
      - address
      - zipcode
      - city
      - managerFirstName
      - managerLastName
      - sirenNumber
    OnlineStoreDeliveryCustomer:
      type: object
      properties:
        id:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        phone:
          type: string
        mail:
          type: string
      required:
      - id
      - firstName
      - lastName
      - phone
      - mail
    OrderSkisetInfos:
      type: object
      properties:
        booking_id:
          type: string
        reference:
          type: string
        customer_id:
          type:
          - string
          - 'null'
        country_id:
          type: number
        resort_id:
          type: number
        shop_id:
          type: number
      required:
      - booking_id
      - reference
      - customer_id
      - country_id
      - resort_id
      - shop_id
    DeliveryStop:
      type: object
      properties:
        id:
          type: string
        date:
          format: date-time
          type: string
        type:
          type: string
          enum:
          - DEPARTURE
          - ARRIVAL
        order:
          $ref: '#/components/schemas/CompleteOrder'
        orderId:
          type: string
        delivered:
          type: boolean
        deliveredAt:
          format: date-time
          type: string
      required:
      - id
      - date
      - type
      - delivered
      - deliveredAt
    OrderPackCategory:
      type: object
      properties:
        id:
          type: string
        value:
          type: string
      required:
      - id
      - value
    SentMailDataActionsDto:
      type: object
      properties:
        sign:
          type: boolean
        payment:
          type: boolean
        bail:
          type: boolean
        booster:
          type: boolean
      required:
      - sign
      - payment
      - bail
    DeliveryAddress:
      type: object
      properties:
        streetNumber:
          type: string
        streetName:
          type: string
        additional:
          type: string
        postalCode:
          type: string
        city:
          type: string
        country:
          type: string
        location:
          $ref: '#/components/schemas/PointSchema'
        fullAddress:
          type: string
      required:
      - streetNumber
      - streetName
      - additional
      - postalCode
      - city
      - country
      - location
      - fullAddress
    TulipInformation:
      type: object
      properties:
        error:
          type: boolean
        errorMsg:
          type: string
        contractId:
          type: string
        totalAmount:
          type: number
        startDate:
          format: date-time
          type:
          - string
          - 'null'
        endDate:
          format: date-time
          type:
          - string
          - 'null'
      required:
      - error
      - contractId
      - totalAmount
      - startDate
      - endDate
    PackProduct:
      type: object
      properties:
        depositAmount:
          type: number
        rentalType:
          type: string
          enum:
          - LCD
          - LLD
        id:
          type: string
        name:
          type: string
        onlineStoreName:
          $ref: '#/components/schemas/LocalizedContent'
        onlineStoreDescription:
          $ref: '#/components/schemas/LocalizedContent'
        subProducts:
          type: array
          items:
            $ref: '#/components/schemas/OrderSubProduct'
        uuid:
          type: string
        surveyId:
          type: string
        type:
          type: string
          enum:
          - product
          - service
        productImage:
          type: array
          items:
            type: string
      required:
      - depositAmount
      - rentalType
      - id
      - name
      - onlineStoreName
      - onlineStoreDescription
      - subProducts
      - uuid
      - type
      - productImage
    OrderMessageQuestion:
      type: object
      properties:
        type:
          type: string
          default: QUESTION
          enum:
          - QUESTION
        message:
          type: string
        id:
          type: string
        date:
          format: date-time
          type: string
        solved:
          type: boolean
      required:
      - type
      - message
      - id
      - date
      - solved
    ProductPriceRule:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        rules:
          type: array
          items:
            $ref: '#/components/schemas/PriceRule'
      required:
      - id
      - title
      - rules
    HistoryInspectionOption:
      type: object
      properties:
        id:
          type: string
        value:
          type: string
      required:
      - id
      - value
    CreateUpdateDeliveryStopDto:
      type: object
      properties:
        id:
          type: string
        date:
          format: date-time
          type: string
        type:
          enum:
          - DEPARTURE
          - ARRIVAL
          type: string
        orderId:
          type: string
      required:
      - date
      - type
      - orderId
    OrderProduct:
      type: object
      properties:
        depositAmount:
          type: number
        id:
          type: string
        rentalType:
          type: string
          enum:
          - LCD
          - LLD
        name:
          type: string
        onlineStoreName:
          $ref: '#/components/schemas/LocalizedContent'
        onlineStoreDescription:
          $ref: '#/components/schemas/LocalizedContent'
        numberSelected:
          type: number
        productImage:
          type: array
          items:
            type: string
        price:
          type: number
        priceLabelToDisplay:
          type: string
        subProducts:
          type: array
          items:
            $ref: '#/components/schemas/OrderSubProduct'
        isDeleted:
          type: boolean
        vat:
          type: number
        priceRuleVariation:
          allOf:
          - $ref: '#/components/schemas/PriceRuleVariation'
        discount:
          $ref: '#/components/schemas/ItemDiscount'
        initialUnitPrice:
          type: number
        insurance:
          $ref: '#/components/schemas/ProductInsurance'
        surveyId:
          type: string
        requestAnswers:
          type: array
          items:
            type: object
        attachedFiles:
          type: array
          items:
            $ref: '#/components/schemas/AttachedFile'
      required:
      - depositAmount
      - id
      - rentalType
      - name
      - onlineStoreName
      - onlineStoreDescription
      - numberSelected
      - productImage
      - price
      - priceLabelToDisplay
      - subProducts
      - isDeleted
      - vat
      - priceRuleVariation
      - discount
      - initialUnitPrice
      - insurance
    ItemDiscount:
      type: object
      properties:
        discountType:
          type: string
          enum:
          - AMOUNT
          - PERCENTAGE
        amount:
          type: number
      required:
      - discountType
      - amount
    PromoCode:
      type: object
      properties:
        code:
          type: string
        source:
          type: string
          enum:
          - COMPANY
          - LOKKI
        discountAmount:
          type: number
        discountType:
          type: string
          enum:
          - PERCENTAGE
          - AMOUNT
        appliedDiscountAmount:
          type: number
        applyOnDelivery:
          type: boolean
        limitToNewCustomers:
          type: boolean
        limitToVerticales:
          type: array
          items:
            type: string
        limitToCompanies:
          type: array
          items:
            type: string
      required:
      - code
      - source
      - discountAmount
      - discountType
      - applyOnDelivery
    DeliveryLeg:
      type: object
      properties:
        distance:
          type: number
        duration:
          type: number
      required:
      - distance
      - duration
    PriceRuleVariation:
      type: object
      properties:
        rule:
          allOf:
          - $ref: '#/components/schemas/ProductPriceRule'
        deltaAmount:
          type: number
        price:
          type: number
      required:
      - rule
      - deltaAmount
      - price
    DocumentState:
      type: object
      properties:
        createdDate:
          format: date-time
          type: string
        documentId:
          type: string
        isEmailSend:
          type: boolean
        isSigned:
          type: boolean
        key:
          type: string
        name:
          type: string
        events:
          type: array
          items:
            $ref: '#/components/schemas/DocumentStateEvent'
        status:
          type: string
          enum:
          - PENDING
          - SUCCESS
        pdfMonkeyDocumentId:
          type: string
        scope:
          type: string
          enum:
          - DEPART
          - RETOUR
      required:
      - createdDate
      - documentId
      - isEmailSend
      - isSigned
      - key
      - name
      - events
    OrderSubProduct:
      type: object
      properties:
        id:
          type: string
        isAvailable:
          type: boolean
        printed:
          type: boolean
        serialNumber:
          type: string
        archive:
          type: boolean
        externalQrCode:
          type: string
        status:
          type: string
          enum:
          - WAITING
          - USED
          - ENDED
        returnDate:
          format: date-time
          type: string
        answers:
          type: object
      required:
      - id
      - isAvailable
      - printed
      - serialNumber
      - archive
      - externalQrCode
      - status
    OrderService:
      type: object
      properties:
        isAssuranceTulip:
          type: boolean
        id:
          type: string
        name:
          type: string
        rentalType:
          type: string
          enum:
          - LCD
          - LLD
        onlineStoreName:
          $ref: '#/components/schemas/LocalizedContent'
        onlineStoreDescription:
          $ref: '#/components/schemas/LocalizedContent'
        numberSelected:
          type: number
        serviceImage:
          type: array
          items:
            type: string
        price:
          type: number
        priceLabelToDisplay:
          type: string
        isDeleted:
          type: boolean
        vat:
          type: number
        initialUnitPrice:
          type: number
        discount:
          $ref: '#/components/schemas/ItemDiscount'
        surveyId:
          type: string
        answers:
          type: object
      required:
      - isAssuranceTulip
      - id
      - name
      - rentalType
      - onlineStoreName
      - onlineStoreDescription
      - numberSelected
      - serviceImage
      - price
      - priceLabelToDisplay
      - isDeleted
      - vat
      - initialUnitPrice
      - discount
    ProductInsurance:
      type: object
      properties:
        isActivated:
          type: boolean
        tulipProductId:
          type: string
        averagePurchasePrice:
          type: number
        margin:
          type: number
        sum:
          type: number
        contractType:
          type: string
          enum:
          - OPTION
          - INCLUSION
          - HIDDEN_INCLUSION
      required:
      - isActivated
      - tulipProductId
      - averagePurchasePrice
      - margin
      - sum
    OnlineStoreDeliveryOrderItem:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        number:
          type: number
        itemName:
          type: string
        imageUrl:
          type: array
          items:
            type: string
      required:
      - id
      - name
      - number
    PriceRule:
      type: object
      properties:
        _id:
          type: string
        startDate:
          $ref: '#/components/schemas/PriceRuleDate'
        endDate:
          $ref: '#/components/schemas/PriceRuleDate'
        type:
          type: string
          enum:
          - in
          - include
          - overlap
        variation:
          type: number
      required:
      - startDate
      - endDate
      - type
      - variation
    DeliveryJourney:
      type: object
      properties:
        id:
          type: string
        mail:
          type: string
        date:
          format: date-time
          type: string
     

# --- truncated at 32 KB (44 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lokki/refs/heads/main/openapi/lokki-delivery-api-openapi.yml