Aller au contenu
Menu de la documentation

Rechercher des entreprises

Liste les entreprises correspondant aux filtres, les meilleures en qualité d’abord, sauf si vous demandez un autre ordre. Les lignes consomment votre budget quotidien d’entreprises, pas votre quota de révélations. domain, website et contact restent à null tant que vous n’avez pas révélé l’entreprise.

GEThttps://findbytown.com/api/v1/businessesSans quota

Paramètres

NomTypeDescription
countrystringCode pays à deux lettres, comme FR. Voir GET /countries.
zonestringSlug de zone, comme fr_idf. Voir GET /zones.
citystringNom de ville dans n’importe quelle langue : Cologne trouve aussi Köln.
nearstringRecherche par rayon sous la forme lon,lat,km, jusqu’à 200 km. Seules les entreprises avec une position réelle correspondent.
nearNamestringNom du lieu indiqué dans near : les entreprises sans position exacte correspondent quand leur propre adresse le mentionne.
postcodestringDébut d’un code postal : 75011, ou 75 pour tous. Jusqu’à 4, séparés par des virgules.
deptstringCode d’un département français, comme 69 pour le Rhône.
polystringPolygone sous forme de sommets "lon lat" séparés par des points-virgules, de 3 à 60 sommets.
qstringMots-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.
categorystringSlug de catégorie générale. Voir GET /categories.
tradestringClé de métier, une famille de catégories proches. Voir GET /categories.
gcatstringUne catégorie exacte de la liste, sans tenir compte de la casse.
providerown_smtp | google | microsoft | yahoo | invalid | unknownFamille de messagerie de l’entreprise.
providerDetailstringNom exact de la messagerie, sans tenir compte de la casse.
hasPhonebooleantrue : uniquement les entreprises avec un numéro de téléphone enregistré.
noPhonebooleantrue : uniquement les entreprises sans numéro de téléphone enregistré.
hasContactsbooleantrue : uniquement les entreprises avec des contacts nommés.
noContactsbooleantrue : uniquement les entreprises sans contacts nommés.
hasOtherEmailsbooleantrue : uniquement les entreprises avec plus d’une adresse email.
qminintegerScore qualité minimal, de 0 à 100.
qmaxintegerScore qualité maximal, de 0 à 100.
precisionstringListe de précisions de position séparées par des virgules : exact, city, region, country.
approxbooleanfalse : uniquement les entreprises avec une position exacte. Valeur par défaut : true.
minRatingnumberNote minimale, de 0 à 5.
minReviewsintegerNombre minimal d’avis.
sizeClassPME | ETI | GECatégorie de taille au registre. Les données du registre ne sont connues que pour certaines entreprises françaises.
headcountstringUne tranche d’effectif du registre telle qu’enregistrée, comme 20-49.
minHeadcountintegerEffectif minimal au registre : une entreprise compte à partir du bas de sa tranche.
minRevenuenumberChiffre d’affaires minimal au registre, en euros.
legalFormstringForme juridique au registre, sans tenir compte de la casse.
sortquality | distance | rating | reviewsOrdre des résultats. distance nécessite near.
bboxstringCadre de carte sous la forme minLng,minLat,maxLng,maxLat.
pageintegerNuméro de page, à partir de 1. La dernière page accessible figure dans maxPage.
perPageintegerLignes par page. Un nombre plus élevé est lu comme le maximum, et la réponse indique la valeur appliquée.
localeen | fr | esLangue des libellés et des noms de catégories : en, fr ou es. Par défaut, la langue de votre compte.

Exemples

curl "https://findbytown.com/api/v1/businesses?country=FR&trade=plumber&perPage=1" \
  -H "Authorization: Bearer fbt_EXAMPLE_not_a_real_key_0000"

Réponse

Exemple avec des valeurs fictives :

{
  "data": [
    {
      "id": 1001,
      "name": "Example Plumbing",
      "domain": null,
      "website": null,
      "revealed": false,
      "zone": "fr_idf",
      "country": "FR",
      "precision": "exact",
      "quality": 80,
      "provider": "google",
      "providerDetail": "Google Workspace",
      "hasPhone": true,
      "hasEmail": true,
      "contactsCount": 1,
      "otherEmailsCount": 0,
      "city": "Exampleville",
      "adminArea": "Example Region",
      "postalCode": "00000",
      "address": "1 Example Street",
      "fullAddress": "1 Example Street, 00000 Exampleville",
      "activity": "Plumber",
      "category": "Plumber",
      "categories": [
        "Heating contractor"
      ],
      "websiteTitle": null,
      "description": "Plumbing and heating repairs.",
      "mapsUrl": null,
      "rating": 4.6,
      "reviews": 25,
      "distanceM": null,
      "facts": null,
      "contact": null
    }
  ],
  "page": 1,
  "perPage": 1,
  "total": 128,
  "maxPage": 200,
  "hasMore": true,
  "capped": false
}

Erreurs

CodeStatut HTTPSignification
validation_error400Un paramètre est manquant ou mal formé. details indique lequel.
unknown_parameter400Un 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_endpoint400Vous avez envoyé reveal= sur une lecture. Les lectures ne consomment jamais de quota : utilisez l’endpoint de révélation.
missing_api_key401En-tête Authorization absent ou vide.
invalid_api_key401La clé n’existe pas ou a été révoquée.
plan_without_api403L’offre actuelle du compte n’inclut pas l’API. S’applique dès la fin d’une offre.
suspended403Le compte est suspendu. Ses clés refonctionnent si la suspension est levée.
rate_limited429Trop de requêtes cette minute. Attendez le nombre de secondes indiqué dans Retry-After.
budget_exhausted429Vous avez atteint le budget quotidien d’entreprises distinctes. Les entreprises déjà vues aujourd’hui passent toujours. Retry-After indique quand il se réinitialise.
blocked429L’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_error500Une erreur s’est produite de notre côté. Indiquez requestId en écrivant au support.

Retour à findbytown