Skip to main content

Orders Management

This document describes the endpoints for listing and exporting orders.

List Orders

Retrieve a list of user orders.

Endpoint

  • Method: GET
  • URL: /api/orders

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer YOUR_API_TOKENYes

Query Parameters

ParameterTypeRequiredDescription
per_pageintegerNoNumber of items per page

Success Response

{
"success": true,
"message": "resource fetched successfully.",
"data": {
"current_page": 1,
"data": [
{
"id": 1,
"number": "ORD-001",
"payment_method": "Credit Card",
"total": 99.99,
"status": "completed",
"created_at": "16/02/2025"
}
],
"first_page_url": "http://127.0.0.1:8000/api/users/orders?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "http://127.0.0.1:8000/api/users/orders?page=1",
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "http://127.0.0.1:8000/api/users/orders?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"next_page_url": null,
"path": "http://127.0.0.1:8000/api/users/orders",
"per_page": 10,
"prev_page_url": null,
"to": 1,
"total": 1
},
"status_code": 200
}

Implementation Flow

  1. Request Validation

    • Validates the optional per_page parameter
  2. Authorization Check

    • Verifies user authentication via Bearer token
    • Ensures user has permission to view orders
  3. Query Building

    • Creates a query to fetch orders for the authenticated user
    • Applies pagination based on per_page parameter
    • Orders results by creation date (newest first)
  4. Response Formatting

    • Transforms orders data using OrdersResource
    • Includes pagination metadata
    • Returns formatted JSON response

Export Orders

Export orders to Excel file.

Endpoint

  • Method: GET
  • URL: /api/orders/export

Request Headers

HeaderValueRequired
Content-Typeapplication/jsonYes
Acceptapplication/jsonYes
AuthorizationBearer YOUR_API_TOKENYes

Query Parameters

ParameterTypeRequiredDescription
typestringNoFilter by order type
order_by_directionstringNoSort direction (asc/desc, default: asc)
fromdateNoStart date filter
todateNoEnd date filter

Response

Downloads an Excel file named 'orders_invoice.xlsx'