Bazaviy URLapi.hamrohio.uzHTTPS / JSON
Versiya prefiksi/v1/health bundan mustasno
KontraktOpenAPI 3.0.3Koddan generatsiya qilingan
Ushbu sahifada

01Asosiy qoidalar#

So‘rovlar JSON orqali yuboriladi; firmware upload multipart/form-data ishlatadi. Global ValidationPipe DTO’da yo‘q maydonlarni rad etadi va belgilangan transform’larni qo‘llaydi. API javoblari barcha endpointlarda bir xil wrapper’ga ega emas.

Xavfsiz health so‘rovi
curl --fail --silent https://api.hamrohio.uz/health
Health javobining shakli
{
  "status": "ok",
  "checks": { "api": true, "database": true, "objectStorage": true },
  "timestamp": "2026-09-10T00:00:00.000Z"
}

02Autentifikatsiya#

OqimCredentialQo‘llanish
Adminhamroh_admin cookieLogin’dan keyingi 12 soatlik sessiya. Har route roli alohida tekshiriladi.
PairingAuthorization: Bearer <credential>Bog‘langan installation uchun /devices/me va revoke. Refresh credential’ni body’da qabul qiladi.
Device proofx-hamroh-timestamp + x-hamroh-proofHeartbeat, firmware latest, report va current installation. Ikkala header birga talab qilinadi.
PublicSessiyasiz, rate-limit bilanHealth va preorder oqimi. Pairing challenge/claim credential chiqarishdan oldin maxsus proof tekshiradi.

Device timestamp Unix millisekundlarda bo‘lib, server vaqtidan ±5 daqiqa ichida bo‘lishi kerak. Proof HMAC-SHA256’ning hex ko‘rinishi; uni Desktop qurilmadan oladi. Qurilma secret’ini brauzerga yoki integratsiya skriptiga ko‘chirish kerak emas.

OperatsiyaProof payload
heartbeattimestamp.serial.firmwareVersion.uptime
firmware/latesttimestamp.serial.currentFirmware
installations/currenttimestamp.serial.installation-status.installationId-or-latest
firmware/reporttimestamp.serial.releaseId.installationId.status

Report uchun installationId berilmagan eski kontraktda payload timestamp.serial.releaseId.status bo‘ladi. Timestamp oynasi yangilikni tekshiradi, lekin har so‘rov uchun bir martalik nonce kafolati emas.

03Muhim integratsiya oqimlari#

  • Pairing: challenge → hardware proof → claim → credential. Challenge 5 daqiqadan keyin tugaydi.
  • Firmware: package inspect → Admin izohi va kanal/target → DRAFT → READY → ROLLING_OUT. READY avtomatik rollout emas.
  • Preorder: public config → idempotency-key bilan create. Bir xil so‘rov va bir xil kalit dublikat yaratmasligi kerak.

04Xatolar va limitlar#

Xato javobining shakli
{
  "error": {
    "code": "ADMIN_AUTH_REQUIRED",
    "message": "Admin authentication is required.",
    "requestId": "example-request-id"
  }
}
StatusMa’nosiMijoz harakati
400DTO yoki biznes qoidasi buzildiSo‘rovni tuzatish
401 / 403Credential yoki rol mos emasSessiya/proof va ruxsatni tekshirish
409Dublikat yoki lifecycle konfliktiJoriy holatni qayta o‘qish
429Rate limitKutish; cheksiz retry qilmaslik
5xxServis muammosirequestId’ni saqlash va holatni tekshirish

Standart throttler 60 soniyada 120 so‘rov bilan sozlangan; login 5/min, pairing challenge 10/min, claim 5/min, package inspect 10/min va package create 5/min kabi route limitlari mavjud. Joriy konfiguratsiya shared distributed rate-limit storage’ni ko‘rsatmaydi.

05Endpoint katalogi#

Katalogda method, path, kirish roli va DTO maydonlari ko‘rsatiladi. Response sxemasi faqat koddan alohida tekshirilgan joylarda berilgan; qolgan endpointlar uchun to‘liq javob shakli taxmin qilinmagan.

