Skip to Content

OrdersApi

All URIs are relative to https://business.apis.kesk.app/v1 

MethodHTTP requestDescription
appCreatePOST /ordersCreate a new order with automatic type detection.
getOrderDetailsGET /orders/{id}Get detailed information for a specific order.
getOrdersGET /ordersList orders with filtering and pagination.
processServiceOrderPOST /orders/serviceCreate a service booking order.
trackOrderPOST /track-orderTrack an order by its tracking code.
updateOrderPUT /orders/{id}Update order status, payment, or assignment.

appCreate

OrderResponse appCreate(CreateOrderInput, photo, photos)

Create a new order with automatic type detection.

Creates an order based on the provided type field: regular product orders, package delivery, or service bookings. Validates payment methods, checks wallet balance, and supports both single-vendor and multi-vendor orders. Requires payment method unless proof of payment is provided.

Parameters

NameTypeDescriptionNotes
CreateOrderInputCreateOrderInputOrder creation details including items, addresses, and payment information
photoStringOptional payment proof photo (single)[optional] [default to null]
photosStringOptional payment proof photos (multiple)[optional] [default to null]

Return type

OrderResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: application/json; charset=utf-8
  • Accept: application/json; charset=utf-8

getOrderDetails

OrderResponse getOrderDetails(id)

Get detailed information for a specific order.

Retrieves comprehensive order details including items, vendor information, delivery address, driver details, payment status, and order history. Includes related entities and media URLs.

Parameters

NameTypeDescriptionNotes
idLongOrder ID to retrieve[default to null]

Return type

OrderResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json; charset=utf-8

getOrders

PaginatedResponse_OrderListItemResponse getOrders(driver_id, vendor_id, status, type, vendor_type_id, page, per_page)

List orders with filtering and pagination.

Retrieves a paginated list of orders for the authenticated user with optional filtering by status, vendor, driver, or order type. Supports filtering for history (completed orders) or assigned (active orders) through the type parameter.

Parameters

NameTypeDescriptionNotes
driver_idLongFilter orders by driver ID[optional] [default to null]
vendor_idLongFilter orders by vendor ID[optional] [default to null]
statusOrderStatusFilter orders by status (pending, preparing, ready, enroute, delivered, failed, cancelled)[optional] [default to null] [enum: Pending, Accepted, Preparing, Ready, Enroute, Delivered, Completed, Failed, Cancelled]
typeOrderListTypeFilter by order list type (history for completed orders, assigned for active orders)[optional] [default to null] [enum: history, assigned]
vendor_type_idLongFilter orders by vendor type[optional] [default to null]
pageIntegerPage number for pagination (defaults to 1)[optional] [default to null]
per_pageIntegerNumber of items per page (defaults to 15)[optional] [default to null]

Return type

PaginatedResponse_OrderListItemResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json; charset=utf-8

processServiceOrder

OrderResponse processServiceOrder(CreateOrderInput)

Create a service booking order.

Processes service orders for professional services like cleaning, repairs, or consultations. Validates service availability, payment method, and wallet balance before creating the order.

Parameters

NameTypeDescriptionNotes
CreateOrderInputCreateOrderInputService order details including service ID, vendor, and payment method

Return type

OrderResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: application/json; charset=utf-8
  • Accept: application/json; charset=utf-8

trackOrder

TrackOrderResponse trackOrder(TrackOrderRequest)

Track an order by its tracking code.

Retrieves real-time order information including current status, estimated delivery time, driver location, vendor details, and order items. Uses the order’s unique tracking code for secure, shareable tracking without requiring authentication.

Parameters

NameTypeDescriptionNotes
TrackOrderRequestTrackOrderRequestTracking request with order code

Return type

TrackOrderResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: application/json; charset=utf-8
  • Accept: application/json; charset=utf-8

updateOrder

OrderResponse updateOrder(id, UpdateOrderInput)

Update order status, payment, or assignment.

Allows updating order status, payment method, payment status, or driver assignment. Status changes must follow valid transitions and broadcast real-time events to all relevant parties (customer, vendor, driver).

Parameters

NameTypeDescriptionNotes
idLongOrder ID to update[default to null]
UpdateOrderInputUpdateOrderInputUpdate fields for the order

Return type

OrderResponse

Authorization

JwtAuthScheme

HTTP request headers

  • Content-Type: application/json; charset=utf-8
  • Accept: application/json; charset=utf-8