ReWords.AI API

자주 묻는 질문

ReWords.AI API에 관한 자주 묻는 질문 — OCR이 읽을 수 있는 것, 글꼴과 더 긴 텍스트, 텍스트 삭제, A와 B의 차이, 재시도, 결제, 프런트엔드 사용, SDK, 도움 받는 방법.

OCR

OCR은 어떤 텍스트를 읽을 수 있나요?

중국어, 영어, 일본어, 한국어와 대부분의 유럽 언어로 된 인쇄된 텍스트입니다. language를 텍스트의 주 언어로 설정하세요: en, zh, ja, ko, fr, de, es, pt, it, ru. 지역 부분은 무시되므로 pt-BR은 pt, zh-TW는 zh로 처리됩니다. 언어는 자동으로 감지되지 않습니다. language가 없거나 다른 값이면 OCR은 중국어와 영어로 읽으며(일본어도 대개 읽습니다), 한국어, 키릴 문자, 악센트가 있는 유럽 문자는 잘못 읽힙니다. 언어를 알고 있다면 일본어를 포함해 항상 language를 보내세요. 한국어 이미지에는 꼭 language: "ko"를 보내세요. 손글씨, 장식이 강한 레터링, 곡선이나 세로쓰기 텍스트는 놓치거나 여러 조각으로 나뉠 수 있으니, 이런 경우에는 직접 box를 보내세요.

texts의 한 항목은 무엇인가요?

텍스트 한 줄입니다. 단어나 문단이 아닙니다. 두 줄짜리 제목은 두 항목으로 돌아옵니다. 바꾸려면 줄마다 교체 하나씩 보내거나, box가 두 줄을 모두 덮고 to가 새 제목 전체인 교체 하나를 보내고 줄을 바꿀 곳에 \n을 넣으세요.

텍스트가 이미지와 조금 다르게 보이는 이유는?

전각 문자는 반각으로 반환됩니다. 50%OFF는 50%OFF가 되고 전각 공백은 일반 공백이 됩니다. 일부 언어는 소문자로 반환되고 (예: 프랑스어, 독일어, 러시아어) 단어 사이의 공백이 빠질 수 있습니다: 여름 세일이 여름세일로 반환될 수 있습니다. from에는 반환된 텍스트를 쓰세요. 매칭은 두 경우 모두 처리합니다(아래 참고).

OCR이 텍스트를 놓치거나 잘못 읽었어요. 어떻게 하나요?

직접 잰 box를 보내세요(이미지 참고). 교체에 box가 있으면 상자 안의 텍스트가 교체되고 from은 힌트일 뿐이라 정확히 일치하지 않아도 됩니다.

OCR을 꼭 호출해야 하나요?

아니요. box 없이 from과 to를 보내면 POST /edits가 무료로 텍스트를 찾아 줍니다. 그 경우 먼저 텍스트를 읽으므로 보통 5~20초가 걸립니다(POST /ocr와 같음). HTTP 요청에 최소 90초를 잡으세요. OCR은 10개의 작업 슬롯을 쓰지 않습니다. 사용자에게 텍스트를 보여 주거나, 고르게 하거나, 편집 비용을 내기 전에 상자를 확인하고 싶을 때만 POST /ocr를 먼저 호출하세요.

from이 한 줄의 일부일 때는?

그 부분만 바뀝니다. 50% OFF 줄에 from: "OFF", to: "ON"을 쓰면 50% ON이 됩니다. 응답의 replacements에는 줄 전체가 표시됩니다: from: "50% OFF", to: "50% ON". 이 값은 해당 줄의 OCR 결과에서 만들어지므로 소문자가 되거나 띄어쓰기가 빠질 수 있습니다(위 참고). 새 텍스트는 원래 줄의 스타일로 그려지므로 대소문자와 띄어쓰기는 이 텍스트가 아니라 이미지에서 확인하세요.