80 endpoint

GET/v1/admin/teamadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:12

POST/v1/admin/teamadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
namestringMajburiyminLength: 2; maxLength: 120
emailstringMajburiyformat: email; minLength: 3; maxLength: 160
rolestringMajburiySUPER_ADMIN · ADMIN · OPERATIONS · SALES · SUPPORT · FIRMWARE_MANAGER · VIEWER

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:20

GET/v1/admin/team/optionsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:16

PATCH/v1/admin/team/{id}/roleadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
rolestringMajburiySUPER_ADMIN · ADMIN · OPERATIONS · SALES · SUPPORT · FIRMWARE_MANAGER · VIEWER

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:24

PATCH/v1/admin/team/{id}/statusadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
statusstringMajburiyACTIVE · SUSPENDED · DISABLED

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:30

POST/v1/admin/team/{id}/reset-passwordadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:36

POST/v1/admin/team/{id}/revoke-sessionsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/admin-users/admin-users.controller.ts:42

GET/v1/admin/analytics/salesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
rangequerystringtoday · 7d · 30d · 90d · year · custom; default: 30d
fromquerystring
toquerystring
currencyquerystringdefault: UZS

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/analytics/analytics.controller.ts:12

GET/v1/admin/analytics/operationsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/analytics/analytics.controller.ts:13

GET/v1/admin/auditadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
skipquerystring
takequerystring
actionquerystring

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/audit/audit.controller.ts:11

POST/v1/admin/auth/loginPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
5 / 60s

So‘rov application/json

MaydonTur / talabCheklov
emailstringMajburiyformat: email
passwordstringMajburiyformat: password; minLength: 8

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:12

POST/v1/admin/auth/logoutPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
120 / 60s

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:19

GET/v1/admin/auth/meadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:26

PUT/v1/admin/auth/passwordadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
currentPasswordstringMajburiyformat: password; minLength: 8; maxLength: 128
newPasswordstringMajburiyformat: password; minLength: 12; maxLength: 128; pattern: ^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^A-Za-z0-9]).+$

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:32

GET/v1/admin/auth/sessionsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:37

DELETE/v1/admin/auth/sessions/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/auth/auth.controller.ts:40

GET/v1/admin/customersadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystring
preorderStatusquerystringNEW · CONTACTED · CONFIRMED · PAYMENT_PENDING · DEPOSIT_PAID · READY_TO_SHIP · FULFILLED · CANCELLED
sourcequerystring
languagequerystringuz · en · ru
assignedAdminIdquerystring
dateFromquerystringformat: date-time
dateToquerystringformat: date-time
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 100; default: 25

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/customers/customers.controller.ts:12

POST/v1/admin/customersadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
fullNamestringMajburiyminLength: 2; maxLength: 120
emailstringIxtiyoriyformat: email
phonestringIxtiyoriyminLength: 5; maxLength: 32
companystringIxtiyoriyminLength: 2; maxLength: 120
countrystringIxtiyoriyminLength: 2; maxLength: 80
citystringIxtiyoriyminLength: 2; maxLength: 80
regionstringIxtiyoriyminLength: 2; maxLength: 80
telegramUsernamestringIxtiyoriyminLength: 5; maxLength: 32
preferredLanguagestringIxtiyoriyuz · en · ru
notesstringIxtiyoriyminLength: 0; maxLength: 1000

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/customers/customers.controller.ts:23

GET/v1/admin/customers/export.csvadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystring
preorderStatusquerystringNEW · CONTACTED · CONFIRMED · PAYMENT_PENDING · DEPOSIT_PAID · READY_TO_SHIP · FULFILLED · CANCELLED
sourcequerystring
languagequerystringuz · en · ru
assignedAdminIdquerystring
dateFromquerystringformat: date-time
dateToquerystringformat: date-time
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 100; default: 25

Javob

HTTP 200 · text/csv

apps/api/src/customers/customers.controller.ts:14

GET/v1/admin/customers/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/customers/customers.controller.ts:21

