> ## 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 Management API로 화이트 라벨 브랜딩을 업데이트하세요. 색상, 글꼴, 테두리 반경을 변경하고 로고를 업로드하며 인증 흐름 UI 옵션을 조정할 수 있습니다.



브랜딩 업데이트 프롬프트
        프롬프트를 클립보드에 복사



      
      

\<pre>

\`Goal: Update the white-label branding for the application tied to an API key.

Endpoint: PATCH https://verification.didit.me/v3/customization/
Auth header: x-api-key: <DIDIT_API_KEY>

Two content types:
\- application/json  -> change colors, fonts, radii and UI options
\- multipart/form-data -> upload logo images (image_square, image_rectangular, image_rectangular_dark, image_favicon)

PARTIAL update: only the fields you send are changed. The application is resolved from the API key (no path params).

JSON body fields:
\- Colors (hex '#RRGGBB' or '#RRGGBBAA'): color_primary, color_secondary, color_background, color_panel, color_panel_10, color_on_panel_1, color_on_panel_2, color_on_background, color_button_1, color_button_2, color_button_text_1, color_button_text_2, color_pill_text
\- border_radius_panel, border_radius_buttons (integers >= 0)
\- font_family (Google Font name), font_weight (must be available for the family)
\- app_public_name (string|null), privacy_policy_url (string|null)
\- skip_welcome_screen, disable_login_with_didit, hide_progress_bar (boolean)
\- callback_seconds (integer >= 0)
\- delete_logo_square, delete_logo_rectangular, delete_logo_rectangular_dark, delete_favicon (boolean) -> remove an existing logo; an upload sent in the same request wins over its delete flag

Logo upload (multipart/form-data) fields:
\- image_square (1:1)
\- image_rectangular (2:1)
\- image_rectangular_dark (2:1, the rectangular logo for dark mode; returned as logo_rectangular_dark)
\- image_favicon (max 500 KB)
Logo rules for image_square, image_rectangular and image_rectangular_dark: PNG, JPG or WebP (SVG is refused), at least 512 px on the long side, max 1 MB.

NOT allowed here (Business Console only): custom domain and white-label email.

curl (JSON):
curl -X PATCH 'https://verification.didit.me/v3/customization/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"color_primary": "#123456", "font_family": "AR One Sans"}'

curl (logo upload):
curl -X PATCH 'https://verification.didit.me/v3/customization/' \
-H 'x-api-key: YOUR_API_KEY' \
-F 'image_rectangular=@logo.png' \
-F 'image_rectangular_dark=@logo-dark.png' \
-F 'image_favicon=@favicon.ico'

Response 200: the full updated BrandingCustomization object (same shape as GET).

Failure modes:
\- 400: validation. Examples: { "color_primary": ["Invalid color format. Use '#RRGGBB' or '#RRGGBBAA' format."] }, { "image_rectangular": ["Image aspect ratio must be 2:1. Got 1024x1024 image dimensions"] }, { "image_rectangular_dark": ["Upload a PNG, JPG or WebP image."] }, { "image_rectangular": ["Image must be at least 512 px on its long side. Got 400x200 image dimensions"] }, { "image_square": ["File size should not exceed 1 MB"] }
\- 401 — missing/invalid x-api-key.

For end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`

\</pre>



      
      

붙여넣을 곳

