Skip to content

Route Reference

Complete list of all 325+ API endpoints. Base URL: https://localhost/api/v1 (Docker) or http://localhost:8000/api/v1 (manual)

Legend: 🔓 Public  |  🔐 Auth required  |  🛡️ Admin/Manager only


Health & Config

MethodEndpointAuthDescription
GET/health🔓Health check — returns API status, version, and timestamp
GET/config🔓Public config — returns Stripe public key, default currency

Auth

MethodEndpointAuthDescription
POST/auth/register🔓Create account — returns access + refresh tokens
POST/auth/login🔓Login — returns access + refresh tokens
POST/auth/logout🔐Revoke current token
POST/auth/logout-all🔐Revoke ALL tokens (all devices)
POST/auth/refresh🔓Exchange refresh token for new access token
POST/auth/forgot-password🔓Send password reset email
POST/auth/reset-password🔓Reset password with token from email
GET/auth/verify-email/{id}/{hash}🔐Verify email (signed link from email)
POST/auth/verify-email/resend🔐Resend verification email
POST/auth/social/{provider}🔓OAuth login (Google, Facebook, etc.)

Catalogue

Route prefix

All catalogue endpoints are under /api/v1/catalogue/

MethodEndpointAuthDescription
GET/catalogue/categories🔓List categories (tree or flat)
GET/catalogue/categories/{category:slug}🔓Get category with children
GET/catalogue/brands🔓List all brands
GET/catalogue/brands/{brand:slug}🔓Get brand detail
GET/catalogue/collections🔓List curated collections
GET/catalogue/collections/{collection:slug}🔓Get collection with products
GET/catalogue/products🔓List products (with filters)
GET/catalogue/products/featured🔓Featured products (up to 12)
GET/catalogue/products/{product:slug}🔓Product detail (increments view count)
GET/catalogue/products/{product:slug}/related🔓Related products (up to 8)
GET/catalogue/products/{product:slug}/frequently-bought-together🔓Frequently bought together (up to 6)
GET/catalogue/products/{product:slug}/reviews🔓Approved reviews for product
GET/catalogue/search🔓Full-text search with filters + facets
GET/catalogue/search/suggestions🔓Autocomplete suggestions
GET/catalogue/search/popular🔓Popular search terms

Products (User Actions)

MethodEndpointAuthDescription
POST/products/{product:slug}/reviews🔐Submit a review
PUT/reviews/{review:id}🔐Update own review (pending only)
DELETE/reviews/{review:id}🔐Delete own review
POST/reviews/{review:id}/vote🔐Vote helpful / not helpful
POST/products/{product:slug}/view🔓Track product view
GET/products/recently-viewed🔐Get recently viewed products
POST/products/{product:slug}/questions🔐Submit a product question
POST/questions/{question:id}/answers🔐Answer a product question

Cart

MethodEndpointAuthDescription
GET/cart🔐Get current cart
DELETE/cart🔐Clear cart (remove all items)
POST/cart/items🔐Add item to cart
PUT/cart/items/{cartItem:id}🔐Update item quantity
DELETE/cart/items/{cartItem:id}🔐Remove item from cart
POST/cart/coupon🔐Apply coupon code
DELETE/cart/coupon🔐Remove coupon

Wishlist

MethodEndpointAuthDescription
GET/wishlist🔐Get wishlist
POST/wishlist/{product:slug}🔐Toggle product in wishlist (add if absent, remove if present)

Orders

MethodEndpointAuthDescription
GET/orders🔐List own orders
POST/orders🔐Checkout — create order from cart
GET/orders/{orderNumber}🔐Order detail
POST/orders/{orderNumber}/cancel🔐Cancel an order
POST/orders/{orderNumber}/return🔐Request a return

Payments

MethodEndpointAuthDescription
POST/payments/intent🔐Create Stripe PaymentIntent
POST/payments/confirm🔐Confirm payment (server-side check)
POST/payments/retry🔐Retry a failed payment
POST/webhooks/stripe🔓Stripe webhook receiver

Shipping

MethodEndpointAuthDescription
GET/shipping-methods🔓Available shipping methods for a country

User Profile

MethodEndpointAuthDescription
GET/user🔐Get profile + addresses
PUT/user🔐Update profile
DELETE/user🔐Delete account (soft delete, requires password)
POST/user/avatar🔐Upload avatar to S3/MinIO
PUT/user/password🔐Change password

Addresses

MethodEndpointAuthDescription
GET/user/addresses🔐List addresses
POST/user/addresses🔐Add address
GET/user/addresses/{id}🔐Get address
PUT/user/addresses/{id}🔐Update address
DELETE/user/addresses/{id}🔐Delete address
PATCH/user/addresses/{id}/default🔐Set default address