PATCH/v1/admin/customers/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
fullNamestringIxtiyoriyminLength: 2; maxLength: 120
emailstringIxtiyoriyformat: email
phonestringIxtiyoriyminLength: 5; maxLength: 32
companystringIxtiyoriyminLength: 2; maxLength: 120
countrystringIxtiyoriyminLength: 2; maxLength: 80
citystringIxtiyoriyminLength: 2; maxLength: 80
regionstringIxtiyoriyminLength: 2; maxLength: 80
telegramUsernamestringIxtiyoriyminLength: 5; maxLength: 32
preferredLanguagestringIxtiyoriyuz · en · ru
notesstringIxtiyoriyminLength: 0; maxLength: 1000

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/customers/customers.controller.ts:25

GET/v1/admin/devicesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystring
statusquerystringINVENTORY · READY · SOLD · CLAIMED · ACTIVE · RETURNED · SUSPENDED · REVOKED · REPAIR · RETIRED
hardwareRevisionquerystring
firmwarequerystring
batchquerystring
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 100; default: 50

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:12

GET/v1/admin/devices/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:15

GET/v1/admin/claim-codesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
skipquerystring
takequerystring
statusquerystring

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:18

POST/v1/admin/devices/batchesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
batchCodestringMajburiyminLength: 3; maxLength: 64
modelstringMajburiyminLength: 2; maxLength: 32
hardwareRevisionstringMajburiyminLength: 1; maxLength: 64
quantityintegerMajburiyminimum: 1; maximum: 500
expiresAtstringIxtiyoriy

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:23

GET/v1/admin/inventory/batchesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystring
statusquerystringDRAFT · READY · PROVISIONING · COMPLETED · ARCHIVED · CANCELLED
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 100; default: 50

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:26

POST/v1/admin/inventory/batchesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
codestringMajburiyminLength: 3; maxLength: 64
modelstringMajburiyminLength: 2; maxLength: 32
hardwareRevisionstringMajburiyminLength: 1; maxLength: 64
quantityintegerMajburiyminimum: 1; maximum: 500
notesstringIxtiyoriyminLength: 0; maxLength: 1000
sourcestringIxtiyoriyminLength: 1; maxLength: 64

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:29

GET/v1/admin/inventory/batches/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:32

PATCH/v1/admin/inventory/batches/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
codestringIxtiyoriyminLength: 3; maxLength: 64
modelstringIxtiyoriyminLength: 2; maxLength: 32
hardwareRevisionstringIxtiyoriyminLength: 1; maxLength: 64
quantityintegerIxtiyoriyminimum: 1; maximum: 500
notesstringIxtiyoriyminLength: 0; maxLength: 1000
sourcestringIxtiyoriyminLength: 1; maxLength: 64
statusstringIxtiyoriyDRAFT · READY · PROVISIONING · COMPLETED · ARCHIVED · CANCELLED

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:35

DELETE/v1/admin/inventory/batches/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN
Rate limit
10 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:44

POST/v1/admin/inventory/batches/{id}/provisionadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS
Rate limit
10 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
expiresAtstringIxtiyoriy

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:38

POST/v1/admin/inventory/batches/{id}/archiveadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:41

PATCH/v1/admin/devices/{id}/statusadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SUPPORT
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
statusstringMajburiyINVENTORY · READY · SOLD · CLAIMED · ACTIVE · RETURNED · SUSPENDED · REVOKED · REPAIR · RETIRED
reasonstringMajburiyminLength: 3

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:47

POST/v1/admin/devices/{id}/claim/resetadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SUPPORT
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
reasonstringMajburiyminLength: 3
expiresAtstringIxtiyoriy

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:50

POST/v1/admin/devices/{id}/transferadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SUPPORT
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
customerEmailstringMajburiyformat: email
customerNamestringIxtiyoriy
reasonstringMajburiyminLength: 3

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:53

POST/v1/admin/devices/{id}/provisioning-envelopeadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, OPERATIONS
Rate limit
3 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
serialNumberstringMajburiyminLength: 16; maxLength: 40
expectedHardwareRevisionstringMajburiyminLength: 1; maxLength: 64
provisionerPublicKeystringMajburiyminLength: 256; maxLength: 8192

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:56

