Plateforme développeur

Construisez vos workflows outbound avec Outstalk

Utilisez l'API REST pour vos intégrations déterministes ou connectez un client IA via MCP. Les deux utilisent les mêmes clés API et permissions, limitées à l'organisation.

API version 1REST + MCP

Introduction

L'API utilise des requêtes et réponses JSON. Une clé utilise son organisation d'origine par défaut. Un utilisateur agence ou freelance peut cibler un client uniquement si un mandat ou une affectation active l'y autorise et si le header X-Organization-Id est envoyé explicitement.

Par sécurité, les changements de facturation et de paiement, la connexion et les invitations, les identifiants CRM, l'achat ou la libération de numéros téléphoniques et les opérations super-admin restent accessibles uniquement dans l'interface. L'API couvre les ressources et workflows outbound documentés ci-dessous.

URL de base

https://www.outstalk.com/api/v1

Authentification

Créez une clé dans Paramètres → Clés API, sélectionnez uniquement les permissions nécessaires, puis envoyez le secret comme jeton Bearer. Le secret complet n'est affiché qu'une fois. Pour un contexte client autorisé, envoyez aussi X-Organization-Id avec l'identifiant de l'organisation cliente.

Authorization: Bearer
curl 'https://www.outstalk.com/api/v1/me' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY'

# Optional: target an accessible client context under an active mandate
curl 'https://www.outstalk.com/api/v1/campaigns' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'X-Organization-Id: org_client_123'

N'exposez jamais une clé dans du code navigateur, des logs ou un dépôt public. Révoquez-la immédiatement si elle a pu être divulguée.

Erreurs

Les erreurs contiennent un code stable, un message lisible et, si nécessaire, un objet details.

4xx application/json
{
  "error": {
    "code": "invalid_request",
    "message": "The request could not be processed.",
    "details": { "field": "name" }
  }
}

Pagination

La plupart des listes utilisent un curseur : envoyez limit (1 à 100) et le cursor reçu dans meta.nextCursor. Les recherches de prospection documentent séparément la pagination de leur fournisseur.

cursor pagination
GET /api/v1/leads?limit=50&cursor=eyJpZCI6...

{
  "data": [ ... ],
  "meta": { "hasMore": true, "nextCursor": "eyJpZCI6..." }
}

Permissions

Compte

profile:read

Lire le profil de l'utilisateur authentifié.

organization:read

Lire l'organisation et le contexte client accessible.

members:read

Lister les membres de l'organisation native.

usage:read

Lire les limites, crédits et totaux d'utilisation.

Prospection

campaigns:read

Lister les campagnes et lire leur configuration.

campaigns:write

Créer, modifier et supprimer des campagnes.

leads:read

Lister les prospects et lire leurs informations.

leads:write

Créer, modifier, déplacer et supprimer des prospects.

lead_search:execute

Lancer des recherches externes d'entreprises et de personnes.

enrichment:execute

Enrichir les prospects et contacts avec les crédits de l'organisation.

Appels

calls:read

Lire l'historique et les resultats des appels.

calls:write

Créer les journaux de session d'appel et mettre à jour leurs résultats.

phone_numbers:read

Lister les numéros de l'organisation et leurs attributions.

Ventes et analyses

crm:read

Lire les étapes, opportunités, activités et exports CRM.

crm:write

Créer et modifier les opportunités et activités CRM.

analytics:read

Lire les analyses des campagnes, appelants et portefeuilles.

Agence et talents

agency:read

Lire les clients liés, accès et données du portefeuille agence.

agency:write

Gérer les clients de l'agence et leurs accès.

talents:read

Parcourir la marketplace et les profils de talents.

missions:read

Lire les missions, demandes et candidatures.

missions:write

Créer et gérer les missions et candidatures.

Référence API

Compte et organisation

Consultez le propriétaire de la clé et l'organisation active.

GET/me

Consulter le propriétaire de la clé

Renvoie l'utilisateur authentifié et le contexte de l'organisation active.

Permission requiseprofile:read
cURL
curl --request GET 'https://www.outstalk.com/api/v1/me' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}
GET/organization

Consulter l'organisation active

Renvoie les informations non sensibles de l'organisation du contexte courant.

Permission requiseorganization:read
cURL
curl --request GET 'https://www.outstalk.com/api/v1/organization' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}

Campagnes

Créez et gérez les campagnes outbound.

GET/campaigns

Lister les campagnes

Liste les campagnes visibles. Les délégataires à accès limité ne voient que leurs campagnes affectées.

Permission requisecampaigns:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/campaigns' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/campaigns

Créer une campagne

Crée une campagne dans l'organisation active.