Payment Methods (Saved Cards)

MethodEndpointAuthDescription
GET/user/payment-methods🔐List saved Stripe cards
POST/user/payment-methods🔐Save a card
DELETE/user/payment-methods/{id}🔐Delete a card

Wallet

MethodEndpointAuthDescription
GET/user/wallet🔐Get wallet balance
GET/user/wallet/transactions🔐Wallet transaction history

Loyalty Points

MethodEndpointAuthDescription
GET/loyalty/balance🔐Points balance + lifetime stats
GET/loyalty/history🔐Transaction history
POST/loyalty/redeem🔐Redeem points for wallet credit

Invoices

MethodEndpointAuthDescription
GET/invoices🔐List invoices
GET/invoices/{id}🔐Get / download invoice

Affiliate

MethodEndpointAuthDescription
POST/affiliate/register🔐Register as affiliate
GET/affiliate🔐Affiliate dashboard
GET/affiliate/conversions🔐Conversion history

Notifications

MethodEndpointAuthDescription
GET/user/notifications🔐List notifications
PATCH/user/notifications/read-all🔐Mark all notifications as read
POST/user/push-token🔐Register push notification token
DELETE/user/push-token🔐Unregister push token

Gift Cards

MethodEndpointAuthDescription
POST/gift-cards/apply🔐Apply gift card to cart/order

Marketing

MethodEndpointAuthDescription
GET/flash-sales🔓List active flash sales
GET/flash-sales/{id}🔓Flash sale detail
GET/bundles🔓List product bundles
GET/bundles/{slug}🔓Bundle detail
GET/banners🔓Active promotional banners

Content

MethodEndpointAuthDescription
GET/blog🔓List blog posts
GET/blog/{slug}🔓Blog post detail
GET/pages/{slug}🔓Static CMS page
GET/faqs🔓FAQ list
POST/contact🔓Submit contact form
GET/settings/public🔓Public store settings
GET/currencies🔓Supported currencies + exchange rates
POST/newsletter/subscribe🔓Subscribe to newsletter
POST/newsletter/unsubscribe/{token}🔓Unsubscribe from newsletter

Admin — Catalogue

MethodEndpointRoleDescription
GET/POST/admin/products🛡️List / create products
GET/PUT/DELETE/admin/products/{id}🛡️Get / update / delete product
POST/admin/products/{id}/images🛡️Upload product images
DELETE/admin/products/images/{image}🛡️Delete product image
GET/POST/admin/products/{id}/variants🛡️Manage variants
PUT/DELETE/admin/products/{id}/variants/{variant}🛡️Update / delete variant
GET/POST/DELETE/admin/products/{id}/translations🛡️Manage translations
POST/DELETE/admin/products/{id}/restore🛡️Restore soft-deleted product
GET/POST/admin/categories🛡️Categories CRUD
GET/POST/admin/brands🛡️Brands CRUD
POST/admin/brands/{id}/restore🛡️Restore brand
GET/POST/admin/collections🛡️Collections CRUD
GET/POST/admin/attributes🛡️Attributes CRUD
POST/admin/attributes/{id}/values🛡️Add attribute value
DELETE/admin/attributes/{id}/values/{value}🛡️Delete attribute value
GET/POST/admin/tags🛡️Tags CRUD
GET/POST/admin/price-tiers🛡️Price tiers CRUD

Admin — Orders & Fulfillment

MethodEndpointRoleDescription
GET/admin/orders🛡️List all orders
GET/admin/orders/{order}🛡️Order detail
PATCH/admin/orders/{order}/status🛡️Update order status
GET/POST/admin/shipments🛡️Shipments CRUD
PUT/admin/shipments/{id}🛡️Update shipment
POST/admin/shipments/{id}/trackings🛡️Add tracking event
GET/admin/returns🛡️List return requests
GET/PUT/admin/returns/{id}🛡️Review / process return
GET/admin/refunds🛡️List refunds
GET/PATCH/admin/refunds/{id}🛡️Process refund

Admin — Payments & Finance

MethodEndpointRoleDescription
GET/admin/invoices🛡️List invoices
GET/PATCH/DELETE/admin/invoices/{id}🛡️Manage invoice
GET/POST/admin/tax-categories🛡️Tax categories CRUD
GET/POST/admin/tax-rates🛡️Tax rates CRUD
GET/admin/currencies🛡️List currencies
PUT/admin/currencies/{currency}🛡️Update exchange rate

Admin — Marketing