POST/v1/devices/heartbeatdeviceProof + deviceTimestamp

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
deviceProof + deviceTimestamp
Rollar
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
serialstringMajburiy
firmwareVersionstringMajburiy
firmwareBuildNumberintegerIxtiyoriyminimum: 0
hardwareRevisionstringIxtiyoriyminLength: 1; maxLength: 64
otaSlotstringIxtiyoriyota_0 · ota_1
appVersionstringMajburiy
uptimeintegerMajburiyminimum: 0
wifiRSSIintegerIxtiyoriyminimum: -120; maximum: 0
freeHeapintegerIxtiyoriyminimum: 0
temperaturenumberIxtiyoriyminimum: -40; maximum: 125
statusstringIxtiyoriydefault: healthy

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/devices/devices.controller.ts:61

GET/v1/admin/firmwareadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:15

POST/v1/admin/firmwareLegacyadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation. Legacy binary upload. Prefer the signed package route.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

So‘rov multipart/form-data

MaydonTur / talabCheklov
versionstringMajburiypattern: ^\d{1,4}\.\d{1,4}\.\d{1,4}$
buildNumberintegerMajburiyminimum: 1; maximum: 2147483647
hardwareRevisionstringMajburiypattern: ^[a-zA-Z0-9][a-zA-Z0-9._-]{0,63}$
channelstringMajburiyINTERNAL · BETA · STABLE
securityVersionintegerIxtiyoriyminimum: 0; default: 0
releaseNotesstring[]Majburiy
mandatorybooleanIxtiyoriydefault: false
mandatoryAfterstringIxtiyoriyformat: date-time
rolloutPercentageintegerIxtiyoriyminimum: 0; maximum: 100; default: 0
signaturestringIxtiyoriy
targetDeviceIdstringIxtiyoriy
filefileMajburiyformat: binary

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:32

GET/v1/admin/firmware/package-devicesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
hardwareRevisionquerystringmaxLength: 64Ha
searchquerystringmaxLength: 64

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:18

POST/v1/admin/firmware/packages/inspectadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER
Rate limit
10 / 60s

So‘rov multipart/form-data

MaydonTur / talabCheklov
filefileMajburiyformat: binary

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:21

POST/v1/admin/firmware/packagesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation. Signed .hrelease only; administrator-authored releaseNotes required. INTERNAL requires a compatible targetDeviceId. Creates DRAFT only.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER
Rate limit
5 / 60s

So‘rov multipart/form-data

MaydonTur / talabCheklov
channelstringMajburiyINTERNAL · BETA · STABLE
targetDeviceIdstringIxtiyoriyminLength: 1; maxLength: 64
mandatorybooleanIxtiyoriydefault: false
releaseNotesstringMajburiyminLength: 1; maxLength: 8000
filefileMajburiyformat: binary

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:25

GET/v1/admin/firmware/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:29

PATCH/v1/admin/firmware/{id}/lifecycleadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, FIRMWARE_MANAGER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
statusstringMajburiyDRAFT · READY · ROLLING_OUT · PAUSED · COMPLETED · REVOKED
rolloutPercentageintegerIxtiyoriyminimum: 0; maximum: 100

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:35

POST/v1/admin/firmware/{id}/maintenance-grantadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, FIRMWARE_MANAGER
Rate limit
3 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
expectedMacstringMajburiypattern: ^[0-9a-fA-F]{2}(?::[0-9a-fA-F]{2}){5}$
targetSerialstringMajburiyminLength: 1
expectedVersionstringMajburiyminLength: 1
expectedBuildintegerMajburiyminimum: 1
expectedHardwareRevisionstringMajburiyminLength: 1
maintenancePurposestringMajburiyONE_TIME_IDENTITY_PROVISIONING

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:38

POST/v1/admin/firmware/installations/{installationId}/reconcileadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, FIRMWARE_MANAGER
Rate limit
3 / 60s