매칭은 대소문자와 앞뒤 공백을 무시합니다. from과 정확히 같은 줄이 있으면 그 줄만 바뀌고, 그것을 포함하기만 하는 줄은 그대로입니다. 그렇지 않으면 그것을 포함하는 모든 줄의 모든 위치가 바뀝니다: to가 3이면 from: "e"는 Summer Collection을 Summ3r Coll3ction으로 바꿉니다. match: "first"는 변경을 한 위치가 아니라 한 줄로 제한합니다. 정확히 제어해야 할 때는 box와 새 줄 전체를 보내세요. 아무것도 일치하지 않으면 모든 공백을 무시하고 한 번 더 시도하므로, 여름 세일로도 여름세일 줄을 찾을 수 있습니다.

이미지에 텍스트가 없어도 OCR이 차감되나요?

네. 호출은 "texts": []를 반환하고 OCR 1회로 계산됩니다. 24시간 안의 같은 이미지는 다시 차감되지 않습니다.

아랍어, 히브리어, 태국어, 힌디어는요?

지원하지 않습니다. OCR이 그런 문자로 된 줄을 반환할 수는 있지만 인식과 편집 결과는 보장되지 않습니다. 이런 문자 때문에 실패한 작업은 차감되지 않습니다.

PDF나 여러 페이지를 한 번에 보낼 수 있나요?

아니요. 요청마다 JPEG, PNG, WebP 이미지 한 장을 받습니다. 바꿀 페이지를 각각 이미지로 렌더링해 페이지마다 요청을 보내세요. 10개의 작업 슬롯까지 동시에 실행할 수 있습니다.

편집

글꼴, 색상, 크기를 고를 수 있나요?

아니요. 새 텍스트는 교체하는 텍스트의 글꼴, 색상, 크기, 효과를 그대로 따릅니다. 스타일 매개변수는 없습니다.

새 텍스트가 더 길거나 짧으면요?

이웃 텍스트를 가리지 않고 원래 텍스트 주변 공간에 맞춥니다. 아주 긴 텍스트는 작아질 수 있습니다. 가장 자연스러운 결과를 원하면 원래 길이와 비슷하게 하세요.

교체 대신 텍스트를 지울 수 있나요?

네. 텍스트를 지우려면 to를 빈 문자열로 두세요. 그 뒤의 배경이 채워집니다.

from과 to는 얼마나 길 수 있나요?

각각 최대 200 유니코드 문자입니다(이모지는 1자). to의 \n은 줄을 바꿉니다. from은 box를 보낼 때만 비워 둘 수 있습니다.

한 번의 편집으로 몇 군데를 바꿀 수 있나요?

이미지당 최대 20개 교체이며, 모두 한 작업에 들어가고 편집 1회로 차감됩니다. 같은 단어가 여러 번 나오면 match: "all"(기본값)은 모두 바꾸고 match: "first"는 위에서 아래, 왼쪽에서 오른쪽 순으로 첫 번째만 바꿉니다. 정확히 고르려면 상자를 보내세요. 같은 텍스트에 교체 두 개를 보내거나 겹치는 상자를 보내지 마세요. 하나만 적용되며 어느 것이 될지는 정해져 있지 않습니다.

응답의 replacements를 내 요청과 어떻게 맞추나요?

응답에는 바뀐 줄마다 한 항목이 요청 순서대로 들어 있습니다. box가 없는 교체가 세 줄에 일치하면 위에서 아래로 세 항목이 됩니다. 일대일로 대응시키려면 교체마다 box를 보내거나 match: "first"를 쓰세요.

텍스트가 아닌 것도 바꿀 수 있나요?

아니요. 지정한 텍스트만 바뀝니다. 로고, 얼굴, 그 밖의 사물은 의도적으로 편집하지 않습니다.

작업은 얼마나 걸리나요?

보통 1~2분입니다. 10개 중 9개는 3분 안에, 거의 모두 5분 안에 끝납니다. 응답의 estimated_seconds는 완료 예상 시간입니다. 작업은 대기열을 떠난 뒤 최대 10분 실행될 수 있고, 대기열이 30개로 가득 차 있으면 마지막 작업은 약 30분이 걸릴 수 있습니다. 모든 작업은 제출 후 60분 안에 succeeded 또는 failed가 됩니다. 그렇지 않으면 폴링을 멈추고 그 id를 적어 [email protected]로 보내 주세요. 대기열과 제한을 보세요.

결과

A와 B 중 무엇을 써야 하나요?

