Skip to main content
이 가이드는 이미지가 AI로 생성되었는지 탐지하는 과정을 안내합니다 — 이미지 업로드부터 탐지 결과 확인까지. 이 문서의 모든 엔드포인트는 순수 HTTPS와 JSON을 사용하므로, 서버에서든 브라우저에서든 동일하게 호출할 수 있습니다. 각 단계에는 React 탭이 포함되어 있으며, 그대로 복사해 쓸 수 있는 전체 컴포넌트 예제는 페이지 하단에 있습니다.

사전 준비

  • BIZ MORI API 키 (여기서 발급)
  • 분석할 이미지 파일 (jpeg, jpg, png, webp, bmp, 또는 tiff)
자동 발급된 sk_test_ 키로 실제 AI Detection 처리나 크레딧 사용 없이 주문 흐름을 검증할 수 있습니다. 테스트 업로드는 파일 내용을 폐기하고 결정적인 확률 값을 반환합니다. 실제 탐지 결과가 필요할 때는 일반 API 키를 사용하세요.

1단계: 주문 생성

이미지 파일 이름으로 AI Detection 주문을 생성합니다.
응답:
대시보드 구분을 위한 썸네일, 히트맵, 오버레이 이미지를 생성하려면 AI Detection API 레퍼런스를 참고하세요.

2단계: 파일 업로드

1단계 응답의 uploadUrl로 파일을 PUT 업로드합니다. Authorization 헤더는 필요 없습니다 — S3 직접 업로드입니다.
live 키는 S3 presigned URL을 받고, 테스트 키는 https://api.bizmori.com/api/v2/test-uploads/{signedToken}을 받습니다. 두 URL 모두 1시간 후 만료되며 같은 방식으로 Authorization 헤더 없이 PUT합니다. 테스트 업로드는 스트림으로만 소비되고 저장·처리되지 않습니다. 만료되면 POST /api/v2/orders/{orderId}/refresh-urls를 사용하세요.

3단계: 주문 확인

업로드 완료 후, 탐지 처리를 시작하기 위해 주문을 확인합니다:

4단계: 결과 확인

이 단계는 deprecated되었지만 동작이 바뀌지 않은 GET /api/v2/orders/{orderId}를 사용합니다. 새로 연동한다면 주문 상세 조회(v3)를 사용하세요. 결과를 최상위 statusCode, probability 대신 result.verdict, result.probability로 반환합니다.
주문 상태를 폴링하거나 웹훅을 설정하여 탐지 완료 알림을 받습니다. 탐지 결과는 주문 상세에 직접 포함되어 있으며, 별도의 다운로드 단계는 없습니다.
응답:
heatmapUrl, overlayUrl은 주문 생성 시 각각 options.generateHeatmap, options.generateOverlay를 요청한 경우에만 응답에 포함됩니다. 결과 이미지는 보통 긴 변을 1600px 이내로 줄인 WebP입니다. originalImageUrl도 같은 방식으로 줄인 입력 이미지 사본이고, thumbnailImageUrl은 740×400 이내 썸네일이며 options.generateThumbnail과 관계없이 반환됩니다. 리사이즈 이미지가 준비되지 않았으면 원본 파일을 반환합니다.

결과 해석

probability 필드(0–1)는 이미지가 AI로 생성되었을 확률을 나타냅니다. statusCode는 이를 사람이 읽기 쉽게 해석한 값입니다:

전체 React 예제

위 내용을 모두 하나의 컴포넌트로 연결했습니다: 진행률 표시가 있는 이미지 업로드, 백오프 폴링, 그리고 탐지 결과 표시까지. React 외에 별도의 의존성은 없습니다.
AiDetectionChecker.jsx
import.meta.env.VITE_MORI_API_TOKEN은 Vite 문법입니다. Next.js에서는 process.env.NEXT_PUBLIC_MORI_API_TOKEN을 사용하거나, 사용 중인 번들러가 클라이언트 코드에 노출하는 방식을 사용하세요. crypto.randomUUID()는 보안 컨텍스트에서만 동작합니다. HTTPS와 localhost에서는 문제없지만, 일반 HTTP LAN 주소에서는 사용할 수 없습니다.

에러 처리

전체 에러 코드는 에러 코드 페이지를 참고하세요.

다음 단계

Anti-AI

이미지를 AI 학습 및 생성으로부터 보호합니다.

워터마크 삽입

이미지에 보이지 않는 워터마크를 삽입합니다.

워터마크 검출

이미지에서 워터마크를 검출하고 추출합니다.

웹훅

처리 완료 시 알림을 받기 위해 웹훅을 설정합니다.