Parametrlar

NameInTypeMajburiy
installationIdpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
releaseIdstringMajburiyminLength: 1
serialstringMajburiyminLength: 1
expectedVersionstringMajburiyminLength: 1
expectedBuildintegerMajburiyminimum: 1
expectedSlotstringMajburiyota_0 · ota_1
observedBootStatestringMajburiyvalid
observedOtaSessionStatestringMajburiyIDLE
reasonstringMajburiyPOST_BOOT_FALSE_NEGATIVE_RECONCILIATION

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:43

GET/v1/firmware/latestdeviceProof + deviceTimestamp

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation. IMPORTANT: eligibility lookup can create an AVAILABLE installation record; this GET is not side-effect-free.

Auth
deviceProof + deviceTimestamp
Rollar
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
serialquerystringHa
hardwareRevisionquerystringHa
currentFirmwarequerystringHa
appVersionquerystringHa
channelquerystringINTERNAL · BETA · STABLE; default: STABLE

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:48

POST/v1/admin/firmware/installations/{installationId}/interruptionadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, FIRMWARE_MANAGER
Rate limit
3 / 60s

Parametrlar

NameInTypeMajburiy
installationIdpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
releaseIdstringMajburiyminLength: 1; maxLength: 64
serialstringMajburiyminLength: 1; maxLength: 64
expectedVersionstringMajburiyminLength: 1; maxLength: 32
expectedBuildintegerMajburiyminimum: 1
expectedFailureReasonstringMajburiyminLength: 1; maxLength: 256
failureCodestringMajburiyUSER_CANCELLED_BY_OPERATOR

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:51

GET/v1/firmware/installations/currentdeviceProof + deviceTimestamp

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation. Read-only recovery lookup: does not create an installation or sign a download URL.

Auth
deviceProof + deviceTimestamp
Rollar
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
serialquerystringminLength: 1; maxLength: 64Ha
installationIdquerystringminLength: 1; maxLength: 64

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:57

POST/v1/firmware/reportdeviceProof + deviceTimestamp

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
deviceProof + deviceTimestamp
Rollar
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
serialstringMajburiy
releaseIdstringMajburiy
installationIdstringIxtiyoriy
statusstringMajburiyAVAILABLE · QUEUED · DOWNLOADING · VERIFYING · TRANSFERRING · INSTALLING · REBOOTING · VALIDATING · SUCCESS · FAILED · ROLLED_BACK
fromVersionstringIxtiyoriy
failureReasonstringIxtiyoriy

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/firmware/firmware.controller.ts:62

GET/healthPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
120 / 60s

Javob

HTTP 200 · application/json

MaydonTur / talabCheklov
statusstringMajburiyok · degraded
checksobjectMajburiy
timestampstringMajburiyformat: date-time

apps/api/src/health/health.controller.ts:9

POST/v1/devices/pair/challengePublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
10 / 60s

So‘rov application/json

MaydonTur / talabCheklov
serialstringMajburiyminLength: 8
installationIdstringMajburiyminLength: 16; maxLength: 128

Javob

HTTP 201 · application/json

MaydonTur / talabCheklov
challengeIdstringIxtiyoriy
serialstringIxtiyoriy
noncestringIxtiyoriy
expiresAtstringIxtiyoriyformat: date-time
proofPayloadstringIxtiyoriy

apps/api/src/pairing/pairing.controller.ts:10

POST/v1/devices/pair/claimPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
5 / 60s

So‘rov application/json

MaydonTur / talabCheklov
serialstringMajburiyminLength: 8
installationIdstringMajburiyminLength: 16; maxLength: 128
challengeIdstringMajburiyminLength: 16
noncestringMajburiyminLength: 24
claimCodestringMajburiyminLength: 16
hardwareProofstringMajburiyminLength: 32
publicKeystringMajburiyminLength: 8
deviceNamestringMajburiyminLength: 1; maxLength: 128
appVersionstringMajburiyminLength: 1; maxLength: 32
customerEmailstringIxtiyoriyformat: email
customerNamestringIxtiyoriy

