CycleCore Docs
API publique

Creer un produit

Contrat cible pour la creation d'un produit via l'API publique.

Creer un produit

L'endpoint de creation produit n'est pas encore expose dans la V1 publique. Cette page decrit le contrat cible a stabiliser. Utilisez-la comme reference d'implementation future, pas comme endpoint disponible en production.

Prerequis

Avant de creer un produit via l'API publique, l'organisation doit disposer:

  • D'une cle API active avec un futur scope d'ecriture, par exemple products:write.
  • D'une family existante.
  • D'une category existante.
  • Des attributes attendus par la family.

La cle API determine automatiquement l'organisation cible. Le client ne doit pas envoyer d'organizationId dans la requete.

Endpoint cible

POST /public/v1/products
Authorization: Bearer ccpk_xxx
Content-Type: application/json

Exemple de requete

{
  "familyId": "fam_123",
  "categoryId": "cat_123",
  "values": {
    "sku": "TSHIRT-BLACK-M",
    "name": "T-shirt noir taille M",
    "description": "T-shirt en coton biologique",
    "price": {
      "EUR": 29.9
    }
  }
}

Exemple de reponse cible

{
  "id": "prod_123",
  "familyId": "fam_123",
  "categoryId": "cat_123",
  "status": "draft",
  "createdAt": "2026-06-07T12:00:00.000Z"
}

Regles attendues

  • familyId doit appartenir a l'organisation de la cle API.
  • categoryId doit appartenir a la meme organisation.
  • Les cles de values doivent correspondre a des attributs publics connus.
  • Les valeurs doivent respecter le type de chaque attribut.
  • Le produit cree doit etre rattache uniquement a l'organisation de la cle API.

Erreurs frequentes

CodeCas probable
400Corps JSON invalide ou valeur incompatible avec le type d'attribut
401Cle API absente, invalide, expiree ou revoquee
403Scope d'ecriture manquant
404Family ou category introuvable dans l'organisation de la cle
409Identifiant produit ou SKU deja utilise
422Donnees valides techniquement mais non conformes aux regles metier

Statut V1

La V1 publique disponible aujourd'hui permet de lire les produits avec:

GET /public/v1/products
Authorization: Bearer ccpk_xxx

La creation sera ajoutee a la reference OpenAPI uniquement lorsque le contrat backend sera implemente et stabilise.

On this page