Skip to main content
GET
/
api
/
category
List Categories
curl --request GET \
  --url https://api.example.com/api/category \
  --header 'x-api-key: <x-api-key>'
{
  "status": "OK",
  "message": "Success fetching categories data",
  "data": [
    {
      "id": 1,
      "name": "Electronics",
      "description": "Electronic devices and accessories",
      "slug": "electronics",
      "img_url": "uploads/categories/electronics.jpg"
    },
    {
      "id": 2,
      "name": "Home & Garden",
      "description": "Home improvement and gardening supplies",
      "slug": "home-and-garden",
      "img_url": "uploads/categories/home-garden.jpg"
    }
  ]
}

Overview

This endpoint retrieves all categories including their name, description, slug, and image URL. No query parameters are required.

Authentication

This endpoint requires API key authentication via the x-api-key header.
x-api-key
string
required
API key for authentication. Must match the configured API_KEY environment variable.

Response

Returns a success response with an array of category objects.
status
string
Response status. Returns “OK” for successful requests.
message
string
Human-readable message describing the result.
data
array
Array of category objects.

Example Request

cURL
curl --request GET \
  --url https://api.example.com/api/category \
  --header 'x-api-key: your_api_key_here'

Example Response

{
  "status": "OK",
  "message": "Success fetching categories data",
  "data": [
    {
      "id": 1,
      "name": "Electronics",
      "description": "Electronic devices and accessories",
      "slug": "electronics",
      "img_url": "uploads/categories/electronics.jpg"
    },
    {
      "id": 2,
      "name": "Home & Garden",
      "description": "Home improvement and gardening supplies",
      "slug": "home-and-garden",
      "img_url": "uploads/categories/home-garden.jpg"
    }
  ]
}

Error Responses

status
string
Error status. Returns “ERROR” for failed requests.
message
string
Error message describing what went wrong.
data
any
Additional error data if available.

Implementation Details

This endpoint is implemented in controllers/categoryController.mjs:64 using the getAllCategories function. It executes a simple SELECT query to fetch all categories from the database.

Build docs developers (and LLMs) love