> ## Documentation Index
> Fetch the complete documentation index at: https://docs.livingsecurity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Email phishing log

> Oldingi provayderning hodisa darajasidagi phishing jurnalini /v1 reporting simulation events va entities asosida qayta yaratish.

Ushbu hisobot hodisa darajasidagi phishing jurnalidir: kuzatilgan har bir simulyatsiya o‘zaro ta’siri uchun bitta qator (sana, harakat, qabul qiluvchining email manzili, mavzu, jo‘natuvchi, murakkablik darajasi). U uzun shaklda saqlanadi — shaxs tarixini yagona natijaga jamlamaydi.

So‘rov oxirgi **12 taqvim oyini** `occurred_after` ichiga jamlaydi (12 oy avvalgi xuddi shu oy kunidagi UTC yarim tun — 365 kunlik davomiylik emas).

<Note>
  Mijozning xom IP manzili `/v1` da hech qachon mavjud bo‘lmaydi — bu maxfiylikni ta’minlash maqsadidagi dizayn bo‘lib, kutilayotgan moslashtirish emas. Qurilma turi hodisa qatorida hosilaviy sinf sifatida beriladi; xom `user_agent` esa yopiq qoladi. Qarang: [Divergences from the legacy export](#divergences-from-the-legacy-export).
</Note>

Sozlash, hisob ma’lumotlari, sahifalash va rate-limit bo‘yicha qayta urinish [Power BI / Excel connectivity guide](/uz/developers/v1/powerbi) dagi kabi. Avval umumiy `Fn_FetchAll` so‘rovini qo‘shing; ushbu hisobot uni nomi bilan chaqiradi.

## Required key scopes

| Scope | Used for |
| - | - |
| `reporting:read` | `GET /v1/reporting/simulation_events` |
| `entity:read` | `GET /v1/entities` (email va ko‘rsatiladigan ismni bog‘lash) |

Faqat `simulation:read` berilgan kalit reporting events endpointini chaqira olmaydi (API `403` qaytaradi). Qarang: [choose the right grain](/uz/developers/v1/powerbi#to-g-ri-kesimni-tanlang).

## Source endpoints

| Endpoint | Role |
| - | - |
| `GET /v1/reporting/simulation_events` | Hodisa darajasidagi fakt. Granulyarlik — bitta turdagi o‘zaro ta’sir. `email_subject`, `sender_email`, `sender_domain` va `difficulty_tier` shu qatorda mavjud, shuning uchun so‘rov bu maydonlar uchun kampaniya darajasidagi natijalarni bog‘lamaydi. |
| `GET /v1/entities` | `entity_id` → email / ko‘rsatiladigan ism bog‘lanishini aniqlaydi. Reporting hodisasida qabul qiluvchining email manzili bo‘lmaydi (reporting reader uchun qat’iy istisno). Eski "email" ustuni `/entities` ni aylanib o‘tish orqali to‘ldiriladi. |

Events ro‘yxatidagi ruxsat etilgan filtrlar (boshqa har qanday filtr `400` qaytaradi):
`limit`, `page_token`, `simulation`, `entity`, `event_type`,
`occurred_after`.

Ushbu reporting oilasi [preview dataset](/uz/developers/v1/powerbi#reporting-preview-datasetlari-har-bir-shaxs-bo-yicha-phishing) hisoblanadi. Dataset sxemasi va ma’lumotlar siyosatlarini
`GET /v1/reporting/datasets` va
`GET /v1/reporting/datasets/simulation_events` orqali ko‘rib chiqing.

### Grain

Har bir reporting simulation event uchun bitta qator. Bir xil xabarni avval ochgan, so‘ng bosgan shaxs ikki qator hosil qiladi. `entity_id` qiymati null bo‘lgan hodisalar (aktor / qabul qiluvchi / nishon ishtirokchi yo‘q) ham ko‘rsatiladi — `email` null bo‘ladi.

API oynasi bir daqiqaga kengaytiriladi; aniq `occurred_at >= WindowStart` chegarasi lokal darajada qayta qo‘llanadi, shu tufayli oxirgi yil server `occurred_after` ni kiritilgan yoki kiritilmagan deb hisoblashiga bog‘liq bo‘lmaydi.

So‘rovlar byudjeti: oynadagi hodisalarni sahifalab bir marta aylanib chiqish va entities ni bir marta aylanib chiqish. Har doim `limit = "500"` ni belgilang.

## Column mapping

Eski ustun nomlari oldingi provayderingiz eksportidan olingan. `/v1` maydonlari — ommaviy API nomlari; so‘rov ulardan ba’zilariga hisobot uchun taxallus beradi.

| Legacy column | `/v1` field or derivation | Report column |
| - | - | - |
| Date | `Event.occurred_at` (sana sifatida; xom `occurred_at` `datetimezone` sifatida saqlanadi) | `date` |
| Action | `Event.event_type` — yopiq tokenlar quyida keltirilgan | `action` |
| Email | `Entity.email` (`entity_id` bo‘yicha bog‘lash) | `email` |
| Subject | `Event.email_subject` | `subject` |
| From | `Event.sender_email` | `from` |
| Difficulty | `Event.difficulty_tier` — 1–5 butun son, 1 — eng oson, 5 — eng qiyin | `difficulty` |
| Raw IP | `/v1` da hech qachon mavjud emas | Omitted, not nulled |
| Device type | `Event.device_type` — hosilaviy sinf; hodisada hosilaviy sinf bo‘lmasa, null | `device_type` |

### Action tokens

`action` — yopiq reporting tokeni. Eski "Email Sent" `simulation.delivered` ga mos keladi (`delivered` — ommaviy fe’l; wire tokeni `simulation.delivered`).

| `action` value |
| - |
| `simulation.delivered` |
| `simulation.opened` |
| `simulation.link_clicked` |
| `simulation.credentials_submitted` |
| `simulation.attachment_opened` |
| `simulation.reported` |
| `simulation.bounced` |
| `simulation.qr_scanned` |
| `simulation.replied` |

API’da mavjud bo‘lgani uchun saqlangan qo‘shimcha maydonlar: `sender_domain`, `full_name`, `event_id`, `entity_id`, `simulation_id`, `occurred_at`, shuningdek entity bog‘lanishidan `entity_type` va `entity_status`.

## Divergences from the legacy export

* **Xom IP hech qachon mavjud emas.** `/v1` mijozning xom IP manzilini ochib bermaydi — bu maxfiylikni ta’minlash maqsadidagi dizayn bo‘lib, kutilayotgan moslashtirish emas. So‘rov IP uchun o‘rinbosar ustun qo‘shmaydi.
* **Qurilma turi xom emas, hosilaviy.** `device_type` — click, submit va report hodisalari uchun hosilaviy qurilma sinfi. Kuzatiladigan tokenlar orasida `desktop`, `mobile`, `tablet` va `unknown` bor, ammo emitter erkin shakldagi satrni saqlaydi — uni yopiq enum emas, ochiq matn deb hisoblang. Hodisada hosilaviy sinf bo‘lmasa, u null bo‘ladi, xom `user_agent` satri esa yopiq qoladi.
* **"Email Sent" — bu `simulation.delivered`.** Yuborilganlarni filtrlash yoki sanashda shu tokendan foydalaning. Eski `email_sent` satrini izlamang.
* **Qabul qiluvchining email manzili hodisadagi maydon emas, bog‘lanishdir.** Reporting hodisasida email yo‘q; so‘rov uni to‘ldirish uchun `/entities` ni aylanib chiqadi.
* **Oxirgi 12 taqvim oyi**, 365 kunlik davomiylik emas va to‘liq tarix ham emas.
* **Uzun shakl, jamlanmagan.** Har bir o‘zaro ta’sir uchun bitta qator, har bir shaxs uchun bitta natija emas.

## Next steps

<CardGroup cols={2}>
  <Card title="Power BI and Excel setup" href="/uz/developers/v1/powerbi">
    Hisob ma’lumotlari, sahifalash va ushbu so‘rovlarni Power BI yoki Excel’ga yuklash.
  </Card>

  <Card title="Most susceptible users" href="/uz/developers/v1/reports/most-susceptible-users">
    Har bir shaxs bo‘yicha 12 oylik click, credential va report jamlanmasi.
  </Card>

  <Card title="Per-person compliance" href="/uz/developers/v1/reports/per-person-compliance">
    Shaxs × topshiriq granulyarligidagi Training ro‘yxatga olishlari.
  </Card>

  <Card title="API keys" href="/uz/developers/developer-hub/api-keys">
    Ushbu hisobotni yangilaydigan kalitga `reporting:read` va `entity:read` ruxsatlarini bering.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.