Aperçu
L'API InboundFlow utilise les conventions REST. Toutes les réponses sont en JSON. Tous les horodatages sont en ISO 8601 UTC.
📞Appels
Lister tous les appels
GET
/v1/callsParamètres de Requête
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| limit | integer | 50 | Résultats par page (défaut: 50, max: 100) |
| cursor | string | null | Curseur de pagination de la réponse précédente |
| since | string | null | Date ISO — renvoie uniquement les appels après cette heure |
| status | string | null | Filtrer par statut: completed, failed, blocked, in-progress, forwarding |
| phone | string | null | Filtrer par numéro (correspondance exacte) |
cURL
curl -X GET "https://api.inboundflow.app/v1/calls?limit=10&status=completed" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse
JSON
{
"data": [
{
"id": "uuid",
"caller_phone": "+1234567890",
"caller_name": "Dave",
"status": "completed",
"duration_seconds": 55,
"summary": "Called about auto repair...",
"transcript": "Full conversation transcript...",
"recording_url": "https://...",
"transfer_status": null,
"started_at": "2026-02-24T20:59:00Z",
"ended_at": "2026-02-24T21:00:00Z",
"assistant_id": "uuid",
"contact_id": "uuid",
"created_at": "2026-02-24T20:59:00Z"
}
],
"has_more": false,
"next_cursor": null,
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-24T21:05:00Z"
}
}
Obtenir un appel unique
GET
/v1/calls/:call_idcURL
curl -X GET "https://api.inboundflow.app/v1/calls/07f51470-ef1d-421c-a847-36e98732bb9b" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse : Objet appel unique. Inclut le tableau complet messages (historique de conversation), absent de l'endpoint liste.
👤Contacts
Lister tous les contacts
GET
/v1/contactsParamètres de Requête
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| limit | integer | 50 | Résultats par page (défaut: 50, max: 100) |
| cursor | string | null | Curseur de pagination |
| since | string | null | Filtre date ISO |
| phone | string | null | Filtrer par numéro exact |
cURL
curl -X GET "https://api.inboundflow.app/v1/contacts?limit=10" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse
JSON
{
"data": [
{
"id": "dbf31702-3468-4639-a5a4-e07f9bdae9a7",
"phone": "+14155551234",
"name": "Maria Garcia",
"email": "maria.garcia@gmail.com",
"company": null,
"source": "inbound_call",
"total_calls": 5,
"last_call_at": "2026-02-23T15:00:00Z",
"notes": "Regular customer, Toyota Camry 2019",
"created_at": "2026-02-20T14:00:00Z",
"updated_at": "2026-02-23T15:00:00Z"
}
],
"has_more": false,
"next_cursor": null,
"meta": {
"request_id": "req_abc123def456",
"timestamp": "2026-02-24T00:00:00Z"
}
}
Obtenir un contact
GET
/v1/contacts/:contact_idRéponse : Objet contact unique (même structure que la liste).
Créer un contact
POST
/v1/contactscURL
curl -X POST \
"https://api.inboundflow.app/v1/contacts" \
-H "Authorization: Bearer sk_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"phone": "+14155559999",
"name": "Jean Dupont",
"email": "jean@exemple.fr",
"company": "Example Co",
"notes": "New contact"
}'
🎯Prospects
Lister tous les prospects
GET
/v1/leadsParamètres de Requête
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| limit | integer | 50 | Résultats par page (défaut: 50, max: 100) |
| cursor | string | null | Curseur de pagination |
| since | string | null | Filtre date ISO |
| status | string | null | Filtre: new, contacted, qualified, converted, lost |
| urgency | string | null | Filtre: low, medium, high |
cURL
curl -X GET "https://api.inboundflow.app/v1/leads?status=new" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse
JSON
{
"data": [
{
"id": "uuid",
"caller_phone": "+1234567890",
"caller_name": "Dave",
"caller_email": "dave@example.com",
"status": "new",
"urgency": "medium",
"interest": "auto body work",
"qualification_reason": "pricing inquiry",
"call_summary": "Called about getting a quote...",
"call_log_id": "uuid",
"contact_id": "uuid",
"created_at": "2026-02-24T21:00:00Z",
"updated_at": "2026-02-24T21:00:00Z"
}
],
"has_more": false,
"next_cursor": null,
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-24T21:05:00Z"
}
}
📅Rendez-vous
Lister tous les rendez-vous
GET
/v1/appointmentsParamètres de Requête
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
| limit | integer | 50 | Résultats par page (défaut: 50, max: 100) |
| cursor | string | null | Curseur de pagination |
| since | string | null | Filtre date ISO |
| status | string | null | Filtre: booked, confirmed, cancelled, completed, no_show |
cURL
curl -X GET "https://api.inboundflow.app/v1/appointments?status=booked" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse
JSON
{
"data": [
{
"id": "uuid",
"caller_phone": "+1234567890",
"caller_name": "Sarah",
"appointment_date": "2026-02-25",
"appointment_time_start": "2026-02-25T11:00:00Z",
"appointment_time_end": "2026-02-25T12:00:00Z",
"service_type": "Auto Repair Appointment",
"status": "booked",
"calendar_event_link": "https://calendar.google.com/...",
"call_log_id": "uuid",
"contact_id": "uuid",
"created_at": "2026-02-24T21:00:00Z",
"updated_at": "2026-02-24T21:00:00Z"
}
],
"has_more": false,
"next_cursor": null,
"meta": {
"request_id": "req_abc123",
"timestamp": "2026-02-24T21:05:00Z"
}
}
🏢Compte
Informations de votre organisation
GET
/v1/mecURL
curl -X GET "https://api.inboundflow.app/v1/me" \
-H "Authorization: Bearer sk_live_your_key_here"
Réponse
JSON
{
"data": {
"organization_id": "becc3c5d-1755-420c-a3af-fe51ab2d04ca",
"organization_name": "Dave Auto Shop",
"plan": "Starter Plan",
"scopes": ["calls:read", "contacts:read", "contacts:write", "appointments:read", "leads:read"]
},
"meta": {
"request_id": "req_034e44e17b76",
"timestamp": "2026-02-24T00:10:48.025Z"
}
}