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
| Header | Value | Required |
|---|---|---|
| Content-Type | application/json | Yes |
| Accept | application/json | Yes |
| Authorization | Bearer YOUR_API_TOKEN | Yes |
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| per_page | integer | No | Number 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
-
Request Validation
- Validates the optional
per_pageparameter
- Validates the optional
-
Authorization Check
- Verifies user authentication via Bearer token
- Ensures user has permission to view orders
-
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)
-
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
| Header | Value | Required |
|---|---|---|
| Content-Type | application/json | Yes |
| Accept | application/json | Yes |
| Authorization | Bearer YOUR_API_TOKEN | Yes |
Query Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| type | string | No | Filter by order type |
| order_by_direction | string | No | Sort direction (asc/desc, default: asc) |
| from | date | No | Start date filter |
| to | date | No | End date filter |
Response
Downloads an Excel file named 'orders_invoice.xlsx'