Content Type

Dernière mise à jour : 3 juillet 2026

La CDA (Content Delivery API) est une API en lecture seule qui transmet les ressources publiées aux visiteurs publics. Cette page traite de la manière de consulter un Content Type publié, c'est-à-dire le modèle (schéma) que suit un Content. En lisant via la CDA quels champs ce modèle possède et quels sont, pour chaque champ, le type, le caractère multilingue, le caractère obligatoire et les règles de validation, vous pouvez connaître à l'avance la forme des Content publiés qui suivent ce modèle.

La CDA ne dispose que d'endpoints de consultation (GET) ; la création, la modification et la publication d'un Content Type relèvent de CMA Content Type. Pour les comportements communs de la CDA, tels que l'authentification et le modèle de transmission par publication (instantané de publication, revision, visibilité des seuls éléments publiés), consultez l'Aperçu de la CDA. Comme un Content Type est le schéma du modèle, sa consultation n'accepte pas de paramètre locale.

Structure de la ressource

Voici la forme sous laquelle la CDA transmet, lors d'une consultation unitaire, le Content Type publié « Produit » du Space de démonstration. Outre sys (propriétés système), il possède des propriétés de contenu telles que name, displayField, publishWithAuthor et fields.

{
  "sys": {
    "id": "3trmXRLdJF4GBlAjtcuoZ7Pnxj8dlA",
    "type": "ContentType",
    "space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
    "createdAt": "2026-06-14T17:04:46.846Z",
    "updatedAt": "2026-06-17T03:13:49.943Z",
    "revision": 7
  },
  "name": "Produit",
  "displayField": "productName",
  "fields": [
    { "id": "5n06s7ocmwdi", "name": "Nom du produit", "apiName": "productName", "type": "ShortText", "localized": true, "required": true, "validations": [], "disabled": false },
    { "id": "1gecyz8g4llwf", "name": "Prix", "apiName": "price", "type": "Long", "localized": false, "required": false, "validations": [], "disabled": false },
    { "id": "3ow4popgz54zg", "name": "Description", "apiName": "description", "type": "RichText", "localized": true, "required": false, "validations": [], "disabled": false },
    { "id": "2alxdptmdub1s", "name": "Photo", "apiName": "photo", "type": "Refer", "localized": false, "required": false, "validations": [], "disabled": false, "targetType": "Media" },
    {
      "id": "2a80lehazfx3t",
      "name": "Marque",
      "apiName": "brand",
      "type": "Refer",
      "localized": false,
      "required": false,
      "validations": [
        { "referContentType": [ { "sys": { "id": "3trmXRM3RqbgSnifyg7OveRYWnJWEG", "type": "Refer", "targetType": "ContentType" } } ] }
      ],
      "disabled": false,
      "targetType": "Content"
    }
  ],
  "publishWithAuthor": false
}

