> ## 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 の不正ネットワークのイベント履歴を取得します。contract=2 を指定すると、メンバーの試行、取引、サインイン、ルール該当、関連ケースをページ分割されたタイムラインで返します。



ネットワークタイムラインAPIプロンプト
        プロンプトをクリップボードにコピー



      
      

\<pre>

\`Retrieve a fraud network's event timeline through the Management API.

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

Authentication:
Use the x-api-key header with my Didit API key.
Networks endpoints need a full-access API key: a key with restricted access gets 403.

Path parameter:
\- network_uuid - the network's UUID.

Two shapes, chosen by the contract query parameter:

1\. Default (no contract parameter): unchanged.
Response 200: {"results": [NetworkTimelineEvent, ...]}, oldest first, not paginated.
Each event has event_type (network_detected, signal_observed, network_active, network_in_review, network_resolved, network_dismissed), occurred_at, label, and metadata (event-specific, e.g. {network_id} for detection, {signal_type, subject_count, is_hub} for a signal observation, {reason} for a status change).
limit, cursor and event_type are ignored in this mode.

2\. Typed timeline (contract=2, opt-in):
Query params:
\- contract=2: required for this mode. Any other value is a 400.
\- limit: 1 to 500, default 100.
\- cursor: the previous page's next_cursor. An invalid or empty cursor is a 400 ("This cursor is not valid. Reload the feed.").
\- event_type: repeat it or pass a comma-separated list, at most 20 values. Defaults to every type: network_detected, signal_observed, network_active, network_in_review, network_resolved, network_dismissed, verification_attempt, transaction, login, rule_hit, case_linked, note_added.
Response 200: {"results": [NetworkTypedTimelineEvent, ...], "next_cursor": string|null}, newest first. Keep calling with cursor=next_cursor until next_cursor is null.
Each typed event has:
\- event_type, occurred_at, label, metadata: as in the default shape (metadata is {} for events that are not the network's own).
\- id: "<source>:<uuid>", unique within the timeline. ingested_at: when Didit stored it.
\- account: the member account {node_id ("vendor_user:<uuid>", "vendor_business:<uuid>" or "transaction_party:<uuid>"), node_type (account|business_account|transaction_party), uuid, vendor_data, display_name, ownership (owned|organization), route {kind, id, application_id}}. Null for the network's own events, case_linked and note_added.
\- source_ref: the record it was read from {kind (session|business_session|transaction|monitoring_event|case), id, ownership, route}. route is absent for monitoring_event and case. Null for the network's own events and note_added.
\- ownership: owned when the record belongs to the application I called, organization when it belongs to another application of my organization.
\- One detail block per event type, the others null:
\- verification_attempt {session_id, session_number, attempt, attempt_count, status, status_changed_at, decline_reasons [{risk, feature, short_description}] (declined sessions only)}
\- transaction {transaction_id, transaction_number, transaction_type, action_type, amount {value, currency, direction} or null, status, decision_reason_code, decision_reason_label, party_role}
\- login {action (auth.login, security.login_succeeded, auth.login_failed or security.login_failed), succeeded, status, ip {address, country_code, city, connection_type (free text), is_vpn_or_tor, is_data_center} or null, device {fingerprint, label} or null, is_first_login, is_new_device}
\- rule_hit {rule_id, rule_title, rule_category, rule_source, severity, score_delta, status_target, action_summary}
\- case_linked {case_id, case_number, status, author_email, author_name}
\- note_added {note_id, author_email}: never returned to an API key, only to console members.

Example call:
curl -X GET "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/?contract=2&limit=50&event_type=verification_attempt,login" \
-H "x-api-key: YOUR_API_KEY"

Failure modes:
\- 400 (contract mode only): {"contract": [...]}, {"limit": [...]}, {"cursor": ["This cursor is not valid. Reload the feed."]} or {"event_type": {...}}.
\- 404: {"detail": "Network not found."}. The network does not exist, or has no member visible to this application.
\- 401: missing or invalid x-api-key.
\- 403: the API key belongs to another application, or it has restricted access (Networks needs a full-access key). A console member token needs read:networks.
\- 403 with {"code": "networks_not_entitled"}: Networks is not enabled for the organization.

Side effects: none, pure read.

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

\</pre>



      
      

貼り付け先

ネットワークのイベント履歴を取得します。
`contract`を指定しない場合、レスポンスはネットワーク自体の履歴となり、古い順に並び、ページ分割されません。内容は、最初に検知された日時、各シグナルが最後に観測された日時、最新のステータス変更とその理由です。
この形式は変更されておらず、`limit`、`cursor`、`event_type`は無視されます。## 型付きタイムライン代わりに型付きタイムラインを取得するには、`contract=2`を渡します。
メンバーアカウントが行ったことと、チームがそのネットワークに対して行ったことが追加され、新しい順に1ページずつ返されます。
`contract`は`2`のみを受け付け、それ以外の値を指定すると`400`が返されます。| パラメーター | 意味 |
| - | - |
| `limit` | 1ページあたりのイベント数。1〜500の範囲で指定します。デフォルトは100です。 |
| `cursor` | 前のページの`next_cursor`。無効または空のカーソルを指定すると`400`が返されます。 |
| `event_type` | 残すイベントタイプ。繰り返し指定またはカンマ区切りで、最大20個まで指定できます。デフォルトはすべてのタイプです。 |レスポンスは`{"results": [...], "next_cursor": "..."}`です。
`next_cursor`が`null`になるまで、`cursor`に`next_cursor`を設定して次のページを取得します。## イベントタイプ| `event_type` | 記録される内容 | 詳細ブロック |
| - | - | - |
| `network_detected` | ネットワークが検知された | なし |
| `signal_observed` | シグナルの最新の観測 | なし |
| `network_active`, `network_in_review`, `network_resolved`, `network_dismissed` | ネットワークの最新のステータス変更。理由は`metadata`に含まれます | なし |
| `verification_attempt` | メンバー(個人または企業)の認証セッション。番号付き(`attempt_count`件中`attempt`件目)で、却下された場合は却下理由を含みます | `verification_attempt` |
| `transaction` | メンバーが関与した取引。取引日が記録されます | `transaction` |
| `login` | [イベントAPI](https://docs.didit.me/ja/transaction-monitoring/events.md)を通じてメンバーについて送信したサインインまたは失敗したサインイン | `login` |
| `rule_hit` | メンバーの取引またはイベントに一致した稼働中のルール | `rule_hit` |
| `case_linked` | 組織内でネットワークに対して開かれたケース | `case_linked` |
| `note_added` | ネットワークに残されたメモ。本文は含まれません | `note_added` |`note_added`イベントはコンソールメンバーにのみ返され、APIキーを使用したリクエストには決して返されません。
2人のメンバー間の取引は、それぞれについて1回ずつ、各自の`account`とともに表示されます。
その取引に対するルールヒットは1回だけ表示されます。
ログインイベントは、イベントとして送信したサインイン(`auth.login`、`security.login_succeeded`およびそれらの失敗形式)についてのみ存在します。## アカウントとレコード各メンバーイベントには、イベントが属するメンバーを示す`account`と、読み取り元のセッション、企業セッション、取引、モニタリングイベント、またはケースを示す`source_ref`が含まれます。
`ownership`は、レコードが呼び出し先のアプリケーションに属する場合は`owned`、組織内の別のアプリケーションに属する場合は`organization`になります。
`route`はレコードの種類、UUID、アプリケーションを示します。モニタリングイベントまたはケースの場合、`source_ref`に`route`はありません。
ネットワーク自体のイベントには、`account`も`source_ref`も含まれません。## 関連ページ- [ネットワークの取得](https://docs.didit.me/ja/management-api/networks/get.md)
- [ネットワークシグナル](https://docs.didit.me/ja/management-api/networks/signals.md)
- [ネットワークマップ](https://docs.didit.me/ja/management-api/networks/map.md)
- [イベントの取り込み](https://docs.didit.me/ja/transaction-monitoring/events.md)


## OpenAPI

````yaml ja/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/
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}/networks/{network_uuid}/timeline/:
    get:
      tags:
        - Networks
      summary: ネットワークのタイムラインを取得
      description: >-
        `contract`を指定しない場合:
        ネットワーク自体のイベント（検出、各シグナルの最新の観測とそのレビュー）を古い順に返し、ページネーションはありません。`limit`、`cursor`、`event_type`は無視されます。`contract=2`を指定した場合:
        型付きのタイムラインを新しい順に返し、カーソルでページネーションされます。メンバーアカウントの行動（認証の試行、取引、events
        APIを通じて送信したサインイン、およびそれらが該当した稼働中のルール）と、ネットワークについて作成されたケースが追加されます。`note_added`イベントはコンソールメンバーにのみ返され、APIキーには決して返されません。フルアクセスのAPIキー、またはコンソールメンバーの場合は`read:networks`が必要です。
      operationId: get_network_timeline
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: 組織のUUIDです。
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: アプリケーションのUUID。
        - name: network_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: n3a5e000-0000-4000-8000-000000000001
          description: ネットワークのUUID。
        - name: contract
          in: query
          required: false
          schema:
            type: string
            enum:
              - '2'
          description: '`2`を指定すると型付きタイムラインを返します。デフォルトのタイムラインを使う場合は省略してください。その他の値は400を返します。'
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 100
            minimum: 1
            maximum: 500
          description: 型付きタイムラインのみ。1ページあたりのイベント数で、1から500です。デフォルトは100です。
        - name: cursor
          in: query
          required: false
          schema:
            type: string
          description: 型付きタイムラインのみ。前のページの`next_cursor`です。無効または空のカーソルは400を返します。
        - name: event_type
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: array
            maxItems: 20
            items:
              type: string
              enum:
                - network_detected
                - signal_observed
                - network_active
                - network_in_review
                - network_resolved
                - network_dismissed
                - verification_attempt
                - transaction
                - login
                - rule_hit
                - case_linked
                - note_added
          description: >-
            型付きタイムラインのみ。保持するイベントタイプです。繰り返し指定またはカンマ区切りで、最大20個まで指定できます。デフォルトはすべてのタイプです。
      responses:
        '200':
          description: >-
            `contract`なし：`{results}`、古い順、ページネーションなし。`contract=2`あり：`{results,
            next_cursor}`、新しい順。
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/NetworkTimeline'
                  - $ref: '#/components/schemas/NetworkTimelinePage'
              examples:
                Default timeline:
                  summary: contractを指定しない場合
                  value:
                    results:
                      - event_type: network_detected
                        occurred_at: '2026-10-01T09:12:44Z'
                        label: Network detected
                        metadata:
                          network_id: N-0042
                      - event_type: signal_observed
                        occurred_at: '2026-10-12T16:03:10Z'
                        label: device observed
                        metadata:
                          signal_type: device
                          subject_count: 3
                          is_hub: false
                      - event_type: network_in_review
                        occurred_at: '2026-10-12T16:30:00Z'
                        label: Network in_review
                        metadata:
                          reason: Shared device across three new accounts.
                Typed timeline:
                  summary: contract=2の場合
                  value:
                    results:
                      - id: monitoring_event:9b2f1c3e-4d5a-4b6c-8d7e-0f1a2b3c4d5e
                        event_type: login
                        occurred_at: '2026-10-12T18:41:02Z'
                        ingested_at: '2026-10-12T18:41:03Z'
                        label: Login
                        metadata: {}
                        account:
                          node_id: vendor_user:5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          node_type: account
                          uuid: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          vendor_data: user-1042
                          display_name: Alex Example
                          ownership: owned
                          route:
                            kind: user
                            id: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        source_ref:
                          kind: monitoring_event
                          id: 9b2f1c3e-4d5a-4b6c-8d7e-0f1a2b3c4d5e
                          ownership: owned
                        verification_attempt: null
                        transaction: null
                        login:
                          action: auth.login
                          succeeded: true
                          status: APPROVED
                          ip:
                            address: 203.0.113.24
                            country_code: ES
                            city: Madrid
                            connection_type: null
                            is_vpn_or_tor: false
                            is_data_center: false
                          device:
                            fingerprint: fp_0a1b2c3d
                            label: Chrome · Android
                          is_first_login: false
                          is_new_device: true
                        rule_hit: null
                        case_linked: null
                        note_added: null
                      - id: session:1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                        event_type: verification_attempt
                        occurred_at: '2026-10-12T16:03:10Z'
                        ingested_at: '2026-10-12T16:03:10Z'
                        label: Verification attempt 2 of 2
                        metadata: {}
                        account:
                          node_id: vendor_user:5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          node_type: account
                          uuid: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          vendor_data: user-1042
                          display_name: Alex Example
                          ownership: owned
                          route:
                            kind: user
                            id: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        source_ref:
                          kind: session
                          id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                          ownership: owned
                          route:
                            kind: session
                            id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        verification_attempt:
                          session_id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                          session_number: 1287
                          attempt: 2
                          attempt_count: 2
                          status: Approved
                          status_changed_at: '2026-10-12T16:05:41Z'
                          decline_reasons: []
                        transaction: null
                        login: null
                        rule_hit: null
                        case_linked: null
                        note_added: null
                      - id: signal_observed:8d7c6b5a-4e3f-4a2b-9c1d-0e9f8a7b6c5d
                        event_type: signal_observed
                        occurred_at: '2026-10-12T16:03:10Z'
                        ingested_at: '2026-10-01T09:12:44Z'
                        label: device observed
                        metadata:
                          signal_type: device
                          subject_count: 3
                          is_hub: false
                        account: null
                        source_ref: null
                        verification_attempt: null
                        transaction: null
                        login: null
                        rule_hit: null
                        case_linked: null
                        note_added: null
                    next_cursor: >-
                      eyJ0IjoiMjAyNi0xMC0xMlQxNjowMzoxMCswMDowMCIsImMiOiIyMDI2LTEwLTAxVDA5OjEyOjQ0KzAwOjAwIiwiciI6MSwidSI6IjhkN2M2YjVhLTRlM2YtNGEyYi05YzFkLTBlOWY4YTdiNmM1ZCJ9
        '400':
          description: '`contract`を指定した場合：無効な`contract`、`limit`、`cursor`、または`event_type`の値。'
          content:
            application/json:
              examples:
                Unsupported contract:
                  summary: サポートされていないコントラクト
                  value:
                    contract:
                      - '"3" is not a valid choice.'
                Invalid cursor:
                  summary: カーソルが無効です
                  value:
                    cursor:
                      - This cursor is not valid. Reload the feed.
                Limit too large:
                  summary: 上限値が大きすぎます
                  value:
                    limit:
                      - Ensure this value is less than or equal to 500.
                Unknown event type:
                  summary: 不明なイベントタイプ
                  value:
                    event_type:
                      '0':
                        - '"logout" is not a valid choice.'
        '401':
          description: 認証情報がないか無効です。
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: 'コード付きのエラーに含まれます。例: `networks_not_entitled`。'
              examples:
                Missing or invalid credentials:
                  summary: 認証情報がないか無効です
                  value:
                    detail: >-
                      Authentication credentials were not provided or are
                      invalid.
        '403':
          description: >-
            APIキーが別のアプリケーションに属しているか、アクセスが制限されたキーです。ネットワークのエンドポイントにはフルアクセスキーが必要です。コンソールメンバーのトークンには`read:networks`が必要です。組織でネットワーク機能が有効になっていない場合も、`code:
            networks_not_entitled`とともに返されます。
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: 'コード付きのエラーに含まれます。例: `networks_not_entitled`。'
              examples:
                Networks not enabled:
                  summary: ネットワークが有効化されていません
                  value:
                    detail: >-
                      Networks is disabled for this organization. Contact Didit
                      support if you believe this is an error.
                    code: networks_not_entitled
                Restricted API key:
                  summary: 制限付きAPIキー
                  value:
                    detail: This API key has no access to this endpoint.
                No permission:
                  summary: 権限がありません
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: ネットワークが見つかりません（またはこのアプリケーションから参照できません）。
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
      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/networks/n3a5e000-0000-4000-8000-000000000001/timeline/'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: curl
          label: curl (typed timeline)
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/networks/3fa85f64-5717-4562-b3fc-2c963f66afa6/timeline/?contract=2&limit=50&event_type=verification_attempt,login'
            \
              -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.networks.retrieve_timeline(
                "n3a5e000-0000-4000-8000-000000000001",
            )
            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.networks.retrieveTimeline("n3a5e000-0000-4000-8000-000000000001");

            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.Networks.RetrieveTimeline(ctx, \"n3a5e000-0000-4000-8000-000000000001\", didit.NetworksRetrieveTimelineParams{})\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.networks().retrieveTimeline("n3a5e000-0000-4000-8000-000000000001");

            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->networks->retrieveTimeline('n3a5e000-0000-4000-8000-000000000001');

            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.networks.retrieve_timeline("n3a5e000-0000-4000-8000-000000000001")

            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.Networks.RetrieveTimelineAsync("n3a5e000-0000-4000-8000-000000000001");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    NetworkTimeline:
      title: Default timeline (no contract)
      type: object
      description: '`contract`を指定しない場合: ネットワーク自体のイベントを古い順に返し、ページネーションはありません。'
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTimelineEvent'
    NetworkTimelinePage:
      title: Typed timeline page (contract=2)
      type: object
      description: '`contract=2`の場合：型付きイベントの1ページ分。新しい順です。'
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTypedTimelineEvent'
        next_cursor:
          type: string
          nullable: true
          description: 次のページを読み込むには`cursor`として渡します。最後のページではnullです。
    NetworkTimelineEvent:
      type: object
      properties:
        event_type:
          type: string
          description: >-
            例：network_detected、signal_observed、network_in_review、network_resolved、network_dismissed。
        occurred_at:
          type: string
          format: date-time
          nullable: true
        label:
          type: string
        metadata:
          type: object
    NetworkTypedTimelineEvent:
      type: object
      description: >-
        型付きのタイムラインイベント1件です。4つのデフォルトフィールドに加えて、ID、Diditが保存した日時、所属するメンバーアカウントとレコード、そのイベントタイプの詳細ブロックを含みます。その他の詳細ブロックはnullです。
      properties:
        id:
          type: string
          description: '`<source>:<uuid>`の形式で、タイムライン内で一意です。'
          example: session:3fa85f64-5717-4562-b3fc-2c963f66afa6
        event_type:
          type: string
          enum:
            - network_detected
            - signal_observed
            - network_active
            - network_in_review
            - network_resolved
            - network_dismissed
            - verification_attempt
            - transaction
            - login
            - rule_hit
            - case_linked
            - note_added
        occurred_at:
          type: string
          format: date-time
          description: 発生日時。
        ingested_at:
          type: string
          format: date-time
          description: Diditが保存した日時です。
        label:
          type: string
          description: 短い英語のラベル。例として`Verification attempt 2 of 3`。
        metadata:
          type: object
          description: ネットワーク自体のイベントの場合、デフォルトのタイムラインと同じメタデータです。それ以外の場合は空です。
        account:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAccount'
          nullable: true
          description: メンバーアカウントです。ネットワーク自身のイベント、`case_linked`、`note_added`の場合はnullです。
        source_ref:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineSourceRef'
          nullable: true
          description: ソースレコード。ネットワーク自身のイベントと`note_added`ではnullです。
        verification_attempt:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAttempt'
          nullable: true
          description: '`verification_attempt`イベントで設定されます。'
        transaction:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineTransaction'
          nullable: true
          description: '`transaction`イベントで設定されます。'
        login:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineLogin'
          nullable: true
          description: '`login`イベントで設定されます。'
        rule_hit:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineRuleHit'
          nullable: true
          description: '`rule_hit`イベントで設定されます。'
        case_linked:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineCaseLinked'
          nullable: true
          description: '`case_linked`イベントで設定されます。'
        note_added:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineNoteAdded'
          nullable: true
          description: '`note_added`イベントで設定されます。APIキーに対しては決して返されません。'
    NetworkTimelineAccount:
      type: object
      description: イベントが属するメンバーアカウントです。
      properties:
        node_id:
          type: string
          description: >-
            `<kind>:<uuid>`の形式で、kindは`vendor_user`、`vendor_business`、`transaction_party`のいずれかです。
          example: vendor_user:3fa85f64-5717-4562-b3fc-2c963f66afa6
        node_type:
          type: string
          enum:
            - account
            - business_account
            - transaction_party
        uuid:
          type: string
          format: uuid
        vendor_data:
          type: string
          nullable: true
        display_name:
          type: string
          nullable: true
        ownership:
          type: string
          enum:
            - owned
            - organization
          description: >-
            呼び出したアプリケーションにレコードが属する場合は`owned`です（コンソールメンバーの場合は、そのメンバーに権限が付与されたアプリケーション）。組織内の別のアプリケーションに属する場合は`organization`です。
        route:
          $ref: '#/components/schemas/NetworkTimelineRoute'
    NetworkTimelineSourceRef:
      type: object
      description: イベントの読み取り元のレコード。
      properties:
        kind:
          type: string
          enum:
            - session
            - business_session
            - transaction
            - monitoring_event
            - case
        id:
          type: string
          format: uuid
        ownership:
          type: string
          enum:
            - owned
            - organization
          description: >-
            呼び出したアプリケーションにレコードが属する場合は`owned`です（コンソールメンバーの場合は、そのメンバーに権限が付与されたアプリケーション）。組織内の別のアプリケーションに属する場合は`organization`です。
        route:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineRoute'
          description: '`monitoring_event`と`case`では含まれません。'
    NetworkTimelineAttempt:
      type: object
      description: アカウントの認証セッション1件です。
      properties:
        session_id:
          type: string
          format: uuid
          description: セッションのUUID。法人の場合は企業セッションのUUID。
        session_number:
          type: integer
          nullable: true
        attempt:
          type: integer
          description: アカウントのセッションのうち、作成順でのこのセッションの位置。
        attempt_count:
          type: integer
          description: アカウントが保有するセッションの数。
        status:
          type: string
          description: セッションのステータス（例：`Approved`、`Declined`）。
        status_changed_at:
          type: string
          format: date-time
          nullable: true
        decline_reasons:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTimelineDeclineReason'
          description: 却下されたセッションのみ：その警告を古い順に、警告ごとに1回ずつ示します。それ以外の場合は空です。
    NetworkTimelineTransaction:
      type: object
      description: メンバーアカウントが関与した取引。取引日の日付が付きます。
      properties:
        transaction_id:
          type: string
          format: uuid
        transaction_number:
          type: integer
          nullable: true
        transaction_type:
          type: string
        action_type:
          type: string
        amount:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAmount'
          nullable: true
          description: 取引に金額がない場合はnullです。
        status:
          type: string
        decision_reason_code:
          type: string
          nullable: true
        decision_reason_label:
          type: string
          nullable: true
        party_role:
          type: string
          description: >-
            取引におけるアカウントの役割:
            `APPLICANT`、`REMITTER`、`BENEFICIARY`または`COUNTERPARTY`。
    NetworkTimelineLogin:
      type: object
      description: イベントAPIを通じて本人について送信したサインインイベント。
      properties:
        action:
          type: string
          description: >-
            `<event_category>.<action_type>`の形式です。サインインは`auth.login`または`security.login_succeeded`、失敗したサインインは`auth.login_failed`または`security.login_failed`です。
        succeeded:
          type: boolean
        status:
          type: string
          description: イベントのステータスです。
        ip:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineIP'
          nullable: true
          description: イベントにIPアドレスがない場合はnullです。
        device:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineDevice'
          nullable: true
          description: イベントにデバイスフィンガープリントまたはコンテキストがない場合はnullです。
        is_first_login:
          type: boolean
          description: 記録上、そのアカウントで最初にサインインに成功した日時。
        is_new_device:
          type: boolean
          description: アカウントの過去に成功したどのサインインとも異なるデバイスからの、成功したサインイン。初回のサインインでは決してtrueになりません。
    NetworkTimelineRuleHit:
      type: object
      description: メンバーの取引またはイベントに一致した稼働中のルール。テストモードでの一致は含まれません。
      properties:
        rule_id:
          type: string
          format: uuid
        rule_title:
          type: string
        rule_category:
          type: string
        rule_source:
          type: string
        severity:
          type: string
          nullable: true
        score_delta:
          type: integer
        status_target:
          type: string
          nullable: true
        action_summary:
          type: string
          nullable: true
    NetworkTimelineCaseLinked:
      type: object
      description: >-
        組織内のネットワークに対して開かれたケース。`source_ref.ownership`は、呼び出したアプリケーションに属するかどうかを示します。
      properties:
        case_id:
          type: string
          format: uuid
        case_number:
          type: string
          nullable: true
        status:
          type: string
        author_email:
          type: string
          nullable: true
        author_name:
          type: string
          nullable: true
    NetworkTimelineNoteAdded:
      type: object
      description: ネットワーク上に残されたメモ。メモの本文は含まれません。
      properties:
        note_id:
          type: string
          format: uuid
        author_email:
          type: string
    NetworkTimelineRoute:
      type: object
      description: レコードの冒頭部分です。種類、UUID、所属するアプリケーションを示します。
      properties:
        kind:
          type: string
          description: >-
            アカウントの場合は`user`、`business`、`transaction_party`のいずれか、ソースレコードの場合は`session`、`business_session`、`transaction`のいずれかです。
        id:
          type: string
          format: uuid
        application_id:
          type: string
          format: uuid
    NetworkTimelineDeclineReason:
      type: object
      properties:
        risk:
          type: string
          description: 警告コード。
        feature:
          type: string
          description: 警告を発生させた機能です。
        short_description:
          type: string
    NetworkTimelineAmount:
      type: object
      properties:
        value:
          type: string
          description: 文字列形式の10進数の金額。
        currency:
          type: string
        direction:
          type: string
          nullable: true
    NetworkTimelineIP:
      type: object
      properties:
        address:
          type: string
        country_code:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        connection_type:
          type: string
          nullable: true
          description: 住所の接続タイプのラベル(自由記述)。
        is_vpn_or_tor:
          type: boolean
        is_data_center:
          type: boolean
    NetworkTimelineDevice:
      type: object
      properties:
        fingerprint:
          type: string
          nullable: true
        label:
          type: string
          nullable: true
          description: イベントのデバイスコンテキストから生成された読みやすいデバイスラベル。
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        お客様のアプリケーションのAPIキーです。Business ConsoleのDevelopers -> API
        keysで取得できます。プライマリキーはフルアクセス権を持ちます。名前付きキーにはスコープを設定できます。リソースごとのアクセス権（なし、読み取り、書き込み）、一部のワークフローまたは承認済みセッションへの限定、IPアドレスのリストへの限定、有効期限の設定です。401は、キーが誤っている、失効している、または期限切れであることを意味します。403は、キーが送信されていない、キーにこのリソースやアクションへのアクセス権がない、またはIPリスト外のアドレスからリクエストが送信されたことを意味します。セッションのルートでの404は、セッションがキーのワークフローまたはステータスの対象外であることを意味します。メディアへのアクセス権がないキーでは、画像、動画、PDFのURLがnullで返されます。セッションの書き込み権限がないキーでは、セッションのリンクとトークンがnullで返されます。詳細は次を参照してください:
        https://docs.didit.me/console/api-keys

````

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