Documentation API

Welcome

Bienvenue dans l'univers de Raisetalk, une plateforme conçue pour transformer vos interactions en informations exploitables. Notre API, accessible sur https://api.raisetalk.com vous permet d'intégrer facilement nos fonctionnalités dans vos outils existants afin de :

  • Transcrire des appels audio en texte de manière fiable.
  • Analyser les échanges pour extraire des insights précieux.
  • Automatiser des processus et améliorer l'efficacité de vos équipes.

Cette documentation vous guidera pas à pas pour utiliser nos endpoints REST.

Authentification

L'API Raisetalk utilise un système d'authentification basé sur des tokens Bearer pour sécuriser l'accès à ses endpoints.

Connexion initiale

Utilisez votre email et mot de passe pour vous authentifier via l'endpoint /login. Une fois la connexion validée, un token Bearer unique vous sera renvoyé.

Requête type

POST {{host}}/login

{
  "password": "myC0mplicatedpass_ord",
  "email": "john.doe@company.com"
}

Réponse type en cas de succès

Code http 200

{
  "result": "success",
  "accessToken": "5c06ec916af844faac30c822055d1f77b3abgb3f259477330750ce570f851324",
  "expiration": "2024-12-01 00:00:00+00:00",
  "user": {
    (quelques informations sur vous)
  },
  "rights": [
	  (liste de vos droits)
  ]
}

Réponse type en cas d’échec

Code http 403

{
  "result": "error",
  "message": "Unexpected error #798a34a1",
  "error": {
    "user": {
      "rule": "Unexpected error #35b505bf"
    }
  }
}

Utilisation du token Bearer

Le token obtenu doit être inclus dans l'en-tête Authorization de toutes les requêtes suivantes pour accéder aux endpoints protégés.

Format de l'en-tête :

Authorization: Bearer {{ votre_token }}

Notes importantes

  • Les tokens Bearer ont une durée de validité limitée (voir le champ expiration dans la réponse du login).
  • Avant que votre token expire, utilisez l'endpoint /refreshToken pour en générer un nouveau.
  • Assurez-vous de ne jamais partager votre token avec des tiers.
  • En cas de problème d'authentification, une réponse avec le statut 403 Forbidden sera retournée. Vérifiez alors vos identifiants ou la validité de votre token.

Rafraichissement de token

Lorsque votre token approche de sa date d’expiration, vous devez le rafraîchir.

Requête type

POST {{host}}/refreshToken

Réponse type en cas de succès

Code http 200

{
  "result": "success",
  "accessToken": "b63066930a0b2a2e75194f8c1d1cb6a5bcPe04fb526da5035b0ad5d4f1b89dc4",
  "expiration": "2024-12-01 00:00:00+00:00"
}

Réponse type en cas d’échec Code http 403

{
  "result": "error",
  "message": "Unexpected error #2d34957c",
  "error": "Invalid access token"
}

Timezone

Raisetalk utilise les identifiants de fuseaux horaires IANA (TZDB, cf Wikipedia), également appelés "tz database names", qui sont la norme reconnue pour la gestion des fuseaux horaires dans la plupart des systèmes modernes.

Ces identifiants peuvent-être fournis via le header X-Timezone.

Ces identifiants ont la forme :

  • Continent/Ville (exemples : Europe/Paris, America/New_York, Asia/Tokyo)
  • Ou des alias comme UTC, GMT, etc.

Exemples valides

ExempleDescription
Europe/ParisFuseau horaire de Paris (CET/CEST)
America/New_YorkFuseau de la côte Est des USA
Asia/TokyoFuseau horaire du Japon
UTC ou GMTTemps universel coordonné

Exemples non-valides

ExemplePourquoi éviter ?
+02:00Offset horaire, pas un nom TZDB
ParisInvalide sans le préfixe Europe/
CET ou ESTAmbigus et non recommandés

Fallback

Si une timezone erronée est fournie, ou qu’aucune timezone n’est définie, alors les appels sont considérés comme en GMT.


Conversations

Envoyer une conversation à analyser

Les conversations à analyser sont transmises à Raisetalk via un formulaire de type multipart/form-data et comprennent

  • le fichier à envoyer
  • les informations de contexte de la conversation, appelées “Etiquettes”