Javob

HTTP 201 · application/json

MaydonTur / talabCheklov
credentialstringIxtiyoriy
expiresAtstringIxtiyoriyformat: date-time
deviceobjectIxtiyoriy
offlineCapablebooleanIxtiyoriy

apps/api/src/pairing/pairing.controller.ts:13

POST/v1/devices/pair/code-statusPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
8 / 60s

So‘rov application/json

MaydonTur / talabCheklov
claimCodestringMajburiyminLength: 16

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/pairing/pairing.controller.ts:16

POST/v1/devices/pair/refreshPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
credentialstringMajburiyminLength: 16

Javob

HTTP 201 · application/json

MaydonTur / talabCheklov
credentialstringIxtiyoriy
expiresAtstringIxtiyoriyformat: date-time
deviceobjectIxtiyoriy
offlineCapablebooleanIxtiyoriy

apps/api/src/pairing/pairing.controller.ts:20

POST/v1/devices/pair/revokepairingBearer

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
pairingBearer
Rollar
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
installationIdstringMajburiyminLength: 16; maxLength: 128

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/pairing/pairing.controller.ts:23

GET/v1/devices/mepairingBearer

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
pairingBearer
Rollar
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/pairing/pairing.controller.ts:26

GET/v1/public/preorder-configPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
60 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:36

POST/v1/public/preordersPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
5 / 60s

Parametrlar

NameInTypeMajburiy
idempotency-keyheaderstringHa

So‘rov application/json

MaydonTur / talabCheklov
fullNamestringMajburiyminLength: 2; maxLength: 120
phonestringMajburiyminLength: 8; maxLength: 32
regionstringMajburiyminLength: 2; maxLength: 80
productColorstringIxtiyoriyBLACK · WHITE · LAVENDER
paymentMethodstringIxtiyoriyDEPOSIT · FULL
notestringIxtiyoriyminLength: 1; maxLength: 500
citystringIxtiyoriyminLength: 2; maxLength: 80
emailstringIxtiyoriyformat: email; minLength: 3; maxLength: 160
telegramUsernamestringIxtiyoriypattern: ^@?[A-Za-z0-9_]{5,32}$
quantityintegerIxtiyoriyminimum: 1; maximum: 20; default: 1
localestringMajburiyuz · en · ru
websitestringIxtiyoriyminLength: 0; maxLength: 0
utmSourcestringIxtiyoriyminLength: 1; maxLength: 120
utmMediumstringIxtiyoriyminLength: 1; maxLength: 120
utmCampaignstringIxtiyoriyminLength: 1; maxLength: 160
utmContentstringIxtiyoriyminLength: 1; maxLength: 160
utmTermstringIxtiyoriyminLength: 1; maxLength: 160
referrerstringIxtiyoriyformat: uri; minLength: 1; maxLength: 500

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:40

POST/v1/public/preorder-events/viewPublic

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
Public
Rollar
Rate limit
20 / 60s

So‘rov application/json

MaydonTur / talabCheklov
anonymousSessionIdstringMajburiypattern: ^[A-Za-z0-9_-]{16,96}$
localestringMajburiyuz · en · ru
utmSourcestringIxtiyoriyminLength: 1; maxLength: 120
utmMediumstringIxtiyoriyminLength: 1; maxLength: 120
utmCampaignstringIxtiyoriyminLength: 1; maxLength: 160
utmContentstringIxtiyoriyminLength: 1; maxLength: 160
utmTermstringIxtiyoriyminLength: 1; maxLength: 160
referrerstringIxtiyoriyformat: uri; minLength: 1; maxLength: 500

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:50

GET/v1/admin/preordersadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystringminLength: 1; maxLength: 160
statusquerystringNEW · CONTACTED · CONFIRMED · PAYMENT_PENDING · DEPOSIT_PAID · READY_TO_SHIP · FULFILLED · CANCELLED
sourcequerystringminLength: 1; maxLength: 80
localequerystringuz · en · ru
assignedAdminIdquerystring
dateFromquerystringformat: date-time
dateToquerystringformat: date-time
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 200; default: 50

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:60