B는 텍스트 밖의 모든 픽셀을 업로드한 그대로 유지합니다. 상품 사진, 문서처럼 이미지의 나머지가 바뀌면 안 되는 경우에 안전한 선택입니다. A는 이미지 전체를 다시 그려 새 텍스트가 더 자연스럽게 어우러지는 경우가 많지만 다른 곳의 작은 부분이 바뀔 수 있습니다. 성공한 결과는 모두(A와 B, C(4K)가 있으면 C도) 사용자에게 보여 주고 고르게 하는 것을 권장합니다.

C는 무엇이고 왜 건너뛰었나요?

C는 4K로 생성한 AI 편집으로, 긴 변이 최대 3840 px입니다. 가로나 세로가 3:1보다 긴 이미지에서는 건너뛰며(aspect_ratio_unsupported), 따로 실패할 수도 있습니다. C 때문에 차감액이 바뀌는 일은 없습니다.

결과에 워터마크가 있나요? 얼마나 보관되나요?

워터마크는 없습니다. 결과 링크는 img.rewords.ai의 공개 JPEG 파일로 최소 7일 보관됩니다. 필요한 것은 다운로드하세요. 작업의 링크는 조회할 때마다 바뀌지 않습니다. GET /edits/{id}는 링크가 보관되는 동안 동작합니다. image_id의 업로드 이미지는 24시간 보관됩니다.

결과를 다시 편집할 수 있나요?

네. 결과의 url을 새 편집의 image_url로 넘기세요. 결과 B가 가장 좋은 출발점입니다. 새 작업이므로 다른 작업처럼 차감됩니다. 텍스트를 단계별로 바꾸거나 첫 결과에 한 군데 더 수정이 필요할 때 쓰세요.

작업을 취소할 수 있나요?

아니요, 취소 호출은 없습니다. 작업은 succeeded가 될 때만 편집 1회가 차감됩니다. 더 이상 필요 없으면 결과를 무시하세요. 제출하지 않은 작업은 비용이 없으니, 제출 전에 POST /ocr로 텍스트를 확인하세요.

작업이 실패했어요. 어떻게 다시 시도하나요?

실패한 작업은 무료입니다. 새 Idempotency-Key로 다시 제출하세요. 이전 키는 같은 실패 작업을 반환합니다. ai_generation_failed와 upstream_failed는 다시 시도하면 성공하는 경우가 많지만 content_blocked는 그렇지 않습니다.

결제

정확히 언제 차감되나요?

작업마다 편집 1회, A나 B가 성공할 때만 차감됩니다(다른 하나가 실패해도). 제출할 때 편집 1회가 예약되어 이미 대기 중인 작업이 항상 끝날 수 있게 하며, 작업이 실패하면 해제됩니다. balance와 edits_remaining에는 예약된 편집이 이미 빠져 있습니다. 가격과 결제를 보세요.

무료 테스트 키나 샌드박스가 있나요?

무료 테스트 키는 없습니다. rewords.ai에서 이미지 한 장을 무료로 편집해 품질을 확인한 뒤 Lite 팩으로 시작하세요. 실패한 작업과 거절된 요청은 절대 차감되지 않습니다.

연동

브라우저나 모바일 앱에서 API를 호출할 수 있나요?

아니요. 서버에서 호출하세요. API 키가 프런트엔드 코드나 앱 번들에 드러나면 찾은 사람 누구나 잔액을 쓸 수 있습니다. API는 CORS 헤더를 보내지 않으므로 브라우저가 직접 호출을 차단합니다.

폴링과 웹훅 중 무엇을 쓰나요?

어느 쪽이든 됩니다. 웹훅은 공개된 https 엔드포인트가 필요하고 요청을 아낄 수 있으며, 폴링은 아무것도 필요 없습니다. 엔드포인트가 다운될 수 있다면 제출 후 15분이 지나도 소식이 없는 작업은 최종 상태가 될 때까지 몇 분마다 폴링도 하세요. 나중에 도착한 웹훅은 문제가 되지 않습니다. 이미 처리한 id는 건너뛰면 됩니다. 웹훅을 보세요.

202 응답의 id를 기록과 함께 저장하세요. 웹훅의 경우 유지되는 callback_url 쿼리 문자열에 자체 참조값을 붙일 수도 있습니다: https://example.com/hooks/rewords?order=1234.

