문서

API 문서

imagetranslate.ai 공개 REST API. Bearer 토큰으로 인증한 뒤 base64 이미지를 전송하면 번역된 이미지로 응답합니다.

이미지 속 텍스트를 번역하고 원본 레이아웃을 그대로 유지한 채 이미지에 다시 렌더링하여 반환합니다.

빠른 시작

API key 발급

API Keys 페이지에서 생성합니다.

첫 요청 보내기

curl -X POST https://api.imagetranslate.ai/translate/image \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "imageBase64": "iVBORw0KGgoAAAANSUhEUgAA...",
    "sourceLanguage": "ja",
    "targetLanguage": "en",
    "mode": "general",
    "translator": "Grok"
  }'

응답 처리

response.resultImagedata:image/png;base64, 접두사가 붙은 base64 PNG 입니다(HTTP URL 이 아닙니다). 브라우저에서는 <img src={response.resultImage} /> 로 바로 표시할 수 있으며, 파일로 저장할 때는 접두사를 제거한 뒤 base64 를 디코딩합니다.

인증

모든 요청의 Authorization 헤더에 API key 를 Bearer 토큰 형식으로 포함해야 합니다.

Authorization: Bearer YOUR_KEY

API key 는 sk_imagetranslate_ 접두사가 붙은 32 바이트 랜덤 문자열입니다. 비밀번호와 동일하게 취급하여 서버 측 시크릿 매니저에 보관하고, 코드 저장소에 커밋하거나 프론트엔드 코드에 노출해서는 안 됩니다.

멱등성

네트워크 타임아웃 후 요청을 재시도할 때 동일한 Idempotency-Key 헤더를 함께 전송하면 크레딧이 중복 차감되지 않습니다.

Idempotency-Key: <your-uuid>
  • 특정 키로 보낸 첫 호출: 정상적으로 처리됩니다.
  • 동일한 키로 보낸 이후 호출(API key 단위): 409 Conflict 와 함께 최초의 recordId 를 반환합니다. 재시도 시 크레딧이 차감되지 않습니다.
  • 키가 다르면 별개의 호출로 처리됩니다.

키는 클라이언트에서 생성하며 UUIDv4 면 충분합니다. 키를 보내지 않으면 재시도마다 크레딧이 새로 차감되고 Torii 가 다시 실행됩니다.

이미지 번역

동기식 엔드포인트입니다. base64 로 인코딩된 번역 이미지를 반환하며, data:image/png;base64, 접두사가 포함됩니다.

Base URL

https://api.imagetranslate.ai

요청 본문

필드타입필수설명
imageBase64stringbase64 로 인코딩한 이미지. 순수 base64 문자열과 완전한 data URL(data:image/png;base64,...) 모두 허용됩니다. 디코딩 후 최대 20MB.
sourceLanguagestringISO 언어 코드 또는 auto(자동 감지). 언어 코드 참고.
targetLanguagestringISO 언어 코드. 언어 코드 참고.
modestring아니오렌더링 스타일. 기본값은 general 입니다. mode 값 참고.
translatorstring아니오번역 모델. 기본값은 grok-4 입니다. translator 모델 참고.
customPromptstring아니오모델에 전달할 추가 지시문. 최대 1000 자.

응답

필드타입설명
successboolean번역 성공 시 true.
recordIdstring호출별 고유 로그 ID. 문제가 발생하면 고객 지원팀에 전달해 주십시오.
resultImagestring번역된 이미지. base64 로 인코딩되며 data:image/png;base64, 접두사가 포함됩니다(HTTP URL 이 아닙니다). <img src={...} /> 로 바로 렌더링하거나, 접두사를 제거한 뒤 base64 를 디코딩해 파일로 저장합니다.
remainingCreditnumber차감 후 남은 advanced credit.

예제

curl -X POST https://api.imagetranslate.ai/translate/image \
  -H "Authorization: Bearer $IMAGETRANSLATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d '{
    "imageBase64": "YOUR_BASE64_IMAGE",
    "sourceLanguage": "ja",
    "targetLanguage": "en",
    "mode": "general",
    "translator": "Grok"
  }'

응답 예시

{
  "success": true,
  "recordId": "Z3l4abc...",
  "resultImage": "data:image/png;base64,iVBORw0KGgoAAAANSU...",
  "remainingCredit": 9990
}

오류 코드

Status의미
400요청 형식 오류 또는 imageBase64 가 유효한 base64 가 아닙니다.
401API key 가 누락되었거나 유효하지 않습니다. API Keys 에서 발급받습니다.
402advanced credit 이 부족합니다. 요금 페이지 에서 충전합니다. 해당 호출은 크레딧이 차감되지 않습니다.
403현재 플랜에 API 사용 권한이 없습니다. 요금 페이지 에서 Professional 이상으로 업그레이드하세요.
409Idempotency-Key 가 이미 사용되었습니다. { "error": "idempotency_replay", "recordId": "<id>" } 를 반환합니다. 크레딧은 차감되지 않습니다.
413base64 디코딩 후 이미지 크기가 20MB 를 초과합니다. 압축하거나 크기를 줄여 주십시오.
422요청 본문 검증 실패(누락/잘못된 필드). 본문에 오류 위치를 담은 detail 배열이 포함됩니다.
429플랜의 속도 제한을 초과했습니다. 크레딧이 차감되지 않습니다.
500번역에 실패했습니다. 크레딧은 자동 환불됩니다.