GET/v1/admin/preorders/analyticsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:64

GET/v1/admin/preorders/export.csvadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystringminLength: 1; maxLength: 160
statusquerystringNEW · CONTACTED · CONFIRMED · PAYMENT_PENDING · DEPOSIT_PAID · READY_TO_SHIP · FULFILLED · CANCELLED
sourcequerystringminLength: 1; maxLength: 80
localequerystringuz · en · ru
assignedAdminIdquerystring
dateFromquerystringformat: date-time
dateToquerystringformat: date-time
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 200; default: 50

Javob

HTTP 200 · text/csv

apps/api/src/preorders/preorders.controller.ts:68

GET/v1/admin/preorders/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:77

DELETE/v1/admin/preorders/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
preorderNumberstringMajburiyminLength: 8; maxLength: 40
reasonstringMajburiyminLength: 4; maxLength: 240

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:81

PATCH/v1/admin/preorders/{id}/statusadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
statusstringMajburiyNEW · CONTACTED · CONFIRMED · PAYMENT_PENDING · DEPOSIT_PAID · READY_TO_SHIP · FULFILLED · CANCELLED
notestringIxtiyoriyminLength: 2; maxLength: 500

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:87

PATCH/v1/admin/preorders/{id}/assignmentadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
adminIdstringIxtiyoriyminLength: 1; maxLength: 80; Conditional validation: inspect the operation policy.

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:93

POST/v1/admin/preorders/customers/{customerId}/notesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
customerIdpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
contentstringMajburiyminLength: 2; maxLength: 2000

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:99

GET/v1/admin/preorder-settingsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:115

PUT/v1/admin/preorder-settingsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
preOrderEnabledbooleanMajburiy
productNamestringMajburiyminLength: 2; maxLength: 120
currencystringMajburiypattern: ^[A-Z]{3}$
fullPriceintegerIxtiyoriyminimum: 0; maximum: 2000000000
depositAmountintegerIxtiyoriyminimum: 0; maximum: 2000000000
expectedDeliveryTextUzstringMajburiyminLength: 2; maxLength: 240
expectedDeliveryTextEnstringMajburiyminLength: 2; maxLength: 240
expectedDeliveryTextRustringMajburiyminLength: 2; maxLength: 240
maxQuantityPerOrderintegerMajburiyminimum: 1; maximum: 20
preorderCapacityintegerIxtiyoriyminimum: 1; maximum: 1000000
contactPhonestringIxtiyoriyminLength: 5; maxLength: 32
supportTelegramstringIxtiyoriyformat: uri; minLength: 8; maxLength: 300
allowManualDepositConfirmationbooleanMajburiy

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/preorders/preorders.controller.ts:119

GET/v1/admin/salesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
searchquerystring
statusquerystringDRAFT · PENDING · PAID · FULFILLED · CANCELLED · REFUNDED
paymentStatusquerystringUNPAID · PARTIAL · PAID · REFUNDED
channelquerystringDIRECT · INSTAGRAM · TELEGRAM · WEBSITE · RESELLER · OFFLINE · OTHER
fromquerystring
toquerystring
skipqueryintegerminimum: 0; default: 0
takequeryintegerminimum: 1; maximum: 100; default: 25

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:12

POST/v1/admin/salesadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
customerSaleCustomerDtoMajburiy
deviceIdstringMajburiy
unitPriceintegerMajburiyminimum: 0; maximum: 2000000000
discountintegerIxtiyoriyminimum: 0; maximum: 2000000000; default: 0
currencystringIxtiyoriyminLength: 3; maxLength: 3; default: UZS
paymentStatusstringMajburiyUNPAID · PARTIAL · PAID · REFUNDED
salesChannelstringMajburiyDIRECT · INSTAGRAM · TELEGRAM · WEBSITE · RESELLER · OFFLINE · OTHER
soldAtstringIxtiyoriyformat: date-time
notesstringIxtiyoriyminLength: 0; maxLength: 1000

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:16

