Exporter ses prompts Genesys Cloud en CSV avec une Function
Une Genesys Cloud Function qui exporte tous les prompts d'une org au format CSV, une ligne par prompt et une colonne par langue, exploitable directement dans un tableur.
10 juin 2026
L’API Genesys Cloud permet d’exporter ses prompts (les messages audio des parcours), mais le format JSON renvoyé est difficile à exploiter : structure imbriquée, ressources par langue, peu lisible pour un travail de relecture ou de traduction.
Cet article décrit un outil pour transformer cet export en CSV propre, déployé comme Genesys Cloud Function afin d’être accessible à la demande par n’importe quel administrateur, sans dépendance externe.
💡 Le code complet est disponible sur mon GitHub : github.com/antoningar/genesyscloud-csv-prompt-exporter. Vous pouvez le cloner et le déployer dans votre propre org.
Le problème : un JSON peu exploitable
Les prompts Genesys Cloud sont multilingues : chaque prompt possède une ressource par langue, avec son texte TTS. Récupérés via l’API, ils arrivent sous forme de JSON imbriqué parfait pour une machine, pénible pour un humain qui veut relire l’ensemble des messages, vérifier des traductions ou les partager à un métier. Ce qu’on veut vraiment, c’est un tableau : un prompt par ligne, une langue par colonne.
Le principe : appeler l’API, mettre en forme en CSV

- Récupérer les prompts la fonction s’authentifie via OAuth (client credentials) puis interroge l’
ArchitectApidu SDKpurecloud-platform-client-v2. Les prompts sont récupérés page par page (100 par page) jusqu’à épuisement, ce qui couvre les orgs avec un grand catalogue. - Normaliser les données pour chaque prompt on conserve le nom, la description et la liste des ressources (texte TTS, durée, langue). Les prompts sont triés par nom.
- Construire les colonnes de langues l’outil parcourt tous les prompts pour collecter l’ensemble des langues présentes, triées, et en fait les colonnes du CSV.
- Générer le CSV un en-tête
name, description, <langue 1>, <langue 2>…puis une ligne par prompt, chaque cellule de langue contenant le texte TTS correspondant (ou vide si la langue n’existe pas pour ce prompt). Les valeurs sont échappées proprement : guillemets remplacés, retours à la ligne aplatis, pour un CSV qui s’ouvre sans accroc dans un tableur.
Pourquoi une Genesys Cloud Function
À l’origine, c’était un simple script à lancer en local. Les Genesys Cloud Functions ont permis de l’héberger et de l’exécuter directement dans la plateforme, sans serveur ni dépendance externe à maintenir. L’export devient un service appelable à la demande : tout administrateur peut récupérer le CSV à jour quand il en a besoin.
Concrètement, le handler serverless reçoit les identifiants OAuth (gc_client_id, gc_client_secret, gc_aws_region) via les headers de l’intégration, valide leur présence, exécute l’export et renvoie le CSV 400 si les credentials manquent, 500 en cas d’erreur, 200 avec le contenu CSV sinon.
Stack technique
- Genesys Cloud Functions (handler serverless, modèle AWS Lambda)
- TypeScript pour la logique d’export et de mise en forme
- SDK purecloud-platform-client-v2 (
ArchitectApi, authentification client credentials grant, pagination) - Tests BDD avec Cucumber, packaging en
.zipuploadé dans la data action de la fonction
Le sample sur GitHub
Le code complet de la fonction est disponible en open source : github.com/antoningar/genesyscloud-csv-prompt-exporter. Le dépôt contient le handler, la logique de conversion CSV, les tests et les instructions de packaging et de déploiement comme Genesys Cloud Function.
Pour aller plus loin
Nettoyer les scripts agents Genesys Cloud avec une Function
Workflows asynchrones natifs sur Genesys Cloud
Infrastructure as Code
Mes réalisations