오류 응답 형식

  • 4xx / 500: { "detail": "<message>" }
  • 422: { "detail": [{ "loc": [...], "msg": "...", "type": "..." }] }
  • 409: { "error": "idempotency_replay", "recordId": "<id>", "message": "..." }

속도 제한

API key 단위로 분당 요청 수가 제한되며, 한도는 플랜에 따라 다릅니다.

플랜제한
Free사용 불가
Starter사용 불가
Professional60 req/min
Enterprise300 req/min

더 높은 한도가 필요하다면 [email protected] 로 문의해 주십시오.

요금

호출당 advanced credit 10 포인트가 차감됩니다. 플랜과 크레딧 패키지에 대한 자세한 내용은 요금 페이지를 참고하십시오.

부록

언어 코드

sourceLanguage 에는 ISO 639-1 / BCP-47 코드 또는 auto(자동 감지)를 사용할 수 있습니다. targetLanguage 는 동일한 코드 셋을 따르되, auto 는 사용할 수 없습니다.

자주 사용되는 코드:

Code언어Code언어
auto자동 감지(source 전용)pt포르투갈어
en영어ru러시아어
zh중국어ar아랍어
zh-cn중국어 간체hi힌디어
zh-tw중국어 번체th태국어
ja일본어vi베트남어
ko한국어id인도네시아어
es스페인어tr터키어
fr프랑스어it이탈리아어
de독일어nl네덜란드어
전체 목록 — 지역별 130+ 언어

동아시아

Code언어
zh중국어
zh-cn중국어 간체
zh-tw중국어 번체
ja일본어
ko한국어
mn몽골어
jv자바어
su순다어

동남아시아

Code언어
vi베트남어
th태국어
id인도네시아어
ms말레이어
my버마어
km크메르어
lo라오어
fil필리핀어
ceb세부아노어
ilo일로카노어

남아시아

Code언어Code언어
hi힌디어ne네팔어
bn벵골어si신할라어
ur우르두어as아삼어
ta타밀어bho보즈푸리어
te텔루구어dv디베히어
ml말라얄람어doi도그리어
gu구자라트어gom콘칸어
kn칸나다어mai마이틸리어
mr마라티어lus미조어
or오디아어pa펀자브어
sa산스크리트어sd신디어

아프리카

Code언어Code언어
am암하라어kri크리오어
sw스와힐리어ln링갈라어
ha하우사어nso북소토어
yo요루바어om오로모어
zu줄루어st세소토어
xh코사어sn쇼나어
af아프리칸스어ti티그리냐어
mg말라가시어ts총가어
so소말리어ak트위어
bm밤바라어ee에웨어
ny치체와어lg간다어
ig이그보어rw키냐르완다어

유럽

Code언어Code언어
fr프랑스어lt리투아니아어
de독일어lv라트비아어
es스페인어et에스토니아어
it이탈리아어is아이슬란드어
ru러시아어sq알바니아어
pl폴란드어hy아르메니아어
uk우크라이나어az아제르바이잔어
nl네덜란드어eu바스크어
pt포르투갈어be벨라루스어
el그리스어bs보스니아어
cs체코어ca카탈루냐어
hu헝가리어co코르시카어
sv스웨덴어fy프리지아어
da덴마크어gl갈리시아어
fi핀란드어ka조지아어
no노르웨이어kk카자흐어
ro루마니아어ky키르기스어
bg불가리아어lb룩셈부르크어
hr크로아티아어mk마케도니아어
sk슬로바키아어mt몰타어
sl슬로베니아어sr세르비아어
tg타지크어tt타타르어
tk투르크멘어ug위구르어
uz우즈베크어

중동

Code언어
ar아랍어
fa페르시아어
tr터키어
he히브리어
ku쿠르드어
ckb소라니 쿠르드어
ps파슈토어

아메리카 및 오세아니아

Code언어
ay아이마라어
gn과라니어
ht아이티 크리올어
haw하와이어
qu케추아어
sm사모아어
mi마오리어

기타

Code언어
eo에스페란토어
la라틴어
cy웨일스어
ga아일랜드어
gd스코틀랜드 게일어
hmn흐몽어
yi이디시어

mode 값

mode 는 렌더링 스타일을 결정합니다. 이미지 내용에 가장 적합한 값을 선택합니다.

Value설명
general (기본)기본 모드. 별도의 렌더링을 적용하지 않습니다.
manga원본 레이아웃을 유지하며 텍스트 외곽선을 함께 표시합니다.
e-commerce원본 레이아웃을 유지하며 텍스트 외곽선은 적용하지 않습니다.
light-novel번역된 텍스트를 원본 이미지 위에 오버레이합니다.

translator 모델

translator 는 번역을 수행할 AI 모델을 지정합니다. 모든 모델은 호출당 10 포인트가 차감됩니다.

  • Grok (기본)
  • Gemini
  • Deepseek
  • ChatGPT
  • Claude

시작하기

연동할 준비가 되었다면 첫 API key 발급하기 →

목차