## 개요API 키로 식별되는 애플리케이션의 화이트 라벨 브랜딩을 부분 업데이트합니다. 색상, 글꼴, 모서리 반경, UI 옵션을 변경하려면 `application/json`을, 로고를 업로드하려면 `multipart/form-data`를 보내세요. 요청에 포함한 필드만 변경되며, 나머지 값은 그대로 유지됩니다.## 사용 시기- **흐름에 테마 적용** - 브랜드 색상, 글꼴, 모서리 반경을 설정합니다.
- **로고 업로드**: 정사각형 로고, 직사각형 로고와 다크 모드용 버전, 파비콘을 설정합니다.
- **경험 조정** - 공개 앱 이름, 개인정보 처리방침 URL, 환영 화면 건너뛰기나 진행률 표시줄 숨기기 같은 토글을 설정합니다.## 로고 업로드로고는 `multipart/form-data`로 보내세요.- `image_square`: 가로세로 비율 1:1.
- `image_rectangular`: 가로세로 비율 2:1.
- `image_rectangular_dark`: 가로세로 비율 2:1. 다크 모드용 직사각형 로고이며, 어두운 배경에 표시됩니다.
- `image_favicon`: 최대 **500 KB**.`image_square`, `image_rectangular`, `image_rectangular_dark`는 PNG, JPG 또는 WebP 이미지여야 하며, 긴 변이 512 px 이상이고 **1 MB** 이하여야 합니다.
SVG 파일은 거부됩니다.
응답에는 결과로 생성된 `logo_square`, `logo_rectangular`, `logo_rectangular_dark`, `favicon` URL이 포함됩니다.로고를 삭제하려면 해당하는 `delete_logo_square`, `delete_logo_rectangular`, `delete_logo_rectangular_dark` 또는 `delete_favicon` 플래그를 `true`로 보내세요.
다크 모드 로고를 삭제하면 `logo_rectangular_dark` 값은 `null`이 됩니다.
한 요청에서 로고를 업로드하면서 같은 로고의 삭제 플래그도 보내면, 업로드가 우선 적용됩니다.업로드가 거부되면 `400`이 반환되며, 필드 이름과 사유가 함께 표시됩니다. 예를 들면 다음과 같습니다.- `{"image_rectangular_dark": ["Upload a PNG, JPG or WebP image."]}`
- `{"image_rectangular": ["Image must be at least 512 px on its long side. Got 400x200 image dimensions"]}`
- `{"image_rectangular": ["Image aspect ratio must be 2:1. Got 1024x1024 image dimensions"]}`
- `{"image_square": ["File size should not exceed 1 MB"]}`## 참고 사항- 애플리케이션은 API 키로 식별되므로 경로 파라미터는 없습니다.
- 16진수 색상은 `#RRGGBB` 또는 `#RRGGBBAA` 형식을 허용합니다. `font_weight`는 선택한 `font_family`에서 사용할 수 있는 굵기여야 합니다.
- **커스텀 도메인과 화이트 라벨 이메일은 여기에서 설정할 수 없습니다.** 이들은 [Business Console](https://docs.didit.me/ko/console/white-label.md)에서 관리하세요.## 권한API 키에 해당 애플리케이션의 커스터마이징을 업데이트할 권한이 있어야 합니다.## 관련 문서- [브랜딩 조회](https://docs.didit.me/ko/management-api/customization/get.md)
- [Console의 화이트 라벨](https://docs.didit.me/ko/console/white-label.md)


## OpenAPI

````yaml ko/openapi-25.json PATCH /v3/customization/
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/customization/:
    patch:
      tags:
        - Customization
      summary: 브랜딩 커스터마이징 업데이트
      description: >-
        애플리케이션 화이트 라벨 브랜딩의 부분 업데이트입니다. 색상, 글꼴, 곡률 및 UI 옵션을 변경하려면
        `application/json`을 전송하고, 로고 이미지를 업로드하려면 `multipart/form-data`를 전송하십시오.
        포함된 필드만 변경됩니다. 커스텀 도메인 및 화이트 라벨 이메일은 이 endpoint를 통해 설정할 수 없으며, Business
        Console을 사용하십시오.
      operationId: update_customization
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrandingCustomizationUpdate'
            examples:
              Update colors and font:
                summary: 브랜딩 색상 및 글꼴 변경
                value:
                  color_primary: '#123456'
                  color_button_1: '#2567FF'
                  font_family: AR One Sans
                  border_radius_buttons: 16
              Update UI options:
                summary: 공개 이름 및 플로우 옵션 변경
                value:
                  app_public_name: Acme Verify
                  privacy_policy_url: https://acme.com/privacy
                  skip_welcome_screen: true
                  hide_progress_bar: true
                  callback_seconds: 5
              Remove a logo:
                summary: 현재 직사각형 로고 삭제
                value:
                  delete_logo_rectangular: true
              Remove the dark-mode logo:
                summary: 현재 다크 모드 로고 삭제
                value:
                  delete_logo_rectangular_dark: true
          multipart/form-data:
            schema:
              type: object
              description: >-
                로고 이미지를 업로드할 때만 multipart/form-data를 사용하십시오. 위의 브랜딩 필드도 동일한 요청에서
                폼 필드로 전송할 수 있습니다.
              properties:
                image_square:
                  type: string
                  format: binary
                  description: >-
                    정사각형 로고(1:1 가로세로 비율)입니다. PNG, JPG 또는 WebP 형식이어야 하며, 긴 쪽 기준
                    최소 512 px, 최대 **1 MB**여야 합니다.
                image_rectangular:
                  type: string
                  format: binary
                  description: >-
                    직사각형 로고(2:1 가로세로 비율). PNG, JPG 또는 WebP, 긴 쪽 기준 최소 512px, 최대
                    **1MB**.
                image_rectangular_dark:
                  type: string
                  format: binary
                  description: >-
                    다크 모드용 직사각형 로고(2:1 가로세로 비율)로, 어두운 배경에 표시됩니다. PNG, JPG 또는
                    WebP, 긴 쪽 기준 최소 512px, 최대 **1MB**. `logo_rectangular_dark`로
                    반환됩니다.
                image_favicon:
                  type: string
                  format: binary
                  description: 파비콘 이미지. 최대 **500 KB**.
            example:
              image_rectangular: (binary PNG logo, 2:1)
              image_rectangular_dark: (binary PNG logo for dark mode, 2:1)
              image_favicon: (binary favicon)
      responses:
        '200':
          description: 브랜딩이 업데이트되었습니다. 전체 브랜딩 객체가 반환됩니다(변경된 필드뿐만 아니라 모든 필드 포함).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandingCustomization'
              examples:
                Updated:
                  value:
                    color_primary: '#123456'
                    color_secondary: '#9DA1A1'
                    color_background: '#FFFFFF'
                    color_panel: '#2567FF'
                    color_panel_10: '#1A1A1A'
                    color_on_panel_1: '#9DA1A1'
                    color_on_panel_2: '#F4F4F6'
                    color_on_background: '#000000'
                    color_button_1: '#2567FF'
                    color_button_2: '#F8F8F8'
                    color_button_text_1: '#FFFFFF'
                    color_button_text_2: '#000000'
                    color_pill_text: '#111827'
                    border_radius_panel: 10
                    border_radius_buttons: 16
                    font_family: AR One Sans
                    font_weight: '400'
                    font_url: https://fonts.googleapis.com/css2?family=AR+One+Sans
                    logo_square: null
                    logo_rectangular: https://cdn.didit.me/white_label/logo_rectangular/...
                    logo_rectangular_dark: null
                    favicon: null
                    app_public_name: Acme Verify
                    privacy_policy_url: https://acme.com/privacy
                    skip_welcome_screen: true
                    disable_login_with_didit: false
                    hide_progress_bar: false
                    callback_seconds: 3
        '400':
          description: >-
            유효하지 않은 본문입니다. 예: 잘못된 형식의 16진수 색상 코드, 알 수 없는 글꼴 모음 또는 굵기, Business
            Console 전용 필드(`domain`, `from_email`, `verify_domain`,
            `force_remove_domain`, `verify_email_domain`,
            `force_remove_email_domain` 및 관련 읽기 전용 필드), 또는 로고 업로드 파일이 PNG, JPG,
            WebP 이미지가 아니거나, 긴 쪽의 길이가 512 px 미만이거나, 1 MB를 초과하거나, 가로세로 비율이 올바르지 않은
            경우입니다. 또한 사용자 지정 도메인이 구성된 상태에서 `disable_login_with_didit`을 `false`로
            설정할 때도 반환됩니다.
          content:
            application/json:
              examples:
                Bad color:
                  value:
                    color_primary:
                      - >-
                        Invalid color format. Use '#RRGGBB' or '#RRGGBBAA'
                        format.
                Bad logo:
                  value:
                    image_rectangular:
                      - >-
                        Image aspect ratio must be 2:1. Got 1024x1024 image
                        dimensions
                Unsupported logo format:
                  summary: 'PNG, JPG 또는 WebP 이미지가 아님(예: SVG)'
                  value:
                    image_rectangular_dark:
                      - Upload a PNG, JPG or WebP image.
                Logo too small:
                  summary: 긴 변 기준 512 px 미만
                  value:
                    image_rectangular:
                      - >-
                        Image must be at least 512 px on its long side. Got
                        400x200 image dimensions
                Logo too large:
                  summary: 1MB 초과
                  value:
                    image_square:
                      - File size should not exceed 1 MB
                Console-only field:
                  value:
                    domain:
                      - Manage this field in the Business Console.
                Bad font weight:
                  value:
                    font_weight:
                      - >-
                        Font weight 950 is not available for Inter. Available
                        weights are: 100, 200, 300, 400, 500, 600, 700, 800, 900
        '403':
          description: >-
            API 키가 누락되었거나, 형식이 잘못되었거나, 만료되었거나, 다른 애플리케이션으로 범위가 지정되었습니다. 키가 누락된
            경우 `403`을 반환하고, 잘못되었거나 취소되었거나 만료된 키는 `401`을 반환합니다.
          content:
            application/json:
              examples:
                Invalid token:
                  value:
                    detail: You do not have permission to perform this action.
        '429':
          description: 속도 제한을 초과했습니다. 지수 백오프로 재시도하세요.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: |-
            curl -X PATCH 'https://verification.didit.me/v3/customization/' \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{"color_primary": "#123456", "font_family": "AR One Sans"}'
        - lang: curl
          label: curl (logo upload)
          source: |-
            curl -X PATCH 'https://verification.didit.me/v3/customization/' \
              -H 'x-api-key: YOUR_API_KEY' \
              -F 'image_rectangular=@logo.png' \
              -F 'image_rectangular_dark=@logo-dark.png' \
              -F 'image_favicon=@favicon.ico'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.customization.update(
                image_rectangular=open("image_rectangular.jpg", "rb"),
                image_rectangular_dark=open("image_rectangular_dark.jpg", "rb"),
                image_favicon=open("image_favicon.jpg", "rb"),
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit, { fileFromPath } from "@didit-protocol/sdk-node";

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

            const result = await didit.customization.update({
              image_rectangular: await fileFromPath("image_rectangular.jpg"),
              image_rectangular_dark: await fileFromPath("image_rectangular_dark.jpg"),
              image_favicon: await fileFromPath("image_favicon.jpg"),
            });
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Customization.Update(ctx, didit.CustomizationUpdateParams{\n\tImageRectangular:     didit.Some(didit.FileFromPath(\"image_rectangular.jpg\")),\n\tImageRectangularDark: didit.Some(didit.FileFromPath(\"image_rectangular_dark.jpg\")),\n\tImageFavicon:         didit.Some(didit.FileFromPath(\"image_favicon.jpg\")),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import java.nio.file.Path;

            import me.didit.Didit;

            import me.didit.types.CustomizationUpdateParams;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.customization().update(CustomizationUpdateParams.builder()
                    .imageRectangular(Path.of("image_rectangular.jpg"))
                    .imageRectangularDark(Path.of("image_rectangular_dark.jpg"))
                    .imageFavicon(Path.of("image_favicon.jpg"))
                    .build());
            System.out.println(result);
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;
            use Didit\File;

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

            $result = $didit->customization->update([
                'image_rectangular' => File::fromPath('image_rectangular.jpg'),
                'image_rectangular_dark' => File::fromPath('image_rectangular_dark.jpg'),
                'image_favicon' => File::fromPath('image_favicon.jpg'),
            ]);
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            result = didit.customization.update(
              image_rectangular: Pathname("image_rectangular.jpg"),
              image_rectangular_dark: Pathname("image_rectangular_dark.jpg"),
              image_favicon: Pathname("image_favicon.jpg")
            )
            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await client.Customization.UpdateAsync(new
            CustomizationUpdateParams

            {
                ImageRectangular = FileUpload.FromPath("image_rectangular.jpg"),
                ImageRectangularDark = FileUpload.FromPath("image_rectangular_dark.jpg"),
                ImageFavicon = FileUpload.FromPath("image_favicon.jpg"),
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    BrandingCustomizationUpdate:
      type: object
      description: >-
        부분 브랜딩 업데이트 본문입니다. 변경하려는 필드만 제공하십시오. 16진수 색상은 `#RRGGBB` 또는 `#RRGGBBAA`를
        허용합니다. 커스텀 도메인 및 화이트 라벨 이메일은 여기서 허용되지 않습니다.
      properties:
        color_primary:
          type: string
          description: 헤더 / 기본 텍스트 색상입니다.
        color_secondary:
          type: string
          description: 본문 / 보조 텍스트 색상입니다.
        color_background:
          type: string
          description: 페이지 배경색입니다.
        color_panel:
          type: string
          description: 패널 / 강조 색상입니다.
        color_panel_10:
          type: string
          description: 불투명도 10%의 패널 색상입니다.
        color_on_panel_1:
          type: string
          description: 패널의 보조 텍스트 색상입니다.
        color_on_panel_2:
          type: string
          description: 패널의 필(pill)/배지 색상입니다.
        color_on_background:
          type: string
          description: 배경 위의 텍스트 색상입니다.
        color_button_1:
          type: string
          description: 기본 버튼 색상입니다.
        color_button_2:
          type: string
          description: 보조 버튼 색상.
        color_button_text_1:
          type: string
          description: 기본 버튼 텍스트 색상입니다.
        color_button_text_2:
          type: string
          description: 보조 버튼 텍스트 색상.
        color_pill_text:
          type: string
          description: 필, 입력란 및 선택기의 텍스트 색상입니다.
        border_radius_panel:
          type: integer
          minimum: 0
          description: 패널 모서리 곡률(픽셀 단위)입니다.
        border_radius_buttons:
          type: integer
          minimum: 0
          description: 버튼 모서리 반경(픽셀 단위)입니다.
        font_family:
          type: string
          description: 'Google Font 글꼴 패밀리 이름(예: `Inter`, `AR One Sans`).'
        font_weight:
          type: string
          description: '선택한 글꼴 패밀리에서 사용 가능한 굵기(예: `regular`, `500`, `700`).'
        app_public_name:
          type: string
          nullable: true
          description: 인증 워크플로에 표시되는 공개 이름입니다.
        privacy_policy_url:
          type: string
          nullable: true
          description: 최종 사용자에게 표시되는 개인정보 처리방침 URL입니다.
        skip_welcome_screen:
          type: boolean
          description: 초기 환영 화면을 건너뜁니다.
        disable_login_with_didit:
          type: boolean
          description: >-
            Didit으로 로그인 화면을 표시하는 대신 게스트로 계속 진행합니다. 커스텀 도메인이 구성되어 있는 동안에는 다시
            `false`로 설정할 수 없습니다(400).
        hide_progress_bar:
          type: boolean
          description: 플로우 진행 중 진행률 표시줄을 숨깁니다.
        callback_seconds:
          type: integer
          minimum: 0
          description: 콜백 URL로 리디렉션하기 전 지연 시간(초)입니다.
        delete_logo_square:
          type: boolean
          description: '`true`인 경우 현재 정사각형 로고를 제거합니다.'
        delete_logo_rectangular:
          type: boolean
          description: '`true`인 경우 현재 직사각형 로고를 제거합니다.'
        delete_logo_rectangular_dark:
          type: boolean
          description: >-
            `true`인 경우 현재 다크 모드 로고를 제거하며, 이후 `logo_rectangular_dark`는 `null`로
            표시됩니다. 동일한 멀티파트 요청에서 `image_rectangular_dark`도 업로드하는 경우 업로드가 우선
            적용됩니다.
        delete_favicon:
          type: boolean
          description: '`true`인 경우 현재 파비콘을 제거합니다.'
    BrandingCustomization:
      type: object
      description: >-
        애플리케이션을 위한 화이트 라벨 브랜딩: 색상, 글꼴, 모서리 곡률, 로고 URL 및 UI/UX 옵션입니다. 로고 URL은 읽기
        전용입니다(이미지를 업로드하여 설정). 사용자 지정 도메인 및 화이트 라벨 이메일은 포함되지 않습니다.
      properties:
        color_primary:
          type: string
        color_secondary:
          type: string
        color_background:
          type: string
        color_panel:
          type: string
        color_panel_10:
          type: string
        color_on_panel_1:
          type: string
        color_on_panel_2:
          type: string
        color_on_background:
          type: string
        color_button_1:
          type: string
        color_button_2:
          type: string
        color_button_text_1:
          type: string
        color_button_text_2:
          type: string
        color_pill_text:
          type: string
        border_radius_panel:
          type: integer
        border_radius_buttons:
          type: integer
        font_family:
          type: string
        font_weight:
          type: string
        font_url:
          type: string
          nullable: true
          description: 읽기 전용입니다. 선택한 글꼴 모음에 대해 확인된 Google Fonts 스타일시트 URL입니다.
        logo_square:
          type: string
          nullable: true
          description: 정사각형 로고의 읽기 전용 URL입니다. `image_square`를 통해 업로드합니다.
        logo_rectangular:
          type: string
          nullable: true
          description: 직사각형 로고의 읽기 전용 URL입니다. `image_rectangular`를 통해 업로드합니다.
        logo_rectangular_dark:
          type: string
          format: uri
          nullable: true
          description: >-
            읽기 전용입니다. 다크 모드용 직사각형 로고의 서명된 임시 URL로, 어두운 배경에 표시됩니다. 다크 모드 로고가 설정되어
            있지 않거나 계정에 직사각형 로고가 표시되지 않는 경우 `null`입니다. `image_rectangular_dark`로
            업로드합니다.
        favicon:
          type: string
          nullable: true
          description: 파비콘의 읽기 전용 URL입니다. `image_favicon`을 통해 업로드합니다.
        app_public_name:
          type: string
          nullable: true
        privacy_policy_url:
          type: string
          nullable: true
        skip_welcome_screen:
          type: boolean
        disable_login_with_didit:
          type: boolean
        hide_progress_bar:
          type: boolean
        callback_seconds:
          type: integer
  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.