L’onglet Diffusion d’un espace de travail d’équipe Speak-Y fait deux choses quand un enregistrement est partagé dans un canal : il envoie un e-mail aux adresses que vous avez indiquées, et il envoie une requête POST signée à l’URL de votre choix. Les deux portent le même petit jeu d’informations — qui a partagé, combien de temps dure l’enregistrement, quand, et de quel enregistrement il s’agit. Ni l’un ni l’autre ne porte le résumé ou la transcription.
Ce n’est pas une fonction manquante. Le contenu des canaux est chiffré de bout
en bout : le serveur qui envoie l’e-mail et le webhook n’a jamais vu le texte.
Ce guide montre comment configurer les deux, ce qui arrive exactement dans la
boîte de réception et sur votre endpoint, comment vérifier l’en-tête
X-Speaky-Signature, et quels canaux sont concernés. Tout ce qui suit a été
vérifié dans l’app et sur le serveur le 9 octobre 2026.
Il annonce les nouveaux enregistrements aux personnes et aux systèmes qui ne suivent pas le fil du canal. Un collègue partage une réunion dans un canal ; le serveur stocke l’enregistrement chiffré, puis prévient deux destinations, si elles sont configurées :
X-Speaky-Signature.Les réglages appartiennent à un espace de travail, pas à votre compte : chaque espace de travail a ses propres destinataires et son propre webhook. Seul le propriétaire de l’espace de travail ou un administrateur peut les modifier. Les membres voient l’onglet en lecture seule, avec la mention « Only an owner or admin can change integrations. » (seul un propriétaire ou un administrateur peut modifier les intégrations).

Il vous faut l’app macOS et le rôle de propriétaire ou d’administrateur dans l’espace de travail.
Chaque bloc fonctionne sans l’autre. Pour modifier le webhook plus tard, saisissez de nouveau l’URL et un secret — le secret n’est pas prérempli, car le serveur ne le renvoie pas.

Un avis, pas un compte rendu. L’objet est « Nouvelle réunion dans Speak-Y » (ou « Nouvelle dictée dans Speak-Y » quand c’est une dictée qui a été partagée), et le corps comporte trois lignes et un bouton :
| Dans l’e-mail | Exemple |
|---|---|
| Auteur | Le nom du collègue qui a partagé l’enregistrement |
| Durée | 42 min |
| Quand | 09/10/2026 à 14:05 UTC |
| Bouton | Ouvrir dans Speak-Y — ouvre cet enregistrement dans l’app macOS |
Sous le bouton, l’e-mail le dit sans détour : « Les enregistrements sont chiffrés de bout en bout : cette notification ne contient que des métadonnées. » Le nom du canal et celui de l’espace de travail ne figurent pas non plus dans l’e-mail — ils sont chiffrés eux aussi, le serveur ne les connaît donc pas.
Deux détails à connaître avant de promettre cet e-mail à l’équipe :

