/listing/api/POST body: {email, password}
POST body: {name, email, password}
POST body: {email}
POST body: {token, new_password}
POST body: {refresh_token}
POST body: {current_password, new_password}
?page=1&limit=20&category=X&province=X&sort=newest
?q=keyword&category=X&min_price=0&max_price=9999
POST body: {title, category_id, description, price, ...}
?status=active|paused|expired
POST body: {ids:[1,2,3], action:"activate|pause|delete"}
multipart/form-data: images[]
POST body: {image_id, listing_id}
POST body: {image_ids:[3,1,2]}
POST body: {seller_id}
POST body: {seller_id}
?page=1
POST body: {plan_id, coupon_code?}
multipart/form-data: slip
POST body: {code, plan_id}
?page=1
POST body: {to_user_id, message, listing_id?}
POST body: {listing_id, rating, comment}
?page=1
?period=7d|30d|90d
POST body: {shop_name, shop_desc, ...}
?page=1
POST body: {listing_id, type, ...}
?lat=X&lng=X&radius=10&category=X
POST body: {target_type, target_id, reason, detail}
POST body: {name, filters, alert_enabled}
POST body: {listing_id}
āļāļļāļ endpoint āļāļĩāđāļāđāļāļ auth āļāđāļāļāļŠāđāļ JWT token āđāļ header:
Authorization: Bearer <your_token>
Token āđāļāđāļāļēāļ /api/auth/?action=login â āļŦāļĄāļāļāļēāļĒāļļ 7 āļ§āļąāļ, refresh āđāļāđ 30 āļ§āļąāļ