> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plato.ae/llms.txt
> Use this file to discover all available pages before exploring further.

# Mettre à jour une entrée CMS

> Modifiez les valeurs de champ sur une entrée CMS existante.

Utilisez les demandes de mise à jour provenant d'un code côté serveur fiable.

```text theme={null}
PATCH /api/public/cms/[modelId]/[id]
PUT   /api/public/cms/[modelId]/[id]
```

`PATCH` et `PUT` utilisent le même comportement de mise à jour.

## Exemple

```bash theme={null}
curl "https://api.plato.ae/api/public/cms/products/entry_123?fields=id,name,published" \
  -X PATCH \
  -H "Authorization: Bearer $PLATO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "values": {
      "published": false
    }
  }'
```

## Mises à jour partielles

Envoyez uniquement les champs que vous souhaitez modifier.

```json theme={null}
{
  "values": {
    "price": 42
  }
}
```

Les champs non inclus dans la requête conservent leurs valeurs existantes.

## Mises à jour de champs localisées

Les champs localisés peuvent être mis à jour dans une langue à la fois.

```json theme={null}
{
  "values": {
    "name": {
      "ar": "Classic Burger"
    }
  }
}
```

Pour les champs localisés, la mise à jour fusionne avec les valeurs de langue existantes.

## Réponse

La réponse est l'entrée mise à jour.

```json theme={null}
{
    "id": "entry_123",
    "name": {
      "en": "Classic Burger",
      "ar": "Classic Burger"
    },
  "published": false
}
```

## Validation

Les mises à jour valident :

* Clés de champ inconnues.
* Champs obligatoires.
* Types de valeur de champ.
* Objectifs relationnels.

Si un identifiant de relation n'existe pas dans l'espace de travail, Plato renvoie une erreur `400`.
