> ## 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의 사기 네트워크 그래프 API로 주체와 신호 노드로 구성된 네트워크를 조회합니다. depth 파라미터로 중심 주체 주변 범위를 제한할 수 있습니다.



네트워크 그래프 API 프롬프트
        프롬프트를 클립보드에 복사



      
      

\<pre>

\`Retrieve a fraud network as a graph through the Management API.

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

Authentication:
Use the x-api-key header with my Didit API key.

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

Query params:
\- depth=1|2|3|all - hops from the focus subject to include. Defaults to all (unbounded).
\- focus_kind=vendor_user|vendor_business|transaction_party - must be supplied together with focus_id.
\- focus_id=<uuid> - subject UUID to center the graph on.

Response 200: NetworkGraph - { network: NetworkDetail, depth: int|null, truncated: bool, nodes: [...], edges: [...], metrics: {node_count, edge_count, hub_signal_count} }.

Node shapes:
\- Subject node (kind: vendor_user | vendor_business | transaction_party): id, kind, subject, node_status (approved|in_review|declined|not_completed), tags.
\- Signal node (kind: signal): id, kind, uuid, signal_type, subject_count, coverage, is_hub, is_datacenter_ip, is_high_collision_device, node_status (signal_active|signal_guarded), tags, risk_evidence, first_seen_at, last_seen_at.

Edge shape: id, source (subject node id), target (signal node id), subject_kind, signal_type, confidence, observation_count, first_seen_at, last_seen_at.

Failure modes:
\- 404 - network not found or not visible.
\- 400 - depth is not one of 1, 2, 3, all, or focus_kind/focus_id supplied without the other.
\- 401/403 - auth/permission errors.

Side effects: none, pure read.

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

\</pre>



      
      

붙여넣을 곳

네트워크를 그래프로 조회합니다. 네트워크에 속한 각 벤더 사용자, 벤더 기업, 거래 당사자에 대해 주체 노드를 반환하고, 이들을 연결하는 공유 기기, IP, 얼굴, 문서 번호, 전화번호, 이메일, 주소 값마다 신호 노드를, 그리고 이들 사이의 멤버십 관계마다 엣지를 반환합니다.`depth`를 사용하면 `focus_kind`/`focus_id`로 지정한 주체에서 몇 홉까지 반환할지 제한할 수 있습니다. 콘솔의 그래프 보기는 이 기능을 사용해 전체 네트워크를 불러오는 대신 한 신청자의 직접 연결만 확대해서 보여 줍니다. `depth`를 생략하거나(또는 `all`을 전달하면) 전체 연결 범위가 반환됩니다. 제한된 요청에서 일부가 잘렸는지는 `truncated`로 확인합니다.## 관련 문서- [네트워크 조회](https://docs.didit.me/ko/management-api/networks/get.md)
- [네트워크 멤버](https://docs.didit.me/ko/management-api/networks/members.md)
- [네트워크 신호](https://docs.didit.me/ko/management-api/networks/signals.md)


## OpenAPI

````yaml ko/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/graph/
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}/graph/:
    get:
      tags:
        - Networks
      summary: 네트워크 그래프 조회
      description: >-
        주체 노드(벤더 사용자, 벤더 기업, 거래 당사자)와 이들을 연결하는 신호 노드(공유된 기기/IP/얼굴/문서/전화번호/이메일/주소
        값)의 그래프로 네트워크를 조회하며, 엣지는 멤버십을 나타냅니다.
      operationId: get_network_graph
      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: depth
          in: query
          schema:
            type: string
            enum:
              - '1'
              - '2'
              - '3'
              - all
          description: 포함할 대상 주체로부터의 홉 수입니다. 기본값은 전체(무제한)입니다.
        - name: focus_kind
          in: query
          schema:
            type: string
            enum:
              - vendor_user
              - vendor_business
              - transaction_party
          description: >-
            그래프의 중심이 될 주체 유형입니다. focus_id와 함께 제공해야 합니다. 깊이가 제한되어 있고 둘 다 제공되지 않은
            경우 임의의 멤버로 기본 설정됩니다.
        - name: focus_id
          in: query
          schema:
            type: string
            format: uuid
          description: 그래프의 중심이 될 주체 UUID입니다.
      responses:
        '200':
          description: 네트워크 그래프입니다.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NetworkGraph'
        '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/graph/?depth=2'
            \
              -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_graph(
                "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.retrieveGraph("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.RetrieveGraph(ctx, \"n3a5e000-0000-4000-8000-000000000001\", didit.NetworksRetrieveGraphParams{})\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().retrieveGraph("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->retrieveGraph('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_graph("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.RetrieveGraphAsync("n3a5e000-0000-4000-8000-000000000001");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    NetworkGraph:
      type: object
      properties:
        network:
          $ref: '#/components/schemas/NetworkDetail'
        depth:
          type: integer
          nullable: true
          description: 적용된 유효 깊이이며, 제한이 없는 경우(depth=all) null입니다.
        truncated:
          type: boolean
          description: 인접 노드가 깊이 제한으로 인해 잘린 경우 true입니다.
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/NetworkGraphNode'
        edges:
          type: array
          items:
            $ref: '#/components/schemas/NetworkGraphEdge'
        metrics:
          type: object
          properties:
            node_count:
              type: integer
            edge_count:
              type: integer
            hub_signal_count:
              type: integer
    NetworkDetail:
      allOf:
        - $ref: '#/components/schemas/NetworkListItem'
        - type: object
          properties:
            stats:
              type: object
              description: '네트워크에 대한 집계 통계입니다(예: 멤버 총수).'
            fraud_tags:
              type: array
              items:
                type: object
              description: 네트워크에 나타난 사기 패턴 태그입니다.
            risk_signals:
              type: object
              description: >-
                위험 신호 요약: residential_proxy_reuse, email_intelligence,
                phone_intelligence.
            reviewed_at:
              type: string
              format: date-time
              nullable: true
            reviewed_by:
              type: string
              nullable: true
            review_reason:
              type: string
              nullable: true
      properties:
        notes_count:
          type: integer
          minimum: 0
          readOnly: true
          description: 이 조사에 포함된 비공개 분석가 메모 수입니다.
    NetworkGraphNode:
      type: object
      description: >-
        종류에 따라 구분되는 주체 노드 또는 신호 노드입니다. 주체 노드(종류: vendor_user | vendor_business |
        transaction_party)에는 id, kind, subject, node_status(approved | in_review
        | declined | not_completed) 및 tags가 포함됩니다. 신호 노드(종류: signal)에는 id, kind,
        uuid, signal_type, subject_count, coverage, is_hub, is_datacenter_ip,
        is_high_collision_device, node_status(signal_active | signal_guarded),
        tags, risk_evidence, first_seen_at 및 last_seen_at이 포함됩니다.
      properties:
        id:
          type: string
        kind:
          type: string
          enum:
            - vendor_user
            - vendor_business
            - transaction_party
            - signal
    NetworkGraphEdge:
      type: object
      properties:
        id:
          type: string
          format: uuid
        source:
          type: string
          description: 주체 노드 ID입니다.
        target:
          type: string
          description: 시그널 노드 ID입니다.
        subject_kind:
          type: string
          enum:
            - vendor_user
            - vendor_business
            - transaction_party
        signal_type:
          type: string
          enum:
            - ip_address
            - device
            - face
            - document_number
            - phone
            - email
            - address
        confidence:
          type: number
          format: float
          description: 정확히 일치하는 경우 1.0입니다.
        observation_count:
          type: integer
        first_seen_at:
          type: string
          format: date-time
          nullable: true
        last_seen_at:
          type: string
          format: date-time
          nullable: true
    NetworkListItem:
      type: object
      properties:
        uuid:
          type: string
          format: uuid
        network_id:
          type: string
          description: '사람이 읽을 수 있는 조직별 순차 ID(예: N-0001)입니다.'
        name:
          type: string
          nullable: true
        status:
          type: string
          enum:
            - active
            - in_review
            - resolved
            - dismissed
          description: >-
            네트워크 라이프사이클 상태입니다. 네트워크 내부의 신청자별
            outcome_status(approved/in_review/declined/not_completed)와 구별됩니다.
        risk:
          $ref: '#/components/schemas/NetworkRiskDisplay'
        pattern_types:
          type: array
          items:
            type: string
            enum:
              - exact_same_device
              - similar_device
              - same_ip_address
              - same_address
              - similar_selfie_backgrounds
              - similar_poa_documents
              - same_document_number
              - same_phone_number
              - same_email
          description: 이 네트워크에서 감지된 클러스터링 패턴입니다.
        signal_types:
          type: array
          items:
            type: string
            enum:
              - ip_address
              - device
              - face
              - document_number
              - phone
              - email
              - address
          description: 이 네트워크에 존재하는 고유한 신호 유형들입니다.
        member_counts:
          type: object
          description: '카테고리별 멤버 수(예: 전체, outcome_status별).'
        member_status:
          type: object
          description: outcome_status별 멤버 내역입니다.
        signal_coverage:
          type: object
          description: 이 네트워크 멤버들의 signal_type별 적용 범위입니다.
        first_activity_at:
          type: string
          format: date-time
          nullable: true
        last_activity_at:
          type: string
          format: date-time
          nullable: true
    NetworkRiskDisplay:
      type: object
      properties:
        score:
          type: integer
          description: 위험 점수, 0-100.
        band:
          type: string
          enum:
            - low
            - medium
            - high
          description: 점수가 표시되는 구간입니다. 70 이상은 high, 40 이상은 medium, 그 외에는 low입니다.
        bar:
          type: number
          format: float
          description: 위험 바를 렌더링하기 위한 정규화된 0-1 값입니다.
  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.