Documentation
RentedMall exposes a versioned HTTP API under /api/v1. Business logic lives in domain modules; route handlers stay thin. Public DTOs never expose raw database models.
Authorization: Bearer ap_<keyId>_<secret> on /api/v1/open with scoped permissions and rate limits.GET /api/v1/open?resource=... — public store API resources:
store — store profileproducts — list or fetch by slugcategoriesinventory — requires variantIdcustomersorders — list or fetch by orderIdpayments — requires orderIdfulfillment — requires orderId/api/v1/stores/:id/integrations — API keys, webhooks, Telegram, suppliers/api/v1/finance — balance, deposits, gateway, escrow/api/v1/webhooks/payments/:provider — inbound payment webhooks/api/v1/webhooks/telegram/:storeId — Telegram Bot updatesSigned with X-RentedMall-Webhook-Signature: t=<ts>,v1=<hmac>. Verify timestamp tolerance to reject replays. Events include order.paid, payment.succeeded, fulfillment.completed, and more.