Deliverect Fulfillment API

Fulfillment operations for the Deliverect Dispatch API.

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/deliverect-fulfillment-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 email required.

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

OpenAPI Specification

deliverect-fulfillment-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Deliverect Channel Accounts Fulfillment API
  description: Integrate ordering channels and marketplaces with Deliverect to create and cancel orders, sync menus, snooze products, update store and courier status, and exchange payment events. Authenticates with OAuth 2.0 machine-to-machine access tokens scoped via genericChannel.
  version: '1.0'
  x-generated-from: documentation
  x-source-url: https://developers.deliverect.com/reference
  x-last-validated: '2026-06-02'
  contact:
    name: Kin Lane
    email: kin@apievangelist.com
  license:
    name: All Rights Reserved
servers:
- url: https://api.deliverect.com
  description: Production
- url: https://api.staging.deliverect.com
  description: Staging
security:
- oauth2: []
tags:
- name: Fulfillment
  description: Fulfillment operations for the Deliverect Dispatch API.
paths:
  /fulfillment/validate:
    post:
      summary: Deliverect Dispatch Availability
      description: Validate dispatch availability for a delivery location.
      operationId: post_fulfillment_validate
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                channelLinkId:
                  type: string
                  example: 5e8abc11dec0001a009b
                deliveryLocations:
                  type: object
                  properties:
                    packageSize:
                      type: string
                      example: string
                    name:
                      type: string
                      example: Deliverect's Pizza Place
                    phone:
                      type: string
                      example: '+15555550123'
                    street:
                      type: string
                      example: string
                    streetNumber:
                      type: string
                      example: string
                    city:
                      type: string
                      example: string
                    country:
                      type: string
                      example: BE
                    postalCode:
                      type: string
                      example: string
                    deliveryTime:
                      type: string
                      format: date-time
                      example: '2026-03-15T14:30:00Z'
                    coordinates:
                      type: object
                      properties:
                        coordinates:
                          type: array
                          items:
                            type: number
                            example: 1.0
                          minItems: 2
                          maxItems: 2
                  required:
                  - street
                  - city
                  - country
                  - postalCode
                  - deliveryTime
                pickupTime:
                  type: string
                  example: '2026-03-15T14:30:00Z'
              required:
              - channelLinkId
              - deliveryLocations
              - pickupTime
            examples:
              Dispatch Availability - Multiple Stores:
                summary: Dispatch Availability - Multiple Stores
                value:
                  channelLinkIds:
                  - 62********************7c
                  - 62********************7d
                  deliveryLocations:
                    deliveryTime: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    packageSize: unknown
                    name: customer name
                    street: customer street and number
                    city: customer city
                    country: customer country
                    postalCode: postal code
                    phone: '+111111111'
                    coordinates:
                      longitude: 3.73361
                      latitude: 51.03111
              Dispatch Availability:
                summary: Dispatch Availability
                value:
                  channelLinkId: 62********************7c
                  pickupTime: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  deliveryLocations:
                    deliveryTime: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    packageSize: unknown
                    name: customer name
                    street: customer street and number
                    city: customer city
                    country: customer country
                    postalCode: postal code
                    source: customer address
                    phone: '+111111111'
                    coordinates:
                      longitude: 3.73361
                      latitude: 51.03111
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              examples:
                Offers Available - Multiple Stores:
                  summary: Offers Available - Multiple Stores
                  value:
                    channelLinkIds:
                    - 61bcc34**57cc48c23eb65
                    validationId: 62********************3e
                    available: true
                    expiresAt: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    deliveryTimeETA: '2022-08-08 11:00:00'
                    pickupTimeEta: '2022-08-08 10:00:00'
                    price: 0
                Offers Not Available:
                  summary: Offers Not Available
                  value: "{\n  \"available\": False, \n  \"errors\": \"No valid offers available\"\n}"
                Offer Available:
                  summary: Offer Available
                  value:
                    validationId: 62********************3e
                    available: true
                    expiresAt: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    deliveryTimeETA: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                    price: 0
        '400':
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                Bad Request:
                  summary: Bad Request
                  value:
                  - loc:
                    - channelLinkId
                    msg: field required
                    type: value_error.missing
                  - loc:
                    - deliveryLocations
                    - deliveryTime
                    msg: field required
                    type: value_error.missing
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                Unauthorized:
                  summary: Unauthorized
                  value:
                    code: token_expired
                    description: token is expired
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                Forbidden:
                  summary: Forbidden
                  value:
                    error: ChannelLinkId sent is not linked to the account
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                Not Found:
                  summary: Not Found
                  value:
                    error: ChannelLinkId sent is not found
          description: Not Found
      tags:
      - Fulfillment
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /fulfillment/cancel:
    post:
      tags:
      - Fulfillment
      summary: Deliverect Cancel Delivery
      responses:
        '200':
          description: Ok
          content:
            application/json:
              examples:
                OK:
                  summary: OK
                  value: '{}'
        '400':
          content:
            application/json:
              schema:
                type: object
                properties: {}
              examples:
                Bad Request:
                  summary: Bad Request
                  value: '{}'
          description: Bad Request
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties: {}
            examples:
              Cancel Example:
                summary: Cancel Example
                value:
                  deliveryJobId: 648******************874
                  reasonTag: CUSTOMER_UNRESPONSIVE
                  deliveryFeeCharged: 4500
                  extraDescription: Tried many times
      operationId: post_post_fulfillment_cancel
      description: Deliverect Cancel Delivery
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /fulfillment/generic/events:
    post:
      tags:
      - Fulfillment
      summary: Deliverect Update Delivery
      description: 'This webhook allows to persist updates from third party delivery systems to Deliverect. Currently updates to following delivery information are supported. See examples for technical details. - delivery status - pickup time & eta - delivery time & eta - courier information ##### Delivery job statuses: Following delivery job statuses exist in deliverect: | Status name | Integer value | |-|-| | `IN_DELIVERY` | 80 | | `EN_ROUTE_TO_PICKUP` | 83 | | `ARRIVED_AT_PICKUP` | 85 | | `EN_ROUTE_TO_DROPOFF` | 87 | | `ARRIVED_AT_DROPOFF` | 89 | | `DELIVERED` | 90 | ##### NOTE Please note, that here and later all dates and times, coming from/to Deliverect are UTC.'
      requestBody:
        content:
          application/json:
            schema:
              type: object
              examples:
              - deliveryJobId: 602***66a
                externalJobId: DJ214233
                pickupTimeETA: '2021-05-13T13:59:00Z'
                transportType: bicycle
                courier:
                  name: Mac Miller
                  phone: '+3292331234'
                  longitude: '51.05433703603857'
                  latitude: '3.738214852809371'
                locations:
                - orderId: 602987dd539d9697c836198b
                  channelOrderDisplayId: '1234567890'
                  status: 40
                  deliveryTimeETA: '2021-05-13T14:13:00Z'
            examples:
              Update Example:
                summary: Update Example
                value:
                  deliveryJobId: 61********************b4
                  pickupTimeETA: YYYY-MM-DDTHH:mm:ss.SSSSSSZ
                  transportType: bicycle
                  trackingUrl: https://example.com
                  courier:
                    name: Mac Miller
                    phone: '+3292331234'
                    longitude: '51.05433703603857'
                    latitude: '3.738214852809371'
                  locations:
                  - orderId: 61********************b4
                    status: 83
                    deliveryTimeETA: YYYY-MM-DDTHH:mm:ss.SSSSSSZZ
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
              example: OK
            text/plain:
              schema:
                type: string
              example: OK
        default:
          description: default
          content:
            text/plain:
              schema:
                type: string
              example: null
      operationId: post_post_fulfillment_generic_events
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0 machine-to-machine client-credentials. Exchange client_id/client_secret at POST /oauth/token for a Bearer access_token.
      flows:
        clientCredentials:
          tokenUrl: https://api.deliverect.com/oauth/token
          scopes: {}