Documentation API de suppression de fond
Envoyez une image et recevez un PNG transparent avec une seule clé API.
https://api.remox.ai/v1.0/removebgDémarrage rapide
Demander l’accès API →Conservez la clé sur votre serveur, jamais dans un navigateur ou une application publique. Sa rotation préserve votre identité et votre solde.
REMOX_API_KEYUtilisez JPG, PNG ou WebP statique. Redimensionnez avant envoi ; l’API ne redimensionne pas les images.
Exemples de code →Authentification
Conservez la clé sur votre serveur, jamais dans un navigateur ou une application publique. Sa rotation préserve votre identité et votre solde.
| Champ | Valeur acceptée |
|---|---|
| X-API-Key | remox_live_… / remox_test_… |
| Secret / X-Subuid / X-Platform-User / X-RapidAPI-User | — |
| image_url / Base64 / shadow / refine | — |
Exemples de code
# Set REMOX_API_KEY in your environment first.
curl 'https://api.remox.ai/v1.0/removebg' \
-H "X-API-Key: $REMOX_API_KEY" \
-H 'Idempotency-Key: image-0001' \
-F 'image_file=@/path/to/input.jpg' \
-F 'size=auto' \
--max-time 75 --fail-with-body \
-D response-headers.txt -o remox-result.png
# On non-2xx, the output file contains error JSON, not a PNG.Utilisez JPG, PNG ou WebP statique. Redimensionnez avant envoi ; l’API ne redimensionne pas les images.
input.jpg → image/jpeg · PNG → image/png · WebP → image/webpRéférence des requêtes
POST /v1.0/removebg · multipart/form-dataUtilisez JPG, PNG ou WebP statique. Redimensionnez avant envoi ; l’API ne redimensionne pas les images.
| Champ | Obligatoire | Valeur acceptée |
|---|---|---|
| image_file | ✓ | JPG / PNG / WebP · ≤20 MiB (20 × 1024 × 1024 bytes) · max(width, height) ≤1920 px · min(width, height) ≤1080 px |
| size | — | auto |
| response_format | — | image / json |
| Idempotency-Key | — | 8–128 · A–Z a–z 0–9 . _ : - |
Réponses
200 · PNG
response_format=image · Content-Type: image/pngX-Request-ID · X-Task-ID · X-Idempotency-Key
200 · JSON
response_format=json{
"requestId": "req_…",
"taskId": "task_…",
"data": {
"result_url": "https://storage.example/result.png?signature=…&expires=…"
}
}data.result_url ≠ result_b64Délais et nouvelles tentatives
Après 60 secondes, une réponse 504 peut indiquer une tâche en cours. Consultez son état ou réessayez avec la même image et Idempotency-Key pour éviter une double facturation.
GET /v1.0/tasks/{taskId}{
"requestId": "req_…",
"taskId": "task_…",
"status": "completed",
"progress": null,
"pollAfterMs": 2000,
"result": {
"downloadPath": "/v1.0/tasks/task_…/result",
"mimeType": "image/png",
"expiresAt": "2026-10-17T00:00:00.000Z"
}
}GET /v1.0/tasks/{taskId}/result
GET /v1.0/tasks/{taskId}/result?response_format=jsoncreating → queued → processing → completed / failed / timed_out
Retry-After · pollAfterMs: 2000 · X-API-Key
Compte et crédits
Les crédits sont réservés à la création, consommés en cas de succès et libérés en cas d’échec ou d’expiration. Un délai synchrone ne les libère pas.
| Champ | Valeur acceptée |
|---|---|
| credits | available / reserved / consumed |
| GET /v1.0/account | X-API-Key |
| POST → AI | 300 ms |
| POST → 504 | 60 s |
| task → timed_out | 35 min |
| task_expired | 90 d |
| result_expired (Worker) | 7 d |
Erreurs
Vérifiez errors et l’état avant de réessayer. Conservez requestId pour le support ; ne journalisez jamais votre clé.
{
"requestId": "req_…",
"retryable": false,
"errors": [
{
"code": "invalid_credentials",
"title": "Invalid API key."
}
]
}| HTTP | errors[].code | Erreurs |
|---|---|---|
| 400 | invalid_request, invalid_file | Requête invalide |
| 400 | invalid_size, invalid_response_format | Requête invalide |
| 400 | invalid_idempotency_key, invalid_subject | Requête invalide |
| 402 | insufficient_credits | Crédits insuffisants |
| 403 | invalid_credentials | Accès refusé |
| 403 | platform_disabled, platform_paused, scope_denied | Accès refusé |
| 404 | not_found, upload_not_found | Introuvable |
| 409 | idempotency_conflict | Conflit ou tâche inachevée |
| 409 | result_not_ready | Conflit ou tâche inachevée |
| 410 | task_expired, result_expired | Expiré |
| 413 | file_too_large | Fichier trop volumineux |
| 415 | invalid_image, animated_image_unsupported | Image non prise en charge |
| 422 | image_dimensions_exceeded | Dimensions dépassées |
| 429 | rate_limit_exceeded, hourly_quota_exhausted, inflight_limit_exceeded | Limite de requêtes atteinte |
| 502 | upload_failed, upstream_rejected, upstream_unavailable | Échec du service amont |
| 502 | create_result_unknown, remote_service_error, invalid_result, result_unavailable, task_failed, task_timeout | Échec du service amont |
| 503 | service_not_configured, credit_price_not_configured, server_error | Service indisponible |
| 504 | sync_timeout | Délai synchrone dépassé |
retryable: 429 / 5xx
Après 60 secondes, une réponse 504 peut indiquer une tâche en cours. Consultez son état ou réessayez avec la même image et Idempotency-Key pour éviter une double facturation.
Compatibilité
Suppression de fond avec clé seule uniquement. Toutes les options de remove.bg ne sont pas implémentées. Les URL JSON sont une extension REMOX.
Demander l’accès API →