Référence API REST

Export batch des appels SuperSales

L'API Calls permet de récupérer un batch paginé d'appels avec le titre, le transcript et, quand elle est disponible, un lien vidéo sécurisé.

Auth MCP

Même clé Bearer que le serveur MCP.

Données d'appels

Les résultats respectent vos droits d'accès.

Vidéo disponible

Un lien vidéo est fourni quand il est disponible.

Read-only

Aucune écriture, aucune action externe.

Vue d'ensemble

Cet endpoint est conçu pour les intégrations qui doivent synchroniser plusieurs appels à la fois : data warehouse, workflow interne, CRM, outil de quality monitoring ou agent IA custom. Il retourne uniquement les données déjà disponibles dans SuperSales au moment de la requête.

Principe important

Si une vidéo n'est pas encore disponible, l'API retourne simplement videoUrl: null etvideoStatus: "not_available". Le transcript et le titre restent disponibles quand ils sont déjà rattachés à l'appel.

Authentification

Utilisez une clé MCP SuperSales existante. Le scope requis estcalls:read. Les droits d'accès sont ceux du rôle associé à la clé.

Header recommandé
Authorization: Bearer ss_mcp_VOTRE_CLE

Endpoint

HTTP
GET https://supersales.dev/api/calls/batch

Le endpoint accepte aussi le headerX-API-Key, mais le header Authorization Bearer est recommandé.

Paramètres de query

ParamètreTypeRequisDescription
limitnumbernonNombre de calls retournés. Défaut 10, maximum 20.
cursorstringnonCurseur retourné par la page précédente.
date_fromstring ISOnonDate de début inclusive. Défaut : 7 jours avant date_to.
date_tostring ISOnonDate de fin inclusive. Défaut : maintenant.
sales_rep_idstringnonFiltre par commercial, toujours contrôlé côté serveur.

Format de réponse

Response 200
{
  "data": [
    {
      "callRecordId": "6651a3f2e8b4c1a2d3e4f567",
      "title": "Discovery call - Acme",
      "meetingDate": "2026-06-02T09:30:00.000Z",
      "actualDuration": 1840,
      "salesRepId": "usr_123",
      "salesRepName": "Sarah Martin",
      "inviteeEmails": ["sarah.martin@acme.com", "prospect@client.com"],
      "externalInviteeEmails": ["prospect@client.com"],
      "transcript": "Prospect: ...",
      "videoUrl": "https://...",
      "videoUrlExpiresAt": "2026-06-02T10:30:00.000Z",
      "videoStatus": "available"
    }
  ],
  "nextCursor": "eyJzY2hlZHVsZWRTdGFydFRpbWUiOiIyMDI2...",
  "limit": 10,
  "resultCount": 1
}

Pagination

La pagination est basée sur un curseur stable. Tant quenextCursorn'est pas null, appelez la page suivante avec ce curseur.

Page suivante
curl "https://supersales.dev/api/calls/batch?limit=20&cursor=NEXT_CURSOR" \
  -H "Authorization: Bearer ss_mcp_VOTRE_CLE"

Vidéos

Le champ videoUrl contient un lien temporaire et sécurisé. Sa durée de vie est indiquée parvideoUrlExpiresAt. Si la vidéo n'est pas encore disponible, le statut vautnot_available.

Ce que l'API ne fait pas

Elle ne déclenche pas de traitement vidéo et ne crée pas de nouvelle ressource. Elle expose seulement les données déjà disponibles côté SuperSales.

Exemples

Récupérer les 20 derniers calls
curl "https://supersales.dev/api/calls/batch?limit=20" \
  -H "Authorization: Bearer ss_mcp_VOTRE_CLE"
Filtrer par période et commercial
curl "https://supersales.dev/api/calls/batch?date_from=2026-06-01T00:00:00.000Z&date_to=2026-06-02T23:59:59.999Z&sales_rep_id=usr_123&limit=10" \
  -H "Authorization: Bearer ss_mcp_VOTRE_CLE"
Exemple JavaScript
const response = await fetch('https://supersales.dev/api/calls/batch?limit=20', {
  headers: {
    Authorization: 'Bearer ss_mcp_VOTRE_CLE'
  }
})

const page = await response.json()
console.log(page.data, page.nextCursor)

Limites et bonnes pratiques

Batch limité

Utilisez limit=20 maximum et suivez nextCursor.

Fenêtre de dates

La plage maximale reprend la limite MCP configurée, 90 jours par défaut.

Rate limits

Les mêmes quotas MCP sont appliqués à cette API.

Synchronisation

Préférez des batches courts et incrémentaux plutôt qu''un export massif.

Erreurs

HTTPCodeCause
400BAD_REQUESTParamètre invalide, curseur invalide ou plage de dates trop large.
401UNAUTHORIZEDClé MCP manquante ou invalide.
403FORBIDDENScope calls:read manquant ou accès commercial interdit.
429RATE_LIMITEDQuota MCP dépassé.
500INTERNAL_ERRORErreur serveur.

Besoin d'une clé API ?

Les clés se créent depuis les paramètres MCP. Elles peuvent servir au serveur MCP et à l'API REST Calls avec le même scope calls:read.

Ouvrir les paramètres MCP