Aller au contenu
Livstick Développeurs

Opérations

C’est ici que se lisent les messages d’un conteneur en mode galerie — un seul appel pour toute la plateforme, filtrable jusqu’à un conteneur ou un groupe de codes précis.

Méthode GET /messages

Scope messages:read

Liste, avec pagination, les messages de la plateforme authentifiée.

Filtrez par crid pour obtenir tous les messages d’un conteneur — c’est ainsi qu’on lit tous les messages d’un conteneur en mode galerie — ou par codeGroupId pour restreindre la liste à un groupe de codes.

Paramètres

Nom Emplacement Type Requis Description
limit Paramètre de requête integer Facultatif Nombre maximal d’éléments à renvoyer. 50 par défaut, 200 au maximum.
skip Paramètre de requête integer Facultatif Nombre d’éléments à ignorer (décalage de pagination). 0 par défaut.
crid Paramètre de requête string Facultatif Filtre les messages par crid de conteneur.
codeGroupId Paramètre de requête string Facultatif Filtre les messages par objectId de groupe de codes.
redeemCode Paramètre de requête string Facultatif Filtre les messages par code d’échange canonique.
order Paramètre de requête string Facultatif Champ de tri, préfixé par - pour un ordre décroissant. -createdAt par défaut.

Réponse

json 200
{
  "items": [
    {
      "objectId": "msg789",
      "state": "released",
      "type": 0,
      "createdAt": "2025-01-15T10:30:00.000Z",
      "crid": "ORDER-123",
      "urid": "abc123xyz9",
      "codeGroupId": "grp456",
      "videoUrl": "https://cdn.example/video.mp4",
      "thumbUrl": "https://cdn.example/thumb.jpg",
      "redeemCode": "RDM-4F2A",
      "data": { "senderName": "John" },
      "privateData": { "orderId": "12345" },
      "analysisData": { "sentiment": "positive" },
      "language": "fr"
    }
  ],
  "total": 142,
  "limit": 50,
  "skip": 0
}

Méthode GET /messages/{messageId}

Scope messages:read

Récupère le détail complet d’un message.

Renvoie data, privateData et analysisData en intégralité, ainsi que les dates de la chronologie que l’endpoint de liste omet.

Paramètres

Nom Emplacement Type Requis Description
messageId Chemin string Requis Identifiant unique du message.

Réponse

json 200
{
  "objectId": "msg789",
  "state": "released",
  "type": 0,
  "createdAt": "2025-01-15T10:30:00.000Z",
  "updatedAt": "2025-01-16T14:00:00.000Z",
  "crid": "ORDER-123",
  "urid": "abc123xyz9",
  "codeGroupId": "grp456",
  "videoUrl": "https://cdn.example/video.mp4",
  "thumbUrl": "https://cdn.example/thumb.jpg",
  "data": { "senderName": "John", "senderEmail": "john@example.com" },
  "privateData": { "orderId": "12345", "internalNote": "VIP" },
  "analysisData": { "sentiment": "positive", "score": 0.95 },
  "language": "fr",
  "scheduledAt": "2025-02-14T00:00:00.000Z",
  "activatedAt": "2025-01-15T10:31:00.000Z",
  "viewedAt": "2025-01-20T18:00:00.000Z"
}

Méthode PATCH /messages/{messageId}

Scope messages:write

Fusionne des champs dans les data et privateData d’un message.

Les clés fournies écrasent les clés existantes ; les clés omises sont conservées. Si un privateDataSchema est défini sur le groupe de codes ou la plateforme, privateData est validé par rapport à ce schéma avant l’application de la fusion.

Paramètres

Nom Emplacement Type Requis Description
messageId Chemin string Requis Identifiant unique du message.
data Corps object Facultatif Fusionné dans message.data.
privateData Corps object Facultatif Fusionné dans message.privateData, après validation par le schéma du groupe de codes ou de la plateforme s’il en existe un.

Réponse

json 200
{
  "result": "ok"
}