Permission requisecampaigns:write

Paramètres

namebody
Requis
string
descriptionbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/campaigns' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "France Q3",
  "description": "Priority accounts"
}'

Corps de la requête

application/json
{
  "name": "France Q3",
  "description": "Priority accounts"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
GET/campaigns/{campaignId}

Consulter une campagne

Renvoie une campagne visible, ses affectations et ses compteurs.

Permission requisecampaigns:read

Paramètres

campaignIdpath
Requis
string

Campaign ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/campaigns/campaign_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}
PATCH/campaigns/{campaignId}

Modifier une campagne

Modifie le nom ou la description d'une campagne.

Permission requisecampaigns:write

Paramètres

campaignIdpath
Requis
string

Campaign ID

namebody
Facultatif
string
descriptionbody
Facultatif
string | null
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/campaigns/campaign_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "France Q3",
  "description": "Priority accounts"
}'

Corps de la requête

application/json
{
  "name": "France Q3",
  "description": "Priority accounts"
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/campaigns/{campaignId}

Supprimer une campagne

Supprime la campagne. Les prospects sont conservés et détachés.

Permission requisecampaigns:write

Paramètres

campaignIdpath
Requis
string

Campaign ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/campaigns/campaign_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content

Prospects et activités

Gérez les prospects de l'organisation et leurs activités de suivi.

GET/leads

Lister les prospects

Liste les prospects avec des filtres facultatifs par campagne, statut, type et texte.

Permission requiseleads:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

campaignIdquery
Facultatif
string

Campaign ID

statusquery
Facultatif
string · NEW | CALLED | REACHED | CALLBACK | SEND_MAIL | LEAD
leadTypequery
Facultatif
string · PLACE | PERSON
queryquery
Facultatif
string
cURL
curl --request GET 'https://www.outstalk.com/api/v1/leads' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/leads

Créer un prospect

Crée un prospect personne ou entreprise. La campagne référencée doit appartenir à l'organisation active.

Permission requiseleads:write

Paramètres

companybody
Requis
string
leadTypebody
Facultatif
string · PLACE | PERSON
campaignIdbody
Facultatif
string | null
statusbody
Facultatif
string · NEW | CALLED | REACHED | CALLBACK | SEND_MAIL | LEAD
addressbody
Facultatif
string | null
summarybody
Facultatif
string | null
phonebody
Facultatif
string | null
emailbody
Facultatif
string | null
websitebody
Facultatif
string | null
contactFirstNamebody
Facultatif
string | null
contactLastNamebody
Facultatif
string | null
contactRolebody
Facultatif
string | null
jobTitlebody
Facultatif
string | null
citybody
Facultatif
string | null
countrybody
Facultatif
string | null
linkedinUrlbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/leads' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "company": "Acme",
  "leadType": "PLACE",
  "campaignId": "campaign_123"
}'

Corps de la requête

application/json
{
  "company": "Acme",
  "leadType": "PLACE",
  "campaignId": "campaign_123"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
GET/leads/{leadId}

Consulter un prospect

Renvoie un prospect visible avec ses compteurs de campagnes et d'activités.

Permission requiseleads:read

Paramètres

leadIdpath
Requis
string

Lead ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/leads/lead_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}
PATCH/leads/{leadId}

Modifier un prospect

Modifie partiellement un prospect de l'organisation.

Permission requiseleads:write

Paramètres

leadIdpath
Requis
string

Lead ID

companybody
Facultatif
string
campaignIdbody
Facultatif
string | null
statusbody
Facultatif
string · NEW | CALLED | REACHED | CALLBACK | SEND_MAIL | LEAD
addressbody
Facultatif
string | null
summarybody
Facultatif
string | null
phonebody
Facultatif
string | null
emailbody
Facultatif
string | null
websitebody
Facultatif
string | null
contactFirstNamebody
Facultatif
string | null
contactLastNamebody
Facultatif
string | null
contactRolebody
Facultatif
string | null
jobTitlebody
Facultatif
string | null
citybody
Facultatif
string | null
countrybody
Facultatif
string | null
linkedinUrlbody
Facultatif
string | null
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/leads/lead_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "company": "Acme",
  "campaignId": "campaign_123",
  "status": "NEW"
}'

Corps de la requête