요청이 타임아웃됐어요. 작업이 만들어졌나요?

그럴 수도 있습니다. 같은 Idempotency-Key로 다시 시도하세요. 만들어졌다면 그 작업을 돌려받고 두 번 차감되지 않습니다. 오류를 보세요.

API가 예고 없이 바뀌나요?

버전은 경로에 있습니다: /v1. /v1 안에서는 추가만 합니다(새 선택 필드, reason이나 error.code의 새 값). 모르는 필드는 무시하고 알 수 없는 코드는 upstream_failed처럼 처리하세요. 클라이언트를 깨뜨릴 변경은 새 버전에 넣고, 이전 버전을 종료하기 전에 이메일로 알려 드립니다. 질문은 [email protected]로 보내 주세요.

SDK가 있나요?

아직 없습니다. openapi.yaml을 다운로드해 OpenAPI 3.1 생성기로 클라이언트를 만들거나, 예제의 완전한 Node.js와 Python 클라이언트를 복사하세요.

API 키가 유출됐어요. 어떻게 하나요?

API 키 페이지에서 폐기하세요(1분 안에 작동을 멈춥니다). 그리고 새 키를 만드세요. 모든 키가 잔액을 공유하니 이것부터 하고 그다음 GET /account를 확인하세요. 웹훅 시크릿도 유출됐다면 같은 페이지에서 재설정하세요. 인증을 보세요.

created_at과 completed_at은 어느 시간대인가요?

UTC이며, Z 접미사가 붙은 ISO 8601 형식입니다: 2026-11-04T10:00:00Z.

도움 받기

[email protected]로 보내 주시거나, 문의 페이지에서 WhatsApp과 TikTok을 이용하세요. API 질문은 이메일이 가장 빠릅니다.

요청을 찾을 수 있는 정보를 함께 보내 주세요:

  • 작업 id(edit_...) 또는 image_id, 그리고 요청한 UTC 시각
  • 사용한 키의 처음 12자(rw_live_abcd...) — 키 전체는 절대 보내지 마세요
  • 받은 error.code와 message, 또는 잘못돼 보이는 결과
  • 공유할 수 있다면 이미지와 보낸 replacements

결제 문의라면 구매 내역을 찾을 수 있도록 rewords.ai 계정 이메일 주소도 알려 주세요.

이 페이지의 내용

OCROCR은 어떤 텍스트를 읽을 수 있나요?texts의 한 항목은 무엇인가요?텍스트가 이미지와 조금 다르게 보이는 이유는?OCR이 텍스트를 놓치거나 잘못 읽었어요. 어떻게 하나요?OCR을 꼭 호출해야 하나요?from이 한 줄의 일부일 때는?이미지에 텍스트가 없어도 OCR이 차감되나요?아랍어, 히브리어, 태국어, 힌디어는요?PDF나 여러 페이지를 한 번에 보낼 수 있나요?편집글꼴, 색상, 크기를 고를 수 있나요?새 텍스트가 더 길거나 짧으면요?교체 대신 텍스트를 지울 수 있나요?from과 to는 얼마나 길 수 있나요?한 번의 편집으로 몇 군데를 바꿀 수 있나요?응답의 replacements를 내 요청과 어떻게 맞추나요?텍스트가 아닌 것도 바꿀 수 있나요?작업은 얼마나 걸리나요?결과A와 B 중 무엇을 써야 하나요?C는 무엇이고 왜 건너뛰었나요?결과에 워터마크가 있나요? 얼마나 보관되나요?결과를 다시 편집할 수 있나요?작업을 취소할 수 있나요?작업이 실패했어요. 어떻게 다시 시도하나요?결제정확히 언제 차감되나요?무료 테스트 키나 샌드박스가 있나요?연동브라우저나 모바일 앱에서 API를 호출할 수 있나요?폴링과 웹훅 중 무엇을 쓰나요?작업을 내 주문이나 사용자와 어떻게 연결하나요?요청이 타임아웃됐어요. 작업이 만들어졌나요?API가 예고 없이 바뀌나요?SDK가 있나요?API 키가 유출됐어요. 어떻게 하나요?created_at과 completed_at은 어느 시간대인가요?도움 받기