> ## 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 모니터링 이벤트를 카테고리, 상태, 대상, 기기, IP, 결제 참조, 시간 범위로 필터링해 최신순으로 조회합니다.

모니터링 이벤트 목록 API 프롬프트
프롬프트를 클립보드에 복사

<pre>
  \`List and filter the monitoring events (logins, sessions, gameplay, bonuses, payments, disputes, security changes) stored for my Didit application.

  Endpoint:
  GET [https://verification.didit.me/v3/events/](https://verification.didit.me/v3/events/)

  Authentication:
  Use the x-api-key header with my Didit API key. A scoped key needs transactions: read.

  Goal:

  * Search events for a back-office screen, an export job or an investigation: for example every payment and dispute event a rule matched last week, or every event from one device fingerprint or IP address.

  Behavior:

  * Newest occurred\_at first. Paginated with limit (default 50) and offset; follow next until it is null.
  * count is exact up to 100 and capped at 100 above that, so never use it to compute the number of pages.
  * Every filter is optional and filters combine with AND. Multi-value filters repeat the parameter (?event\_category=payment\&event\_category=dispute) and match any of the values.
  * Filters: event\_category, action\_type, status, retention\_class (multi-value); subject\_vendor\_data, subject\_entity\_type (company for a company, any other value for an individual), business\_vendor\_data, session\_id, device\_fingerprint, ip\_address, game\_id, round\_id, affiliate\_code, payment\_reference\_id, counterparty\_vendor\_data (exact match); matched\_only=true; occurred\_from and occurred\_to (inclusive; ISO 8601 with Z or an offset whose + is sent as %2B, for example 2026-10-17T09:00:00Z, or a date alone, which means 00:00 UTC of that day); search (case-insensitive substring of event\_id, action\_type, subject\_vendor\_data or counterparty\_vendor\_data).
  * Each result is a summary. Call GET /v3/events/{event_uuid}/ for the payload, device context, IP enrichment and rule evidence.
  * For one subject, prefer GET /v3/events/subjects/{vendor_data}/, which keeps an individual and a company with the same vendor\_data apart.
  * Reads work whether or not event ingestion is switched on.

  Example call:
  curl -X GET "[https://verification.didit.me/v3/events/?event\_category=payment\&event\_category=dispute\&matched\_only=true\&limit=50](https://verification.didit.me/v3/events/?event_category=payment\&event_category=dispute\&matched_only=true\&limit=50)" \
  -H "x-api-key: YOUR\_API\_KEY"

  What to read from the response:

  * results\[].event\_uuid - Didit id of the event; use it as {event_uuid} in the detail and delete calls.
  * results\[].event\_id - your own id (the idempotency key you sent).
  * results\[].event\_category, action\_type, occurred\_at, received\_at.
  * results\[].status (ACCEPTED, APPROVED, IN\_REVIEW, DECLINED) and score.
  * results\[].rules\_matched\_count and correlation\_pending (true while an asynchronous rule still has to run).
  * results\[].ip\_country, device\_fingerprint, session\_id, amount, currency, payment\_reference\_id.
  * results\[].is\_droppable - whether an SDK under backpressure may drop events of this kind.
  * next - URL of the next page, or null.

  Failure modes:

  * 400 - limit or offset larger than 1000000.
  * 401 - the API key has expired.
  * 403 - missing API key (a wrong, revoked or expired key gets 401), a scoped key without transactions: read, or a request from outside the key's IP list.
  * 429 - more than 600 reads per minute for this API key; honor Retry-After.

  Side effects: none. This is a pure read.

  For the full integration shape, see /integration/integration-prompt.\`
</pre>

붙여넣을 곳

이벤트는 [보존 클래스](https://docs.didit.me/ko/transaction-monitoring/events.md#보존)에 따라 저장되므로, 보존 클래스의 기간이 지난 이벤트는 여기에 표시되지 않습니다. 필터 설명은 [이벤트 수집](https://docs.didit.me/ko/transaction-monitoring/events.md#이벤트-조회)을, `rules_matched_count` 값이 변하는 조건은 [이벤트에 대한 규칙](https://docs.didit.me/ko/transaction-monitoring/event-rules.md)을 참조하십시오.


## OpenAPI

````yaml ko/openapi-25.json GET /v3/events/
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/events/:
    get:
      tags:
        - Monitoring Events
      summary: 모니터링 이벤트 목록 조회
      description: >-
        애플리케이션에 저장된 모니터링 이벤트를 최신 `occurred_at` 순으로 나열하며, AND 조건으로 결합되는 선택적 필터를
        사용할 수 있습니다. 다중 값 필터(`event_category`, `action_type`, `status`,
        `retention_class`)는 파라미터를 반복하여 지정하며 값 중 하나라도 일치하면 반환됩니다. 다른 필터는 정확히 일치해야
        하며 알 수 없는 값은 이벤트를 반환하지 않습니다. 각 결과는 요약 정보입니다. payload, 기기 컨텍스트, IP 강화 데이터
        및 규칙 증거를 확인하려면 `GET /v3/events/{event_uuid}/`를 호출하고, 단일 주체의 기록을 확인하려면
        `GET /v3/events/subjects/{vendor_data}/`를 호출하는 것이 좋습니다. 이벤트 수집 활성화 여부와
        관계없이 조회가 작동합니다. 범위가 지정된 API 키에는 `transactions: read` 권한이 필요합니다. [이벤트
        수집](https://docs.didit.me/ko/transaction-monitoring/events)을 참조하십시오.
      operationId: list_monitoring_events
      parameters:
        - name: limit
          in: query
          required: false
          description: >-
            페이지당 최대 이벤트 수입니다. 기본값은 50입니다. 1000000을 초과하는 값은 `400`을 반환하며, 숫자가 아니거나
            0 또는 음수인 값은 50으로 대체됩니다.
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          example: 50
        - name: offset
          in: query
          required: false
          description: 건너뛸 이벤트 수입니다. 기본값은 0입니다. 응답의 `next` URL을 따르는 것을 권장합니다.
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          example: 0
        - name: event_category
          in: query
          required: false
          description: >-
            이 카테고리에 속하는 이벤트만 해당합니다. 여러 값을 지정하려면 파라미터를
            반복하십시오(`?event_category=payment&event_category=dispute`). 이 중 하나라도
            일치하는 이벤트가 반환됩니다.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - auth
                - session
                - gameplay
                - bonus
                - affiliate
                - payment
                - dispute
                - security
                - responsible_gambling
                - custom
          example:
            - payment
            - dispute
        - name: action_type
          in: query
          required: false
          description: 이러한 작업 유형(정확히 일치, 대소문자 구분)의 이벤트만 해당합니다. 여러 값에 대해 반복하십시오.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
          example:
            - deposit_completed
            - chargeback_opened
        - name: status
          in: query
          required: false
          description: 이러한 상태의 이벤트만 해당합니다. 여러 값에 대해 반복하십시오.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - ACCEPTED
                - APPROVED
                - IN_REVIEW
                - DECLINED
          example:
            - IN_REVIEW
            - DECLINED
        - name: retention_class
          in: query
          required: false
          description: 이 보존 등급에 속하는 이벤트만 해당합니다. 여러 값에 대해 반복하십시오.
          style: form
          explode: true
          schema:
            type: array
            items:
              type: string
              enum:
                - low_value
                - standard
                - risk_relevant
                - monetary_or_compliance
          example:
            - risk_relevant
        - name: subject_vendor_data
          in: query
          required: false
          description: >-
            주체의 `vendor_data`에 대한 정확한 일치입니다. 동일한 ID가 개인과 기업을 모두 가리킬 수 있으므로,
            `subject_entity_type`을 추가하여 하나를 선택하거나 `GET
            /v3/events/subjects/{vendor_data}/`를 사용하십시오.
          schema:
            type: string
          example: user-42
        - name: subject_entity_type
          in: query
          required: false
          description: >-
            `company`는 기업 대상의 이벤트만 반환합니다. 비어 있지 않은 다른 값(예: `individual`)은 개인의
            이벤트만 반환합니다. 둘 다 반환하려면 생략하세요.
          schema:
            type: string
            enum:
              - individual
              - company
          example: individual
        - name: business_vendor_data
          in: query
          required: false
          description: 이벤트와 함께 전송된 `business.vendor_data`에 대한 정확한 일치입니다.
          schema:
            type: string
          example: merchant-7
        - name: session_id
          in: query
          required: false
          description: '`session.session_id`에 대한 정확한 일치입니다.'
          schema:
            type: string
          example: web-session-abc
        - name: device_fingerprint
          in: query
          required: false
          description: '`device_context.fingerprint`에 대한 정확한 일치입니다.'
          schema:
            type: string
          example: fp-a8c1
        - name: ip_address
          in: query
          required: false
          description: 이벤트의 IP 주소에 대한 정확한 일치입니다.
          schema:
            type: string
          example: 203.0.113.42
        - name: game_id
          in: query
          required: false
          description: 승격된 `game_id`에 대한 정확한 일치입니다.
          schema:
            type: string
          example: poker-holdem-01
        - name: round_id
          in: query
          required: false
          description: 승격된 `round_id`에 대한 정확한 일치입니다.
          schema:
            type: string
          example: round-88231
        - name: affiliate_code
          in: query
          required: false
          description: 승격된 `affiliate_code`에 대한 정확한 일치입니다.
          schema:
            type: string
          example: aff-summer
        - name: payment_reference_id
          in: query
          required: false
          description: >-
            결제 참조(`transaction_context.payment_reference_id` 또는
            `payload.payment_reference_id`에서 가져옴)에 대한 정확한 일치입니다.
          schema:
            type: string
          example: dep_735
        - name: counterparty_vendor_data
          in: query
          required: false
          description: 승격된 `counterparty_vendor_data`에 대한 정확한 일치입니다.
          schema:
            type: string
          example: user-77
        - name: matched_only
          in: query
          required: false
          description: >-
            `true`(대소문자 구분 없이 `1` 또는 `yes`도 가능)는 하나 이상의 규칙과 일치한
            이벤트(`rules_matched_count`가 0 초과)만 반환합니다. 그 외의 값은 무시됩니다.
          schema:
            type: boolean
            default: false
          example: true
        - name: occurred_from
          in: query
          required: false
          description: >-
            `occurred_at`이 이 시점 이후(해당 시점 포함)인 이벤트만 해당합니다. ISO 8601 값을 전송하십시오:
            `2026-10-01T00:00:00Z`, `+`가 퍼센트 인코딩된 명시적
            오프셋(`2026-10-01T02:00:00%2B02:00`. 인코딩되지 않은 `+`는 공백으로 디코딩되어 값이 더 이상
            파싱되지 않음), 또는 해당 날짜의 00:00:00 UTC를 의미하는 날짜 단독 형식(`2026-10-01`). 오프셋이
            없는 값은 UTC로 해석됩니다. 다른 형식의 값은 허용되지 않습니다.
          schema:
            type: string
            format: date-time
          example: '2026-10-01T00:00:00Z'
        - name: occurred_to
          in: query
          required: false
          description: >-
            `occurred_at`이 이 시점 이전(해당 시점 포함)인 이벤트만 해당합니다. 날짜만 전달하면 해당 날짜의 시작을
            의미하므로 `occurred_to=2026-10-15`는 10월 15일의 나머지 시간을 제외합니다. 이를 포함하려면
            `2026-10-15T23:59:59Z`를 전송하십시오. ISO 8601 값을 전송하십시오:
            `2026-10-01T00:00:00Z`, `+`가 퍼센트 인코딩된 명시적
            오프셋(`2026-10-01T02:00:00%2B02:00`. 인코딩되지 않은 `+`는 공백으로 디코딩되어 값이 더 이상
            파싱되지 않음), 또는 해당 날짜의 00:00:00 UTC를 의미하는 날짜 단독 형식(`2026-10-01`). 오프셋이
            없는 값은 UTC로 해석됩니다. 다른 형식의 값은 허용되지 않습니다.
          schema:
            type: string
            format: date-time
          example: '2026-10-17T23:59:59Z'
        - name: search
          in: query
          required: false
          description: >-
            `event_id`, `action_type`, `subject_vendor_data` 또는
            `counterparty_vendor_data`에 대해 대소문자를 구분하지 않는 부분 문자열 일치 검색.
          schema:
            type: string
          example: chargeback
      responses:
        '200':
          description: 이벤트 요약 페이지 하나입니다.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MonitoringEventPage'
              examples:
                Payment and dispute events:
                  value:
                    count: 2
                    next: null
                    previous: null
                    results:
                      - event_uuid: 11111111-2222-3333-4444-555555555555
                        event_id: chargeback-2026-10-16-000318
                        event_category: dispute
                        action_type: chargeback_opened
                        occurred_at: '2026-10-16T14:02:11Z'
                        received_at: '2026-10-16T14:02:12.418230Z'
                        status: IN_REVIEW
                        score: 60
                        subject_vendor_data: user-42
                        subject_entity_type: individual
                        subject_uuid: 66666666-7777-8888-9999-000000000000
                        counterparty_vendor_data: null
                        session_id: null
                        device_fingerprint: null
                        ip_address: null
                        ip_country: null
                        amount: '250.000000000000000000'
                        currency: EUR
                        game_id: null
                        round_id: null
                        bonus_id: null
                        affiliate_code: null
                        payment_reference_id: dep_735
                        retention_class: monetary_or_compliance
                        rules_matched_count: 1
                        correlation_pending: false
                        is_droppable: false
                      - event_uuid: 22222222-3333-4444-5555-666666666666
                        event_id: login-2026-10-15-000912
                        event_category: auth
                        action_type: login
                        occurred_at: '2026-10-15T08:30:00.120000Z'
                        received_at: '2026-10-15T08:30:00.734512Z'
                        status: ACCEPTED
                        score: 0
                        subject_vendor_data: user-42
                        subject_entity_type: individual
                        subject_uuid: 66666666-7777-8888-9999-000000000000
                        counterparty_vendor_data: null
                        session_id: web-session-abc
                        device_fingerprint: fp-a8c1
                        ip_address: 203.0.113.42
                        ip_country: ES
                        amount: null
                        currency: null
                        game_id: null
                        round_id: null
                        bonus_id: null
                        affiliate_code: null
                        payment_reference_id: null
                        retention_class: standard
                        rules_matched_count: 0
                        correlation_pending: false
                        is_droppable: true
        '400':
          description: >-
            `limit` 또는 `offset`이 1000000보다 큽니다. 본문은 메시지 1개가 포함된 JSON 배열입니다. 숫자가
            아니거나 양수가 아닌 `limit`는 실패하는 대신 기본값 50으로 대체됩니다.
          content:
            application/json:
              examples:
                limit too large:
                  summary: limit이 1000000을 초과함
                  value:
                    - limit must not exceed 1000000.
                offset too large:
                  summary: offset이 1000000을 초과함
                  value:
                    - offset must not exceed 1000000.
        '401':
          description: >-
            스코프가 지정된 API 키가 만료되었습니다. 만료된 키에 대해서만 `401`이 반환되며, 누락되었거나 유효하지 않은 키에는
            `403`이 반환됩니다.
          content:
            application/json:
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            `x-api-key`가 누락되었거나(잘못되었거나 취소되었거나 만료된 키에는 `401`이 반환됨),
            `transactions: read` 권한이 없는 범위 제한 키이거나, 특정 워크플로 또는 승인된 세션으로 제한된
            키이거나(이러한 키는 거래 모니터링 데이터에 절대 접근할 수 없음), 키의 IP 허용 목록 외부에서 발생한 요청입니다.
          content:
            application/json:
              examples:
                Missing or invalid API key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without access:
                  value:
                    detail: This API key has no read access to transactions.
                Key limited to workflows or approved sessions:
                  value:
                    detail: >-
                      This API key only reaches sessions inside its workflow or
                      status limits, so it can't use this endpoint.
                IP not allowed:
                  value:
                    detail: This API key can't be used from this IP address.
        '429':
          description: >-
            속도 제한 초과: `GET` 요청은 API 키당 분당 600개의 요청 한도를 공유합니다. `Retry-After`초 동안
            대기한 후 재시도하세요.
          headers:
            Retry-After:
              description: 재시도하기 전 대기할 시간(초)입니다.
              schema:
                type: integer
                minimum: 1
                example: 30
          content:
            application/json:
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/events/?event_category=payment&event_category=dispute&matched_only=true&occurred_from=2026-10-01T00:00:00Z&limit=50'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.monitoring_events.list():
                print(item)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY.
            const didit = new Didit();

            for await (const item of didit.monitoringEvents.list()) {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.MonitoringEvents.ListAutoPaging(ctx, didit.MonitoringEventsListParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            for (var item : client.monitoringEvents().list()) {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            foreach ($didit->monitoringEvents->list() as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            didit.monitoring_events.list.auto_paging_each do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            await foreach (var item in await
            client.MonitoringEvents.ListAsync())

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    MonitoringEventPage:
      type: object
      description: 최신 `occurred_at` 순으로 정렬된 모니터링 이벤트 페이지 하나입니다.
      required:
        - count
        - next
        - previous
        - results
      properties:
        count:
          type: integer
          description: >-
            일치하는 이벤트 수이며, 최대 100개까지 정확하고 그 이상은 100개로 제한됩니다. 이를 바탕으로 페이지 수를 계산하지
            마십시오. null이 될 때까지 `next`를 따르십시오.
        next:
          type: string
          format: uri
          nullable: true
          description: 다음 페이지의 URL이며, 마지막 페이지에서는 null입니다.
        previous:
          type: string
          format: uri
          nullable: true
          description: 이전 페이지의 URL이며, 첫 번째 페이지에서는 null입니다.
        results:
          type: array
          items:
            $ref: '#/components/schemas/MonitoringEvent'
    MonitoringEvent:
      type: object
      description: >-
        목록 및 대상자 타임라인 endpoint에서 반환하는 저장된 모니터링 이벤트 1건입니다. 제한된 증거(payload, 기기
        컨텍스트, 규칙 증거)는 `GET /v3/events/{event_uuid}/`에서만 반환됩니다.
      required:
        - event_uuid
        - event_id
        - event_category
        - action_type
        - occurred_at
        - received_at
        - status
        - score
        - subject_vendor_data
        - subject_entity_type
        - subject_uuid
        - counterparty_vendor_data
        - session_id
        - device_fingerprint
        - ip_address
        - ip_country
        - amount
        - currency
        - game_id
        - round_id
        - bonus_id
        - affiliate_code
        - payment_reference_id
        - retention_class
        - rules_matched_count
        - correlation_pending
        - is_droppable
      properties:
        event_uuid:
          type: string
          format: uuid
          description: 이벤트의 Didit 식별자입니다. 조회 및 삭제 호출에서 `{event_uuid}`로 사용하세요.
        event_id:
          type: string
          maxLength: 128
          description: 전송하신 멱등성 키인 귀하 고유의 식별자입니다.
        event_category:
          type: string
          enum:
            - auth
            - session
            - gameplay
            - bonus
            - affiliate
            - payment
            - dispute
            - security
            - responsible_gambling
            - custom
          description: 이벤트 카테고리입니다.
        action_type:
          type: string
          maxLength: 128
          description: 전송한 카테고리 내에서 발생한 내용입니다.
        occurred_at:
          type: string
          format: date-time
          description: 귀하 측에서 이벤트가 발생한 시점입니다.
        received_at:
          type: string
          format: date-time
          description: Didit이 이벤트를 수락한 시점입니다.
        status:
          type: string
          enum:
            - ACCEPTED
            - APPROVED
            - IN_REVIEW
            - DECLINED
          description: >-
            `ACCEPTED`: 저장되었으며 일치하는 규칙이 상태를 변경하지 않았습니다(대부분의 이벤트에 대한 일반적인 응답이며,
            규칙이 실행되지 않는 샌드박스 애플리케이션에서는 항상 이 응답이 반환됩니다). `APPROVED`: 일치하는 규칙이 있으며
            점수가 검토 임계값 미만으로 유지되었습니다. `IN_REVIEW`: 규칙에 의해 점수가 검토 임계값을 초과했거나 해당
            상태로 설정되었습니다. `DECLINED`: 규칙에 의해 거부되었거나 점수가 거부 임계값을 초과했습니다.
        score:
          type: integer
          description: 누적된 규칙 점수입니다. 0에서 시작하며, 규칙의 `add_score` 작업에 의해 변경됩니다(음수 델타 허용).
        subject_vendor_data:
          type: string
          maxLength: 255
          description: '이벤트의 `subject.vendor_data`: 사용자 또는 기업에 대한 귀하의 ID입니다.'
        subject_entity_type:
          type: string
          description: '`individual` 또는 `company`: `subject_vendor_data`가 가리키는 대상의 종류입니다.'
          example: individual
        subject_uuid:
          type: string
          format: uuid
          nullable: true
          description: 이벤트가 확인된 사용자(개인) 또는 회사의 UUID이며, 해당 레코드가 더 이상 존재하지 않는 경우 null입니다.
        counterparty_vendor_data:
          type: string
          nullable: true
          description: P2P 이벤트의 상대방 참여자입니다(`payload.counterparty_vendor_data`에서 승격됨).
          maxLength: 255
        session_id:
          type: string
          nullable: true
          description: 이벤트와 함께 전송된 `session.session_id`입니다.
          maxLength: 255
        device_fingerprint:
          type: string
          nullable: true
          description: 이벤트와 함께 전송된 `device_context.fingerprint`.
          maxLength: 255
        ip_address:
          type: string
          nullable: true
          description: >-
            이벤트의 주소입니다. 서버 레인에서는 전송된
            `device_context.network_context.ip_address`이며, 기기 레인에서는 요청의 주소입니다.
          maxLength: 64
        ip_country:
          type: string
          nullable: true
          description: >-
            IP 보강을 통해 확인된 `ip_address`의 국가 코드이며, 주소가 보강되지 않은 경우(누락되었거나 사설 IP이거나
            주소가 이미 알려져 있지 않은 저가치 텔레메트리인 경우) null입니다.
          example: ES
        amount:
          type: string
          nullable: true
          description: >-
            `transaction_context.amount`, `payload.amount`,
            `payload.stake_amount` 순서대로 가져온 소수점 이하 18자리의 십진수 문자열 금액입니다.
          example: '250.000000000000000000'
        currency:
          type: string
          nullable: true
          description: '`transaction_context.currency` 또는 `payload.currency`의 통화입니다.'
          maxLength: 10
        game_id:
          type: string
          nullable: true
          description: '`payload.game_id`에서 승격되었습니다.'
          maxLength: 128
        round_id:
          type: string
          nullable: true
          description: '`payload.round_id`에서 승격되었습니다.'
          maxLength: 128
        bonus_id:
          type: string
          nullable: true
          description: '`payload.bonus_id`에서 승격되었습니다.'
          maxLength: 128
        affiliate_code:
          type: string
          nullable: true
          description: '`payload.affiliate_code`에서 승격되었습니다.'
          maxLength: 128
        payment_reference_id:
          type: string
          nullable: true
          description: >-
            `transaction_context.payment_reference_id` 또는
            `payload.payment_reference_id`의 결제 참조 번호입니다.
          maxLength: 255
        retention_class:
          type: string
          enum:
            - low_value
            - standard
            - risk_relevant
            - monetary_or_compliance
          description: >-
            보존 클래스입니다. 결제 및 분쟁 이벤트는 `monetary_or_compliance`이고, 보안 및 책임감 있는 도박
            이벤트는 `risk_relevant`이며, `session.page_view`,
            `session.sdk_heartbeat`, `session.sdk_loaded`,
            `session.device_seen`, `session.bot_signal_observed`,
            `bonus.promotion_viewed`, `affiliate.referral_clicked`는
            `low_value`이고, 그 외 모든 이벤트는 `standard`입니다. 활성 규칙과 일치한 이벤트는
            `risk_relevant`로 승격됩니다(강등되지 않음).
        rules_matched_count:
          type: integer
          minimum: 0
          description: 이벤트와 일치한 규칙 수(증거를 기록하지만 작업은 적용하지 않는 `TEST` 모드의 규칙 포함)입니다.
        correlation_pending:
          type: boolean
          description: >-
            이 이벤트에 대해 비동기 규칙(대상 간 상관관계 분석 또는 24시간보다 긴 시퀀스)을 계속 실행해야 하는 동안
            `true`입니다. 수 분 내에 해결되며 `status`, `score`, `rules_matched_count`가 그
            자리에서 업데이트됩니다.
        is_droppable:
          type: boolean
          description: >-
            백프레셔 상태의 SDK가 이 종류의 이벤트를 삭제할 수 있는지 여부입니다. 모든 `security`, `payment`,
            `dispute`, `responsible_gambling` 이벤트와 `gameplay.bet_placed`,
            `gameplay.bet_settled`, `gameplay.p2p_settlement`의 경우 `false`입니다.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        Business Console의 Developers -> API keys에서 발급받은 귀하 애플리케이션의 API 키입니다. 기본
        키는 전체 접근 권한을 갖습니다. 이름이 지정된 키는 리소스별 none, read, write 범위로 권한을 제한할 수 있으며
        특정 워크플로나 승인된 세션, IP 주소 목록, 만료일 등으로 제한할 수도 있습니다. 401은 키가 잘못되었거나 폐기되었거나
        만료되었음을 의미합니다. 403은 키가 전송되지 않았거나, 키에 해당 리소스나 작업에 대한 접근 권한이 없거나, 요청이 허용된
        IP 목록 외부 주소에서 발생했음을 의미합니다. 세션 경로에서의 404는 해당 세션이 키의 허용 워크플로 또는 상태 범위를
        벗어났음을 의미합니다. 미디어 접근 권한이 없는 키는 이미지, 비디오, PDF URL을 null로 수신하며, 세션 write
        권한이 없는 키는 세션 링크와 token을 null로 수신합니다.
        https://docs.didit.me/console/api-keys 를 참고하십시오.

````

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