/api/v1/products/{id}Aggiornare un prodotto
Applica una patch a uno o più campi del prodotto. Inviate solo le chiavi che volete modificare — i campi omessi restano invariati. La semantica dell'intero array su `imageUrls` è intenzionale: il vostro CMS è l'insieme canonico delle immagini, quindi un PATCH con `imageUrls: ["a","b"]` sostituisce ciò che era presente. Per aggiungere una singola immagine senza riscrivere l'elenco, usate invece l'endpoint di caricamento multipart.
Conta come una scrittura v1. Rispetta `Idempotency-Key`. L'unicità di `model` viene riverificata quando viene modificato; `description: null` cancella la descrizione (diverso dall'omettere la chiave).
Parametri di percorso
- idobbligatorio
ObjectId
ID del prodotto.
e.g. 6650a1b2c3d4e5f6a7b8c9d0
Header
- Authorizationobbligatorio
string
`Bearer <api-key>`.
- Idempotency-Key
string
UUID v4.
Campi del corpo
- name
string (1-200)
Nome visualizzato.
- model
string (1-100)
Identificatore del modello. L'unicità viene riverificata quando viene modificato.
- description
string | null (≤ 2000)
Passate `null` per cancellare.
- defaultFieldValues
object
Sostituisce i valori iniziali per i passaporti futuri.
- imageUrls
string[] (max 20)
Sostituisce l'intero array di immagini.
- status
enum
`active` o `archived`.
- sourceLocale
string (ISO 639-1)
Aggiorna il locale di `name` / `description`.
Richiesta
curl -sS -X PATCH \
https://app.tracepass.eu/api/v1/products/6650a1b2c3d4e5f6a7b8c9d0 \
-H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Li-Ion 48V Battery Pack (revised)",
"imageUrls": ["https://cdn.example.com/new-hero.jpg"]
}'Risposta
{
"_id": "6650a1b2c3d4e5f6a7b8c9d0",
"name": "Li-Ion 48V Battery Pack (revised)",
"imageUrls": ["https://cdn.example.com/new-hero.jpg"],
"updatedAt": "2026-05-09T15:30:00.000Z"
}