GET/v1/admin/sales/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES, SUPPORT, VIEWER
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:14

PATCH/v1/admin/sales/{id}adminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
120 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
customerIdstringIxtiyoriy
paymentStatusstringIxtiyoriyUNPAID · PARTIAL · PAID · REFUNDED
salesChannelstringIxtiyoriyDIRECT · INSTAGRAM · TELEGRAM · WEBSITE · RESELLER · OFFLINE · OTHER
notesstringIxtiyoriyminLength: 0; maxLength: 1000
unitPriceintegerIxtiyoriyminimum: 0; maximum: 2000000000
discountintegerIxtiyoriyminimum: 0; maximum: 2000000000

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:18

POST/v1/admin/sales/{id}/canceladminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
20 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
reasonstringMajburiyminLength: 3

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:20

POST/v1/admin/sales/{id}/refundadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, SALES
Rate limit
20 / 60s

Parametrlar

NameInTypeMajburiy
idpathstringHa

So‘rov application/json

MaydonTur / talabCheklov
reasonstringMajburiyminLength: 3
amountintegerMajburiyminimum: 1; maximum: 2000000000
deviceDispositionstringIxtiyoriyRETURNED · REVOKED

Javob

HTTP 201 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/sales/sales.controller.ts:22

GET/v1/admin/overviewadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, OPERATIONS, SALES, SUPPORT, FIRMWARE_MANAGER, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/settings/settings.controller.ts:12

GET/v1/admin/settingsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN, VIEWER
Rate limit
120 / 60s

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/settings/settings.controller.ts:15

PUT/v1/admin/settingsadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
maximumMacsPerDeviceintegerMajburiyminimum: 1; maximum: 10
heartbeatTimeoutSecondsintegerMajburiyminimum: 60; maximum: 86400
pairingCertificateDaysintegerMajburiyminimum: 7; maximum: 730
defaultFirmwareChannelstringMajburiyINTERNAL · BETA · STABLE
defaultRolloutPercentageintegerMajburiyminimum: 0; maximum: 100

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/settings/settings.controller.ts:18

PUT/v1/admin/settings/businessadminCookie

Kirish siyosati

Request schema and access metadata extracted from controller and DTO source. Business rules may impose additional constraints. No live requests are sent by this documentation.

Auth
adminCookie
Rollar
SUPER_ADMIN, ADMIN
Rate limit
120 / 60s

So‘rov application/json

MaydonTur / talabCheklov
onlineThresholdMinutesintegerMajburiyminimum: 1; maximum: 1440
activeThresholdDaysintegerMajburiyminimum: 1; maximum: 365
companyNamestringMajburiyminLength: 2; maxLength: 120
defaultCurrencystringMajburiyminLength: 3; maxLength: 3
defaultDevicePriceintegerMajburiyminimum: 0; maximum: 2000000000
orderNumberPrefixstringMajburiyminLength: 2; maxLength: 12

Javob

HTTP 200 · To‘liq javob sxemasi bu snapshot’da e’lon qilinmagan.

apps/api/src/settings/settings.controller.ts:21

Manba va dalillar

Hujjat amaldagi source snapshot va o‘qish rejimidagi infratuzilma tekshiruviga asoslangan. Hashlar tekshirilgan fayllarni aniqlaydi; bu mustaqil audit xulosasi emas.

  • apps/api/src/main.ts
  • apps/api/src/auth/auth.controller.ts
  • apps/api/src/auth/auth.guard.ts
  • apps/api/src/auth/auth.service.ts
  • apps/api/src/pairing/pairing.controller.ts
  • apps/api/src/pairing/pairing.dto.ts
  • apps/api/src/firmware/firmware.controller.ts
  • apps/api/src/firmware/firmware.dto.ts
  • apps/api/src/firmware/firmware.service.ts
  • apps/api/src/common/api-exception.filter.ts
Yuklab olish: evidence.json
Keyingi hujjatDevOps va OTA
Hamroh IO · Texnik hujjatlar · 2026-09-10

Hujjatlardan qidirish