Requête type minimale

POST /upload/create

Données de formulaire :

  • file: le fichier à uploader
  • language : la langue utiliser dans la conversation, parmis : fr, en, es, de, it, pt, nl, hi, ja, zh, fi, ko, pl, ru, tr, uk, vi
  • model_id : l’identifiant de la grille d’analyse à utiliser. Se référer pour cela à la liste des grilles dans l’interface de Raisetalk.
  • analysis_region : région où les données doivent être traitées, parmi : eu, us
  • transcription_model : le modèle de transcription Speech to Text à utiliser → Voir la liste des modèles de transcription.
  • summaries_model : le modèle de LLM à utiliser pour la génération du résumé, des sentiments et des attitudes. → Voir la liste des modèles d’analyse.
  • questions_model : le modèle de LLM à utiliser pour l’analyse des critères.
    → Voir la liste des modèles d’analyse.
  • callback : l’url de callback optionnelle à laquelle Raisetalk doit fournir les résultats de traitement
  • anonymization: tableau de Données à Caractère Personnel (DCP) à tenter d’anonymiser, parmi les valeurs suivantes : account_number, banking_information, blood_type, credit_card_cvv, credit_card_expiration, credit_card_number, date, date_of_birth, drivers_license, drug, email_address, event, gender_sexuality, healthcare_number, injury, ip_address, language, location, medical_condition, medical_process, money_amount, nationality, number_sequence, occupation, organization, passport_number, password, person_age, person_name, phone_number, political_affiliation, religion, url, us_social_security_number, username, vehicle_id.
  • speakers : définit le rôle des interlocuteurs de la conversation. Valeur parmi les suivantes : salesperson_prospect , advisor_customer

Analyse dans une langue différente

Lorsque vous utilisez les modèles de transcription Speech to Text compatibles, vous pouvez exiger que l’analyse soit fournie dans une langue cible, via le paramètre analysis_language qui accepte les valeurs suivantes : fr, en, en_US, en_AU, en_UK, es, de, it, pt, nl, hi, ja, zh, fi, ko, pl, ru, tr, uk, vi .

Traduction de la transcription

Lorsque vous utilisez les modèles de transcription compatibles, vous pouvez exiger que la transcription soit fournie dans une langue cible, via le paramètre transcription_language qui accepte les valeurs suivantes : fr, en, en_US, en_AU, en_UK, es, de, it, pt, nl, hi, ja, zh, fi, ko, pl, ru, tr, uk, vi .

Réponse type en cas de succès

Code http 200

{
  "result": "success",
  "upload": {
    "id": 215,
    "analysis_region": "eu",
    "model_id": 41,
    "transcription_model": "best",
    "summaries_model": "gemini-2.0-flash-001",
    "questions_model": "gemini-2.0-flash-001",
    "originalFilename": "sample_audio_recording.mp3",
    "storedFilename": "6e200fd8102fe6b3.mp3",
    "mediaType": "audio/mp3",
    "size": 8800586,
    "length": 1057.3474166666667,
    "speakers": "salesperson_prospect",
    "language": "fr",
    "analysis_language":"en",
    "transcription_language":"es"
    "callback": null
  },
  "setAttributes": [],
  "uptodateAttributes": [],
  "attachedUser": "User not set.",
  "anonymization": [
    "email_address",
    "ip_address",
    "person_age"
  ],
}

Réponse type en cas d’échec

Code http 403

{
  "result": "error",
  "message": "Unexpected error #2d34957c",
  "error": "Invalid access token"
}
{
  "result": "error",
  "message": "Unexpected error #36cb15b4",
  "error": {
    "body": "You must provide minimum information about your upload."
  }
}
{
  "result": "error",
  "message": "Unexpected error #36cb15b4",
  "error": {
    "summaries_model": "Models allow in `us` region are: anthropic/claude-3-5-sonnet, anthropic/claude-3-haiku"
  }
}

Modèles de transcription

Lisez notre article sur les modèles de transcription : https://www.raisetalk.com/blog/raisetalk-modeles-speech-to-text-pour-analyse-conversationnelle

Modèles d’analyse

Article de blog à venir.