application/json
{
  "company": "Acme",
  "campaignId": "campaign_123",
  "status": "NEW"
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/leads/{leadId}

Supprimer un prospect

Supprime définitivement le prospect et ses activités et journaux d'appels dépendants.

Permission requiseleads:write

Paramètres

leadIdpath
Requis
string

Lead ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/leads/lead_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content
GET/leads/{leadId}/activities

Lister les activités d'un prospect

Liste les activités de suivi d'un prospect visible.

Permission requiseleads:read

Paramètres

leadIdpath
Requis
string

Lead ID

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/leads/lead_123/activities' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/leads/{leadId}/activities

Créer une activité de prospect

Ajoute une activité de suivi à un prospect.

Permission requiseleads:write

Paramètres

leadIdpath
Requis
string

Lead ID

titlebody
Requis
string
dueAtbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/leads/lead_123/activities' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z"
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
PATCH/leads/{leadId}/activities/{activityId}

Modifier une activité de prospect

Modifie le titre, l'échéance ou l'état de réalisation.

Permission requiseleads:write

Paramètres

leadIdpath
Requis
string

Lead ID

activityIdpath
Requis
string

Activity ID

titlebody
Facultatif
string
dueAtbody
Facultatif
string | null
isDonebody
Facultatif
boolean
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/leads/lead_123/activities/activity_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z",
  "isDone": true
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z",
  "isDone": true
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/leads/{leadId}/activities/{activityId}

Supprimer une activité de prospect

Supprime une activité de suivi.

Permission requiseleads:write

Paramètres

leadIdpath
Requis
string

Lead ID

activityIdpath
Requis
string

Activity ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/leads/lead_123/activities/activity_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content
POST/enrichment/company-leads

Enrichir et enregistrer une entreprise

Enrichit un résultat Google Places, consomme les crédits après des contrôles atomiques et l'enregistre comme prospect entreprise dédupliqué.

Permission requiseenrichment:execute

Paramètres

placebody
Requis
object
campaignIdbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/enrichment/company-leads' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "place": {
    "placeId": "place_123",
    "company": "Acme Paris",
    "address": "1 rue Exemple, Paris",
    "phone": "+33123456789",
    "email": null,
    "website": "https://acme.example",
    "summary": null
  },
  "campaignId": "campaign_123"
}'

Corps de la requête

application/json
{
  "place": {
    "placeId": "place_123",
    "company": "Acme Paris",
    "address": "1 rue Exemple, Paris",
    "phone": "+33123456789",
    "email": null,
    "website": "https://acme.example",
    "summary": null
  },
  "campaignId": "campaign_123"
}

Exemple de réponse

201 application/json
{
  "data": {}
}

Prospection et enrichissement

Recherchez des entreprises ou des personnes, puis enrichissez les résultats sélectionnés dans les limites de crédits et du forfait de l'organisation.

POST/lead-search/people

Rechercher des personnes

Interroge le fournisseur de données configuré avec des filtres de personne, poste, entreprise, localisation, séniorité et ancienneté.

Permission requiselead_search:execute

Paramètres

filtersbody
Requis
object
paginationbody
Facultatif
object
cURL
curl --request POST 'https://www.outstalk.com/api/v1/lead-search/people' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "filters": {
    "jobTitles": [
      {
        "value": "Head of Sales",
        "exclude": false
      }
    ],
    "companyCountries": [
      "France"
    ]
  },
  "pagination": {
    "limit": 25
  }
}'

Corps de la requête

application/json
{
  "filters": {
    "jobTitles": [
      {
        "value": "Head of Sales",
        "exclude": false
      }
    ],
    "companyCountries": [
      "France"
    ]
  },
  "pagination": {
    "limit": 25
  }
}

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "total": 0,
    "offset": 0,
    "limit": 25,
    "searchAfter": null
  }
}
POST/lead-search/companies

Rechercher des entreprises

Interroge Google Places par activité et localisation, avec des filtres facultatifs de note, de niveau de prix et de zone stricte.

Permission requiselead_search:execute

Paramètres

querybody
Requis
string
locationbody
Requis
string
optionsbody
Facultatif
object
cURL
curl --request POST 'https://www.outstalk.com/api/v1/lead-search/companies' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "query": "software companies",
  "location": "Paris, France",
  "options": {
    "minRating": 4,
    "strictArea": true
  }
}'

Corps de la requête

application/json
{
  "query": "software companies",
  "location": "Paris, France",
  "options": {
    "minRating": 4,
    "strictArea": true
  }
}

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "total": 0
  }
}
POST/enrichment/jobs

Lancer l'enrichissement de personnes

Démarre un enrichissement asynchrone, réserve les crédits, applique les limites du forfait, déduplique les contacts et précrée les prospects sélectionnés.

Permission requiseenrichment:execute

Paramètres

