Générations d'images
Transformez une photographie déjà envoyée : aménagez une pièce vide, retirez le désordre, ou corrigez la façon dont la photo a été prise. Chaque requête est mise en file et produite en arrière-plan.
/v1/api/generations/kindsimages:writeLister ce qui peut être généré
Les transformations disponibles, et ce que fait chacune.
Servi depuis la liste même contre laquelle l'API valide, il ne peut donc pas prendre du retard. Il nomme aussi ce qui n'est délibérément pas disponible et pourquoi, ce qui est plus utile qu'une absence qu'il faut déduire.
Réponse
{
"data": {
"kinds": [
{
"kind": "virtual_staging",
"description": "Furnish an empty room in a chosen style, leaving the architecture untouched."
},
{
"kind": "decluttering",
"description": "Remove personal clutter from a room without changing the furniture or the fabric of the building."
},
{
"kind": "enhancement",
"description": "Correct exposure, white balance, and straightness, without altering what the photograph shows."
}
],
"not_available": [
{
"kind": "floorplan_render",
"reason": "Named in the schema and not implemented. Rendering a floor plan needs a provider we have not integrated, and a plausible but wrong plan of somebody's home is worse than none."
}
]
}
}https://api.skautik.com/v1/api/generations/kinds
GET /v1/api/generations/kinds HTTP/1.1
Host: api.skautik.com
Authorization: Bearer sk_live_…/v1/api/generationsimages:writeDemander une génération
Mettez en file la transformation de l'une de vos images de bien.
Renvoie immédiatement une génération en file d'attente. Interrogez l'endpoint de récupération, ou abonnez-vous à un webhook, plutôt que de garder la requête ouverte. L'image source doit déjà appartenir à l'un de vos biens : il n'existe aucun moyen de soumettre une URL arbitraire, et c'est délibéré.
Champs du corps
| Nom | Type | Description |
|---|---|---|
kindobligatoire | enum | La transformation à appliquer. floorplan_render est nommé dans le schéma et n'est pas implémenté ; le demander est refusé plutôt que suivi d'un plan inventé. virtual_staging | decluttering | enhancement exemple : virtual_staging |
source_image_idobligatoire | string | L'image à transformer. Elle doit appartenir à l'un de vos propres biens ; tout le reste répond 404, comme une image qui n'existe pas. exemple : img_ce1c9e04db6140eda7c6934af60daebb |
room_type | string | Pour virtual_staging : de quelle pièce il s'agit. Améliore nettement le résultat. Par défaut, une pièce générique. exemple : living room |
style | string | Pour virtual_staging : le style d'ameublement. Par défaut, contemporain. exemple : scandinavian |
prompt | string | Jusqu'à 500 caractères d'indications supplémentaires. Elles s'ajoutent à l'instruction du type choisi et ne la remplacent jamais : impossible donc de faire faire au modèle quelque chose de sans rapport. exemple : A bright Scandinavian living room with oak floors and a linen sofa |
Corps de la requête
{
"kind": "virtual_staging",
"source_image_id": "img_ce1c9e04db6140eda7c6934af60daebb",
"room_type": "living room",
"style": "scandinavian"
}Réponse
{
"data": {
"id": "gen_41bd169388ff4bee8706b822e4def3c5",
"kind": "virtual_staging",
"status": "queued",
"property_id": "prop_f06bd367019344dd91b559046f8e0d4c",
"source_image_id": "img_ce1c9e04db6140eda7c6934af60daebb",
"style": "scandinavian",
"room_type": "living room",
"created_at": "2026-08-13T14:39:51Z"
}
}Réponses notables
- 404
- L'image source n'existe pas, ou n'appartient pas à l'un de vos biens. Les deux sont indiscernables à dessein.
https://api.skautik.com/v1/api/generations
POST /v1/api/generations HTTP/1.1
Host: api.skautik.com
Authorization: Bearer sk_live_…
Content-Type: application/json
{
"kind": "virtual_staging",
"source_image_id": "img_ce1c9e04db6140eda7c6934af60daebb",
"room_type": "living room",
"style": "scandinavian"
}/v1/api/generations/{generation_id}images:writeRécupérer une génération
Statut, et l'image une fois prête.
Passe par en file, en cours, puis terminée ou échouée. Une génération échouée porte la raison, y compris lorsque le modèle a refusé plutôt qu'échoué : ce sont deux problèmes différents et un seul mérite une nouvelle tentative.
Paramètres de chemin
| Nom | Type | Description |
|---|---|---|
generation_idobligatoire | string | Identifiant de la génération. exemple : gen_5c1e9a2b3d |
Réponse
{
"data": {
"id": "gen_41bd169388ff4bee8706b822e4def3c5",
"kind": "virtual_staging",
"status": "completed",
"property_id": "prop_f06bd367019344dd91b559046f8e0d4c",
"source_image_id": "img_ce1c9e04db6140eda7c6934af60daebb",
"style": "scandinavian",
"room_type": "living room",
"image_url": "https://images.skautik.com/generations/…/41bd1693.jpg",
"created_at": "2026-08-13T14:39:51Z",
"finished_at": "2026-08-13T14:40:07Z"
}
}https://api.skautik.com/v1/api/generations/{generation_id}
GET /v1/api/generations/gen_5c1e9a2b3d HTTP/1.1
Host: api.skautik.com
Authorization: Bearer sk_live_…/v1/api/generationsimages:writeLister les générations
Requêtes récentes de votre organisation, de la plus récente à la plus ancienne.
https://api.skautik.com/v1/api/generations
GET /v1/api/generations HTTP/1.1
Host: api.skautik.com
Authorization: Bearer sk_live_…