Une requête POST par nouvel enregistrement, avec
Content-Type: application/json, l’en-tête
X-Speaky-Event: team_record.created et ce corps :
{
"event": "team_record.created",
"workspace_id": "5b0e7c1e-2f4d-4a57-9d0a-6f1b2c3d4e5f",
"channel_id": "c1a2b3c4-d5e6-47f8-9a0b-1c2d3e4f5a6b",
"record_id": "8F2C1D7A-3B4E-4C5D-9E6F-0A1B2C3D4E5F",
"created_by": "0d9c8b7a-6e5f-4d3c-2b1a-0f9e8d7c6b5a",
"meta": { "duration_s": 2520, "kind": "meeting" },
"server_created_at": "2026-10-09T14:05:12+00:00",
"protocol_version": 2,
"sent_at": "2026-10-09T14:05:12.480113+00:00"
}
meta.kind vaut meeting ou dictation, et meta.duration_s est la durée en
secondes. Tout le reste est un identifiant ou un horodatage. Il n’y a ni titre,
ni liste d’intervenants, ni résumé, ni nom de canal : votre endpoint apprend
que quelque chose s’est produit et où, pas ce qui a été dit.
Cela suffit pour les usages courants — une ligne dans la messagerie de
l’équipe, une ligne dans un outil de suivi, un compteur de réunions par canal.
Tenez votre propre table de correspondance entre channel_id et un nom
lisible. Notez que le webhook entrant d’une messagerie ne peut pas recevoir
cette requête telle quelle : les webhooks entrants de Slack, par exemple,
attendent un corps JSON avec un champ text, il vous faut donc un petit relais
qui vérifie la signature et reformate le message.
L’en-tête X-Speaky-Signature a la forme sha256=<hex>. La valeur est le HMAC
SHA-256 du corps brut de la requête, avec pour clé le secret que vous avez
saisi dans l’onglet Diffusion. Un récepteur en Python :
import hashlib
import hmac
def is_from_speaky(secret: str, raw_body: bytes, header: str) -> bool:
digest = hmac.new(secret.encode(), raw_body, hashlib.sha256).hexdigest()
return hmac.compare_digest(f"sha256={digest}", header)
Signez les octets exactement tels qu’ils sont arrivés. Si votre framework analyse le JSON et que vous le sérialisez de nouveau, l’ordre des clés et les espaces changent, et la signature ne correspondra plus.
Quelques propriétés de l’émetteur déterminent la façon d’écrire le récepteur :
record_id pour ignorer une requête déjà
traitée, et de sent_at pour écarter celles qui sont périmées.
Tout l’espace de travail, à une exception près. La carte de périmètre indique « Chaque nouvel enregistrement dans n'importe quel canal de cet espace déclenche un envoi », et il n’y a pas de filtre par canal. Dans un espace de travail où les canaux clients sont actifs, le point hebdo ne sera pas la seule chose annoncée.
L’exception, ce sont les canaux privés : un enregistrement partagé dans un canal privé n’est annoncé nulle part — ni e-mail, ni webhook. La carte liste les canaux que vous pouvez voir, y compris les canaux privés, marqués d’un cadenas, mais le serveur les ignore. La raison : la diffusion est configurée par un propriétaire ou un administrateur qui n’est pas forcément membre de ce canal privé ; même le fait que quelque chose y a été enregistré ne lui est pas destiné. La répartition des canaux entre publics et privés est expliquée dans qui voit quoi dans les canaux d’équipe.
Les enregistrements personnels restent en dehors de tout cela. Rien ne quitte votre bibliothèque tant que vous ne partagez pas vous-même un enregistrement dans un canal.
Parce que le serveur devrait le lire. Dans Speak-Y, l’enregistrement est chiffré sur le Mac avec une clé de canal avant d’être envoyé, et les clés de canal n’existent que sur les appareils des membres — comment fonctionne le partage en équipe chiffré de bout en bout en détaille le mécanisme. Un serveur capable de mettre le résumé dans un e-mail serait un serveur capable de lire tous les canaux.
Les outils conçus dans l’autre sens envoient bel et bien du contenu, et c’est une raison légitime de les choisir quand un résumé dans la boîte de réception compte plus que le chiffrement de bout en bout. Vérifié le 9 octobre 2026 :
meeting.transcribed porte un identifiant
de réunion, signé en HMAC SHA-256 —, mais le contenu est ensuite récupéré
via l’API de Fireflies, car le fournisseur le stocke sous forme lisible.Si vous avez besoin d’une copie lisible hors de l’app, faites-la délibérément plutôt que par notification : des notes de réunion hebdomadaire que personne n’a à rédiger montre l’export vers Confluence ou Google Drive, et le serveur MCP de Speak-Y permet à un assistant IA sur le Mac d’un membre de lire les enregistrements que ce membre peut déjà ouvrir.
Les espaces de travail d’équipe sont disponibles dans l’app Speak-Y pour macOS : en créer un demande au minimum la formule Pro, et les collègues le rejoignent gratuitement avec n’importe quelle formule. La page Speak-Y Teams montre comment fonctionnent les canaux partagés.
Non. La diffusion par e-mail envoie un avis indiquant qu’une nouvelle réunion a été partagée dans un canal : l’auteur, la durée, l’heure et un bouton Ouvrir dans Speak-Y. Les canaux sont chiffrés de bout en bout, le serveur n’a donc ni résumé ni transcription à mettre dans un e-mail. Le texte se lit dans l’app.
Une requête POST en JSON avec l’événement team_record.created et uniquement des identifiants : workspace_id, channel_id, record_id, created_by, le type d’enregistrement et sa durée dans meta, et deux horodatages. Elle ne contient ni transcription, ni résumé, ni nom de canal ou d’espace de travail.
Calculez le HMAC SHA-256 du corps brut de la requête avec le secret de votre webhook, encodez-le en hexadécimal et préfixez-le par sha256=. Comparez le résultat à l’en-tête X-Speaky-Signature avec une comparaison en temps constant, et faites-le avant d’analyser le JSON.
Chaque nouvel enregistrement partagé dans n’importe quel canal public de l’espace de travail. Il n’y a pas de filtre par canal. Les canaux privés ne sont jamais annoncés, ni par e-mail ni par webhook, et les enregistrements personnels ne quittent jamais votre bibliothèque.
Le propriétaire de l’espace de travail ou un administrateur, dans l’onglet Diffusion de la page de l’espace de travail, dans l’app macOS. Les membres voient le même onglet en lecture seule.