# Kalit roli ruxsatlari

> Integratsiya kalitida nimalar darhol yoqilgan bo'ladi, rolning qaysi ruxsat sozlamalari API javoblarini haqiqatan ham o'zgartiradi va nima uchun ularning aksariyati kalitga hech narsa bermaydi.

Har bir integratsiya kaliti **o’z roliga** ega — u kalit bilan birga yaratiladi va kompaniya sozlamalarida ko’rsatiladi. Uning ruxsat sozlamalari ruxsat etilgan marshrutlar ichida **javobda nima qaytarilishini va qanday operatsiyalar bajarilishini** o’zgartiradi.

## Ikki darajali ruxsat

Kalit so’rovi ikkita mustaqil tekshiruvdan o’tadi.

|                      | 1-daraja — marshrut                                                                                      | 2-daraja — rol ruxsati                                                              |
| -------------------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| Qayerda tekshiriladi | kirishda, metod bajarilishidan oldin                                                                     | so’rovga javob beradigan metod ichida                                               |
| Nima tekshiriladi    | «HTTP-metod + yo’l shabloni» juftligi [kalit marshrutlari ro’yxatida](/uz/reference/permissions/) mavjud | kalit rolidagi aniq ruxsatni o’zgartirgich                                          |
| Ro’yxat manbasi      | barcha kompaniyalarda bir xil bo’lgan umumiy shablon                                                     | kalit roli, interfeysda tahrirlanadi                                                |
| Agar o’tmasa         | `403 access denied`                                                                                      | maydon nolga tenglashtirildi, filtr tozalandi yoki biznes-qoida bo’yicha rad etildi |

## Darhol nimalar yoqiladi

Kalit yaratilganda uning roli aynan **ikkita** ruxsatga ega bo’ladi:

| Bo’lim → guruh             | Ruxsat                                      |
| -------------------------- | ------------------------------------------- |
| Mahsulotlar → Katalog      | Katalogda mahsulotlarni ko’rish va qidirish |
| Mijozlar → Barcha mijozlar | Mijozlar ro’yxatini ko’rish imkoniyati      |

Katalog va mijozlar kalit marshrutlari ro’yxatiga kiradi, bu ikki tugma javoblarga ta’sir qilmaydi. **Qolgan barchasi olib tashlangan** — shu sababli ba’zi metodlar to’liq ishlamaydi.

## Xarita: ruxsat tugmasi → metod → usiz nima bo’ladi

Quyida rol ruxsati **kalit uchun ochiq bo’lgan** metodning ishlashini o’zgartiradigan barcha joylar keltirilgan.

| Bo’lim → guruh            | Ruxsat                                                      | Kalit metodi                                                 | Ruxsatsiz nima bo’ladi                                                                                                                                    |
| ------------------------- | ----------------------------------------------------------- | ------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Mahsulotlar → Katalog     | Mahsulotlarni yetkazib berish narxlarini ko’rish imkoniyati | `GET /v2/products`                                           | har bir mahsulotdagi `supply_price` = `0`, `supply_currency` = `""` — ildizida ham, `shop_prices` ichida ham                                              |
| Mahsulotlar → Katalog     | Mahsulotlarni yetkazib berish narxlarini ko’rish imkoniyati | `POST /v2/product-search-with-filters`                       | yetkazib berish narxi bo’yicha filtr jimgina bekor qilinadi: `supply_price_from` / `supply_price_to` nollashtiriladi, tanlanma filtrlanmagan holda keladi |
| Mahsulotlar → Katalog     | Barcha do’konlardagi qoldiqlarni ko’rish imkoniyati         | `POST /v2/product-search-with-filters`                       | So’rovdagi `shop_ids` e’tiborsiz qoldiriladi — tanlanma faqat kalitga bog’langan do’konlar bo’yicha amalga oshiriladi                                     |
| Mahsulotlar → Transfer    | Transferlarni yaratish imkoniyati                           | `POST /v2/transfer`                                          | so’rov qabul qilinadi, ammo qoralama yaratilmaydi: asinxron rad etish `403`, `user has no permission to create transfer`, kod `2007`                      |
| Mahsulotlar → Buyurtmalar | Buyurtmani qaytarish imkoniyati                             | `POST /v2/supplier-order` bilan `returned_supplier_order_id` | oddiy buyurtma yaratiladi, qaytarish esa yo’q: asinxron rad etish `400`, `user has no permission to return supplier order`, kod `2029`                    |
| Sotuvlar → Yangi sotuv    | Kechiktirilgan sotuvlarni o’chirish imkoniyati              | agar sotuv kechiktirilgan bo’lsa, `DELETE /v2/order/:id`     | asinxron rad etish `400`, `no permission to delete parked order`, kod `20116`; oddiy sotuvlar avvalgidek o’chiriladi                                      |

## Ruxsat qanday beriladi

1. **Sozlamalar → Kompaniya sozlamalari → Integratsiya kalitlari**.

2. Kerakli kalitning **rolini** ochish.

   ![Integratsiya kalitlari ro’yxati: «Rol» ustunidagi kalit roliga havola](/_astro/01-select-role.CcP98taP_Z1DArB.webp)

3. Kerakli bo’limda talab qilingan amallarni belgilash va saqlash.

   ![Kalit roli sahifasi: chapda bo’limlar, o’ngda ruxsatlarni o’zgartirish tugmalari](/_astro/02-set-permissions.fMjIaDes_Za22xp.webp)

Ruxsatlar 20 daqiqaga keshlanadi; rolni o’zgartirish keshni tozalaydi.

> **Kalit roli — bu kompaniya ma’lumotlariga ruxsat**
>
> Rol ruxsatlari kalit egasiga tannarxni, barcha do’konlardagi qoldiqlarni va o’chirilgan sotuvlarni ochib beradi. Faqat kerakli ruxsatlar beriladi; har bir pudratchi uchun alohida kalit yaratiladi.

## Qo’shimcha materiallar

* [Integratsiya kaliti nimalarga qodir](/uz/reference/permissions/) — marshrutlarning to’liq ro’yxati, 1-daraja
* [403 va 404](/uz/troubleshooting/403-and-404/) — rad etishlarni tahlil qilish
* [Autentifikatsiya va ruxsatlar](/uz/concepts/auth/) — ruxsat modeli to’liq qanday tuzilgan