S'authentifier auprès de l'API Statrent
L'API Statrent nécessite l'utilisation de tokens d'accès pour authentifier les requêtes vers le serveur. Pour cela, vous devez échanger votre clé publique et votre clé secrète contre un token d'accès. La clé publique et la clé secrète sont disponible depuis l'interface de votre compte, sous l'onglet API.
Vous pouvez effectuer des appels vers l'API dans n'importe quel langage de programmation. L'exemple suivant vous présente comment obtenir un token d'accès à l'aide de Postman.
Exemple dans Postman
Dans l'application Postman, suivez les étapes suivantes :
- Mettez le type de requête à POST.
- Renseignez l'URL suivant : https://api.statrent.com/auth/token.
- Dans l'onglet Authorization, sélectionnez Basic Auth dans la liste Type.
- Dans le champ Username, insérez votre clé publique.
- Dans le champ Password, insérez votre clé privé.
- Dans l'onglet Body, sélectionnez le bouton radio x-www-form-urlencoded.
- Dans le champ KEY, insérez grant_type.
- Dans le champ VALUE, insérez client_credentials.
- Soumettez la requête.
Résultat de la requête
L'API Statrent renvoie un objet JSON en réponse à la requête précédente. L'objet JSON contient le token qu'il conviendra d'utiliser les requêtes vers l'API Statrent, ainsi que deux timestamps : un qui indique la date de génération du token et un autre informant du nombre de secondes durant lesquelles le token sera valide (à compter de la date de génération).
Rechercher des biens immobiliers
Pour faire des recherches sur l'API Statrent, il convient de réaliser des requêtes GET avec pour header Authorization, la valeur Bearer, suivi du token généré précédemment. Le date d'expiration du token ne doit pas être dépassée. L'URL de la requête est le suivant : https://api.statrent.com/search. Pour préciser les critères de votre recherche, utilisez les paramètres d'URL dans la liste ci-dessous.
Exemple d'URL de requête
L'URL https://api.statrent.com/search?place=Paris, France&sort_by=area_desc aura pour effet de faire une recherche sur la ville de Paris et dont les résultats seront triés par surface des biens, de la plus grande à la plus petite.
place
string
Une chaîne de caractères indiquant un lieu où effectuer la recherche. Ce lieu peut-être le nom d'une ville, d'un département, d'une région ou d'un pays.
postal_code
string
Une chaîne de caractères contenant un code postal où effectuer la recherche. Dans le cas où plusieurs codes postaux sont renseignés, ces derniers doivent être séparés par une virgule.
postal_codes
string
Un alias du paramètre postal_code.
sort_by
string
Une chaîne de caractères spécifiant l'ordre des résultats de la requête. Elle doit correspondre à l'une des valeurs suivantes :
- price_asc : classement des résultats par ordre croissant de prix.
- area_asc : classement des résultats par ordre croissant de surface des biens.
- area_desc : classement des résultats par ordre décroissant de surface des biens.
- price_area_asc : classement des résultats par ordre croissant de prix au mètre carré.
- rent_desc : classement des résultats par ordre décroissant de plus value estimée.
- yield_desc classement des résultats par ordre décroissant de rendement locatif brut estimé.
- cashflow_desc : classement des résultats par ordre décroissant de cashflow estimé.
- sr_score_desc : classement des résultats par ordre décroissant de SR Score. Si le paramètre sort_by est omis, les résultats seront par défaut triés par sr_score_desc.
- time_online_asc : classement des résultats par ordre croissant de date de mise en ligne d'annonce.
- time_online_desc : classement des résultats par ordre décroissant de date de mise en ligne d'annonce.
estate_type
string
Une chaîne de caractères contenant un type de bien sur lequel restreindre la recherche. Dans le cas où plusieurs types de bien sont renseignés, ces derniers doivent être séparés par une virgule. Le ou les type(s) de bien valides sont les suivants :
- apartment : les résultats incluront uniquement des appartements.
- house : les résultats incluront uniquement des maisons.
- land : les résultats incluront uniquement des terrains.
- parking : les résultats incluront uniquement des places de parking.
- commercial : les résultats incluront uniquement des locaux commerciaux.
- building : les résultats incluront uniquement des immeubles.
estate_types
string
Un alias du paramètre estate_type.
housing_type
string
Une chaîne de caractères correspondant à furnished dans le cas d'une recherche de biens meublés, ou not_furnished pour des biens non meublés uniquement. En cas d'absence du paramètre housing_type, les résultats pourront contenir des biens meublés ou non, sans distinction.
purchase_type
string
Une chaîne de caractères correspondant à new dans le cas d'une recherche de biens neufs, ou old pour des biens anciens uniquement. En cas d'absence du paramètre purchase_type, les résultats pourront contenir des biens neufs ou anciens, sans distinction.
nb_min_room
integer
Un entier spécifiant le nombre de pièces minimum des biens recherchés. L'entier doit être positif et compris entre 0 et 9 999.
nb_min_bedroom
integer
Un entier spécifiant le nombre de chambres minimum des biens recherchés. L'entier doit être positif et compris entre 0 et 9 999.
min_price
integer
Un entier imposant un prix minimum au delà duquel les biens apparaîtront dans la recherche. L'entier doit être positif et ne peut dépasser 999 999 999. Si le paramètre max_price est spécifié, min_price doit être inférieur ou égal à max_price.
max_price
integer
Un entier imposant un prix maximum au deçà duquel les biens apparaîtront dans la recherche. L'entier doit être positif et ne peut dépasser 999 999 999. Si le paramètre min_price est spécifié, max_price doit être supérieur ou égal à min_price.
min_area
integer
Un entier indiquant une surface minimum (en mètre carré) au delà de laquelle les biens apparaîtront dans la recherche. L'entier doit être positif et ne peut dépasser 999 999. Si le paramètre max_area est spécifié, min_area doit être inférieur ou égal à max_area.
max_area
integer
Un entier indiquant une surface maximum (en mètre carré) en deçà de laquelle les biens apparaîtront dans la recherche. L'entier doit être positif et ne peut dépasser 999 999. Si le paramètre min_area est spécifié, max_area doit être inférieur ou égal à min_area.
min_yield
integer
Un entier restreignant la recherche à des biens ayant un rendement locatif brut estimé supérieur ou égal à celui-ci. L'entier correspond à un pourcentage et doit être compris entre 0 et 50.
min_sr_score
integer
Un entier restreignant la recherche à des biens ayant un SR Score supérieur ou égal à celui-ci. L'entier doit être compris entre 1 et 10.
min_rent
integer
Un entier restreignant la recherche à des biens ayant une plus value immédiate supérieure ou égal à celui-ci. L'entier doit être compris entre -999 999 et 999 999.
min_cashflow
integer
Un entier restreignant la recherche à des biens ayant un cashflow brut estimé supérieur ou égal à celui-ci. L'entier doit être compris entre -999 999 et 999 999.
announcement_price_has_evolved
boolean
Un booléen qui a pour valeur true dans le but d'afficher uniquement des résultats dont le prix a évolué récemment, ou false pour afficher tous les résultats. Si ce paramètre est omis, la valeur par défaut sera false.
show_announcement_without_info
boolean
Un booléen qui a pour valeur true permet d'inclure dans les résultats les annonces sans informations pour les critères spécifiés dans la recherche, ou false pour ne pas afficher les résultats sans information. Si ce paramètre est omis, la valeur par défaut sera true.
has_box
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent un box, false sinon.
has_balcony
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent un balcon, false sinon.
has_cave
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent une cave, false sinon.
has_parking
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent une place de parking, false sinon.
has_climatisation
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent une climatisation, false sinon.
has_chimney
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent une cheminée, false sinon.
has_swimpool
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent une piscine, false sinon.
has_garden
boolean
Un booléen qui vaut true pour rechercher des biens qui possèdent un jardin, false sinon.
energy_category_max
string
Une chaîne de caractères contenant la classe Énergie (DPE) maximum que pourront avoir les biens recherchés. Les valeurs possibles sont les suivantes : A, B, C, D, E, F et G.
ges_category_max
string
Une chaîne de caractères contenant la classe GES maximum que pourront avoir les biens recherchés. Les valeurs possibles sont les suivantes : A, B, C, D, E, F et G.
offset
integer
Un entier supérieur ou égal à 0 afin de gérer la pagination des résultats de la recherche.
limit
integer
Un entier supérieur à 0 qui limite le nombre de résultat de la recherche.