# Messages sticker WhatsApp

Un message sticker contient une URL WebP publique que WhatsApp récupère au moment de l'envoi. C'est le type de média le plus simple : pas de légende, pas d'autre champ facultatif à l'envoi.

## Envoyer un sticker

Définissez `sticker.url` ; il n'y a rien d'autre à ajouter :

**TypeScript**

```typescript
const msg = await bird.whatsapp.send({
  to: "+16505551234",
  from: "+13124495648",
  sticker: { url: "https://cdn.example.com/stickers/thumbs-up.webp" },
});
console.log(msg.id, msg.status);
```

Examples: [TypeScript](/fr-fr/documentation/guides/whatsapp/message-types/stickers.ts.md) · [Python](/fr-fr/documentation/guides/whatsapp/message-types/stickers.py.md) · [Go](/fr-fr/documentation/guides/whatsapp/message-types/stickers.go.md) · [PHP](/fr-fr/documentation/guides/whatsapp/message-types/stickers.php.md) · [CLI](/fr-fr/documentation/guides/whatsapp/message-types/stickers.cli.md) · [MCP](/fr-fr/documentation/guides/whatsapp/message-types/stickers.mcp.md) · [cURL](/fr-fr/documentation/guides/whatsapp/message-types/stickers.curl.md)

`sticker` n'a pas de champ `caption`, et `animated` n'est pas un champ que vous définissez à l'envoi ; Bird ne le renvoie que sur un sticker entrant. `from` est obligatoire sur chaque message de service : un numéro appartenant à votre espace de travail, pas un numéro géré par Bird.

## Limites

| Champ            | Limite                                         | Appliquée par                                  |
| ---------------- | ---------------------------------------------- | ---------------------------------------------- |
| Taille, statique | 100 Ko                                         | WhatsApp uniquement, à la récupération (async) |
| Taille, animé    | 500 Ko                                         | WhatsApp uniquement, à la récupération (async) |
| Type de fichier  | WebP uniquement                                | WhatsApp uniquement, à la récupération (async) |
| `caption`        | champ non valide                               | Bird, à l'acceptation (`422`, rejet de schéma) |
| `url`            | absolue, `https`, a un hôte, pas d'espace brut | Bird, à l'acceptation (`422`)                  |

Bird vérifie la forme de l'URL avant toute mise en file d'attente ; il ne vérifie pas la taille réelle du fichier, son format, ni s'il est statique ou animé. Seule la récupération propre à WhatsApp au moment de l'envoi le peut. Envoyer un `caption` n'est pas une erreur de longueur ; le champ n'existe pas dans le schéma de ce type, donc il échoue en tant que propriété non reconnue. Voir dans le hub [envoyer des médias par URL](/docs/guides/whatsapp/message-types#sending-media-by-url) et [quand un média échoue](/docs/guides/whatsapp/message-types#when-media-fails).

## Lire un sticker entrant

Un sticker entrant contient un `id`, un `mime_type` et un `animated` que Bird a déterminés en récupérant le fichier. Ces trois valeurs sont absentes lors de la relecture d'un message sortant, car Bird n'a jamais récupéré ni inspecté le fichier envoyé. Voir [Recevoir des stickers WhatsApp](/docs/guides/whatsapp/receiving-whatsapp/stickers) pour la lecture entrante complète, le payload `whatsapp.received` et les points à surveiller.

## Limites et modes d'échec

- **La fenêtre de service client doit être ouverte.** Les stickers sont des messages de service, livrables uniquement dans une fenêtre ouverte ; voir dans le hub la [fenêtre de service client](/docs/guides/whatsapp/message-types#the-customer-service-window).
- **Bird rejette `http` ; WhatsApp lui-même le récupérerait.** Voir dans le hub [envoyer des médias par URL](/docs/guides/whatsapp/message-types#sending-media-by-url) pour la vérification complète de la forme.
- **Une récupération rejetée est quand même facturée.** Voir dans le hub [quand un média échoue](/docs/guides/whatsapp/message-types#when-media-fails). Le texte de rejet propre aux stickers de WhatsApp n'a pas été mesuré indépendamment ; considérez la correspondance comme déduite par symétrie plutôt que confirmée par cause.
- **`animated` est en lecture seule et n'est présent que sur un sticker entrant ou récupéré.** C'est le verdict propre à WhatsApp sur le fichier, pas quelque chose que vous pouvez déclarer. Qu'un sticker soit statique ou animé ne change que son plafond de taille ; le format WebP est requis dans les deux cas.
- **WhatsApp met en cache une URL récupérée pendant environ 10 minutes.** Renvoyer la même URL dans cet intervalle resert la première récupération ; modifiez l'URL pour en forcer une nouvelle.

## Étapes suivantes

- [Messages de service WhatsApp](/docs/guides/whatsapp/message-types) : la fenêtre de service client et le modèle commun à tous les messages de service
- [Audio](/docs/guides/whatsapp/message-types/audio) : un autre type de média sans champ de légende
- [Images](/docs/guides/whatsapp/message-types/images) : pour une photo ou un visuel avec légende
- [Envoyer des messages WhatsApp](/docs/guides/whatsapp/sending-whatsapp) : l'enveloppe de requête, le modèle `202` et les réessais sûrs

## Related resources

- [Connecting WhatsApp to Bird: from buying a number to a live channel](/learn/whatsapp/connecting-whatsapp-to-bird) (video)
- [What is the 24-hour customer service window on WhatsApp?](/explained/whatsapp/what-is-the-24-hour-customer-service-window) (answer)
- [WhatsApp message builder](/tools/whatsapp-message-builder) (tool)
- [WhatsApp](/products/whatsapp) (product)

[Get an implementation brief](/learn/workspace?topic=whatsapp)