peoplebody
Requis
array
enrichEmailbody
Requis
boolean
enrichPhonebody
Requis
boolean
campaignIdbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/enrichment/jobs' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "people": [
    {
      "fullenrichId": "person_123",
      "firstName": "Ada",
      "lastName": "Martin",
      "fullName": "Ada Martin",
      "jobTitle": "Head of Sales",
      "jobFunction": "Sales",
      "seniority": "Head",
      "country": "France",
      "city": "Paris",
      "yearsAtCompany": 2,
      "linkedinUrl": "https://www.linkedin.com/in/example",
      "companyName": "Acme",
      "companyDomain": "acme.example",
      "companyIndustry": "Software",
      "companyHeadcount": "51-200",
      "companyCountry": "France",
      "companyLinkedin": null
    }
  ],
  "enrichEmail": true,
  "enrichPhone": false,
  "campaignId": "campaign_123"
}'

Corps de la requête

application/json
{
  "people": [
    {
      "fullenrichId": "person_123",
      "firstName": "Ada",
      "lastName": "Martin",
      "fullName": "Ada Martin",
      "jobTitle": "Head of Sales",
      "jobFunction": "Sales",
      "seniority": "Head",
      "country": "France",
      "city": "Paris",
      "yearsAtCompany": 2,
      "linkedinUrl": "https://www.linkedin.com/in/example",
      "companyName": "Acme",
      "companyDomain": "acme.example",
      "companyIndustry": "Software",
      "companyHeadcount": "51-200",
      "companyCountry": "France",
      "companyLinkedin": null
    }
  ],
  "enrichEmail": true,
  "enrichPhone": false,
  "campaignId": "campaign_123"
}

Exemple de réponse

202 application/json
{
  "data": {}
}
GET/enrichment/jobs/{jobId}

Consulter un enrichissement

Renvoie un enrichissement de l'organisation et interroge le fournisseur s'il est encore en attente, sans exposer ses identifiants ni ses données brutes.

Permission requiseenrichment:execute

Paramètres

jobIdpath
Requis
string

Enrichment job ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/enrichment/jobs/job_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}

Journaux d'appels

Enregistrez les cycles d'appels et leur durée mesurée. Ces endpoints ne composent pas un appel chez l'opérateur téléphonique.

GET/call-logs

Lister les journaux d'appels

Liste les sessions enregistrées dans l'application. Un journal ne prouve pas la connexion chez l'opérateur. Les membres natifs ne voient que leurs propres journaux d'appels.

Permission requisecalls:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

leadIdquery
Facultatif
string

Lead ID

userIdquery
Facultatif
string

User ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/call-logs' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/call-logs/start

Démarrer un cycle de journal d'appel

Crée une session et consomme une unité mensuelle après contrôle du quota. Cet endpoint ne lance pas l'appel téléphonique. Les membres natifs peuvent uniquement créer leurs propres journaux d'appels.

Permission requisecalls:write

Paramètres

leadIdbody
Requis
string

Lead ID

phoneNumberIdbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/call-logs/start' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "leadId": "lead_123",
  "phoneNumberId": "phonenumber_123"
}'

Corps de la requête

application/json
{
  "leadId": "lead_123",
  "phoneNumberId": "phonenumber_123"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
POST/call-logs/{callLogId}/end

Terminer un cycle de journal d'appel

Termine une session appartenant au propriétaire de la clé et stocke sa durée mesurée. Un journal d'appel ne peut être terminé que par son propriétaire.

Permission requisecalls:write

Paramètres

callLogIdpath
Requis
string

Call log ID

durationSecondsbody
Requis
integer
cURL
curl --request POST 'https://www.outstalk.com/api/v1/call-logs/calllog_123/end' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "durationSeconds": 84
}'

Corps de la requête

application/json
{
  "durationSeconds": 84
}

Exemple de réponse

200 application/json
{
  "data": {}
}

Statistiques

Récupérez les agrégats d'appels et d'exports CRM.

GET/analytics

Consulter les statistiques d'appels

Renvoie les agrégats d'appels et d'exports CRM sur une plage de dates UTC. Les membres natifs reçoivent uniquement leurs propres agrégats.

Permission requiseanalytics:read

Paramètres

dateFromquery
Facultatif
string
dateToquery
Facultatif
string
userIdquery
Facultatif
string

User ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/analytics' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}

CRM

Gérez les étapes, opportunités, commentaires et activités du CRM interne.

GET/crm/stages

Lister les étapes CRM

Liste les étapes du pipeline CRM interne.

Permission requisecrm:read
cURL
curl --request GET 'https://www.outstalk.com/api/v1/crm/stages' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/crm/stages

Créer une étape CRM

Crée une étape à la fin du pipeline.

Permission requisecrm:write

Paramètres

namebody
Requis
string
cURL
curl --request POST 'https://www.outstalk.com/api/v1/crm/stages' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "France Q3"
}'

