---
title: "Mettre à jour le BROUILLON du site vitrine (ne publie pas)"
method: PUT
path: "/showcase/draft"
tags: ["Showcase"]
---

# Mettre à jour le BROUILLON du site vitrine (ne publie pas)

`PUT /showcase/draft`

## Request

- Base URL: `https://api.swipify.fr/api/v1`
- URL: `https://api.swipify.fr/api/v1/showcase/draft`
- Auth: API key in header `X-API-Key`

Écrit le brouillon (`draftConfig`) UNIQUEMENT, ne publie jamais. Le corps est un
patch partiel fusionné dans le brouillon courant (à défaut le live), puis re-validé
(allowlist stricte : les champs inconnus sont ignorés). La PUBLICATION reste une
action humaine dans l'application. Scope requis : `showcase:draft`.

## Request body

- SiteConfig: Configuration du site vitrine. Champs principaux ci-dessous ; structure complète (réalisations, témoignages, FAQ, horaires, polices, réseaux sociaux…) gérée par une allowlist stricte côté serveur : tout champ inconnu est ignoré à l'écriture. En lecture, le logo (data URI, jusqu'à ~6 Mo) est remplacé par `hasLogo`.
  - `enabled` boolean
  - `domain` string, nullable
  - `hasLogo` boolean
  - `slogan` string, nullable
  - `hero` object
    - `title` string
    - `subtitle` string
    - `layout` 'standard' | 'overlay'
  - `about` object
    - `content` string, nullable
  - `services` object[]
    - `title` string
    - `description` string
  - `contact` object
    - `email` string
    - `phone` string
    - `address` string
  - `seo` object
    - `metaTitle` string, nullable
    - `metaDescription` string, nullable
  - `colors` object
    - `primary` string, nullable
    - `secondary` string, nullable

## Response `200`

Brouillon enregistré (non publié)

- object
  - `success` boolean
  - `draft` boolean
  - `published` boolean

## Other responses

- `400`: Données invalides
- `401`: Échec d'authentification : clé API manquante (`missing_api_key`) ou invalide/révoquée/expirée (`invalid_api_key`). Le client doit présenter une clé valide.
- `403`: Clé authentifiée mais non autorisée : scope insuffisant pour cette route (`scope_required`), ou organisation sans abonnement Pro actif (`pro_required`). `GET /me` reste accessible sans Pro pour diagnostiquer la clé.

---

[API](https://skmtc.dev/swipify/apis/swipify-api-publique.md) · [All operations](https://skmtc.dev/swipify/apis/swipify-api-publique/llms.txt) · [OpenAPI document](https://skmtc.dev/swipify/apis/swipify-api-publique/revisions/44c17201b479?raw)
