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