Quickstart
가입부터 첫 호출 결과 확인까지 5단계예요. 예제는 size=preview 를 명시해서 테스트 키로 바로 실행됩니다.
Sign up
지금 할 단계이메일로 가입하고 인증하면 조직이 자동으로 만들어져요. 조직이 크레딧과 한도의 단위입니다.
Create app
콘솔에서 앱을 만들고 쓸 상품을 고르면, 앱마다 테스트 키와 라이브 키가 따로 발급돼요.
가입 뒤 콘솔의 앱 메뉴에서 등록합니다.
Test key
인증 정보에서 pd_test_ 로 시작하는 키를 복사해요. 키 원문은 발급 직후 한 번만 보여 주니 그때 안전한 곳에 보관하세요.
아래 예제의 YOUR_TEST_KEY 자리에 복사한 키를 넣습니다.
앱을 등록하면 테스트 키를 받을 수 있어요.
First call
이미지 파일을 image_file 로 보내면 배경이 지워진 이미지가 응답으로 돌아와요. 이미지는 본문 12MB 이하로 보내 주세요.
연속으로 호출하면 약 15초, 한동안 쉬었다가 첫 호출은 약 45초 걸려요. 요청이 몰리면 2분 넘게 걸릴 수 있으니 클라이언트 시한은 150초 이상으로 설정하세요.
curl -X POST "https://openapi.pilldoc.co.kr/v1.0/removebg" \ -H "X-Api-Key: YOUR_TEST_KEY" \ -F "image_file=@product.jpg" \ -F "size=preview" \ -o result.png
import { readFile, writeFile } from "node:fs/promises"; const form = new FormData(); form.append("image_file", new Blob([await readFile("product.jpg")]), "product.jpg"); form.append("size", "preview"); const res = await fetch("https://openapi.pilldoc.co.kr/v1.0/removebg", { method: "POST", headers: { "X-Api-Key": "YOUR_TEST_KEY" }, body: form, signal: AbortSignal.timeout(150_000), }); if (!res.ok) throw new Error(await res.text()); await writeFile("result.png", Buffer.from(await res.arrayBuffer()));
import requests res = requests.post( "https://openapi.pilldoc.co.kr/v1.0/removebg", headers={"X-Api-Key": "YOUR_TEST_KEY"}, files={"image_file": open("product.jpg", "rb")}, data={"size": "preview"}, timeout=150, ) res.raise_for_status() open("result.png", "wb").write(res.content)
using var http = new HttpClient { Timeout = TimeSpan.FromSeconds(150) }; http.DefaultRequestHeaders.Add("X-Api-Key", "YOUR_TEST_KEY"); using var form = new MultipartFormDataContent(); form.Add(new ByteArrayContent(await File.ReadAllBytesAsync("product.jpg")), "image_file", "product.jpg"); form.Add(new StringContent("preview"), "size"); var res = await http.PostAsync("https://openapi.pilldoc.co.kr/v1.0/removebg", form); res.EnsureSuccessStatusCode(); await File.WriteAllBytesAsync("result.png", await res.Content.ReadAsByteArrayAsync());
Check result
성공하면 result.png 가 만들어져요. 응답 헤더에서 요청 ID와 남은 무료 호출 수를 확인합니다.
문제가 생기면 API 레퍼런스의 오류 코드를 보세요.
curl -s -D - -o result.png -X POST "https://openapi.pilldoc.co.kr/v1.0/removebg" \ -H "X-Api-Key: YOUR_TEST_KEY" \ -F "image_file=@product.jpg" \ -F "size=preview" | grep -i "^x-pd-"
// 위 요청 코드의 res 를 이어서 씁니다 console.log(res.headers.get("x-pd-request-id")); console.log(res.headers.get("x-pd-test-size")); // preview console.log(res.headers.get("x-pd-test-remaining")); // 이번 달 남은 무료 호출
# 위 요청 코드의 res 를 이어서 씁니다 print(res.headers["X-PD-Request-Id"]) print(res.headers["X-PD-Test-Size"]) # preview print(res.headers["X-PD-Test-Remaining"]) # 이번 달 남은 무료 호출
// 위 요청 코드의 res 를 이어서 씁니다 Console.WriteLine(res.Headers.GetValues("X-PD-Request-Id").First()); Console.WriteLine(res.Headers.GetValues("X-PD-Test-Size").First()); // preview Console.WriteLine(res.Headers.GetValues("X-PD-Test-Remaining").First()); // 이번 달 남은 무료 호출