Developers

The SnapCut API

One endpoint to remove a background, one to poll the result. Keys, quotas and usage are managed from your dashboard.

Authentication

Send your key in the Authorization header. Keys are scoped per project and can be rotated at any time. Never expose a key in browser code.

Authorization: Bearer sk_live_xxxxxxxxxxxxxxxx
Content-Type: application/json

Endpoints

MethodPathDescription
POST/v1/removeSubmit an image URL or multipart file for background removal.
GET/v1/jobs/:idPoll a job for status and the resulting transparent PNG URL.
GET/v1/usageReturn credits used, credits remaining and the current plan.
GET/v1/keysList active API keys with their rate limits and last-used timestamps.

Example request

curl https://api.snapcut.ai/v1/remove \
  -H "Authorization: Bearer $SNAPCUT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "image_url": "https://cdn.example.com/shoe.jpg",
    "output_format": "png"
  }'

Example response

{
  "id": "job_8f21c0b4",
  "status": "succeeded",
  "result_url": "https://cdn.snapcut.ai/tmp/8f21c0b4.png",
  "credits_used": 1,
  "expires_at": "2026-01-02T10:04:11Z"
}

Rate limits and errors

Limits apply per API key and reset every minute.

Free

10 req / min

Pro

120 req / min

Credit packs

60 req / min

Burst window

60 seconds

400  invalid_image        File type or size rejected
401  invalid_api_key      Key missing, revoked or malformed
402  insufficient_credits Top up credits or upgrade the plan
429  rate_limited         Retry after the Retry-After header
500  processing_failed    Job failed; the credit is refunded