Corps de la requête

application/json
{
  "name": "France Q3"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
PATCH/crm/stages/{stageId}

Modifier une étape CRM

Modifie le nom ou la position d'une étape.

Permission requisecrm:write

Paramètres

stageIdpath
Requis
string

Stage ID

namebody
Facultatif
string
positionbody
Facultatif
integer
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/crm/stages/stage_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "France Q3",
  "position": 1
}'

Corps de la requête

application/json
{
  "name": "France Q3",
  "position": 1
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/crm/stages/{stageId}

Supprimer une étape CRM

Supprime une étape vide. Une étape contenant des opportunités ne peut pas être supprimée.

Permission requisecrm:write

Paramètres

stageIdpath
Requis
string

Stage ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/crm/stages/stage_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content
GET/crm/deals

Lister les opportunités CRM

Liste les opportunités avec un résumé de leur étape et de leur responsable.

Permission requisecrm:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

stageIdquery
Facultatif
string

Stage ID

ownerIdquery
Facultatif
string

Owner ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/crm/deals' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/crm/deals

Créer une opportunité CRM

Crée une opportunité éventuellement liée à un prospect de l'organisation.

Permission requisecrm:write

Paramètres

titlebody
Requis
string
companybody
Requis
string
stageIdbody
Requis
string

Stage ID

ownerIdbody
Facultatif
string | null
leadIdbody
Facultatif
string | null
valueCentsbody
Facultatif
integer | null
phonebody
Facultatif
string | null
emailbody
Facultatif
string | null
contactFirstNamebody
Facultatif
string | null
contactLastNamebody
Facultatif
string | null
contactRolebody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/crm/deals' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "company": "Acme",
  "stageId": "stage_123"
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "company": "Acme",
  "stageId": "stage_123"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
GET/crm/deals/{dealId}

Consulter une opportunité CRM

Renvoie une opportunité avec ses commentaires et activités.

Permission requisecrm:read

Paramètres

dealIdpath
Requis
string

Deal ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/crm/deals/deal_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}
PATCH/crm/deals/{dealId}

Modifier une opportunité CRM

Modifie les champs, l'étape, le responsable ou le prospect lié.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

titlebody
Facultatif
string
companybody
Facultatif
string
stageIdbody
Facultatif
string

Stage ID

ownerIdbody
Facultatif
string | null
leadIdbody
Facultatif
string | null
valueCentsbody
Facultatif
integer | null
phonebody
Facultatif
string | null
emailbody
Facultatif
string | null
contactFirstNamebody
Facultatif
string | null
contactLastNamebody
Facultatif
string | null
contactRolebody
Facultatif
string | null
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/crm/deals/deal_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "company": "Acme",
  "stageId": "stage_123"
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "company": "Acme",
  "stageId": "stage_123"
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/crm/deals/{dealId}

Supprimer une opportunité CRM

Supprime définitivement une opportunité de l'organisation.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/crm/deals/deal_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content
GET/crm/deals/{dealId}/comments

Lister les commentaires d'une opportunité

Liste les commentaires d'une opportunité.

Permission requisecrm:read

Paramètres

dealIdpath
Requis
string

Deal ID

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/crm/deals/deal_123/comments' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/crm/deals/{dealId}/comments

Créer un commentaire d'opportunité

Ajoute un commentaire signé à une opportunité.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

bodybody
Requis
string
cURL
curl --request POST 'https://www.outstalk.com/api/v1/crm/deals/deal_123/comments' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "body": "Customer requested a follow-up."
}'

Corps de la requête

application/json
{
  "body": "Customer requested a follow-up."
}

Exemple de réponse

201 application/json
{
  "data": {}
}
DELETE/crm/deals/{dealId}/comments/{commentId}

Supprimer un commentaire d'opportunité

Supprime un commentaire du propriétaire de la clé. Les administrateurs peuvent supprimer tout commentaire.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

commentIdpath
Requis
string

Comment ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/crm/deals/deal_123/comments/comment_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content
GET/crm/deals/{dealId}/activities

Lister les activités d'une opportunité

Liste les activités de suivi d'une opportunité.

Permission requisecrm:read

Paramètres

dealIdpath
Requis
string

Deal ID

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/crm/deals/deal_123/activities' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/crm/deals/{dealId}/activities

Créer une activité d'opportunité

Ajoute une activité de suivi à une opportunité.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

titlebody
Requis
string
dueAtbody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/crm/deals/deal_123/activities' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z"
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
PATCH/crm/deals/{dealId}/activities/{activityId}

Modifier une activité d'opportunité

Modifie le titre, l'échéance ou l'état de réalisation.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

