Account
Newest first. product_image resolved via public-bucket helper.
Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/wishlist"[ { "id": "string", "name": "string", "slug": "string", "price": "string", "image_url": "string", "avg_rating": "string", "store_id": "string", "store_name": "string" }]Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/wishlist/ids"[ "string"]Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/followed-stores"[ { "id": "string", "name": "string", "slug": "string", "logo_url": "string" }]Authorization
better-auth.session_token In: cookie
Query Parameters
1 <= value <= 10000Response Body
application/json
curl -X GET "https://example.com/api/v1/account/loyalty"{ "balance": 0, "totalEarned": 0, "totalRedeemed": 0, "transactions": [ { "id": "string", "type": {}, "points": 0, "order_id": "string", "created_at": "string" } ], "totalPages": 0}Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/returns"[ { "id": "string", "order_id": "string", "status": "string", "reason": "string", "comment": "string", "created_at": "string", "order_created_at": "string", "items": [ { "orderItemId": "string", "productName": "string" } ], "evidence_paths": [ "string" ], "rejection_reason": "string", "vendor_reviewed_at": "string", "received_at": "string", "refunded_at": "string" }]Order must belong to caller + be status=delivered. All items in the request must share a single store_id (400 otherwise).
Authorization
better-auth.session_token In: cookie
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X POST "https://example.com/api/v1/account/returns" \ -H "Content-Type: application/json" \ -d '{ "orderId": "b3e1eced-f2bd-4d8c-9765-fbc9d1d222d5", "reason": "wrong_item", "items": [ { "orderItemId": "33207bce-c741-4896-a76b-8afcf6e4179a", "productName": "string" } ] }'Returns { wishlisted: boolean } reflecting new state.
Authorization
better-auth.session_token In: cookie
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X POST "https://example.com/api/v1/account/wishlist/toggle" \ -H "Content-Type: application/json" \ -d '{ "productId": "dcd53ddb-8104-4e48-8cc0-5df1088c6113" }'Authorization
better-auth.session_token In: cookie
Path Parameters
Response Body
curl -X DELETE "https://example.com/api/v1/account/followed-stores/string"Authorization
better-auth.session_token In: cookie
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X PATCH "https://example.com/api/v1/account/profile" \ -H "Content-Type: application/json" \ -d '{ "fullName": "string" }'status=live only. Newest first.
Authorization
better-auth.session_token In: cookie
Query Parameters
1 <= valueResponse Body
application/json
curl -X GET "https://example.com/api/v1/account/followed-feed"{ "products": [ { "id": "string", "name": "string", "slug": "string", "price": "string", "image_url": "string", "avg_rating": "string", "store_id": "string", "store_name": "string" } ], "totalPages": 0}Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/addresses"[ { "id": "string", "customer_id": "string", "label": "string", "full_name": "string", "phone": "string", "address_line_1": "string", "address_line_2": "string", "city": "string", "postcode": "string", "state": "string", "is_default": true, "created_at": "string" }]is_default=true unsets other defaults for the caller inside the same transaction.
Authorization
better-auth.session_token In: cookie
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X POST "https://example.com/api/v1/account/addresses" \ -H "Content-Type: application/json" \ -d '{ "label": "string", "full_name": "string", "phone": "string", "address_line_1": "string", "city": "string", "postcode": "string", "state": "string" }'Authorization
better-auth.session_token In: cookie
Path Parameters
Response Body
curl -X DELETE "https://example.com/api/v1/account/addresses/string"Authorization
better-auth.session_token In: cookie
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X PUT "https://example.com/api/v1/account/addresses/string" \ -H "Content-Type: application/json" \ -d '{ "label": "string", "full_name": "string", "phone": "string", "address_line_1": "string", "city": "string", "postcode": "string", "state": "string" }'Authorization
better-auth.session_token In: cookie
Path Parameters
Response Body
curl -X PATCH "https://example.com/api/v1/account/addresses/string/default"Authorization
better-auth.session_token In: cookie
Response Body
application/json
curl -X GET "https://example.com/api/v1/account/loyalty-balance"{ "balance": 0}Empty/null clears. Non-empty validated against TIN_REGEX (IG + 13 non-individual prefixes) and normalised (strip leading zeros for non-IG). Does NOT retroactively mutate orders.buyer_tin.
Authorization
better-auth.session_token In: cookie
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X PATCH "https://example.com/api/v1/account/tin" \ -H "Content-Type: application/json" \ -d '{ "tin": "string" }'