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

# API аналитики верификации приложения

> Получайте аналитику верификации приложения Didit за период: итоги KYC-сессий, конверсию, воронки и виджеты дашборда KYB и транзакций.



Промпт для API аналитики приложения
        Скопировать промпт в буфер обмена



      
      

\<pre>

\`Read the verification analytics of my Didit application for a date range.

Endpoint:
GET https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/analytics/

Authentication:
Use the x-api-key header with my Didit API key. Only a full-access key works: any scoped key gets 403 "This API key has no access to this endpoint.". application_id must be the application the key belongs to.

Goal:
\- Pull KYC session totals, conversion rate and breakdowns into my own reporting, or fetch the same KYB and transaction widgets the Business Console dashboard shows.

Query parameters:
\- start_date, end_date - YYYY-MM-DD, inclusive, UTC. Send both or neither; without both the range runs from 30 days ago through today. A future end_date counts as today. At most 730 days.
\- scope - "kyc", "kyb", "transactions" or "home". Omit it for the KYC summary.
\- widget_keys - comma-separated widget keys, in order. Unknown keys are dropped; with none left you get the scope's defaults.
\- workflow_ids - comma-separated workflow IDs, limits KYC and KYB numbers. versions and branch_path_ids apply only together with workflow_ids (branch_path_ids to KYC numbers only; only the default branch path has figures, so any other value returns empty figures).
\- tag, transaction_type, action_type - filters for transaction widgets only.

Behavior:
\- Without scope and widget_keys the response is the KYC summary: data_points (one per day), request_breakdown, conversion_rate, previous_data_points and previous_request_breakdown for the period of equal length before start_date, location_stats, demographic_stats, device_details, workflow_funnel_stats, verification_time_stats, resubmission_stats, warning_stats, original_status_stats and time series grouped by grouping_mode ("day" up to 14 days, "week" up to 90, "month" beyond). data_points and the grouping span start at the first day with sessions inside the range, not at start_date.
\- With scope (or widget_keys) the response is {scope, available_widget_keys, requested_widget_keys, widgets}; widgets is keyed by widget key and each widget has kind, title and the fields of its kind.
\- Invalid workflow IDs and versions are ignored rather than rejected.
\- Counts come from daily rollups refreshed in the background, so the newest activity can take a short while to appear.

Example call:
curl -X GET "https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/analytics/?start_date=2026-10-01&end_date=2026-10-15" \
-H "x-api-key: YOUR_API_KEY"

What to read from the response:
\- request_breakdown.total_approved, total_declined, total_in_review - status totals for the range.
\- conversion_rate - approved / (approved + declined + in review) x 100; null when nothing finished.
\- workflow_funnel_stats.<workflow_id>.steps.<STEP>.reached - sessions that reached each step.
\- widgets.<widget_key> - with scope, the widget payloads.

Failure modes:
\- 400 - {"start_date": "Invalid date format. Use YYYY-MM-DD (e.g., 2024-01-15)."}, {"start_date": "Start date must be before or equal to end date."}, {"date_range": "Date range cannot exceed 730 days (2 years)."} or {"scope": "Unsupported analytics scope."}.
\- 401 - the API key has expired.
\- 403 - missing key (a wrong, revoked or expired key gets 401) ({"detail": "Authentication credentials were not provided or are invalid."}), a key of another application ({"detail": "You do not have permission to perform this action."}), any scoped key, or a request from outside the key's IP list.
\- 429 - more than 600 GET requests per minute with this key.

Side effects: none. Not billed.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

Вставьте в

Этот endpoint возвращает данные, которые лежат в основе [панели аналитики](https://docs.didit.me/ru/console/analytics.md) в Business Console. У него два формата ответа:| Что вы отправляете | Что вы получаете |
| - | - |
| Ни `scope`, ни `widget_keys` | Сводка по проверке пользователей (KYC) за указанный период |
| `scope`, `widget_keys` или оба параметра | Виджеты панели для одной вкладки: `kyc`, `kyb`, `transactions` или `home` (любая комбинация из трёх) |У каждого виджета есть `kind` и `title`, остальные поля зависят от типа. Один раз отправьте `scope` без `widget_keys`, чтобы получить `available_widget_keys`, а затем запрашивайте только нужные виджеты.> [!NOTE]
>
> Вызывать этот endpoint может только API-ключ с полным доступом. Ключ с ограниченным доступом получает `403` независимо от своих прав, так же как и ключ другого приложения. См. [API-ключи](https://docs.didit.me/ru/console/api-keys.md).## Связанные материалы- [Получение верификаций за сегодня по часам](https://docs.didit.me/ru/management-api/analytics/today-by-hour.md)
- [Панель аналитики](https://docs.didit.me/ru/console/analytics.md)
- [API-ключи и ограниченный доступ](https://docs.didit.me/ru/console/api-keys.md)


## OpenAPI

````yaml ru/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: >-
    API верификации личности. Аутентификация выполняется с помощью заголовка
    x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/analytics/:
    get:
      tags:
        - Analytics
      summary: Получить аналитику приложения
      description: >-
        Считывает числовые показатели для [панели
        аналитики](https://docs.didit.me/ru/console/analytics) в Business
        Console за указанный диапазон дат. Без параметров `scope` и
        `widget_keys` ответом будет сводка по проверке пользователей (KYC)
        (`ApplicationAnalyticsSummary`): ежедневное количество сессий, итоги по
        статусам, коэффициент конверсии, те же показатели за предшествующий
        период аналогичной длины, локации, демографические данные, устройства,
        воронки сценариев, активное время верификации, повторные отправки,
        предупреждения и временные ряды. При наличии `scope` или `widget_keys`
        возвращаются виджеты одной вкладки панели управления
        (`ApplicationAnalyticsWidgetResponse`): `kyc`, `kyb`, `transactions` или
        `home`.


        Количество сессий рассчитывается по дате создания сессии (UTC) и
        отражает текущий статус каждой сессии. Значения берутся из ежедневных
        агрегаций, обновляемых в фоновом режиме, поэтому появление самых свежих
        действий может занять некоторое время. Недопустимые ID сценариев и
        версии игнорируются, а не отклоняются. Плата не взимается.


        Вызывать этот endpoint может только API-ключ с полным доступом: любой
        ключ с ограниченной областью действия получает `403` независимо от его
        разрешений, как и ключ другого приложения. См.
        [API-ключи](https://docs.didit.me/ru/console/api-keys).
      operationId: get_application_analytics
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: UUID организации.
          example: 11111111-2222-3333-4444-555555555555
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: >-
            UUID приложения. Должно быть приложением, к которому относится
            API-ключ: при использовании ключа для любого другого приложения
            возвращается `403`.
          example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2026-10-01'
          description: >-
            Первый день диапазона, `YYYY-MM-DD`, включительно (UTC). Передавайте
            вместе с `end_date`: если один из параметров отсутствует, оба
            игнорируются, и диапазон охватывает период от 30 дней назад до
            сегодняшнего дня.
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
            example: '2026-10-15'
          description: >-
            Последний день диапазона, `YYYY-MM-DD`, включительно (UTC). Будущая
            дата считается сегодняшним днём. Диапазон не может превышать 730
            дней.
        - name: scope
          in: query
          required: false
          schema:
            type: string
            enum:
              - home
              - kyc
              - kyb
              - transactions
          description: >-
            Вкладка панели управления, для которой нужно вернуть виджеты (без
            учёта регистра). Опустите её вместе с `widget_keys` для получения
            сводки по KYC. Передача только `widget_keys` подразумевает `kyc`.
            `home` принимает любые виджеты KYC, KYB или транзакций и по
            умолчанию использует сохранённую раскладку главной страницы
            приложения.
        - name: widget_keys
          in: query
          required: false
          schema:
            type: string
            example: tx_count_total,tx_count_daily
          description: >-
            Разделённые запятыми ключи виджетов, возвращаемые в указанном
            порядке. Ключи, не поддерживаемые областью действия (scope),
            отбрасываются; если не останется ни одного, возвращаются значения по
            умолчанию для этой области. KYC: `kyc_sessions_volume`,
            `kyc_warning_insights`, `kyc_id_locations`, `kyc_ip_locations`,
            `kyc_workflow_funnel`, `kyc_average_verification_time`,
            `kyc_conversion_rate`, `kyc_conversion_by_country`,
            `kyc_resubmission_insights`, `kyc_original_status_distribution`,
            `kyc_database_validation_coverage`,
            `kyc_database_validation_latency`, `kyc_demographics`,
            `kyc_device_details`. KYB: `kyb_sessions_volume`,
            `kyb_workflow_funnel`, `kyb_average_verification_time`,
            `kyb_ip_locations`, `kyb_business_country_distribution`,
            `kyb_warning_insights`, `kyb_conversion_rate`,
            `kyb_conversion_by_country`, `kyb_industry_breakdown`,
            `kyb_resubmission_insights`, `kyb_original_status_distribution`,
            `kyb_registry_coverage`, `kyb_registry_data_completeness`,
            `kyb_device_details`. Транзакции: `tx_count_total`,
            `tx_count_daily`, `tx_volume_total_preferred_currency`,
            `tx_volume_daily_preferred_currency`, `tx_average_amount`,
            `tx_average_amount_daily`, `tx_transaction_category_breakdown`,
            `tx_action_type_breakdown`, `tx_status_volume_trend`,
            `tx_user_ip_or_country_distribution`, `tx_tag_breakdown`,
            `tx_top_rules_triggered`, `tx_team_member_performance`,
            `tx_score_histogram`.
        - name: workflow_ids
          in: query
          required: false
          schema:
            type: string
            example: 33333333-4444-5555-6666-777777777777
          description: >-
            Разделённые запятыми идентификаторы сценариев. Ограничивает сводку
            KYC и виджеты KYC и KYB указанными сценариями. Значения, не
            являющиеся UUID, игнорируются; если нет ни одного валидного
            значения, фильтр отбрасывается. Сводка также принимает
            `workflow_id`.
        - name: versions
          in: query
          required: false
          schema:
            type: string
            example: 3,4
          description: >-
            Разделённые запятыми номера версий сценария. Применяется только
            вместе с `workflow_ids`; значения, не являющиеся целыми числами,
            игнорируются. `version` принимается в качестве псевдонима.
        - name: branch_path_ids
          in: query
          required: false
          schema:
            type: string
            example: default
          description: >-
            Разделённые запятыми ID путей ветвей. Применяется только вместе с
            `workflow_ids` и только к показателям KYC. В настоящее время
            показатели фиксируются только для `default` (все пути вместе),
            поэтому любое другое значение возвращает пустые показатели.
            `branch_path_id` принимается в качестве псевдонима.
        - name: tag
          in: query
          required: false
          schema:
            type: string
          description: >-
            Только для виджетов транзакций: UUID тегов или названия тегов через
            запятую.
        - name: transaction_type
          in: query
          required: false
          schema:
            type: string
            example: finance
          description: 'Только для виджетов транзакций: категории транзакций через запятую.'
        - name: action_type
          in: query
          required: false
          schema:
            type: string
            example: withdrawal
          description: >-
            Только для виджетов транзакций: типы действий через запятую (без
            учёта регистра).
      responses:
        '200':
          description: >-
            Сводка KYC или запрошенные виджеты, если переданы `scope` или
            `widget_keys`.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/ApplicationAnalyticsSummary'
                  - $ref: '#/components/schemas/ApplicationAnalyticsWidgetResponse'
              examples:
                KYC summary:
                  value:
                    grouping_mode: day
                    data_points:
                      - rounded_date: '2026-10-14'
                        total: 12
                        approved: 8
                        declined: 1
                        canceled: 1
                        pending: 2
                        in_review: 1
                        expired: 1
                        abandoned: 0
                        in_progress: 1
                        not_started: 0
                        manually_approved: 1
                        manually_declined: 0
                      - rounded_date: '2026-10-15'
                        total: 10
                        approved: 6
                        declined: 2
                        canceled: 0
                        pending: 2
                        in_review: 2
                        expired: 0
                        abandoned: 0
                        in_progress: 0
                        not_started: 0
                        manually_approved: 0
                        manually_declined: 1
                    request_breakdown:
                      total_approved: 14
                      total_in_review: 3
                      total_declined: 3
                      total_canceled: 1
                      total_pending: 4
                      total_expired: 1
                      total_abandoned: 0
                      total_in_progress: 1
                      total_not_started: 0
                      total_manually_approved: 1
                      total_manually_declined: 1
                    conversion_rate: 70
                    location_stats:
                      countries:
                        - session_count: 15
                          country: Spain
                          country_code: ES
                        - session_count: 7
                          country: Portugal
                          country_code: PT
                      ip_countries:
                        - session_count: 15
                          country: Spain
                          country_code: ES
                        - session_count: 7
                          country: Portugal
                          country_code: PT
                      id_countries:
                        - country: Spain
                          country_code: ES
                          session_count: 14
                        - country: Portugal
                          country_code: PT
                          session_count: 6
                      conversion_by_country:
                        - country: Spain
                          country_code: ES
                          finished: 13
                          approved: 10
                        - country: Portugal
                          country_code: PT
                          finished: 6
                          approved: 4
                      cities:
                        - session_count: 9
                          location: Madrid, Spain
                          latitude: 40.4168
                          longitude: -3.7038
                    demographic_stats:
                      age_distribution:
                        under_18: 0
                        18_24: 5
                        25_34: 8
                        35_44: 4
                        45_64: 2
                        65_plus: 1
                      gender_distribution:
                        M: 11
                        F: 9
                    device_details:
                      device_models:
                        - device: Apple
                          count: 12
                        - device: Android
                          count: 10
                      browsers:
                        - browser: Safari
                          count: 12
                        - browser: Chrome
                          count: 10
                      operating_systems:
                        - os: iOS
                          count: 12
                        - os: Android
                          count: 10
                    workflow_funnel_stats:
                      33333333-4444-5555-6666-777777777777:
                        total: 22
                        steps:
                          OCR:
                            reached: 21
                          LIVENESS:
                            reached: 19
                          FACE_MATCH:
                            reached: 19
                          AML:
                            reached: 18
                    verification_time_stats:
                      overall_avg_seconds: 64
                      overall_count: 18
                      per_feature:
                        OCR:
                          avg_seconds: 41.2
                          total_seconds: 741.6
                          count: 18
                        LIVENESS:
                          avg_seconds: 22.8
                          total_seconds: 410.4
                          count: 18
                      per_sub_step:
                        OCR:
                          front_id_photo:
                            avg_seconds: 18.3
                            total_seconds: 329.4
                            count: 18
                    resubmission_stats:
                      first_pass: 17
                      second: 2
                      third_plus: 1
                      abandoned: 0
                    warning_stats:
                      ID_VERIFICATION:
                        total: 21
                        risks:
                          DOCUMENT_EXPIRED:
                            error: 1
                            warning: 0
                            information: 0
                      LIVENESS:
                        total: 19
                        risks:
                          LOW_LIVENESS_SCORE:
                            error: 0
                            warning: 2
                            information: 0
                    original_status_stats:
                      approved: 13
                      in_review: 5
                      declined: 2
                    demographic_time_series:
                      - date: '2026-10-14'
                        age_distribution:
                          under_18: 0
                          18_24: 3
                          25_34: 4
                          35_44: 2
                          45_64: 1
                          65_plus: 0
                        gender_distribution:
                          M: 6
                          F: 4
                      - date: '2026-10-15'
                        age_distribution:
                          under_18: 0
                          18_24: 2
                          25_34: 4
                          35_44: 2
                          45_64: 1
                          65_plus: 1
                        gender_distribution:
                          M: 5
                          F: 5
                    device_time_series:
                      - date: '2026-10-14'
                        devices:
                          Apple: 7
                          Android: 5
                        browsers:
                          Safari: 7
                          Chrome: 5
                        operating_systems:
                          iOS: 7
                          Android: 5
                      - date: '2026-10-15'
                        devices:
                          Apple: 5
                          Android: 5
                        browsers:
                          Safari: 5
                          Chrome: 5
                        operating_systems:
                          iOS: 5
                          Android: 5
                    verification_time_time_series:
                      - date: '2026-10-14'
                        overall_avg: 66.1
                        per_feature:
                          OCR: 42
                          LIVENESS: 24.1
                      - date: '2026-10-15'
                        overall_avg: 61.5
                        per_feature:
                          OCR: 40.2
                          LIVENESS: 21.3
                    resubmission_time_series:
                      - date: '2026-10-14'
                        first_pass: 9
                        second: 1
                        third_plus: 0
                        abandoned: 0
                      - date: '2026-10-15'
                        first_pass: 8
                        second: 1
                        third_plus: 1
                        abandoned: 0
                    original_status_time_series:
                      - date: '2026-10-14'
                        approved: 7
                        in_review: 3
                        declined: 1
                      - date: '2026-10-15'
                        approved: 6
                        in_review: 2
                        declined: 1
                    previous_data_points:
                      - rounded_date: '2026-10-12'
                        total: 9
                        approved: 6
                        declined: 1
                        canceled: 1
                        pending: 1
                      - rounded_date: '2026-10-13'
                        total: 11
                        approved: 7
                        declined: 2
                        canceled: 0
                        pending: 2
                    previous_request_breakdown:
                      total_approved: 13
                      total_in_review: 2
                      total_declined: 3
                      total_canceled: 1
                      total_pending: 3
                Transaction widgets:
                  value:
                    scope: transactions
                    available_widget_keys:
                      - tx_count_total
                      - tx_count_daily
                      - tx_volume_total_preferred_currency
                      - tx_volume_daily_preferred_currency
                      - tx_average_amount
                      - tx_average_amount_daily
                      - tx_transaction_category_breakdown
                      - tx_action_type_breakdown
                      - tx_status_volume_trend
                      - tx_user_ip_or_country_distribution
                      - tx_tag_breakdown
                      - tx_top_rules_triggered
                      - tx_team_member_performance
                      - tx_score_histogram
                    requested_widget_keys:
                      - tx_count_total
                      - tx_count_daily
                    widgets:
                      tx_count_total:
                        kind: metric
                        title: Transaction count
                        value: 42
                      tx_count_daily:
                        kind: time_series
                        title: Transaction count
                        items:
                          - date: '2026-10-14'
                            value: 20
                          - date: '2026-10-15'
                            value: 22
                        previous_items:
                          - date: '2026-10-12'
                            value: 18
                          - date: '2026-10-13'
                            value: 15
        '400':
          description: >-
            Недопустимый диапазон дат или область действия (scope). Тело ответа
            представляет собой объект с ключом проблемного параметра и строковым
            сообщением.
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: string
              examples:
                Bad date format:
                  value:
                    start_date: Invalid date format. Use YYYY-MM-DD (e.g., 2024-01-15).
                Start after end:
                  value:
                    start_date: Start date must be before or equal to end date.
                Range too long:
                  value:
                    date_range: Date range cannot exceed 730 days (2 years).
                Unknown scope:
                  value:
                    scope: Unsupported analytics scope.
        '401':
          description: >-
            Срок действия API-ключа истёк. Истечь может только ключ, созданный
            со сроком действия; после этой даты каждый запрос с ним возвращает
            `401`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            Запрос не разрешён. Проверьте `detail`: отсутствующий API-ключ
            (неверный, отозванный или истёкший ключ возвращает `401`), ключ
            другого приложения, любой ключ с ограниченной областью действия или
            запрос не из списка IP-адресов ключа.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Missing or invalid key:
                  value:
                    detail: >-
                      Authentication credentials were not provided or are
                      invalid.
                Another application:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key:
                  value:
                    detail: This API key has no access to this endpoint.
                Outside the key's IP list:
                  value:
                    detail: This API key can't be used from this IP address.
        '429':
          description: >-
            Более 600 GET-запросов в минуту с этим API-ключом. Подождите
            указанное в `Retry-After` количество секунд, затем повторите
            попытку.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
          headers:
            Retry-After:
              description: Количество секунд до сброса текущего минутного окна.
              schema:
                type: integer
                example: 23
            X-RateLimit-Limit:
              description: Количество разрешённых запросов в минуту в рамках этого бюджета.
              schema:
                type: integer
            X-RateLimit-Remaining:
              description: Количество оставшихся запросов в текущем окне.
              schema:
                type: integer
            X-RateLimit-Reset:
              description: Unix-время, когда окно сбрасывается.
              schema:
                type: integer
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/analytics/?start_date=2026-10-01&end_date=2026-10-15'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            result = client.analytics.retrieve()
            print(result)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            const didit = new Didit();

            const result = await didit.analytics.retrieve();
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nresult, err := client.Analytics.Retrieve(ctx, didit.AnalyticsRetrieveParams{})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            Didit client = new Didit();

            var result = client.analytics().retrieve();
            System.out.println(result);
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            $didit = new DiditClient();

            $result = $didit->analytics->retrieve();
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            didit = Didit::Client.new

            result = didit.analytics.retrieve
            puts result.to_h
        - lang: csharp
          label: .NET
          source: |-
            using System;
            using System.Text.Json;
            using Didit;

            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            // and DIDIT_APPLICATION_ID.
            using var client = new DiditClient();

            var result = await client.Analytics.RetrieveAsync();
            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    ApplicationAnalyticsSummary:
      type: object
      description: >-
        Сводка проверки пользователей (KYC), возвращаемая, если не переданы ни
        `scope`, ни `widget_keys`.
      required:
        - data_points
        - request_breakdown
        - previous_data_points
        - previous_request_breakdown
        - conversion_rate
        - location_stats
        - demographic_stats
        - device_details
        - workflow_funnel_stats
        - verification_time_stats
        - resubmission_stats
        - warning_stats
        - original_status_stats
        - grouping_mode
        - demographic_time_series
        - device_time_series
        - verification_time_time_series
        - resubmission_time_series
        - original_status_time_series
      properties:
        data_points:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDataPoint'
          description: >-
            Одна точка на день, начиная с первого дня с сессиями в указанном
            диапазоне и до `end_date`. Всегда с ежедневной детализацией
            независимо от значения `grouping_mode`.
        request_breakdown:
          $ref: '#/components/schemas/ApplicationAnalyticsRequestBreakdown'
        previous_data_points:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDataPoint'
          description: >-
            Ежедневные точки за период такой же длительности непосредственно
            перед `start_date`.
        previous_request_breakdown:
          $ref: '#/components/schemas/ApplicationAnalyticsRequestBreakdown'
        conversion_rate:
          type: number
          nullable: true
          description: >-
            `total_approved / (total_approved + total_declined +
            total_in_review) x 100`, один знак после запятой. `null`, когда
            ничего не завершилось.
        location_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsLocationStats'
        demographic_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsDemographicStats'
        device_details:
          $ref: '#/components/schemas/ApplicationAnalyticsDeviceDetails'
        workflow_funnel_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsWorkflowFunnel'
        verification_time_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsVerificationTimeStats'
        resubmission_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsResubmissionStats'
        warning_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsWarningStats'
        original_status_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsOriginalStatusStats'
        grouping_mode:
          type: string
          enum:
            - day
            - week
            - month
          description: >-
            Способ группировки списков `*_time_series`: `day` для периодов до 14
            дней, `week` до 90 дней, `month` свыше 90 дней. Отсчитывается от
            первого дня с сессиями в диапазоне.
        demographic_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDemographicPoint'
        device_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDevicePoint'
        verification_time_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsVerificationTimePoint'
        resubmission_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsResubmissionPoint'
        original_status_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsOriginalStatusPoint'
    ApplicationAnalyticsWidgetResponse:
      type: object
      description: >-
        Виджеты панели управления, возвращаемые при передаче `scope` или
        `widget_keys`.
      required:
        - scope
        - available_widget_keys
        - requested_widget_keys
        - widgets
      properties:
        scope:
          type: string
          enum:
            - home
            - kyc
            - kyb
            - transactions
          description: Вкладка панели управления.
        available_widget_keys:
          type: array
          items:
            type: string
          description: Каждый ключ виджета, принимаемый этой областью видимости.
        requested_widget_keys:
          type: array
          items:
            type: string
          description: >-
            Ключи виджета в ответе по порядку: ваши действующие `widget_keys`
            или значения по умолчанию для области видимости.
        widgets:
          type: object
          description: С ключами по ключам виджетов в порядке `requested_widget_keys`.
          additionalProperties:
            $ref: '#/components/schemas/ApplicationAnalyticsWidget'
    ApplicationAnalyticsDataPoint:
      type: object
      description: >-
        Количество сессий за один день по дате создания (UTC). Каждое значение
        отражает текущий статус сессии. Точки предыдущего периода содержат как
        минимум обязательные поля.
      required:
        - rounded_date
        - total
        - approved
        - declined
        - canceled
        - pending
      properties:
        rounded_date:
          type: string
          format: date
          description: День, `YYYY-MM-DD`.
        total:
          type: integer
          description: Сессии, созданные в этот день.
        approved:
          type: integer
          description: Из них сессии `Approved` или `Kyc Expired`.
        declined:
          type: integer
          description: Сессии со статусом `Declined`.
        canceled:
          type: integer
          description: Сессии со статусом `Expired` или `Abandoned`.
        pending:
          type: integer
          description: Сессии со статусом `Not Started`, `In Progress` или `In Review`.
        in_review:
          type: integer
          description: Сессии со статусом `In Review`.
        expired:
          type: integer
          description: Сессии со статусом `Expired`.
        abandoned:
          type: integer
          description: Сессии со статусом `Abandoned`.
        in_progress:
          type: integer
          description: Сессии со статусом `In Progress`.
        not_started:
          type: integer
          description: Сессии со статусом `Not Started`.
        manually_approved:
          type: integer
          description: >-
            Сессии, одобренные проверяющим после того, как сценарий вынес иной
            вердикт.
        manually_declined:
          type: integer
          description: >-
            Сессии, отклонённые проверяющим после того, как сценарий вынес иной
            вердикт.
    ApplicationAnalyticsRequestBreakdown:
      type: object
      description: >-
        Итоговые данные по статусам за диапазон. Разбивка за предыдущий период
        содержит как минимум обязательные поля.
      required:
        - total_approved
        - total_in_review
        - total_declined
        - total_canceled
        - total_pending
      properties:
        total_approved:
          type: integer
          description: Сессии со статусом `Approved` или `Kyc Expired`.
        total_in_review:
          type: integer
          description: Сессии со статусом `In Review`.
        total_declined:
          type: integer
          description: Сессии со статусом `Declined`.
        total_canceled:
          type: integer
          description: Сессии со статусом `Expired` или `Abandoned`.
        total_pending:
          type: integer
          description: >-
            Сессии со статусом `Not Started`, `In Progress` или `In Review`
            (включает `total_in_review`).
        total_expired:
          type: integer
          description: Сессии со статусом `Expired`.
        total_abandoned:
          type: integer
          description: Сессии со статусом `Abandoned`.
        total_in_progress:
          type: integer
          description: Сессии со статусом `In Progress`.
        total_not_started:
          type: integer
          description: Сессии со статусом `Not Started`.
        total_manually_approved:
          type: integer
          description: Одобрена проверяющим.
        total_manually_declined:
          type: integer
          description: Отклонена проверяющим.
    ApplicationAnalyticsLocationStats:
      type: object
      properties:
        ip_countries:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsCountryCount'
          description: Страны IP-адресов пользователей, в порядке убывания числа сессий.
        countries:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsCountryCount'
          description: Тот же список, что и `ip_countries`.
        id_countries:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsCountryCount'
          description: >-
            Страны выдачи верифицированных документов, удостоверяющих личность,
            в порядке убывания количества сессий.
        conversion_by_country:
          type: array
          description: >-
            По стране выдачи документа: завершённые сессии (одобрена, отклонена
            или на проверке) и количество одобренных. Сортировка по убыванию
            количества завершённых.
          items:
            type: object
            properties:
              country:
                type: string
              country_code:
                type: string
              finished:
                type: integer
              approved:
                type: integer
        cities:
          type: array
          description: До 100 городов по IP, сначала города с наибольшим числом сессий.
          items:
            type: object
            properties:
              location:
                type: string
                description: '`City, Country`.'
              session_count:
                type: integer
              latitude:
                type: number
                nullable: true
              longitude:
                type: number
                nullable: true
    ApplicationAnalyticsDemographicStats:
      type: object
      properties:
        age_distribution:
          type: object
          description: >-
            Сессии по возрастным группам из документа, удостоверяющего личность.
            Пусто, если данные отсутствуют.
          properties:
            under_18:
              type: integer
            18_24:
              type: integer
            25_34:
              type: integer
            35_44:
              type: integer
            45_64:
              type: integer
            65_plus:
              type: integer
          additionalProperties:
            type: integer
        gender_distribution:
          type: object
          description: 'Сессии по коду пола из документа: `M`, `F` или `U` (неизвестно).'
          additionalProperties:
            type: integer
    ApplicationAnalyticsDeviceDetails:
      type: object
      description: Топ-5 по каждой категории, сначала с наибольшим количеством сессий.
      properties:
        device_models:
          type: array
          description: >-
            Бренды устройств: `Apple`, `Android`, `LG`, все остальные
            сгруппированы как `Other`.
          items:
            type: object
            properties:
              device:
                type: string
              count:
                type: integer
        browsers:
          type: array
          description: >-
            Браузеры: `Chrome`, `Safari`, `Didit App`, `Firefox`, всё остальное
            сгруппировано как `Other`.
          items:
            type: object
            properties:
              browser:
                type: string
              count:
                type: integer
        operating_systems:
          type: array
          description: Операционные системы.
          items:
            type: object
            properties:
              os:
                type: string
              count:
                type: integer
    ApplicationAnalyticsWorkflowFunnel:
      type: object
      description: >-
        С ключами по ID сценария. `total` показывает сессии, запущенные по этому
        сценарию; `steps` подсчитывает сессии, дошедшие до каждого шага (`OCR`,
        `LIVENESS`, `FACE_MATCH`, `AML`, `POA`, `PHONE`, `EMAIL`, `NFC`,
        `DATABASE_VALIDATION`, `QUESTIONNAIRE`, `IP_ANALYSIS`, `AGE_ESTIMATION`,
        `KYB_REGISTRY`, `KYB_DOCUMENTS`, `KYB_KEY_PEOPLE`). Дойти до шага не
        означает пройти его.
      additionalProperties:
        type: object
        properties:
          total:
            type: integer
          steps:
            type: object
            additionalProperties:
              type: object
              properties:
                reached:
                  type: integer
    ApplicationAnalyticsVerificationTimeStats:
      type: object
      description: >-
        Активное время, затраченное пользователями на верификацию, без учёта
        пауз бездействия. Пустой объект, если данных нет.
      properties:
        overall_avg_seconds:
          type: number
          description: Среднее значение за сессию, один десятичный знак.
        overall_count:
          type: integer
          description: Измеренные сессии.
        per_feature:
          type: object
          description: С ключами по функциям, например `OCR` или `LIVENESS`.
          additionalProperties:
            type: object
            properties:
              avg_seconds:
                type: number
              total_seconds:
                type: number
              count:
                type: integer
        per_sub_step:
          type: object
          description: С ключами по функциям, затем по подшагам, например `front_id_photo`.
          additionalProperties:
            type: object
            additionalProperties:
              type: object
              properties:
                avg_seconds:
                  type: number
                total_seconds:
                  type: number
                count:
                  type: integer
    ApplicationAnalyticsResubmissionStats:
      type: object
      properties:
        first_pass:
          type: integer
          description: Завершённые сессии без повторной отправки.
        second:
          type: integer
          description: Завершённые сессии, отправленные повторно один раз.
        third_plus:
          type: integer
          description: Завершённые сессии, отправленные повторно два или более раз.
        abandoned:
          type: integer
          description: Прерванные сессии.
    ApplicationAnalyticsWarningStats:
      type: object
      description: >-
        С ключами по функциям (`ID_VERIFICATION`, `LIVENESS`, `FACEMATCH`,
        `AML`, `PROOF_OF_ADDRESS`, `PHONE`, `EMAIL`, `NFC`, `LOCATION`,
        `DATABASE_VALIDATION`, `QUESTIONNAIRE` и функции KYB). Значение `total`
        содержит сессии, дошедшие до функции; `risks` подсчитывает сессии по
        коду и уровню предупреждения.
      additionalProperties:
        type: object
        properties:
          total:
            type: integer
          risks:
            type: object
            additionalProperties:
              type: object
              properties:
                error:
                  type: integer
                warning:
                  type: integer
                information:
                  type: integer
    ApplicationAnalyticsOriginalStatusStats:
      type: object
      description: Автоматическое решение сценария до того, как проверяющий изменил его.
      properties:
        approved:
          type: integer
        in_review:
          type: integer
        declined:
          type: integer
    ApplicationAnalyticsDemographicPoint:
      type: object
      properties:
        date:
          type: string
          description: >-
            Ключ периода: `YYYY-MM-DD` для дня, понедельник недели или `YYYY-MM`
            для месяца в соответствии с `grouping_mode`.
        age_distribution:
          type: object
          additionalProperties:
            type: integer
        gender_distribution:
          type: object
          additionalProperties:
            type: integer
    ApplicationAnalyticsDevicePoint:
      type: object
      properties:
        date:
          type: string
          description: >-
            Ключ периода: `YYYY-MM-DD` для дня, понедельник недели или `YYYY-MM`
            для месяца в соответствии с `grouping_mode`.
        devices:
          type: object
          additionalProperties:
            type: integer
        browsers:
          type: object
          additionalProperties:
            type: integer
        operating_systems:
          type: object
          additionalProperties:
            type: integer
    ApplicationAnalyticsVerificationTimePoint:
      type: object
      properties:
        date:
          type: string
          description: >-
            Ключ периода: `YYYY-MM-DD` для дня, понедельник недели или `YYYY-MM`
            для месяца в соответствии с `grouping_mode`.
        overall_avg:
          type: number
          description: Среднее количество активных секунд на сессию.
        per_feature:
          type: object
          description: Среднее количество активных секунд на функцию.
          additionalProperties:
            type: number
    ApplicationAnalyticsResubmissionPoint:
      type: object
      properties:
        date:
          type: string
          description: >-
            Ключ периода: `YYYY-MM-DD` для дня, понедельник недели или `YYYY-MM`
            для месяца в соответствии с `grouping_mode`.
        first_pass:
          type: integer
        second:
          type: integer
        third_plus:
          type: integer
        abandoned:
          type: integer
    ApplicationAnalyticsOriginalStatusPoint:
      type: object
      properties:
        date:
          type: string
          description: >-
            Ключ периода: `YYYY-MM-DD` для дня, понедельник недели или `YYYY-MM`
            для месяца в соответствии с `grouping_mode`.
        approved:
          type: integer
        in_review:
          type: integer
        declined:
          type: integer
    ApplicationAnalyticsWidget:
      type: object
      description: >-
        Один виджет панели управления. Каждый виджет содержит `kind` и `title`;
        остальные поля зависят от `kind`. Виджеты сессий повторно используют
        объекты сводки (`data_points`, `request_breakdown`,
        `workflow_funnel_stats` и т. д.); списочные виджеты помещают свои записи
        в `items`; метрики транзакций используют `value`.
      required:
        - kind
        - title
      properties:
        kind:
          type: string
          enum:
            - sessions_volume
            - workflow_funnel
            - average_verification_time
            - country_distribution
            - warning_insights
            - conversion_rate
            - conversion_by_country
            - resubmission_insights
            - original_status_distribution
            - database_validation_coverage
            - database_validation_latency
            - demographics
            - device_details
            - horizontal_bar
            - kyb_registry_coverage
            - kyb_registry_data_completeness
            - metric
            - time_series
            - breakdown
            - status_time_series
            - leaderboard
            - histogram
          description: Тип виджета.
        title:
          type: string
          description: Отображаемый заголовок, например `Verification volume`.
        grouping_mode:
          type: string
          enum:
            - day
            - week
            - month
          description: >-
            Способ группировки списков `*_time_series`: `day` для периодов до 14
            дней, `week` до 90 дней, `month` свыше 90 дней. Отсчитывается от
            первого дня с сессиями в диапазоне.
        data_points:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDataPoint'
        request_breakdown:
          $ref: '#/components/schemas/ApplicationAnalyticsRequestBreakdown'
        previous_data_points:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDataPoint'
        previous_request_breakdown:
          $ref: '#/components/schemas/ApplicationAnalyticsRequestBreakdown'
        conversion_rate:
          type: number
          nullable: true
        workflow_funnel_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsWorkflowFunnel'
        verification_time_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsVerificationTimeStats'
        verification_time_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsVerificationTimePoint'
        warning_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsWarningStats'
        resubmission_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsResubmissionStats'
        resubmission_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsResubmissionPoint'
        original_status_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsOriginalStatusStats'
        original_status_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsOriginalStatusPoint'
        demographic_stats:
          $ref: '#/components/schemas/ApplicationAnalyticsDemographicStats'
        demographic_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDemographicPoint'
        device_details:
          $ref: '#/components/schemas/ApplicationAnalyticsDeviceDetails'
        device_time_series:
          type: array
          items:
            $ref: '#/components/schemas/ApplicationAnalyticsDevicePoint'
        items:
          type: array
          description: >-
            Элементы виджета списка. `country_distribution` (KYC): `country`,
            `country_code`, `session_count`. `conversion_by_country`: `country`,
            `country_code`, `finished`, `approved`. `time_series`: `date`,
            `value`. `status_time_series`: `date`, `approved`, `declined`,
            `flagged`. `breakdown`: `transaction_type` или `action_type` с
            `count` и `volume`, либо `tag_id`, `tag_name`, `count`.
            `leaderboard`: `rule_title`, `trigger_count` или `assignee`,
            `handled_count`, `average_processing_seconds`, каждый с
            `approved_percentage`, `declined_percentage`, `flagged_percentage`.
            `histogram`: `score`, `count`.
          items:
            type: object
            additionalProperties: {}
        previous_items:
          type: array
          description: >-
            Временной ряд транзакций за период такой же длительности
            непосредственно перед `start_date`.
          items:
            type: object
            additionalProperties: {}
        value:
          type: number
          description: 'Виджеты `metric`: показатель за диапазон.'
        currency:
          type: string
          nullable: true
          description: >-
            Виджеты объёма и суммы транзакций: валюта транзакций приложения по
            умолчанию.
        thresholds:
          type: object
          description: >-
            Виджет `histogram`: пороговые значения скоринга приложения для
            отправки на проверку и отклонения.
          properties:
            review:
              type: integer
            decline:
              type: integer
        search:
          type: object
          description: 'Виджет `kyb_registry_coverage`: сводные данные поиска по реестрам.'
          properties:
            searches_total:
              type: integer
            searches_with_no_candidates:
              type: integer
    ApplicationAnalyticsCountryCount:
      type: object
      properties:
        country:
          type: string
          description: Название страны.
        country_code:
          type: string
          description: Двухбуквенный код страны.
        session_count:
          type: integer
          description: Сессии из этой страны.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в
        Business Console. Основной ключ имеет полный доступ. Именованный ключ
        может иметь ограниченную область действия: без доступа, чтение или
        запись для каждого ресурса, ограничение определенными сценариями или
        одобренными сессиями, списком IP-адресов и сроком действия. 401
        означает, что ключ неверен, отозван или его срок действия истек; 403
        означает, что ключ не был передан, у ключа нет доступа к этому ресурсу
        или действию, либо запрос поступил с адреса вне его списка IP-адресов;
        404 на маршруте сессии означает, что сессия не входит в сценарии или
        статусы ключа. Ключ без доступа к медиа получает URL изображений, видео
        и PDF как null, а ключ без прав на запись сессий получает ссылки на
        сессии и токены как null. См. https://docs.didit.me/console/api-keys.

````

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