activityIdpath
Requis
string

Activity ID

titlebody
Facultatif
string
dueAtbody
Facultatif
string | null
isDonebody
Facultatif
boolean
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/crm/deals/deal_123/activities/activity_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z",
  "isDone": true
}'

Corps de la requête

application/json
{
  "title": "Follow up",
  "dueAt": "2026-08-01T09:00:00.000Z",
  "isDone": true
}

Exemple de réponse

200 application/json
{
  "data": {}
}
DELETE/crm/deals/{dealId}/activities/{activityId}

Supprimer une activité d'opportunité

Supprime une activité d'opportunité.

Permission requisecrm:write

Paramètres

dealIdpath
Requis
string

Deal ID

activityIdpath
Requis
string

Activity ID

cURL
curl --request DELETE 'https://www.outstalk.com/api/v1/crm/deals/deal_123/activities/activity_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

204
204 No Content

Membres

Listez les membres natifs et les délégataires d'agence actifs.

GET/members

Lister les membres

Liste les membres natifs et les délégataires d'agence actifs. Réservé aux administrateurs natifs de l'organisation.

Permission requisemembers:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/members' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}

Numéros de téléphone

Consultez les numéros et affectations sans exposer les secrets de l'opérateur.

GET/phone-numbers

Lister les numéros de téléphone

Liste les numéros et affectations pour les administrateurs de l'organisation ou les délégataires d'agence avec accès FULL. Aucun secret de l'opérateur n'est renvoyé.

Permission requisephone_numbers:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/phone-numbers' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}

Utilisation

Consultez les limites, sièges, appels, enrichissements et crédits.

GET/usage

Consulter l'utilisation

Renvoie les limites, sièges, appels, enrichissements, crédits et dates de remise à zéro. Réservé aux administrateurs natifs de l'organisation.

Permission requiseusage:read
cURL
curl --request GET 'https://www.outstalk.com/api/v1/usage' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}

Marketplace de talents

Parcourez les profils publiés et leurs tarifs réels d'engagement.

GET/talents

Lister les talents publiés

Liste les profils de talents publiés avec leurs tarifs réels, langues, évaluations et nombre de missions terminées.

Permission requisetalents:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

cURL
curl --request GET 'https://www.outstalk.com/api/v1/talents' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
GET/talents/{talentId}

Consulter un talent publié

Renvoie le profil publié, ses avis, le contexte de mission actif et les clients éligibles dans un contexte d'agence d'origine.

Permission requisetalents:read

Paramètres

talentIdpath
Requis
string

Talent ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/talents/talent_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}

Missions de talents

Demandez des missions et gérez les transitions accessibles aux utilisateurs.

GET/missions

Lister les missions de l'organisation

Liste les missions accessibles à l'organisation active. Dans le contexte d'une agence d'origine, la liste couvre les organisations clientes activement liées.

Permission requisemissions:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

statusquery
Facultatif
string · PENDING | ONGOING | FINISHED | ABORTED | REFUSED
cURL
curl --request GET 'https://www.outstalk.com/api/v1/missions' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
POST/missions

Demander une mission

Crée une demande en attente au tarif actuel du talent. Une agence d'origine doit sélectionner une organisation cliente activement liée.

Permission requisemissions:write

Paramètres

talentIdbody
Requis
string

Talent ID

engagementTypebody
Requis
string · PER_HOUR | PART_TIME | FULL_TIME
durationbody
Requis
string
descriptionbody
Requis
string
objectivebody
Requis
string
notebody
Facultatif
string | null
targetOrganizationIdbody
Facultatif
string | null
localebody
Facultatif
string · en | fr
cURL
curl --request POST 'https://www.outstalk.com/api/v1/missions' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "talentId": "talent_123",
  "engagementType": "PER_HOUR",
  "duration": "example",
  "description": "Priority accounts",
  "objective": "example"
}'

Corps de la requête

application/json
{
  "talentId": "talent_123",
  "engagementType": "PER_HOUR",
  "duration": "example",
  "description": "Priority accounts",
  "objective": "example"
}

Exemple de réponse

201 application/json
{
  "data": {}
}
PATCH/missions/{missionId}

Faire évoluer une mission

Termine une mission en cours, demande son abandon ou retire une demande en attente. Cet endpoint n'effectue aucune modération administrative.

Permission requisemissions:write

Paramètres

missionIdpath
Requis
string

Mission ID

actionbody
Requis
string · FINISH | REQUEST_ABORT | WITHDRAW
reasonbody
Facultatif
string | null
cURL
curl --request PATCH 'https://www.outstalk.com/api/v1/missions/mission_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "action": "FINISH",
  "reason": "example"
}'