Clés principales :

  • sys.id : identifiant unique du Content Type. Il s'insère dans le {contentTypeId} du chemin de consultation unitaire.
  • sys.revision : version au moment de la mise en ligne. La CDA ne contient pas la version de gestion, donc la seule valeur indiquant la version publiée est revision.
  • name : nom du Content Type (par exemple Produit).
  • displayField : apiName du champ qui représentera chaque Content dans la liste du studio de contenu (par exemple productName).
  • publishWithAuthor : indique si les informations sur l'auteur sont incluses lors de la publication d'un Content (dans l'exemple, false).
  • fields : liste des champs définis par ce modèle. La structure de chaque élément est décrite ci-dessous, dans Champs.

Propriétés système (sys)

Le sys d'un Content Type publié ne contient que les propriétés relatives à l'instantané de publication. space, createdBy et updatedBy apparaissent sous la forme Refer ({ "sys": { "id", "type": "Refer", "targetType" } }).

PropriétéTypeDescription
idstringIdentifiant unique de la ressource.
typestringType de ressource. Pour un Content Type, toujours "ContentType".
spaceRefer<Space>Le Space auquel appartient ce Content Type.
createdAtstring (date-time)Date de création.
updatedAtstring (date-time)Date de dernière modification.
revisionintegerVersion au moment de la mise en ligne. À chaque publication, la version de ce moment y est consignée.
createdByRefer<User>Utilisateur qui a créé la ressource. Inclus uniquement lorsque le publishWithAuthor du Content Type est activé.
updatedByRefer<User>Dernier utilisateur ayant modifié la ressource. Inclus uniquement lorsque publishWithAuthor est activé.

Comme il s'agit d'un instantané de publication, les version, status, publish et archive présents dans le sys de la CMA n'y figurent pas. La seule valeur indiquant la version publiée est revision.

Champs

fields est la liste des champs définis par ce Content Type. Chaque élément possède la structure suivante (FieldDefinition).

CléTypeDescription
idstringIdentifiant unique du champ.
namestringNom du champ affiché dans le studio de contenu (par exemple Nom du produit).
apiNamestringClé désignant ce champ dans l'API. C'est aussi avec cette clé que l'on lit la valeur dans les fields d'un Content publié.
typestring (enum)Type du champ. Voir Types de champ (type) ci-dessous.
localizedbooleanIndique si le champ peut avoir des valeurs multilingues.
requiredbooleanIndique si la saisie est obligatoire.
validationsarrayListe des règles de validation appliquées à la valeur. Tableau vide [] s'il n'y a aucune règle.
disabledbooleanIndique si le champ est désactivé.
targetTypestring (enum)Uniquement lorsque type vaut Refer. Indique si la cible référencée est un Content ou un Media.
itemsobjectUniquement lorsque type vaut Array. Définition de l'élément du tableau (élément Refer ou élément ShortText).

Types de champ (type)

Le type détermine la manière dont la valeur est stockée et consultée. Certains types ont un comportement de recherche différent.

typeSignificationRemarque
ShortTextTexte court sur une seule ligne.Adapté à la recherche par mot-clé exact.
LongTextTexte de corps long.Prend en charge la recherche de similarité en texte intégral (full-text).
RichTextCorps avec mise en forme.N'est pas indexé pour la recherche ; sert à représenter la mise en forme.
LongEntier.Par exemple le prix price.
NumberNombre réel (décimales comprises).
BooleanVrai/faux.
DateDate et heure.
JsonStructure JSON arbitraire.
LocationPosition (coordonnées).
ReferRéférence pointant vers une autre ressource.targetType désigne Content ou Media.
ArrayTableau contenant plusieurs valeurs.Accompagné de items pour la définition de l'élément.

Dans l'exemple « Produit », Nom du produit est de type ShortText, Prix de type Long, Description de type RichText, Photo de type Refer (targetType: Media) et Marque de type Refer (targetType: Content). Le champ Marque se limite, via le referContentType de validations, à ne référencer que les Content d'un Content Type précis (ici « Marque », dont le sys.id est 3trmXRM3RqbgSnifyg7OveRYWnJWEG).

Le catalogue complet des clés de règles de validation utilisables dans validations est récapitulé dans CMA Content Type. L'instantané de publication transmis par la CDA reprend telle quelle cette même structure.

API

L'URL de base des deux endpoints ci-dessous est https://cda.weegloo.com/v1, et un jeton Bearer authentifiant la CDA est requis dans l'en-tête Authorization. Comme un Content Type est un modèle (schéma) et non un objet pour lequel on choisit une langue, sa consultation, contrairement à celle d'un Content, n'accepte pas de paramètre de requête locale.

  • CMA Content Type : l'API de gestion pour créer et modifier un Content Type (spécification complète des types de champ et des validations incluse).
  • CDA Content : recevoir les Content publiés qui suivent ce modèle.
  • États et publication (concept) : la signification de la publication et des versions.