MethodEndpointRoleDescription
GET/POST/admin/coupons🛡️Coupons CRUD
GET/POST/admin/promotions🛡️Promotions CRUD
POST/admin/promotions/{id}/sync-products🛡️Sync products to promotion
GET/POST/admin/flash-sales🛡️Flash sales CRUD
POST/admin/flash-sales/{id}/items🛡️Add item to flash sale
DELETE/admin/flash-sales/{id}/items/{item}🛡️Remove item from flash sale
GET/POST/admin/bundles🛡️Bundles CRUD
POST/admin/bundles/{id}/items🛡️Add bundle item
DELETE/admin/bundles/{id}/items/{item}🛡️Remove bundle item
GET/POST/admin/banners🛡️Banners CRUD
GET/POST/admin/gift-cards🛡️Gift cards CRUD
GET/admin/loyalty🛡️Loyalty overview
POST/admin/loyalty/adjust🛡️Manually adjust user points

Admin — Users & Groups

MethodEndpointRoleDescription
GET/POST/admin/users🛡️Users CRUD
GET/PUT/DELETE/admin/users/{id}🛡️Manage user
PATCH/admin/users/{id}/toggle🛡️Suspend / unsuspend user
GET/POST/admin/customer-groups🛡️Customer groups CRUD
POST/admin/customer-groups/{id}/users🛡️Assign users to group
DELETE/admin/customer-groups/{id}/users/{userId}🛡️Remove user from group
GET/POST/admin/affiliates🛡️List / manage affiliates
POST/admin/affiliates/{id}/approve🛡️Approve affiliate application
POST/admin/affiliates/{id}/reject🛡️Reject affiliate application
GET/admin/affiliates/{id}/conversions🛡️Affiliate conversions

Admin — Inventory & Shipping

MethodEndpointRoleDescription
GET/admin/stock🛡️Stock levels overview
GET/admin/stock/alerts🛡️Low stock alerts
POST/admin/stock/adjust🛡️Manual stock adjustment
PUT/DELETE/admin/stock/{inventory}🛡️Update / delete inventory record
GET/POST/admin/warehouses🛡️List / create warehouses
GET/PUT/DELETE/admin/warehouses/{id}🛡️Get / update / delete warehouse
GET/POST/admin/shipping-zones🛡️Shipping zones CRUD
POST/admin/shipping-zones/{id}/countries🛡️Assign countries to zone
GET/POST/admin/shipping-methods🛡️Shipping methods CRUD
GET/POST/admin/shipping-methods/{id}/rates🛡️Manage shipping rates
PUT/DELETE/admin/shipping-methods/{id}/rates/{rate}🛡️Update / delete rate

Admin — Reviews & Content

MethodEndpointRoleDescription
GET/admin/reviews🛡️List all reviews (pending first)
PATCH/admin/reviews/{id}/approve🛡️Approve review
PATCH/admin/reviews/{id}/reject🛡️Reject review
GET/POST/admin/blog-posts🛡️Blog posts CRUD
POST/admin/blog-posts/{id}/publish🛡️Publish post
POST/admin/blog-posts/{id}/unpublish🛡️Unpublish post
GET/POST/admin/blog-categories🛡️Blog categories CRUD
GET/POST/admin/pages🛡️Static pages CRUD
GET/POST/admin/faqs🛡️FAQs CRUD
POST/admin/faqs/reorder🛡️Reorder FAQs
GET/admin/contacts🛡️List contact submissions
GET/admin/contacts/{contact}🛡️View contact submission
DELETE/admin/contacts/{contact}🛡️Delete contact submission
PATCH/admin/contacts/{contact}/read🛡️Mark contact as read
GET/POST/admin/newsletter🛡️Newsletter subscribers
GET/admin/newsletter/{id}🛡️Get newsletter campaign
POST/admin/newsletter/{id}/send🛡️Send newsletter campaign

Admin — System

MethodEndpointRoleDescription
GET/admin/dashboard🛡️Dashboard stats
GET/admin/analytics🛡️Analytics data
GET/admin/settings🛡️Get all settings
PUT/admin/settings🛡️Update settings
GET/PUT/admin/languages🛡️Languages management
POST/admin/currencies/sync-rates🛡️Sync currency exchange rates
GET/admin/logs/activity🛡️Activity log (all admin actions)
GET/admin/logs/api🛡️API request logs
GET/admin/logs/search🛡️Search query logs
POST/admin/media/upload🛡️Upload media file
DELETE/admin/media/{path}🛡️Delete media file

Admin — Webhooks

MethodEndpointRoleDescription
GET/admin/webhooks🛡️List all customer webhook endpoints
POST/admin/webhooks🛡️Create webhook endpoint
GET/admin/webhooks/{id}🛡️Get webhook details
PUT/PATCH/admin/webhooks/{id}🛡️Update webhook
DELETE/admin/webhooks/{id}🛡️Delete webhook
GET/admin/webhooks/{id}/deliveries🛡️Delivery logs for a webhook

Licensed for single or extended use.