Tutoriel API VectoSolve : automatiser la vectorisation d'images pour les développeurs
Apprenez à intégrer l'API VectoSolve dans vos applications. Guide complet avec exemples de code en Node.js, Python et PHP, plus workflows d'automatisation.
Founder of VectoSolve
Self-taught developer, founder and sole developer of VectoSolve since 2024. He builds the conversion engine and the cutting, embroidery and 3D printing exports.
How this article was made: drafted with AI assistance, then edited and fact-checked before publication. About the author
Key Takeaways
- L'API VectoSolve convertit les images raster en SVG propres de manière programmatique à $0.20 par conversion (les crédits n'expirent jamais)
-
Point d'entrée REST simple :
POST https://vectosolve.com/api/v1/vectorizeavec authentification Bearer token et multipart form-data -
Ajoutez
removeBackground=truepour $0.07 supplémentaires afin de supprimer automatiquement les arrière-plans avant la vectorisation - La limite de débit est de 60 requêtes/minute — utilisez le backoff exponentiel et la mise en file d'attente par lots pour les gros volumes
- S'intègre avec n8n, Zapier et les plateformes d'agents IA pour des workflows de vectorisation entièrement automatisés
Que vous construisiez un produit SaaS, automatisiez des workflows de design ou traitiez des milliers d'images, l'API VectoSolve vous permet de convertir des images raster en vecteurs SVG propres de manière programmatique. Ce guide couvre tout, de votre premier appel API aux intégrations avancées.
Pourquoi utiliser l'API VectoSolve ?
La conversion manuelle d'images ne passe pas à l'échelle. L'API VectoSolve permet :
- Traitement par lots — Convertir des centaines d'images automatiquement
- Intégration SaaS — Ajouter la vectorisation à votre produit
- Automatisation de workflows — Connecter avec n8n, Zapier ou OpenClaw
- Qualité constante — Les mêmes résultats alimentés par l'IA à chaque fois
Premiers pas
Étape 1 : Créer votre clé API
Rendez-vous sur votre tableau de bord des clés API et cliquez sur "Créer une nouvelle clé". Donnez-lui un nom descriptif comme "Production" ou "Test".
Important : Copiez votre clé API immédiatement — elle ne sera plus affichée pour des raisons de sécurité.
Étape 2 : Ajouter des crédits
Chaque conversion API coûte $0.20. Abonnez-vous depuis la page tarifs. Les crédits n'expirent jamais, achetez ce dont vous avez besoin.
Étape 3 : Effectuer votre première requête
Le point d'entrée API accepte les requêtes POST avec votre image en form-data :
POST https://vectosolve.com/api/v1/vectorize
Authorization: Bearer YOUR_API_KEY
Content-Type: multipart/form-data
Pro Tip: Testez votre clé API avec une simple commande cURL avant de construire votre intégration. Cela confirme que votre clé est valide, que vous avez des crédits et que le point d'entrée est accessible depuis votre environnement. Cela prend 10 secondes et économise des heures de débogage.
Exemples de code
cURL
curl -X POST https://vectosolve.com/api/v1/vectorize \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@image.png" \
-F "removeBackground=false"
Node.js
const FormData = require('form-data');
const fs = require('fs');
const fetch = require('node-fetch');
async function vectorize(imagePath, apiKey) {
const formData = new FormData();
formData.append('file', fs.createReadStream(imagePath));
formData.append('removeBackground', 'false');
const response = await fetch('https://vectosolve.com/api/v1/vectorize', {
method: 'POST',
headers: {
'Authorization': `Bearer ${apiKey}`,
},
body: formData,
});
const result = await response.json();
if (result.success) {
console.log('SVG URL:', result.svgUrl);
console.log('Credits remaining:', result.credits.remaining);
return result.svg;
} else {
throw new Error(result.error);
}
}
// Usage
vectorize('./logo.png', 'YOUR_API_KEY');
Python
import requests
def vectorize(image_path, api_key):
url = "https://vectosolve.com/api/v1/vectorize"
with open(image_path, 'rb') as f:
files = {'file': f}
data = {'removeBackground': 'false'}
headers = {'Authorization': f'Bearer {api_key}'}
response = requests.post(url, files=files, data=data, headers=headers)
result = response.json()
if result.get('success'):
print(f"SVG URL: {result['svgUrl']}")
print(f"Credits remaining: {result['credits']['remaining']}")
return result['svg']
else:
raise Exception(result.get('error'))
# Usage
svg = vectorize('./logo.png', 'YOUR_API_KEY')
PHP
<?php
function vectorize($imagePath, $apiKey) {
$url = 'https://vectosolve.com/api/v1/vectorize';
$curl = curl_init();
$postFields = [
'file' => new CURLFile($imagePath),
'removeBackground' => 'false'
];
curl_setopt_array($curl, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $postFields,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiKey
]
]);
$response = curl_exec($curl);
curl_close($curl);
$result = json_decode($response, true);
if ($result['success']) {
echo "SVG URL: " . $result['svgUrl'] . "\n";
return $result['svg'];
} else {
throw new Exception($result['error']);
}
}
// Usage
$svg = vectorize('./logo.png', 'YOUR_API_KEY');
?>
A Full Year of Conversions for $49
Starter Annual: 25 conversions every month, $49 for the whole year. That is about $4.08 a month · Cancel anytime
Get the Annual DealFormat de réponse API
Une réponse réussie ressemble à ceci :
{
"success": true,
"svg": "<svg xmlns=\"http://www.w3.org/2000/svg\"...>",
"svgUrl": "https://vectosolve.com/api/files/abc123.svg",
"backgroundRemoved": false,
"credits": {
"cost": 0.20,
"remaining": 9.80
}
}
Gestion des erreurs
L'API retourne des codes de statut HTTP standards :
| Code | Signification | Solution |
|---|---|---|
| 401 | Clé API invalide | Vérifiez votre header Authorization |
| 402 | Crédits insuffisants | Achetez plus de crédits |
| 403 | Abonnement requis | Mettez à niveau votre plan |
| 429 | Limite de débit dépassée | Attendez et réessayez (60 req/min) |
| 500 | Erreur serveur | Réessayez ou contactez le support |
"Les meilleures API sont celles qui ne vous gênent pas. Envoyez un fichier, récupérez un SVG — pas de configuration, pas de réglages de paramètres.
Avancé : Suppression d'arrière-plan
Ajoutez removeBackground=true pour supprimer automatiquement les arrière-plans avant la vectorisation. Cela coûte $0.07 supplémentaires par requête :
curl -X POST https://vectosolve.com/api/v1/vectorize \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "file=@photo.jpg" \
-F "removeBackground=true"
Free SVG Tools for Crafters
Design Checker · Color Separator · Mat Preview · Offset Generator · Text to SVG
Check Your SVG FreeIntégrations d'automatisation
Workflow n8n
n8n est un puissant outil d'automatisation de workflows. Pour intégrer VectoSolve :
- Ajoutez un nœud HTTP Request
- Réglez la méthode sur POST
- URL :
https://vectosolve.com/api/v1/vectorize - Authentification : Header Auth
- Nom du header :
Authorization - Valeur du header :
Bearer YOUR_API_KEY - Type de contenu du corps : Form-Data
- Ajoutez le paramètre
fileavec votre entrée binaire
Zapier
Utilisez "Webhooks by Zapier" pour connecter VectoSolve à plus de 5 000 apps :
- Ajoutez une action Webhooks by Zapier
- Choisissez la requête POST
- URL :
https://vectosolve.com/api/v1/vectorize - Ajoutez le header :
Authorization: Bearer YOUR_API_KEY - Type de payload : Form
- Mappez votre champ fichier depuis le déclencheur
OpenClaw / Agents IA
Pour les outils d'automatisation alimentés par l'IA comme OpenClaw :
- Créez une clé API dans votre tableau de bord VectoSolve
- Ajoutez un nouvel outil HTTP dans votre agent IA
- Configurez la requête POST comme indiqué ci-dessus
- Parsez la réponse JSON pour extraire
svgousvgUrl
Pour les gros volumes par lots (1 000+ images), implémentez une architecture basée sur une file d'attente : poussez les requêtes de conversion dans une file, traitez-les avec des workers respectant la limite de débit (max 60/min), et stockez les résultats dans votre propre stockage. Cela prévient les timeouts et assure que chaque image est traitée de manière fiable.
Limites de débit et bonnes pratiques
- Limite de débit : 60 requêtes par minute
- Taille max de fichier : 5 Mo
- Formats supportés : PNG, JPG, JPEG, WEBP, GIF
- Crédits : N'expirent jamais
Conseils pour le traitement par lots :
- Implémentez le backoff exponentiel pour les limites de débit
- Mettez les requêtes en file et traitez par lots de 50
- Mettez en cache les résultats pour éviter de reconvertir la même image
- Utilisez les webhooks pour les gros volumes
Questions fréquentes
Combien coûte l'API ?
Chaque conversion coûte $0.20. La suppression d'arrière-plan ajoute $0.07. Achetez des crédits en gros pour économiser — ils n'expirent jamais.
Quels formats d'image sont supportés ?
PNG, JPG, JPEG, WEBP et GIF. La taille maximale de fichier est de 5 Mo.
Les crédits expirent-ils ?
Non ! Une fois achetés, les crédits restent sur votre compte pour toujours jusqu'à utilisation.
Quelle est la limite de débit ?
60 requêtes par minute. Pour des limites plus élevées, contactez-nous pour des plans entreprise.
Puis-je utiliser l'API dans des produits commerciaux ?
Oui ! Vous pouvez intégrer l'API VectoSolve dans vos applications commerciales, produits SaaS ou projets clients.
A Full Year of Conversions for $49
Starter Annual: 25 conversions every month, $49 for the whole year. That is about $4.08 a month · Cancel anytime
Get the Annual DealBesoin d'aide ?
Consultez ces ressources :
- Tableau de bord des clés API — Gérez vos clés et consultez l'utilisation
- FAQ — Réponses aux questions courantes
- Tarifs — Plans mensuels et annuels
Prêt à commencer ? Obtenez votre clé API et convertissez votre première image en quelques secondes !
| Paramètre API | Type | Par défaut | Description |
|---|---|---|---|
| image | File (multipart) | Requis | PNG, JPG ou WebP jusqu'à 10 Mo |
| removeBackground | Boolean | false | Suppression IA de l'arrière-plan avant vectorisation |
| colorMode | String | "color" | "color", "grayscale" ou "blackwhite" |
| detailLevel | String | "medium" | Complexité des chemins : "low", "medium" ou "high" |
| outputFormat | String | "svg" | Format de sortie : "svg" ou "eps" |
Sources et lectures complémentaires
- MDN Web Docs — Fetch API — Référence pour effectuer des requêtes HTTP avec multipart form-data, utilisée dans les exemples d'intégration API
- Google AI Blog — Image Processing APIs — Perspectives sur le traitement d'images par IA, les patterns de design d'API REST et les architectures cloud scalables
- Smashing Magazine — API Integration — Guides développeurs pour consommer des API REST en Node.js, Python et JavaScript frontend
- W3C SVG 2 Specification — Standard SVG officiel pour comprendre le format de sortie des réponses API de vectorisation