Corps de la requête

application/json
{
  "action": "FINISH",
  "reason": "example"
}

Exemple de réponse

200 application/json
{
  "data": {}
}

Agence

Consultez les mandats et créez des organisations clientes lorsque vous y êtes autorisé.

GET/agency/clients

Lister les clients de l'agence

Liste les mandats clients pour un administrateur d'agence dans le contexte de son agence d'origine.

Permission requiseagency:read

Paramètres

limitquery
Facultatif
integer
cursorquery
Facultatif
string

Opaque cursor returned by the previous page.

statusquery
Facultatif
string · PENDING | ACTIVE | REVOKED
cURL
curl --request GET 'https://www.outstalk.com/api/v1/agency/clients' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": [],
  "meta": {
    "hasMore": false,
    "nextCursor": null
  }
}
GET/agency/clients/{clientOrgId}

Consulter un client de l'agence

Renvoie un mandat client et ses autorisations à un administrateur d'agence dans son contexte d'origine.

Permission requiseagency:read

Paramètres

clientOrgIdpath
Requis
string

Client organization ID

cURL
curl --request GET 'https://www.outstalk.com/api/v1/agency/clients/clientorg_123' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json'

Exemple de réponse

200 application/json
{
  "data": {}
}
POST/agency/clients

Créer un client d'agence

Crée une organisation cliente, un mandat actif et un accès complet pour le propriétaire de la clé. Réservé aux administrateurs d'agence.

Permission requiseagency:write

Paramètres

namebody
Requis
string
industrybody
Facultatif
string | null
cURL
curl --request POST 'https://www.outstalk.com/api/v1/agency/clients' \
  --header 'Authorization: Bearer $OUTSTALK_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "France Q3",
  "industry": "example"
}'

Corps de la requête

application/json
{
  "name": "France Q3",
  "industry": "example"
}

Exemple de réponse

201 application/json
{
  "data": {}
}

Serveur MCP

L'endpoint MCP expose les mêmes opérations sous forme d'outils pour les clients IA compatibles. L'accès reste limité aux permissions sélectionnées sur la clé API.

Endpoint MCP

https://www.outstalk.com/api/mcp

Transport

HTTP streamable · Bearer auth

Configuration des clients

Codex

config.toml
[mcp_servers.outstalk]
url = "https://www.outstalk.com/api/mcp"
bearer_token_env_var = "OUTSTALK_API_KEY"

Claude Desktop

mcp.json
{
  "mcpServers": {
    "outstalk": {
      "type": "http",
      "url": "https://www.outstalk.com/api/mcp",
      "headers": { "Authorization": "Bearer ${OUTSTALK_API_KEY}" }
    }
  }
}

Cursor

mcp.json
{
  "mcpServers": {
    "outstalk": {
      "url": "https://www.outstalk.com/api/mcp",
      "headers": { "Authorization": "Bearer ${env:OUTSTALK_API_KEY}" }
    }
  }
}

Outils disponibles

get_me

Renvoie l'utilisateur authentifié et le contexte de l'organisation active.

profile:read
get_organization

Renvoie les informations non sensibles de l'organisation du contexte courant.

organization:read
list_campaigns

Liste les campagnes visibles. Les délégataires à accès limité ne voient que leurs campagnes affectées.

campaigns:read
create_campaign

Crée une campagne dans l'organisation active.

campaigns:write
get_campaign

Renvoie une campagne visible, ses affectations et ses compteurs.

campaigns:read
update_campaign

Modifie le nom ou la description d'une campagne.

campaigns:write
delete_campaign

Supprime la campagne. Les prospects sont conservés et détachés.

campaigns:write
list_leads

Liste les prospects avec des filtres facultatifs par campagne, statut, type et texte.

leads:read
create_lead

Crée un prospect personne ou entreprise. La campagne référencée doit appartenir à l'organisation active.

leads:write
get_lead

Renvoie un prospect visible avec ses compteurs de campagnes et d'activités.

leads:read
update_lead

Modifie partiellement un prospect de l'organisation.

leads:write
delete_lead

Supprime définitivement le prospect et ses activités et journaux d'appels dépendants.

leads:write
list_lead_activities

Liste les activités de suivi d'un prospect visible.

leads:read
create_lead_activity

Ajoute une activité de suivi à un prospect.

leads:write
update_lead_activity

Modifie le titre, l'échéance ou l'état de réalisation.

leads:write
delete_lead_activity

Supprime une activité de suivi.

leads:write
search_people

Interroge le fournisseur de données configuré avec des filtres de personne, poste, entreprise, localisation, séniorité et ancienneté.

lead_search:execute
search_companies

