Compter les entreprises
Le nombre d’entreprises correspondant aux filtres, sans aucune ligne renvoyée et sans consommer de budget. Exact jusqu’à 100 000 ; au-delà, c’est une estimation et exact vaut false.
GEThttps://findbytown.com/api/v1/businesses/countSans quota
Paramètres
| Nom | Type | Description |
|---|---|---|
| country | string | Code pays à deux lettres, comme FR. Voir GET /countries. |
| zone | string | Slug de zone, comme fr_idf. Voir GET /zones. |
| city | string | Nom de ville dans n’importe quelle langue : Cologne trouve aussi Köln. |
| near | string | Recherche par rayon sous la forme lon,lat,km, jusqu’à 200 km. Seules les entreprises avec une position réelle correspondent. |
| nearName | string | Nom du lieu indiqué dans near : les entreprises sans position exacte correspondent quand leur propre adresse le mentionne. |
| postcode | string | Début d’un code postal : 75011, ou 75 pour tous. Jusqu’à 4, séparés par des virgules. |
| dept | string | Code d’un département français, comme 69 pour le Rhône. |
| poly | string | Polygone sous forme de sommets "lon lat" séparés par des points-virgules, de 3 à 60 sommets. |
| q | string | Mots-clés, jusqu’à 6 mots, recherchés dans le nom, la description, l’adresse et les catégories. Un domaine ne correspond que s’il est saisi en entier. |
| category | string | Slug de catégorie générale. Voir GET /categories. |
| trade | string | Clé de métier, une famille de catégories proches. Voir GET /categories. |
| gcat | string | Une catégorie exacte de la liste, sans tenir compte de la casse. |
| provider | own_smtp | google | microsoft | yahoo | invalid | unknown | Famille de messagerie de l’entreprise. |
| providerDetail | string | Nom exact de la messagerie, sans tenir compte de la casse. |
| hasPhone | boolean | true : uniquement les entreprises avec un numéro de téléphone enregistré. |
| noPhone | boolean | true : uniquement les entreprises sans numéro de téléphone enregistré. |
| hasContacts | boolean | true : uniquement les entreprises avec des contacts nommés. |
| noContacts | boolean | true : uniquement les entreprises sans contacts nommés. |
| hasOtherEmails | boolean | true : uniquement les entreprises avec plus d’une adresse email. |
| qmin | integer | Score qualité minimal, de 0 à 100. |
| qmax | integer | Score qualité maximal, de 0 à 100. |
| precision | string | Liste de précisions de position séparées par des virgules : exact, city, region, country. |
| approx | boolean | false : uniquement les entreprises avec une position exacte. Valeur par défaut : true. |
| minRating | number | Note minimale, de 0 à 5. |
| minReviews | integer | Nombre minimal d’avis. |
| sizeClass | PME | ETI | GE | Catégorie de taille au registre. Les données du registre ne sont connues que pour certaines entreprises françaises. |
| headcount | string | Une tranche d’effectif du registre telle qu’enregistrée, comme 20-49. |
| minHeadcount | integer | Effectif minimal au registre : une entreprise compte à partir du bas de sa tranche. |
| minRevenue | number | Chiffre d’affaires minimal au registre, en euros. |
| legalForm | string | Forme juridique au registre, sans tenir compte de la casse. |
| sort | quality | distance | rating | reviews | Ordre des résultats. distance nécessite near. |
Exemples
curl "https://findbytown.com/api/v1/businesses/count?country=FR&trade=plumber" \
-H "Authorization: Bearer fbt_EXAMPLE_not_a_real_key_0000"const res = await fetch("https://findbytown.com/api/v1/businesses/count?country=FR&trade=plumber", {
headers: { Authorization: "Bearer fbt_EXAMPLE_not_a_real_key_0000" },
});
const body = await res.json();
if (!res.ok) throw new Error(body.error);
console.log(body);import requests
res = requests.get(
"https://findbytown.com/api/v1/businesses/count?country=FR&trade=plumber",
headers={"Authorization": "Bearer fbt_EXAMPLE_not_a_real_key_0000"},
)
body = res.json()
if not res.ok:
raise RuntimeError(body["error"])
print(body)Réponse
Exemple avec des valeurs fictives :
{
"data": {
"count": 128,
"exact": true,
"withEmail": 96,
"withPhone": 110,
"withContacts": 12,
"wellRated": 40
}
}Erreurs
| Code | Statut HTTP | Signification |
|---|---|---|
| validation_error | 400 | Un paramètre est manquant ou mal formé. details indique lequel. |
| unknown_parameter | 400 | Un paramètre de requête n’est pas connu de cet endpoint, en général à cause d’une faute de frappe. details indique lequel. |
| use_reveal_endpoint | 400 | Vous avez envoyé reveal= sur une lecture. Les lectures ne consomment jamais de quota : utilisez l’endpoint de révélation. |
| missing_api_key | 401 | En-tête Authorization absent ou vide. |
| invalid_api_key | 401 | La clé n’existe pas ou a été révoquée. |
| plan_without_api | 403 | L’offre actuelle du compte n’inclut pas l’API. S’applique dès la fin d’une offre. |
| suspended | 403 | Le compte est suspendu. Ses clés refonctionnent si la suspension est levée. |
| rate_limited | 429 | Trop de requêtes cette minute. Attendez le nombre de secondes indiqué dans Retry-After. |
| blocked | 429 | L’accès aux données d’entreprises est temporairement suspendu en raison d’un usage automatisé, comme le parcours des identifiants. Retry-After indique le temps restant. Écrivez au support s’il s’agit d’une erreur. |
| internal_error | 500 | Une erreur s’est produite de notre côté. Indiquez requestId en écrivant au support. |