Interroge Google Places par activité et localisation, avec des filtres facultatifs de note, de niveau de prix et de zone stricte.

lead_search:execute
start_people_enrichment

Démarre un enrichissement asynchrone, réserve les crédits, applique les limites du forfait, déduplique les contacts et précrée les prospects sélectionnés.

enrichment:execute
enrich_company_lead

Enrichit un résultat Google Places, consomme les crédits après des contrôles atomiques et l'enregistre comme prospect entreprise dédupliqué.

enrichment:execute
get_enrichment_job

Renvoie un enrichissement de l'organisation et interroge le fournisseur s'il est encore en attente, sans exposer ses identifiants ni ses données brutes.

enrichment:execute
list_call_logs

Liste les sessions enregistrées dans l'application. Un journal ne prouve pas la connexion chez l'opérateur. Les membres natifs ne voient que leurs propres journaux d'appels.

calls:read
start_call_log

Crée une session et consomme une unité mensuelle après contrôle du quota. Cet endpoint ne lance pas l'appel téléphonique. Les membres natifs peuvent uniquement créer leurs propres journaux d'appels.

calls:write
end_call_log

Termine une session appartenant au propriétaire de la clé et stocke sa durée mesurée. Un journal d'appel ne peut être terminé que par son propriétaire.

calls:write
get_analytics

Renvoie les agrégats d'appels et d'exports CRM sur une plage de dates UTC. Les membres natifs reçoivent uniquement leurs propres agrégats.

analytics:read
list_crm_stages

Liste les étapes du pipeline CRM interne.

crm:read
create_crm_stage

Crée une étape à la fin du pipeline.

crm:write
update_crm_stage

Modifie le nom ou la position d'une étape.

crm:write
delete_crm_stage

Supprime une étape vide. Une étape contenant des opportunités ne peut pas être supprimée.

crm:write
list_crm_deals

Liste les opportunités avec un résumé de leur étape et de leur responsable.

crm:read
create_crm_deal

Crée une opportunité éventuellement liée à un prospect de l'organisation.

crm:write
get_crm_deal

Renvoie une opportunité avec ses commentaires et activités.

crm:read
update_crm_deal

Modifie les champs, l'étape, le responsable ou le prospect lié.

crm:write
delete_crm_deal

Supprime définitivement une opportunité de l'organisation.

crm:write
list_crm_comments

Liste les commentaires d'une opportunité.

crm:read
create_crm_comment

Ajoute un commentaire signé à une opportunité.

crm:write
delete_crm_comment

Supprime un commentaire du propriétaire de la clé. Les administrateurs peuvent supprimer tout commentaire.

crm:write
list_crm_activities

Liste les activités de suivi d'une opportunité.

crm:read
create_crm_activity

Ajoute une activité de suivi à une opportunité.

crm:write
update_crm_activity

Modifie le titre, l'échéance ou l'état de réalisation.

crm:write
delete_crm_activity

Supprime une activité d'opportunité.

crm:write
list_members

Liste les membres natifs et les délégataires d'agence actifs. Réservé aux administrateurs natifs de l'organisation.

members:read
list_phone_numbers

Liste les numéros et affectations pour les administrateurs de l'organisation ou les délégataires d'agence avec accès FULL. Aucun secret de l'opérateur n'est renvoyé.

phone_numbers:read
get_usage

Renvoie les limites, sièges, appels, enrichissements, crédits et dates de remise à zéro. Réservé aux administrateurs natifs de l'organisation.

usage:read
list_talents

Liste les profils de talents publiés avec leurs tarifs réels, langues, évaluations et nombre de missions terminées.

talents:read
get_talent

Renvoie le profil publié, ses avis, le contexte de mission actif et les clients éligibles dans un contexte d'agence d'origine.

talents:read
list_missions

Liste les missions accessibles à l'organisation active. Dans le contexte d'une agence d'origine, la liste couvre les organisations clientes activement liées.

missions:read
create_mission

Crée une demande en attente au tarif actuel du talent. Une agence d'origine doit sélectionner une organisation cliente activement liée.

missions:write
update_mission

Termine une mission en cours, demande son abandon ou retire une demande en attente. Cet endpoint n'effectue aucune modération administrative.

missions:write
list_agency_clients

Liste les mandats clients pour un administrateur d'agence dans le contexte de son agence d'origine.

agency:read
get_agency_client

Renvoie un mandat client et ses autorisations à un administrateur d'agence dans son contexte d'origine.

agency:read
create_agency_client

Crée une organisation cliente, un mandat actif et un accès complet pour le propriétaire de la clé. Réservé aux administrateurs d'agence.

agency:write