Introduction
In order to access this IP you have to granted too.
Base URL
https://dashboard-preprod.appartement-construction.comAuthenticating requests
This API is not authenticated.
Alertes
APIs for managing alertes
Create an alert
Une description à completer
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/alerte/create" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","email":"john.doe@example.com","utm_source":"voluptas","utm_campaign":"aperiam","front_user_id":13,"alert_search":"repudiandae","alert_object":"dolore","alert_filter":"accusamus","alert_fields":"nihil","alert_order":"vel","actif":true}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/alerte/create"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"email": "john.doe@example.com",
"utm_source": "voluptas",
"utm_campaign": "aperiam",
"front_user_id": 13,
"alert_search": "repudiandae",
"alert_object": "dolore",
"alert_filter": "accusamus",
"alert_fields": "nihil",
"alert_order": "vel",
"actif": true
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/alerte/create',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'email' => 'john.doe@example.com',
'utm_source' => 'voluptas',
'utm_campaign' => 'aperiam',
'front_user_id' => 13,
'alert_search' => 'repudiandae',
'alert_object' => 'dolore',
'alert_filter' => 'accusamus',
'alert_fields' => 'nihil',
'alert_order' => 'vel',
'actif' => true,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/alerte/create'
payload = {
"website": "TC",
"email": "john.doe@example.com",
"utm_source": "voluptas",
"utm_campaign": "aperiam",
"front_user_id": 13,
"alert_search": "repudiandae",
"alert_object": "dolore",
"alert_filter": "accusamus",
"alert_fields": "nihil",
"alert_order": "vel",
"actif": true
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "alerte created"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"email": [
"Le champ email doit être une adresse email valide."
],
"actif": [
"Le champ actif doit être vrai ou faux."
]
}
}
Example response (500):
{
"code": 500,
"status": "error",
"message": "contact has not been created"
}
Received response:
Request failed with error:
Annonce
APIs for managing annonces
Display the specified annonce.
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123?website=TC&client_vars=a%3A50%3A%7Bs%3A21%3A%22PHP_FCGI_MAX_REQUESTS%22%3Bs%3A4%3A%225000%22%3Bs%3A5%3A%22PHPRC%22%3Bs%3A18%3A%22%2Fvar%2Fwww%2Fconf%2Fweb3%22%3Bs%3A3%3A%22PWD%22%3Bs%3A30%3A%22%2Fvar%2Fwww%2Fphp-fcgi-scripts%2Fweb3%22...&ip=88.12.14.134" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123"
);
let params = {
"website": "TC",
"client_vars": "a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...",
"ip": "88.12.14.134",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'client_vars'=> 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'ip'=> '88.12.14.134',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123'
params = {
'website': 'TC',
'client_vars': 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'ip': '88.12.14.134',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 7622,
"programme_id": 21,
"commune_id": 15992,
"client_id": 1,
"type": "APPARTEMENT",
"external_reference": "5002",
"slugged_external_reference": "5002",
"email_contact_additionnel": null,
"external_code_postal": "40000",
"adresse": "RUE FERME DE FATIGUE",
"proximite": "",
"libelle": "L'AME Ô",
"description": "Découvrez sans plus attendre, Quartier Saint médard, de beaux appartements du T1 au T3 DUPLEX, pour vivre ou investir à Mont de Marsan, à deux pas du centre ville. Belle opportunité pour INVESTIR. Pour plus d'infos, prenez contact avec l'un de nos conseillers Nexity !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 61,
"surface_maison": null,
"surface_terrain": null,
"surface_habitable": null,
"surface_sejour": null,
"prix": 155383,
"prix_maison": null,
"prix_terrain": null,
"nbr_piece": 3,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": 0,
"nbr_etage": null,
"ascenseur": 0,
"cave": 1,
"nbr_parking": 1,
"nbr_boxe": null,
"nbr_chambre": null,
"nbr_chambre_rdc": null,
"nbr_sdb": null,
"type_cuisine": null,
"type_chauffage": 0,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": 1,
"etat_interieur": null,
"date_dispo": "2022-06-29T22:00:00.000000Z",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 1,
"create_batch_id": 1326,
"update_batch_id": 2674,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-05-21T02:01:26.000000Z",
"created_at": "2020-05-21T02:01:26.000000Z",
"updated_at": "2020-12-28T11:04:57.000000Z",
"deleted_at": null,
"commune": {
"id": 15992,
"departement_id": 42,
"nom": "MONT DE MARSAN",
"insee": "40192",
"nom_special": "Mont-de-Marsan",
"nom_recherche": "MONTDEMARSAN",
"prefixe_nom_special": "",
"population": 28328,
"actif": 1,
"zone_id": null,
"longitude": -0.497885,
"latitude": 43.890985,
"centre": {
"type": "Point",
"coordinates": [
-0.497885,
43.890985
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:57.000000Z",
"deleted_at": null,
"departement": {
"id": 42,
"region_id": 18,
"nom": "LANDES",
"code": "40",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 18,
"pays_id": 1,
"nom": "Aquitaine",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"firstdistribution": {
"id": 16074,
"commune_id": 15992,
"code_postal": "40000",
"acheminement": "MONT DE MARSAN",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
},
"documents": [
"https:\/\/files.appartement-construction.com\/images\/nexity\/0048__48007-1.jpg",
"https:\/\/files.appartement-construction.com\/images\/nexity\/0048__48007-1.jpg",
"https:\/\/files.appartement-construction.com\/images\/nexity\/0048__48007-2.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0048-48007\/3_0048_48007_PRG_PHOT_48007.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0048-48007\/3_0048_48007_PRG_PHO2_48007.jpg"
]
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"annonce_id": [
"Le champ annonce id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Store a newly created annonce.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456,"commune_id":456,"ext_ref":"2924-Ab-c","type":"beatae","price":100000,"programme_id":12,"surface":104.9,"published":1,"adresse":"10 street of change","alarme":1,"annee_construction":"2012","ascenseur":0,"associated_websites_codes":"{\"0\":\"MB\",\"1\",\"AC\"}","avant_premiere":1,"bilan_conso_energie":"B","bilan_emission_ges":"A","cave":1,"charges_mois":55.12,"conso_energie":"1520","date_dispo":"15\/01\/2023","description":"My long description","droit_au_bail":0,"email_contact_additionnel":"me@example.com","emission_ges":"1520","etage":2,"etat_interieur":"Etat neuf","exclusivite":0,"external_code_postal":"25300","interphone":0,"libelle":"Appartement neuf sous les combles 75m\u0153","loyer_mois_charges_comprises":760.25,"loyer_mois":705.13,"moderated":0,"nbr_balcon":1,"nbr_boxe":0,"nbr_chambre_rdc":1,"nbr_etage":2,"nbr_parking":1,"nbr_piece":4,"nbr_sdb":4,"piscine":0,"priorite_visibilite":2,"prix_maison":120000,"prix_terrain":8000,"prix":200000,"proximite":"Arret de bus ligne 10","sous_type_bien":250,"surface_balcon":14,"surface_habitable":100,"surface_maison":152.15,"surface_sejour":40.51,"surface_terrain":800,"taxe_fonciere":1000.9,"terrasse":0,"type_chauffage":4608,"type_cuisine":6,"type_eau_chaude":70}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "beatae",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
'commune_id' => 456,
'ext_ref' => '2924-Ab-c',
'type' => 'beatae',
'price' => 100000.0,
'programme_id' => 12,
'surface' => 104.9,
'published' => 1,
'adresse' => '10 street of change',
'alarme' => 1,
'annee_construction' => '2012',
'ascenseur' => 0,
'associated_websites_codes' => '{"0":"MB","1","AC"}',
'avant_premiere' => 1,
'bilan_conso_energie' => 'B',
'bilan_emission_ges' => 'A',
'cave' => 1,
'charges_mois' => 55.12,
'conso_energie' => '1520',
'date_dispo' => '15/01/2023',
'description' => 'My long description',
'droit_au_bail' => 0.0,
'email_contact_additionnel' => 'me@example.com',
'emission_ges' => '1520',
'etage' => 2,
'etat_interieur' => 'Etat neuf',
'exclusivite' => 0,
'external_code_postal' => '25300',
'interphone' => 0,
'libelle' => 'Appartement neuf sous les combles 75mœ',
'loyer_mois_charges_comprises' => 760.25,
'loyer_mois' => 705.13,
'moderated' => 0,
'nbr_balcon' => 1,
'nbr_boxe' => 0,
'nbr_chambre_rdc' => 1,
'nbr_etage' => 2,
'nbr_parking' => 1,
'nbr_piece' => 4,
'nbr_sdb' => 4,
'piscine' => 0,
'priorite_visibilite' => 2,
'prix_maison' => 120000.0,
'prix_terrain' => 8000.0,
'prix' => 200000.0,
'proximite' => 'Arret de bus ligne 10',
'sous_type_bien' => 250,
'surface_balcon' => 14.0,
'surface_habitable' => 100.0,
'surface_maison' => 152.15,
'surface_sejour' => 40.51,
'surface_terrain' => 800.0,
'taxe_fonciere' => 1000.9,
'terrasse' => 0,
'type_chauffage' => 4608,
'type_cuisine' => 6,
'type_eau_chaude' => 70,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce'
payload = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "beatae",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "user created"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"commune_id": [
"Le champ commune id est obligatoire."
],
"external_code_postal": [
"Le champ external code postal est obligatoire."
]
}
}
Received response:
Request failed with error:
Update the specified annonce.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/1" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456,"commune_id":456,"ext_ref":"2924-Ab-c","type":"velit","price":100000,"programme_id":12,"surface":104.9,"published":1,"adresse":"10 street of change","alarme":1,"annee_construction":"2012","ascenseur":0,"associated_websites_codes":"{\"0\":\"MB\",\"1\",\"AC\"}","avant_premiere":1,"bilan_conso_energie":"B","bilan_emission_ges":"A","cave":1,"charges_mois":55.12,"conso_energie":"1520","date_dispo":"15\/01\/2023","description":"My long description","droit_au_bail":0,"email_contact_additionnel":"me@example.com","emission_ges":"1520","etage":2,"etat_interieur":"Etat neuf","exclusivite":0,"external_code_postal":"25300","interphone":0,"libelle":"Appartement neuf sous les combles 75m\u0153","loyer_mois_charges_comprises":760.25,"loyer_mois":705.13,"moderated":0,"nbr_balcon":1,"nbr_boxe":0,"nbr_chambre_rdc":1,"nbr_etage":2,"nbr_parking":1,"nbr_piece":4,"nbr_sdb":4,"piscine":0,"priorite_visibilite":2,"prix_maison":120000,"prix_terrain":8000,"prix":200000,"proximite":"Arret de bus ligne 10","sous_type_bien":250,"surface_balcon":14,"surface_habitable":100,"surface_maison":152.15,"surface_sejour":40.51,"surface_terrain":800,"taxe_fonciere":1000.9,"terrasse":0,"type_chauffage":4608,"type_cuisine":6,"type_eau_chaude":70}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/1"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "velit",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/1',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
'commune_id' => 456,
'ext_ref' => '2924-Ab-c',
'type' => 'velit',
'price' => 100000.0,
'programme_id' => 12,
'surface' => 104.9,
'published' => 1,
'adresse' => '10 street of change',
'alarme' => 1,
'annee_construction' => '2012',
'ascenseur' => 0,
'associated_websites_codes' => '{"0":"MB","1","AC"}',
'avant_premiere' => 1,
'bilan_conso_energie' => 'B',
'bilan_emission_ges' => 'A',
'cave' => 1,
'charges_mois' => 55.12,
'conso_energie' => '1520',
'date_dispo' => '15/01/2023',
'description' => 'My long description',
'droit_au_bail' => 0.0,
'email_contact_additionnel' => 'me@example.com',
'emission_ges' => '1520',
'etage' => 2,
'etat_interieur' => 'Etat neuf',
'exclusivite' => 0,
'external_code_postal' => '25300',
'interphone' => 0,
'libelle' => 'Appartement neuf sous les combles 75mœ',
'loyer_mois_charges_comprises' => 760.25,
'loyer_mois' => 705.13,
'moderated' => 0,
'nbr_balcon' => 1,
'nbr_boxe' => 0,
'nbr_chambre_rdc' => 1,
'nbr_etage' => 2,
'nbr_parking' => 1,
'nbr_piece' => 4,
'nbr_sdb' => 4,
'piscine' => 0,
'priorite_visibilite' => 2,
'prix_maison' => 120000.0,
'prix_terrain' => 8000.0,
'prix' => 200000.0,
'proximite' => 'Arret de bus ligne 10',
'sous_type_bien' => 250,
'surface_balcon' => 14.0,
'surface_habitable' => 100.0,
'surface_maison' => 152.15,
'surface_sejour' => 40.51,
'surface_terrain' => 800.0,
'taxe_fonciere' => 1000.9,
'terrasse' => 0,
'type_chauffage' => 4608,
'type_cuisine' => 6,
'type_eau_chaude' => 70,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/1'
payload = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "velit",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "annonce updated"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"annonce_id": [
"Le champ annonce id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Remove the specified annonce.
Example request:
curl -X DELETE \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC"
}
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123'
payload = {
"website": "TC"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "annonce deleted"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"annonce_id": [
"Le champ annonce id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Attach a document to the specified annonce.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/attach/document" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","document_id":154}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/attach/document"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"document_id": 154
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/attach/document',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'document_id' => 154,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/attach/document'
payload = {
"website": "TC",
"document_id": 154
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "document attached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"document_id": [
"Le champ document id est obligatoire."
]
}
}
Received response:
Request failed with error:
Detach a document to the specified annonce.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/detach/document" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","document_id":154}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/detach/document"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"document_id": 154
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/detach/document',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'document_id' => 154,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/123/detach/document'
payload = {
"website": "TC",
"document_id": 154
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "document detached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"document_id": [
"Le champ document id est obligatoire."
]
}
}
Received response:
Request failed with error:
Search All
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/all" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","type_annonce":"APPARTEMENT NEUF, MAISON NEUF","client_id":12,"range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","country":"fr","only_with_programme":false,"page":1}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/all"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"type_annonce": "APPARTEMENT NEUF, MAISON NEUF",
"client_id": 12,
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"only_with_programme": false,
"page": 1
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/all',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'type_annonce' => 'APPARTEMENT NEUF, MAISON NEUF',
'client_id' => 12,
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'country' => 'fr',
'only_with_programme' => false,
'page' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/all'
payload = {
"website": "TC",
"type_annonce": "APPARTEMENT NEUF, MAISON NEUF",
"client_id": 12,
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"only_with_programme": false,
"page": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by State
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/state" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","state":"01","country":"fr","page":1}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/state"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr",
"page": 1
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/state',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'state' => '01',
'country' => 'fr',
'page' => 1,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/state'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr",
"page": 1
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Zip
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/zip" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","zip":"75000","country":"fr","page":1,"client_id":12}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/zip"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr",
"page": 1,
"client_id": 12
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/zip',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'zip' => '75000',
'country' => 'fr',
'page' => 1,
'client_id' => 12,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/zip'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr",
"page": 1,
"client_id": 12
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Region
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/region" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","region":"01","country":"fr","page":1,"client_id":12}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/region"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/region',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'region' => '01',
'country' => 'fr',
'page' => 1,
'client_id' => 12,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/region'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Client
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","client":"01","country":"fr","page":1,"client_id":12}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'client' => '01',
'country' => 'fr',
'page' => 1,
'client_id' => 12,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Client
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client-api" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","client":"01","country":"fr","page":1,"client_id":12}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client-api"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client-api',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'client' => '01',
'country' => 'fr',
'page' => 1,
'client_id' => 12,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/client-api'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr",
"page": 1,
"client_id": 12
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Programme
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/programme" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","programme":"1,25,47","consultation":1,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","country":"fr","page":1,"client_id":12}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/programme"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"programme": "1,25,47",
"consultation": 1,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"page": 1,
"client_id": 12
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/programme',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'programme' => '1,25,47',
'consultation' => 1,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'country' => 'fr',
'page' => 1,
'client_id' => 12,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/search/programme'
payload = {
"website": "TC",
"programme": "1,25,47",
"consultation": 1,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"page": 1,
"client_id": 12
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Global count
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/all?website=TC&type_annonce=%22APPARTEMENT+NEUF%2C+MAISON+NEUF%22" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/all"
);
let params = {
"website": "TC",
"type_annonce": ""APPARTEMENT NEUF, MAISON NEUF"",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/all',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'type_annonce'=> '"APPARTEMENT NEUF, MAISON NEUF"',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/all'
params = {
'website': 'TC',
'type_annonce': '"APPARTEMENT NEUF, MAISON NEUF"',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Count by State
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/state" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","state":"01","country":"fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/state"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/state',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'state' => '01',
'country' => 'fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/state'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Count by Zip
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/zip" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","zip":"75000","country":"fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/zip"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/zip',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'zip' => '75000',
'country' => 'fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/zip'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Count by Region
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/region" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","region":"01,02","country":"fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/region"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01,02",
"country": "fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/region',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'region' => '01,02',
'country' => 'fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/region'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01,02",
"country": "fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Count by Client
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/client" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","client":"01","country":"fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/client"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/client',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'client' => '01',
'country' => 'fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annonce/count/client'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"client": "01",
"country": "fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Annuaire
APIs for managing annuaire
List clients in annuaire
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annuaire?website=TC&paginate=10&page=2" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annuaire"
);
let params = {
"website": "TC",
"paginate": "10",
"page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'paginate'=> '10',
'page'=> '2',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire'
params = {
'website': 'TC',
'paginate': '10',
'page': '2',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": [
{
"id": 1,
"type_id": 5,
"commune_id": 9,
"actif": 1,
"annuaire": 1,
"nom": "Nexity",
"adresse": "19 p Rue de Vienne",
"adresse_2": "Paris 8e Arrondissement",
"website": "https:\/\/www.nexity.fr",
"slogan": "Achat, vente, location, gestion, transaction, financement, promotion immobilière et solutions d'accompagnement.",
"description": "<p>Véritable expert de l’immobilier, grâce à ses filiales spécialisées dans la vente, l’achat, la location ou la gestion de tout type de bien (terrains, bureaux, logements), Nexity est aujourd’hui un promoteur incontournable avec plus de 12 000 logements neufs construits chaque année.<\/p><p>Nexity commercialise actuellement plus de 6000 appartements neufs répartis sur toute la France. Paris, Bordeaux et Marseille sont les villes où se trouvent le plus grand nombre de programmes neufs Nexity avec des prix allant de 57 900€ pour un studio de 18.60m² à Perpignan à 2 150 000€ pour un loft de 95m² à Paris.<\/p><p>Avec l’achat de votre appartement neuf, Nexity vous offre également la recherche des meilleurs financements, grâce à ses nombreux partenariats bancaires. Que ce soit pour votre habitat principal ou pour un investissement locatif, leurs experts immobiliers sauront trouver les meilleurs conditions pour réaliser votre projet.<\/p><p>Si vous souhaitez investir dans l'immobilier neuf, le groupe Nexity développe de nombreux programmes éligibles aux différents dispositifs fiscaux (Pinel, LMNP, Censi-Bouvard) et assure également la gestion des résidences étudiantes “Studea “et des résidences seniors \"Domitys\".<\/p>",
"logo": "nexity.png",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/nexity.png",
"longitude": "2.321850",
"latitude": "48.877200",
"created_at": "2018-10-21T09:51:02.000000Z",
"updated_at": "2020-03-12T14:04:07.000000Z",
"childs": [
{
"id": 2,
"parent_id": 1,
"type_id": 5,
"commune_id": 18,
"nom": "TEST2",
"created_at": "2018-10-21T11:12:15.000000Z",
"updated_at": "2020-03-11T08:15:15.000000Z",
"childs": []
}
]
},
{
"id": 722,
"type_id": 5,
"commune_id": 36310,
"actif": 1,
"annuaire": 1,
"nom": "Ogic",
"adresse": "58, avenue Édouard Vaillant",
"slogan": "Ogic vous propose des biens immobiliers de grande qualité : résidentiel, entreprise ou réhabilitation de bâtiments anciens. Idéal acquéreurs et investisseurs !",
"description": "<p>Fondé en 1966, OGIC est un promoteur présent dans toute l'Île-de-France, en régions Rhône-Alpes et Provence-Alpes-Côte d'Azur.Fidèle à son ambition de réaliser des immeubles de qualité, OGIC privilégie les plus belles adresses proposant une architecture toujours adaptée au quartier dans lequel elle doit s'insérer. Choisir OGIC, c'est privilégier une adresse reconnue garante d'un patrimoine sûr et pérenne. Constitué d'une équipe de professionnels aguerris, le groupe intervient dans l'ensemble des métiers de la promotion immobilière :<\/p><ul><li><p>L'immobilier résidentiel<\/p><\/li><li><p>L'immobilier d'entreprise<\/p><\/li><li><p>La réhabilitation et valorisation de bâtiments anciens ou de Monuments Historiques<\/p><\/li><li><p>L'aménagement urbain et les opérations complexes de centre ville.<\/p><\/li><\/ul>",
"logo": "ogic.jpeg",
"created_at": "2020-03-11T13:08:30.000000Z",
"updated_at": "2020-03-11T13:08:30.000000Z",
"childs": []
},
{
"id": 2202,
"type_id": 7,
"commune_id": 9659,
"actif": 1,
"annuaire": 1,
"external_reference": "260045",
"nom": "LCDI Le comptoir de l'immobilier",
"email": "contact@lcdimmo.com",
"adresse": "ZA Fortuneau9 Allée Hispano Suiza",
"telephone": "04 75 53 19 19",
"website": "www.lcdimmo.com",
"logo": "ubiflowbailleur_1_0_260045_260045.jpg",
"created_at": "2020-11-03T14:39:24.000000Z",
"updated_at": "2021-02-01T09:26:32.000000Z",
"childs": []
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire?page=1",
"next_page_url": null,
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire",
"per_page": 10,
"prev_page_url": null,
"to": 3,
"total": 3
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
List in random order
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/random?website=TC&paginate=10&page=2" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/random"
);
let params = {
"website": "TC",
"paginate": "10",
"page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/random',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'paginate'=> '10',
'page'=> '2',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/random'
params = {
'website': 'TC',
'paginate': '10',
'page': '2',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": [
{
"id": 1,
"type_id": 5,
"commune_id": 9,
"actif": 1,
"annuaire": 1,
"nom": "Nexity",
"adresse": "19 p Rue de Vienne",
"adresse_2": "Paris 8e Arrondissement",
"website": "https:\/\/www.nexity.fr",
"slogan": "Achat, vente, location, gestion, transaction, financement, promotion immobilière et solutions d'accompagnement.",
"description": "<p>Véritable expert de l’immobilier, grâce à ses filiales spécialisées dans la vente, l’achat, la location ou la gestion de tout type de bien (terrains, bureaux, logements), Nexity est aujourd’hui un promoteur incontournable avec plus de 12 000 logements neufs construits chaque année.<\/p><p>Nexity commercialise actuellement plus de 6000 appartements neufs répartis sur toute la France. Paris, Bordeaux et Marseille sont les villes où se trouvent le plus grand nombre de programmes neufs Nexity avec des prix allant de 57 900€ pour un studio de 18.60m² à Perpignan à 2 150 000€ pour un loft de 95m² à Paris.<\/p><p>Avec l’achat de votre appartement neuf, Nexity vous offre également la recherche des meilleurs financements, grâce à ses nombreux partenariats bancaires. Que ce soit pour votre habitat principal ou pour un investissement locatif, leurs experts immobiliers sauront trouver les meilleurs conditions pour réaliser votre projet.<\/p><p>Si vous souhaitez investir dans l'immobilier neuf, le groupe Nexity développe de nombreux programmes éligibles aux différents dispositifs fiscaux (Pinel, LMNP, Censi-Bouvard) et assure également la gestion des résidences étudiantes “Studea “et des résidences seniors \"Domitys\".<\/p>",
"logo": "nexity.png",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/nexity.png",
"longitude": "2.321850",
"latitude": "48.877200",
"created_at": "2018-10-21T09:51:02.000000Z",
"updated_at": "2020-03-12T14:04:07.000000Z",
"childs": [
{
"id": 2,
"parent_id": 1,
"type_id": 5,
"commune_id": 18,
"nom": "TEST2",
"created_at": "2018-10-21T11:12:15.000000Z",
"updated_at": "2020-03-11T08:15:15.000000Z",
"childs": []
}
]
},
{
"id": 722,
"type_id": 5,
"commune_id": 36310,
"actif": 1,
"annuaire": 1,
"nom": "Ogic",
"adresse": "58, avenue Édouard Vaillant",
"slogan": "Ogic vous propose des biens immobiliers de grande qualité : résidentiel, entreprise ou réhabilitation de bâtiments anciens. Idéal acquéreurs et investisseurs !",
"description": "<p>Fondé en 1966, OGIC est un promoteur présent dans toute l'Île-de-France, en régions Rhône-Alpes et Provence-Alpes-Côte d'Azur.Fidèle à son ambition de réaliser des immeubles de qualité, OGIC privilégie les plus belles adresses proposant une architecture toujours adaptée au quartier dans lequel elle doit s'insérer. Choisir OGIC, c'est privilégier une adresse reconnue garante d'un patrimoine sûr et pérenne. Constitué d'une équipe de professionnels aguerris, le groupe intervient dans l'ensemble des métiers de la promotion immobilière :<\/p><ul><li><p>L'immobilier résidentiel<\/p><\/li><li><p>L'immobilier d'entreprise<\/p><\/li><li><p>La réhabilitation et valorisation de bâtiments anciens ou de Monuments Historiques<\/p><\/li><li><p>L'aménagement urbain et les opérations complexes de centre ville.<\/p><\/li><\/ul>",
"logo": "ogic.jpeg",
"created_at": "2020-03-11T13:08:30.000000Z",
"updated_at": "2020-03-11T13:08:30.000000Z",
"childs": []
},
{
"id": 2202,
"type_id": 7,
"commune_id": 9659,
"actif": 1,
"annuaire": 1,
"external_reference": "260045",
"nom": "LCDI Le comptoir de l'immobilier",
"email": "contact@lcdimmo.com",
"adresse": "ZA Fortuneau9 Allée Hispano Suiza",
"telephone": "04 75 53 19 19",
"website": "www.lcdimmo.com",
"logo": "ubiflowbailleur_1_0_260045_260045.jpg",
"created_at": "2020-11-03T14:39:24.000000Z",
"updated_at": "2021-02-01T09:26:32.000000Z",
"childs": []
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire?page=1",
"next_page_url": null,
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire",
"per_page": 10,
"prev_page_url": null,
"to": 3,
"total": 3
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Search grouped by region
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/region?website=TC®ions=1%2C2&paginate=10&page=2" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/region"
);
let params = {
"website": "TC",
"regions": "1,2",
"paginate": "10",
"page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/region',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'regions'=> '1,2',
'paginate'=> '10',
'page'=> '2',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/region'
params = {
'website': 'TC',
'regions': '1,2',
'paginate': '10',
'page': '2',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": {
"13 - Île-de-France": [
{
"id": 1,
"type_id": 5,
"commune_id": 9,
"actif": 1,
"annuaire": 1,
"nom": "Nexity",
"adresse": "19 p Rue de Vienne",
"adresse_2": "Paris 8e Arrondissement",
"website": "https:\/\/www.nexity.fr",
"slogan": "Achat, vente, location, gestion, transaction, financement, promotion immobilière et solutions d'accompagnement.",
"description": "<p>Véritable expert de l’immobilier, grâce à ses filiales spécialisées dans la vente, l’achat, la location ou la gestion de tout type de bien (terrains, bureaux, logements), Nexity est aujourd’hui un promoteur incontournable avec plus de 12 000 logements neufs construits chaque année.<\/p><p>Nexity commercialise actuellement plus de 6000 appartements neufs répartis sur toute la France. Paris, Bordeaux et Marseille sont les villes où se trouvent le plus grand nombre de programmes neufs Nexity avec des prix allant de 57 900€ pour un studio de 18.60m² à Perpignan à 2 150 000€ pour un loft de 95m² à Paris.<\/p><p>Avec l’achat de votre appartement neuf, Nexity vous offre également la recherche des meilleurs financements, grâce à ses nombreux partenariats bancaires. Que ce soit pour votre habitat principal ou pour un investissement locatif, leurs experts immobiliers sauront trouver les meilleurs conditions pour réaliser votre projet.<\/p><p>Si vous souhaitez investir dans l'immobilier neuf, le groupe Nexity développe de nombreux programmes éligibles aux différents dispositifs fiscaux (Pinel, LMNP, Censi-Bouvard) et assure également la gestion des résidences étudiantes “Studea “et des résidences seniors \"Domitys\".<\/p>",
"logo": "nexity.png",
"longitude": "2.321850",
"latitude": "48.877200",
"created_at": "2018-10-21T09:51:02.000000Z",
"updated_at": "2020-03-12T14:04:07.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/nexity.png",
"childs": [
{
"id": 2,
"parent_id": 1,
"type_id": 5,
"commune_id": 18,
"nom": "TEST2",
"created_at": "2018-10-21T11:12:15.000000Z",
"updated_at": "2020-03-11T08:15:15.000000Z",
"childs": []
}
],
"commune": {
"id": 9,
"departement_id": 1,
"nom": "PARIS 08",
"insee": "75108",
"nom_special": "PARIS 8EME ARRONDISSEMENT",
"nom_recherche": "PARIS8EMEARRONDISSEMENT",
"actif": 1,
"longitude": 2.316333,
"latitude": 48.877783,
"centre": {
"type": "Point",
"coordinates": [
2.316333,
48.877783
]
},
"updated_at": "2021-02-08T16:49:25.000000Z",
"departement": {
"id": 1,
"region_id": 13,
"nom": "PARIS",
"code": "75",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2018-10-21T10:27:44.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
},
{
"id": 722,
"type_id": 5,
"commune_id": 36310,
"actif": 1,
"annuaire": 1,
"nom": "Ogic",
"adresse": "58, avenue Édouard Vaillant",
"slogan": "Ogic vous propose des biens immobiliers de grande qualité : résidentiel, entreprise ou réhabilitation de bâtiments anciens. Idéal acquéreurs et investisseurs !",
"description": "<p>Fondé en 1966, OGIC est un promoteur présent dans toute l'Île-de-France, en régions Rhône-Alpes et Provence-Alpes-Côte d'Azur.Fidèle à son ambition de réaliser des immeubles de qualité, OGIC privilégie les plus belles adresses proposant une architecture toujours adaptée au quartier dans lequel elle doit s'insérer. Choisir OGIC, c'est privilégier une adresse reconnue garante d'un patrimoine sûr et pérenne. Constitué d'une équipe de professionnels aguerris, le groupe intervient dans l'ensemble des métiers de la promotion immobilière :<\/p><ul><li><p>L'immobilier résidentiel<\/p><\/li><li><p>L'immobilier d'entreprise<\/p><\/li><li><p>La réhabilitation et valorisation de bâtiments anciens ou de Monuments Historiques<\/p><\/li><li><p>L'aménagement urbain et les opérations complexes de centre ville.<\/p><\/li><\/ul>",
"logo": "ogic.jpeg",
"created_at": "2020-03-11T13:08:30.000000Z",
"updated_at": "2020-03-11T13:08:30.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/ogic.jpeg",
"childs": [],
"commune": {
"id": 36310,
"departement_id": 93,
"nom": "BOULOGNE BILLANCOURT",
"insee": "92012",
"nom_special": "Boulogne-Billancourt",
"nom_recherche": "BOULOGNEBILLANCOURT",
"population": 101743,
"actif": 1,
"longitude": 2.243312,
"latitude": 48.8338,
"centre": {
"type": "Point",
"coordinates": [
2.243312,
48.8338
]
},
"updated_at": "2021-02-08T16:50:35.000000Z",
"departement": {
"id": 93,
"region_id": 13,
"nom": "HAUTS-DE-SEINE",
"code": "92",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
}
],
"3 - Rhône-Alpes": [
{
"id": 2202,
"type_id": 7,
"commune_id": 9659,
"actif": 1,
"annuaire": 1,
"external_reference": "260045",
"nom": "LCDI Le comptoir de l'immobilier",
"email": "contact@lcdimmo.com",
"adresse": "ZA Fortuneau9 Allée Hispano Suiza",
"telephone": "04 75 53 19 19",
"website": "www.lcdimmo.com",
"logo": "ubiflowbailleur_1_0_260045_260045.jpg",
"created_at": "2020-11-03T14:39:24.000000Z",
"updated_at": "2021-02-01T09:26:32.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/ubiflowbailleur_1_0_260045_260045.jpg",
"childs": [],
"commune": {
"id": 9659,
"departement_id": 26,
"nom": "MONTELIMAR",
"insee": "26198",
"nom_special": "Montélimar",
"nom_recherche": "MONTELIMAR",
"population": 29982,
"actif": 1,
"longitude": 4.750929,
"latitude": 44.558692,
"centre": {
"type": "Point",
"coordinates": [
4.750929,
44.558692
]
},
"updated_at": "2021-02-08T16:49:45.000000Z",
"departement": {
"id": 26,
"region_id": 3,
"nom": "DROME",
"code": "26",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"region": {
"id": 3,
"pays_id": 1,
"nom": "Rhône-Alpes",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
}
]
},
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/region?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/region?page=1",
"next_page_url": null,
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/region",
"per_page": 10,
"prev_page_url": null,
"to": 3,
"total": 3
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"regions.0": [
"Le champ regions.0 sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Search grouped by state
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/state?website=TC&states=1%2C2&paginate=10&page=2" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/state"
);
let params = {
"website": "TC",
"states": "1,2",
"paginate": "10",
"page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/state',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'states'=> '1,2',
'paginate'=> '10',
'page'=> '2',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/state'
params = {
'website': 'TC',
'states': '1,2',
'paginate': '10',
'page': '2',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": {
"1 - PARIS": [
{
"id": 1,
"type_id": 5,
"commune_id": 9,
"actif": 1,
"annuaire": 1,
"nom": "Nexity",
"adresse": "19 p Rue de Vienne",
"adresse_2": "Paris 8e Arrondissement",
"website": "https:\/\/www.nexity.fr",
"slogan": "Achat, vente, location, gestion, transaction, financement, promotion immobilière et solutions d'accompagnement.",
"description": "<p>Véritable expert de l’immobilier, grâce à ses filiales spécialisées dans la vente, l’achat, la location ou la gestion de tout type de bien (terrains, bureaux, logements), Nexity est aujourd’hui un promoteur incontournable avec plus de 12 000 logements neufs construits chaque année.<\/p><p>Nexity commercialise actuellement plus de 6000 appartements neufs répartis sur toute la France. Paris, Bordeaux et Marseille sont les villes où se trouvent le plus grand nombre de programmes neufs Nexity avec des prix allant de 57 900€ pour un studio de 18.60m² à Perpignan à 2 150 000€ pour un loft de 95m² à Paris.<\/p><p>Avec l’achat de votre appartement neuf, Nexity vous offre également la recherche des meilleurs financements, grâce à ses nombreux partenariats bancaires. Que ce soit pour votre habitat principal ou pour un investissement locatif, leurs experts immobiliers sauront trouver les meilleurs conditions pour réaliser votre projet.<\/p><p>Si vous souhaitez investir dans l'immobilier neuf, le groupe Nexity développe de nombreux programmes éligibles aux différents dispositifs fiscaux (Pinel, LMNP, Censi-Bouvard) et assure également la gestion des résidences étudiantes “Studea “et des résidences seniors \"Domitys\".<\/p>",
"logo": "nexity.png",
"longitude": "2.321850",
"latitude": "48.877200",
"created_at": "2018-10-21T09:51:02.000000Z",
"updated_at": "2020-03-12T14:04:07.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/nexity.png",
"childs": [
{
"id": 2,
"parent_id": 1,
"type_id": 5,
"commune_id": 18,
"nom": "TEST2",
"created_at": "2018-10-21T11:12:15.000000Z",
"updated_at": "2020-03-11T08:15:15.000000Z",
"childs": []
}
],
"commune": {
"id": 9,
"departement_id": 1,
"nom": "PARIS 08",
"insee": "75108",
"nom_special": "PARIS 8EME ARRONDISSEMENT",
"nom_recherche": "PARIS8EMEARRONDISSEMENT",
"actif": 1,
"longitude": 2.316333,
"latitude": 48.877783,
"centre": {
"type": "Point",
"coordinates": [
2.316333,
48.877783
]
},
"updated_at": "2021-02-08T16:49:25.000000Z",
"departement": {
"id": 1,
"region_id": 13,
"nom": "PARIS",
"code": "75",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2018-10-21T10:27:44.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
}
]
},
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/state?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/state?page=1",
"next_page_url": null,
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/state",
"per_page": 10,
"prev_page_url": null,
"to": 1,
"total": 1
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"states": [
"Le champ states est obligatoire."
]
}
}
Received response:
Request failed with error:
Search by clients IDS
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/ids?website=TC&client_id=1%2C2&paginate=10&page=2" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/ids"
);
let params = {
"website": "TC",
"client_id": "1,2",
"paginate": "10",
"page": "2",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/ids',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'client_id'=> '1,2',
'paginate'=> '10',
'page'=> '2',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/annuaire/search/ids'
params = {
'website': 'TC',
'client_id': '1,2',
'paginate': '10',
'page': '2',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": [
{
"id": 1,
"type_id": 5,
"commune_id": 9,
"actif": 1,
"annuaire": 1,
"nom": "Nexity",
"adresse": "19 p Rue de Vienne",
"adresse_2": "Paris 8e Arrondissement",
"website": "https:\/\/www.nexity.fr",
"slogan": "Achat, vente, location, gestion, transaction, financement, promotion immobilière et solutions d'accompagnement.",
"description": "<p>Véritable expert de l’immobilier, grâce à ses filiales spécialisées dans la vente, l’achat, la location ou la gestion de tout type de bien (terrains, bureaux, logements), Nexity est aujourd’hui un promoteur incontournable avec plus de 12 000 logements neufs construits chaque année.<\/p><p>Nexity commercialise actuellement plus de 6000 appartements neufs répartis sur toute la France. Paris, Bordeaux et Marseille sont les villes où se trouvent le plus grand nombre de programmes neufs Nexity avec des prix allant de 57 900€ pour un studio de 18.60m² à Perpignan à 2 150 000€ pour un loft de 95m² à Paris.<\/p><p>Avec l’achat de votre appartement neuf, Nexity vous offre également la recherche des meilleurs financements, grâce à ses nombreux partenariats bancaires. Que ce soit pour votre habitat principal ou pour un investissement locatif, leurs experts immobiliers sauront trouver les meilleurs conditions pour réaliser votre projet.<\/p><p>Si vous souhaitez investir dans l'immobilier neuf, le groupe Nexity développe de nombreux programmes éligibles aux différents dispositifs fiscaux (Pinel, LMNP, Censi-Bouvard) et assure également la gestion des résidences étudiantes “Studea “et des résidences seniors \"Domitys\".<\/p>",
"logo": "nexity.png",
"longitude": "2.321850",
"latitude": "48.877200",
"created_at": "2018-10-21T09:51:02.000000Z",
"updated_at": "2020-03-12T14:04:07.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/nexity.png",
"childs": [
{
"id": 2,
"parent_id": 1,
"type_id": 5,
"commune_id": 18,
"nom": "TEST2",
"created_at": "2018-10-21T11:12:15.000000Z",
"updated_at": "2020-03-11T08:15:15.000000Z",
"childs": [],
"commune": {
"id": 18,
"departement_id": 1,
"nom": "PARIS 17",
"insee": "75117",
"nom_special": "PARIS 17EME ARRONDISSEMENT",
"nom_recherche": "PARIS17EMEARRONDISSEMENT",
"actif": 1,
"longitude": 2.31923,
"latitude": 48.88328,
"centre": {
"type": "Point",
"coordinates": [
2.31923,
48.88328
]
},
"updated_at": "2021-02-08T16:49:25.000000Z",
"departement": {
"id": 1,
"region_id": 13,
"nom": "PARIS",
"code": "75",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2018-10-21T10:27:44.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
}
],
"commune": {
"id": 9,
"departement_id": 1,
"nom": "PARIS 08",
"insee": "75108",
"nom_special": "PARIS 8EME ARRONDISSEMENT",
"nom_recherche": "PARIS8EMEARRONDISSEMENT",
"actif": 1,
"longitude": 2.316333,
"latitude": 48.877783,
"centre": {
"type": "Point",
"coordinates": [
2.316333,
48.877783
]
},
"updated_at": "2021-02-08T16:49:25.000000Z",
"departement": {
"id": 1,
"region_id": 13,
"nom": "PARIS",
"code": "75",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2018-10-21T10:27:44.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
},
{
"id": 2202,
"type_id": 7,
"commune_id": 9659,
"actif": 1,
"annuaire": 1,
"external_reference": "260045",
"nom": "LCDI Le comptoir de l'immobilier",
"email": "contact@lcdimmo.com",
"adresse": "ZA Fortuneau9 Allée Hispano Suiza",
"telephone": "04 75 53 19 19",
"website": "www.lcdimmo.com",
"logo": "ubiflowbailleur_1_0_260045_260045.jpg",
"created_at": "2020-11-03T14:39:24.000000Z",
"updated_at": "2021-02-01T09:26:32.000000Z",
"logo_url": "https:\/\/files.appartement-construction.com\/images\/client\/ubiflowbailleur_1_0_260045_260045.jpg",
"childs": [],
"commune": {
"id": 9659,
"departement_id": 26,
"nom": "MONTELIMAR",
"insee": "26198",
"nom_special": "Montélimar",
"nom_recherche": "MONTELIMAR",
"population": 29982,
"actif": 1,
"longitude": 4.750929,
"latitude": 44.558692,
"centre": {
"type": "Point",
"coordinates": [
4.750929,
44.558692
]
},
"updated_at": "2021-02-08T16:49:45.000000Z",
"departement": {
"id": 26,
"region_id": 3,
"nom": "DROME",
"code": "26",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"region": {
"id": 3,
"pays_id": 1,
"nom": "Rhône-Alpes",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
}
}
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/ids?page=1",
"from": 1,
"last_page": 1,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/ids?page=1",
"next_page_url": null,
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annuaire\/search\/ids",
"per_page": 10,
"prev_page_url": null,
"to": 2,
"total": 2
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"client_id.0": [
"Le champ client_id.0 sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Barometre
APIs for managing barometre
Get by country
Une description à completer
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/barometre/country" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","type":"APPARTEMENT"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/barometre/country"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"type": "APPARTEMENT"
}
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/country',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'type' => 'APPARTEMENT',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/country'
payload = {
"website": "TC",
"type": "APPARTEMENT"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"m-12": "4630",
"m-11": "4986",
"m-10": "4981",
"m-9": "4966",
"m-8": "4950",
"m-7": "5077",
"m-6": "5030",
"m-5": "4931",
"m-4": "5302",
"m-3": "5425",
"m-2": "5509",
"m-1": "5504"
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
]
}
}
Received response:
Request failed with error:
Get by state
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/barometre/state" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","type":"APPARTEMENT","state":"91"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/barometre/state"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"type": "APPARTEMENT",
"state": "91"
}
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/state',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'type' => 'APPARTEMENT',
'state' => '91',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/state'
payload = {
"website": "TC",
"type": "APPARTEMENT",
"state": "91"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"m-12": "4630",
"m-11": "4986",
"m-10": "4981",
"m-9": "4966",
"m-8": "4950",
"m-7": "5077",
"m-6": "5030",
"m-5": "4931",
"m-4": "5302",
"m-3": "5425",
"m-2": "5509",
"m-1": "5504"
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
],
"state": [
"Le champ state est obligatoire."
]
}
}
Received response:
Request failed with error:
Get by zip
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/barometre/zip" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","type":"APPARTEMENT","zip":"67100","range":50}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/barometre/zip"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"type": "APPARTEMENT",
"zip": "67100",
"range": 50
}
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/zip',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'type' => 'APPARTEMENT',
'zip' => '67100',
'range' => 50,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/barometre/zip'
payload = {
"website": "TC",
"type": "APPARTEMENT",
"zip": "67100",
"range": 50
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"m-12": "4630",
"m-11": "4986",
"m-10": "4981",
"m-9": "4966",
"m-8": "4950",
"m-7": "5077",
"m-6": "5030",
"m-5": "4931",
"m-4": "5302",
"m-3": "5425",
"m-2": "5509",
"m-1": "5504"
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"zip": [
"Le champ zip est obligatoire."
]
}
}
Received response:
Request failed with error:
Client
APIs for managing clients
Display the specified client.
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/client/17" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/client/17"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/client/17',
[
'headers' => [
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/client/17'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 2579,
"type_id": 7,
"commune_id": 18,
"external_reference": "test-ref",
"nom": "test",
"website": "url",
"source": "api",
"created_at": "2021-03-16T12:59:34.000000Z",
"updated_at": "2021-03-16T12:59:34.000000Z"
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
]
}
}
Received response:
Request failed with error:
Store a newly created client.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/client" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","parent_id":2,"type":"AGENCE","commune_id":75,"actif":false,"annuaire":false,"external_reference":"custom reference","nom":"John Doe","email":"john.doe@example.com","adresse":"11 rue du paradis 00000 Ciel","adresse_2":"13 rue du paradis 00000 Ciel","telephone":"0909090909","slogan":"We are the champions","description":"He is very <h1>Big<\/h1>","url":"https:\/\/urloftheclient.fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/client"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"parent_id": 2,
"type": "AGENCE",
"commune_id": 75,
"actif": false,
"annuaire": false,
"external_reference": "custom reference",
"nom": "John Doe",
"email": "john.doe@example.com",
"adresse": "11 rue du paradis 00000 Ciel",
"adresse_2": "13 rue du paradis 00000 Ciel",
"telephone": "0909090909",
"slogan": "We are the champions",
"description": "He is very <h1>Big<\/h1>",
"url": "https:\/\/urloftheclient.fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/client',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'parent_id' => 2,
'type' => 'AGENCE',
'commune_id' => 75,
'actif' => false,
'annuaire' => false,
'external_reference' => 'custom reference',
'nom' => 'John Doe',
'email' => 'john.doe@example.com',
'adresse' => '11 rue du paradis 00000 Ciel',
'adresse_2' => '13 rue du paradis 00000 Ciel',
'telephone' => '0909090909',
'slogan' => 'We are the champions',
'description' => 'He is very <h1>Big</h1>',
'url' => 'https://urloftheclient.fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/client'
payload = {
"website": "TC",
"parent_id": 2,
"type": "AGENCE",
"commune_id": 75,
"actif": false,
"annuaire": false,
"external_reference": "custom reference",
"nom": "John Doe",
"email": "john.doe@example.com",
"adresse": "11 rue du paradis 00000 Ciel",
"adresse_2": "13 rue du paradis 00000 Ciel",
"telephone": "0909090909",
"slogan": "We are the champions",
"description": "He is very <h1>Big<\/h1>",
"url": "https:\/\/urloftheclient.fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"type_id": 7,
"commune_id": "18",
"external_reference": "test-ref",
"nom": "test",
"source": "api",
"website": "url",
"updated_at": "2021-03-16T12:30:03.000000Z",
"created_at": "2021-03-16T12:30:03.000000Z",
"id": 2578
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_id": [
"Le champ type id est obligatoire."
],
"commune_id": [
"Le champ commune id est obligatoire."
],
"external_reference": [
"Le champ external reference est obligatoire."
],
"nom": [
"Le champ nom est obligatoire."
]
}
}
Received response:
Request failed with error:
Update the specified client.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/client/{client}" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","parent_id":2,"type":"AGENCE","commune_id":75,"actif":false,"annuaire":false,"external_reference":"custom reference","nom":"John Doe","email":"john.doe@example.com","adresse":"11 rue du paradis 00000 Ciel","adresse_2":"13 rue du paradis 00000 Ciel","telephone":"0909090909","slogan":"We are the champions","description":"He is very <h1>Big<\/h1>","url":"https:\/\/urloftheclient.fr"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/client/{client}"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"parent_id": 2,
"type": "AGENCE",
"commune_id": 75,
"actif": false,
"annuaire": false,
"external_reference": "custom reference",
"nom": "John Doe",
"email": "john.doe@example.com",
"adresse": "11 rue du paradis 00000 Ciel",
"adresse_2": "13 rue du paradis 00000 Ciel",
"telephone": "0909090909",
"slogan": "We are the champions",
"description": "He is very <h1>Big<\/h1>",
"url": "https:\/\/urloftheclient.fr"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/client/{client}',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'parent_id' => 2,
'type' => 'AGENCE',
'commune_id' => 75,
'actif' => false,
'annuaire' => false,
'external_reference' => 'custom reference',
'nom' => 'John Doe',
'email' => 'john.doe@example.com',
'adresse' => '11 rue du paradis 00000 Ciel',
'adresse_2' => '13 rue du paradis 00000 Ciel',
'telephone' => '0909090909',
'slogan' => 'We are the champions',
'description' => 'He is very <h1>Big</h1>',
'url' => 'https://urloftheclient.fr',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/client/{client}'
payload = {
"website": "TC",
"parent_id": 2,
"type": "AGENCE",
"commune_id": 75,
"actif": false,
"annuaire": false,
"external_reference": "custom reference",
"nom": "John Doe",
"email": "john.doe@example.com",
"adresse": "11 rue du paradis 00000 Ciel",
"adresse_2": "13 rue du paradis 00000 Ciel",
"telephone": "0909090909",
"slogan": "We are the champions",
"description": "He is very <h1>Big<\/h1>",
"url": "https:\/\/urloftheclient.fr"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 2578,
"type_id": 5,
"commune_id": "17",
"external_reference": "test-ref2",
"nom": "test2",
"website": "url",
"source": "api",
"created_at": "2021-03-16T12:30:03.000000Z",
"updated_at": "2021-03-16T12:51:22.000000Z"
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"client_id": [
"Le champ client id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Remove the specified client.
Example request:
curl -X DELETE \
"https://dashboard-preprod.appartement-construction.com/api/v2/client/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/client/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC"
}
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://dashboard-preprod.appartement-construction.com/api/v2/client/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/client/123'
payload = {
"website": "TC"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "client deleted"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"client_id": [
"Le champ client id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Consultations
APIs for managing consultations
Most viewed programmes
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/consultation/programme/mostviewed?paginate=15&offset=30" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/consultation/programme/mostviewed"
);
let params = {
"paginate": "15",
"offset": "30",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/consultation/programme/mostviewed',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'paginate'=> '15',
'offset'=> '30',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/consultation/programme/mostviewed'
params = {
'paginate': '15',
'offset': '30',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"id": 1142,
"annonce_id": null,
"programme_id": 4,
"website_id": 3,
"ip": "66.249.79.227",
"client_vars": "a:52:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web3\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:48:\"\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:48:\"\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:11:\"REMOTE_PORT\";s:5:\"61032\";s:15:\"SCRIPT_FILENAME\";s:57:\"\/var\/www\/appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:38:\"webmaster@appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"66.249.79.227\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:32:\"www.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:94:\"<address>Apache\/2.4.38 (Debian) Server at www.appartement-construction.com Port 443<\/address>\n\";s:20:\"HTTP_ACCEPT_ENCODING\";s:15:\"gzip,deflate,br\";s:15:\"HTTP_USER_AGENT\";s:198:\"Mozilla\/5.0 (Linux; Android 6.0.1; Nexus 5X Build\/MMB29P) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/41.0.2272.96 Mobile Safari\/537.36 (compatible; Googlebot\/2.1; +http:\/\/www.google.com\/bot.html)\";s:9:\"HTTP_FROM\";s:26:\"googlebot(at)googlebot.com\";s:11:\"HTTP_ACCEPT\";s:96:\"text\/html,application\/xhtml+xml,application\/signed-exchange;v=b3,application\/xml;q=0.9,*\/*;q=0.8\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:24:\"HTTP_AMP_CACHE_TRANSFORM\";s:15:\"google;v=\"1..3\"\";s:9:\"HTTP_HOST\";s:32:\"www.appartement-construction.com\";s:11:\"SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:88:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:10:\"SCRIPT_URL\";s:48:\"\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:88:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:19:\"REDIRECT_SCRIPT_URL\";s:48:\"\/immobilier-neuf\/vezin-le-coquet-35132\/bellevy-4\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1588362011.822298;s:12:\"REQUEST_TIME\";i:1588362011;}",
"created_at": "2020-05-01T17:40:11.000000Z",
"updated_at": "2020-05-01T17:40:11.000000Z",
"deleted_at": null,
"programme_count": 1,
"programme": {
"id": 4,
"commune_id": 14190,
"client_id": 1,
"external_reference": "0058__58068",
"slugged_external_reference": "0058-58068",
"email_contact_additionnel": null,
"adresse": "LIEU DIT LE MOULIN A VENT",
"proximite": "",
"libelle": "BELLEVY",
"description": "Démarrage travaux !<BR><BR>Jusqu'au 20 décembre 2020, Nexity vous offre les frais de notaire, la 1ère mise en location, la première année de gestion locative.*<BR><BR>Aux portes de RENNES, à VEZIN LE COQUET où il fait bon vivre. Dans un cadre verdoyant à deux pas des commerces, BELLEVY vous attend :<BR><BR> Découvrez 26 appartements du 2 au 3 pièces. Il ont été pensés pour votre confort avec des esapces de vie lumineux et spacieux qui se prolongent vers l'extérieur grâce à des balcons, terrasses ou jardins privatifs pour ceux en rez-de-chaussée.<BR><BR>*Voir conditions détaillées en Espace de Vente, dans la limite des stocks disponibles. Pour toutes informations complémentaires, prenez contact avec nous !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-06-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:06:30.000000Z",
"created_at": "2020-02-20T13:01:18.000000Z",
"updated_at": "2020-12-28T11:06:30.000000Z",
"deleted_at": null,
"firstdocument": "https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0058-58068\/3_0058_58068_PRG_PHOT_58068.jpg",
"commune": {
"id": 14190,
"departement_id": 37,
"nom": "VEZIN LE COQUET",
"insee": "35353",
"nom_special": "Vezin-le-Coquet",
"nom_recherche": "VEZINLECOQUET",
"prefixe_nom_special": "",
"population": 3268,
"actif": 1,
"zone_id": null,
"longitude": -1.757291,
"latitude": 48.118991,
"centre": {
"type": "Point",
"coordinates": [
-1.757291,
48.118991
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:55.000000Z",
"deleted_at": null,
"departement": {
"id": 37,
"region_id": 10,
"nom": "ILLE-ET-VILAINE",
"code": "35",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 10,
"pays_id": 1,
"nom": "Bretagne",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"firstdistribution": {
"id": 14261,
"commune_id": 14190,
"code_postal": "35132",
"acheminement": "VEZIN LE COQUET",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
},
{
"id": 523,
"annonce_id": null,
"programme_id": 10,
"website_id": 3,
"ip": "66.249.79.225",
"client_vars": "a:52:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web3\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:41:\"\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:41:\"\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:11:\"REMOTE_PORT\";s:5:\"52535\";s:15:\"SCRIPT_FILENAME\";s:57:\"\/var\/www\/appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:38:\"webmaster@appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"66.249.79.225\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:32:\"www.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:94:\"<address>Apache\/2.4.38 (Debian) Server at www.appartement-construction.com Port 443<\/address>\n\";s:20:\"HTTP_ACCEPT_ENCODING\";s:15:\"gzip,deflate,br\";s:15:\"HTTP_USER_AGENT\";s:198:\"Mozilla\/5.0 (Linux; Android 6.0.1; Nexus 5X Build\/MMB29P) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/80.0.3987.92 Mobile Safari\/537.36 (compatible; Googlebot\/2.1; +http:\/\/www.google.com\/bot.html)\";s:9:\"HTTP_FROM\";s:26:\"googlebot(at)googlebot.com\";s:11:\"HTTP_ACCEPT\";s:96:\"text\/html,application\/xhtml+xml,application\/signed-exchange;v=b3,application\/xml;q=0.9,*\/*;q=0.8\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:24:\"HTTP_AMP_CACHE_TRANSFORM\";s:15:\"google;v=\"1..3\"\";s:9:\"HTTP_HOST\";s:32:\"www.appartement-construction.com\";s:11:\"SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:81:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:10:\"SCRIPT_URL\";s:41:\"\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:81:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:19:\"REDIRECT_SCRIPT_URL\";s:41:\"\/immobilier-neuf\/toulouse-31000\/pop-up-10\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1588300825.914304;s:12:\"REQUEST_TIME\";i:1588300825;}",
"created_at": "2020-05-01T00:40:25.000000Z",
"updated_at": "2020-05-01T00:40:25.000000Z",
"deleted_at": null,
"programme_count": 1,
"programme": {
"id": 10,
"commune_id": 12462,
"client_id": 1,
"external_reference": "0049__49028",
"slugged_external_reference": "0049-49028",
"email_contact_additionnel": null,
"adresse": "395 ROUTE DE ST SIMON",
"proximite": "",
"libelle": "POP UP",
"description": "Devenez propriétaire de votre appartement à Toulouse. Achetez votre futur logement accessible en TVA réduite, située à 2 min à pied du métro, du tramway, de 5 lignes de bus, du jardin du Pech. Du T2 au T5 duplex, la résidence propose de grandes surfaces, et fait la part belle au végétal. Les appartements sont connectés avec domotique et bénéficient même de jardinières afin de réaliser vos plantations !<BR>Poute toutes informations complémentaires, prenez-contact avec nous ! Pour toutes informations complémentaires, prenez contact avec nous !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-12-30T23:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:08:04.000000Z",
"created_at": "2020-02-20T13:01:48.000000Z",
"updated_at": "2020-12-28T11:08:04.000000Z",
"deleted_at": null,
"firstdocument": "https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0049-49028\/3_0049_49028_PRG_PHOT_49028.jpg",
"commune": {
"id": 12462,
"departement_id": 33,
"nom": "TOULOUSE",
"insee": "31555",
"nom_special": "Toulouse",
"nom_recherche": "TOULOUSE",
"prefixe_nom_special": "",
"population": 358688,
"actif": 1,
"zone_id": null,
"longitude": 1.442949,
"latitude": 43.604378,
"centre": {
"type": "Point",
"coordinates": [
1.442949,
43.604378
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:52.000000Z",
"deleted_at": null,
"departement": {
"id": 33,
"region_id": 19,
"nom": "HAUTE-GARONNE",
"code": "31",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 19,
"pays_id": 1,
"nom": "Midi-Pyrénées",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"firstdistribution": {
"id": 70348,
"commune_id": 12462,
"code_postal": "31503",
"acheminement": "TOULOUSE CEDEX 9",
"actif": 0,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
},
{
"id": 22,
"annonce_id": null,
"programme_id": 7,
"website_id": 4,
"ip": "88.122.71.162",
"client_vars": "a:54:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web2\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web2\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web2\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web2\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web2\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web2\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:62:\"\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:62:\"\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:11:\"REMOTE_PORT\";s:5:\"10806\";s:15:\"SCRIPT_FILENAME\";s:62:\"\/var\/www\/site.appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:43:\"webmaster@site.appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:52:\"\/var\/www\/site.appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:52:\"\/var\/www\/site.appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"88.122.71.162\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:33:\"site.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:95:\"<address>Apache\/2.4.38 (Debian) Server at site.appartement-construction.com Port 443<\/address>\n\";s:30:\"HTTP_UPGRADE_INSECURE_REQUESTS\";s:1:\"1\";s:11:\"HTTP_COOKIE\";s:225:\"e307950b3801e514b33df7c44db64a49=93j1v4anouqekbuetp3nfv99c7; ec9dfa1590ea6ce792f6a5bf773be8c1=judqu33t6gq2sfkmnusgeqdjdn; _ga=GA1.2.296935586.1583311457; _gid=GA1.2.1863087917.1583311457; dhtmlgoodies_expandedNodes=%2C1358%2C\";s:12:\"HTTP_REFERER\";s:73:\"https:\/\/site.appartement-construction.com\/immobilier-neuf\/bretagne\/page\/2\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:20:\"HTTP_ACCEPT_ENCODING\";s:17:\"gzip, deflate, br\";s:20:\"HTTP_ACCEPT_LANGUAGE\";s:35:\"fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3\";s:11:\"HTTP_ACCEPT\";s:74:\"text\/html,application\/xhtml+xml,application\/xml;q=0.9,image\/webp,*\/*;q=0.8\";s:15:\"HTTP_USER_AGENT\";s:76:\"Mozilla\/5.0 (X11; Ubuntu; Linux x86_64; rv:73.0) Gecko\/20100101 Firefox\/73.0\";s:9:\"HTTP_HOST\";s:33:\"site.appartement-construction.com\";s:11:\"SSL_TLS_SNI\";s:33:\"site.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:103:\"https:\/\/site.appartement-construction.com\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:10:\"SCRIPT_URL\";s:62:\"\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:33:\"site.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:103:\"https:\/\/site.appartement-construction.com\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:19:\"REDIRECT_SCRIPT_URL\";s:62:\"\/immobilier-neuf\/villeurbanne-69100\/n-o-u-nouvel-opus-urbain-7\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1583403119.065245;s:12:\"REQUEST_TIME\";i:1583403119;}",
"created_at": "2020-03-05T09:11:59.000000Z",
"updated_at": "2020-03-05T09:11:59.000000Z",
"deleted_at": null,
"programme_count": 1,
"programme": {
"id": 7,
"commune_id": 28709,
"client_id": 1,
"external_reference": "0051__06659",
"slugged_external_reference": "0051-06659",
"email_contact_additionnel": null,
"adresse": "RUE LIBERTE",
"proximite": "",
"libelle": "N.O.U : NOUVEL OPUS URBAIN",
"description": "Profitez d'offres exceptionnelles jusqu'au 20 décembre 2020 !<BR><BR>Venez découvrir, au pied du métro, à Villeurbanne, votre nouvelle résidence au coeur d'un parc arboré. Au pied du métro et à proximité directe des commerces, ce nouvel ensemble offre des logements du 2 au 5 pièces prolongés par des terrasses ou loggias. Les plus chanceux pourront profiter de duplex en étage élevé. <BR><BR>Avec des immeubles de belles hauteurs, vous aurez une vue dégagée sur la métropole de Lyon et la chaine des alpes. <BR><BR>Réel jardin dans la ville, la résidence met à l'honneur la nature avec près de 50 variétés d'arbres, d'arbustes et de plantes différentes. Une promenade piétonne sera construite pour offrir aux residents convivialité et sérénité.<BR><BR>Tous les appartements possèdent un stationnement en sous-sol. <BR>et de l'offre de domotique Eugénie<BR>Venez profiter de la TVA réduite du T3 au T5 !<BR><BR>Rencontrons-nous à notre boutique connectée sur Lyon 06 pour découvrir nos offres. <BR>",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-06-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:06:00.000000Z",
"created_at": "2020-02-20T13:01:28.000000Z",
"updated_at": "2020-12-28T11:06:00.000000Z",
"deleted_at": null,
"firstdocument": "https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0051-06659\/3_0051_06659_PRG_PHO3_06659.jpg",
"commune": {
"id": 28709,
"departement_id": 71,
"nom": "VILLEURBANNE",
"insee": "69266",
"nom_special": "Villeurbanne",
"nom_recherche": "VILLEURBANNE",
"prefixe_nom_special": "",
"population": 116872,
"actif": 1,
"zone_id": null,
"longitude": 4.880382,
"latitude": 45.764717,
"centre": {
"type": "Point",
"coordinates": [
4.880382,
45.764717
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:22.000000Z",
"deleted_at": null,
"departement": {
"id": 71,
"region_id": 3,
"nom": "RHONE",
"code": "69",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"deleted_at": null,
"region": {
"id": 3,
"pays_id": 1,
"nom": "Rhône-Alpes",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"firstdistribution": {
"id": 28831,
"commune_id": 28709,
"code_postal": "69100",
"acheminement": "VILLEURBANNE",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
},
{
"id": 669,
"annonce_id": null,
"programme_id": 11,
"website_id": 3,
"ip": "66.249.79.227",
"client_vars": "a:52:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web3\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:47:\"\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:47:\"\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:11:\"REMOTE_PORT\";s:5:\"61490\";s:15:\"SCRIPT_FILENAME\";s:57:\"\/var\/www\/appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:38:\"webmaster@appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"66.249.79.227\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:32:\"www.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:94:\"<address>Apache\/2.4.38 (Debian) Server at www.appartement-construction.com Port 443<\/address>\n\";s:20:\"HTTP_ACCEPT_ENCODING\";s:15:\"gzip,deflate,br\";s:15:\"HTTP_USER_AGENT\";s:198:\"Mozilla\/5.0 (Linux; Android 6.0.1; Nexus 5X Build\/MMB29P) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/80.0.3987.92 Mobile Safari\/537.36 (compatible; Googlebot\/2.1; +http:\/\/www.google.com\/bot.html)\";s:9:\"HTTP_FROM\";s:26:\"googlebot(at)googlebot.com\";s:11:\"HTTP_ACCEPT\";s:96:\"text\/html,application\/xhtml+xml,application\/signed-exchange;v=b3,application\/xml;q=0.9,*\/*;q=0.8\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:24:\"HTTP_AMP_CACHE_TRANSFORM\";s:15:\"google;v=\"1..3\"\";s:9:\"HTTP_HOST\";s:32:\"www.appartement-construction.com\";s:11:\"SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:87:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:10:\"SCRIPT_URL\";s:47:\"\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:87:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:19:\"REDIRECT_SCRIPT_URL\";s:47:\"\/immobilier-neuf\/toulouse-31000\/villa-serena-11\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1588314270.701411;s:12:\"REQUEST_TIME\";i:1588314270;}",
"created_at": "2020-05-01T04:24:30.000000Z",
"updated_at": "2020-05-01T04:24:30.000000Z",
"deleted_at": null,
"programme_count": 1,
"programme": {
"id": 11,
"commune_id": 12462,
"client_id": 1,
"external_reference": "0049__49029",
"slugged_external_reference": "0049-49029",
"email_contact_additionnel": null,
"adresse": "148 RUE EDMOND ROSTAND",
"proximite": "",
"libelle": "VILLA SERENA",
"description": "Devenez propriétaire à Toulouse dans une résidence située dans le quartier Borderouge à 2 pas du métro et des bus ! Située proche de la place de la Maourine, les appartements sont connectés avec la domotique .<BR>Villa Serena est éligible au dispositif Pinel et à la TVA réduite !<BR>",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-09-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:06:50.000000Z",
"created_at": "2020-02-20T13:02:01.000000Z",
"updated_at": "2020-12-28T11:06:50.000000Z",
"deleted_at": null,
"firstdocument": "https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0049-49029\/3_0049_49029_PRG_PHOT_49029.jpg",
"commune": {
"id": 12462,
"departement_id": 33,
"nom": "TOULOUSE",
"insee": "31555",
"nom_special": "Toulouse",
"nom_recherche": "TOULOUSE",
"prefixe_nom_special": "",
"population": 358688,
"actif": 1,
"zone_id": null,
"longitude": 1.442949,
"latitude": 43.604378,
"centre": {
"type": "Point",
"coordinates": [
1.442949,
43.604378
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:52.000000Z",
"deleted_at": null,
"departement": {
"id": 33,
"region_id": 19,
"nom": "HAUTE-GARONNE",
"code": "31",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 19,
"pays_id": 1,
"nom": "Midi-Pyrénées",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"firstdistribution": {
"id": 70348,
"commune_id": 12462,
"code_postal": "31503",
"acheminement": "TOULOUSE CEDEX 9",
"actif": 0,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
}
}
}
]
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"paginate": [
"La valeur de paginate ne peut être supérieure à 100."
],
"offset": [
"Le champ offset doit être un entier."
]
}
}
Received response:
Request failed with error:
Most viewed annonces
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/consultation/annonce/mostviewed?paginate=15&offset=30&annonce_type=TERRAIN" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/consultation/annonce/mostviewed"
);
let params = {
"paginate": "15",
"offset": "30",
"annonce_type": "TERRAIN",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/consultation/annonce/mostviewed',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'paginate'=> '15',
'offset'=> '30',
'annonce_type'=> 'TERRAIN',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/consultation/annonce/mostviewed'
params = {
'paginate': '15',
'offset': '30',
'annonce_type': 'TERRAIN',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"id": 132608,
"annonce_id": 485,
"programme_id": null,
"website_id": 3,
"ip": "159.69.187.42",
"client_vars": "a:49:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web3\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:41:\"\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:41:\"\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:11:\"REMOTE_PORT\";s:5:\"62718\";s:15:\"SCRIPT_FILENAME\";s:57:\"\/var\/www\/appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:38:\"webmaster@appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"159.69.187.42\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:32:\"www.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:94:\"<address>Apache\/2.4.38 (Debian) Server at www.appartement-construction.com Port 443<\/address>\n\";s:20:\"HTTP_ACCEPT_ENCODING\";s:12:\"gzip,deflate\";s:15:\"HTTP_USER_AGENT\";s:64:\"Mozilla\/5.0 (compatible; Seekport Crawler; http:\/\/seekport.com\/)\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:9:\"HTTP_HOST\";s:32:\"www.appartement-construction.com\";s:11:\"SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:81:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:10:\"SCRIPT_URL\";s:41:\"\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:81:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:19:\"REDIRECT_SCRIPT_URL\";s:41:\"\/immobilier-neuf\/linselles-59126\/n-a-\/485\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1594983139.94656;s:12:\"REQUEST_TIME\";i:1594983139;}",
"created_at": "2020-07-17T08:52:20.000000Z",
"updated_at": "2020-07-17T08:52:20.000000Z",
"deleted_at": null,
"annonce_count": 1,
"annonce": {
"id": 485,
"programme_id": 150,
"commune_id": 23430,
"client_id": 1,
"type": "APPARTEMENT",
"external_reference": "2303",
"slugged_external_reference": "2303",
"email_contact_additionnel": null,
"external_code_postal": "59126",
"adresse": "RUE DU GENERAL DE GAULLE RUE DU GENERAL LECLERC",
"proximite": "",
"libelle": "RÉSIDENCE LA BELLE EPOQUE",
"description": "DEVENEZ PROPRIETAIRE EN CENTRE-VILLE de Linselles ! Linselles est une parenthèse rurale et verte au coeur de la métropole lilloise. Ses nombreux espaces verts et la campagne environnante en font une commune prisée, à l'instar de ses voisines Bondues et Mouvaux.<BR><BR>Implantée en plein centre-ville de Linselles, à deux pas de la Mairie et de la place du marché, la résidence La Belle Epoque vous offre un cadre de vie calme et authentique.<BR><BR>Les + :<BR>- Logements aux surfaces généreuses<BR>- Appartements du 2 au 4 pièces tout confort et aux prestations soignées<BR>- Résidence arborée et sécurisée<BR>- Balcon, terrasse ou jardin privatif<BR>- Stationnement sous-sol et extérieur<BR><BR>Renseignez-vous vite !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 41,
"surface_maison": null,
"surface_terrain": null,
"surface_habitable": null,
"surface_sejour": null,
"prix": 188000,
"prix_maison": null,
"prix_terrain": null,
"nbr_piece": 2,
"etage": 3,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": 1,
"cave": 0,
"nbr_parking": 1,
"nbr_boxe": null,
"nbr_chambre": null,
"nbr_chambre_rdc": null,
"nbr_sdb": null,
"type_cuisine": null,
"type_chauffage": 0,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": 1,
"etat_interieur": null,
"date_dispo": "2022-09-29T22:00:00.000000Z",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 1,
"create_batch_id": 13,
"update_batch_id": 2674,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-02-20T14:03:01.000000Z",
"created_at": "2020-02-20T14:03:01.000000Z",
"updated_at": "2020-12-28T11:06:04.000000Z",
"deleted_at": null,
"commune": {
"id": 23430,
"departement_id": 61,
"nom": "LINSELLES",
"insee": "59352",
"nom_special": "Linselles",
"nom_recherche": "LINSELLES",
"prefixe_nom_special": "",
"population": 7674,
"actif": 1,
"zone_id": null,
"longitude": 3.078282,
"latitude": 50.738523,
"centre": {
"type": "Point",
"coordinates": [
3.078282,
50.738523
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:13.000000Z",
"deleted_at": null,
"departement": {
"id": 61,
"region_id": 2,
"nom": "NORD",
"code": "59",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"deleted_at": null,
"region": {
"id": 2,
"pays_id": 1,
"nom": "Nord-Pas-de-Calais",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"distributions": [
{
"id": 23538,
"commune_id": 23430,
"code_postal": "59126",
"acheminement": "LINSELLES",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
]
},
"programme": {
"id": 150,
"commune_id": 23430,
"client_id": 1,
"external_reference": "0010__10086",
"slugged_external_reference": "0010-10086",
"email_contact_additionnel": null,
"adresse": "RUE DU GENERAL DE GAULLE RUE DU GENERAL LECLERC",
"proximite": "",
"libelle": "RÉSIDENCE LA BELLE EPOQUE",
"description": "DEVENEZ PROPRIETAIRE EN CENTRE-VILLE de Linselles ! Linselles est une parenthèse rurale et verte au coeur de la métropole lilloise. Ses nombreux espaces verts et la campagne environnante en font une commune prisée, à l'instar de ses voisines Bondues et Mouvaux.<BR><BR>Implantée en plein centre-ville de Linselles, à deux pas de la Mairie et de la place du marché, la résidence La Belle Epoque vous offre un cadre de vie calme et authentique.<BR><BR>Les + :<BR>- Logements aux surfaces généreuses<BR>- Appartements du 2 au 4 pièces tout confort et aux prestations soignées<BR>- Résidence arborée et sécurisée<BR>- Balcon, terrasse ou jardin privatif<BR>- Stationnement sous-sol et extérieur<BR><BR>Renseignez-vous vite !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-09-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:07:43.000000Z",
"created_at": "2020-02-20T13:17:43.000000Z",
"updated_at": "2020-12-28T11:07:43.000000Z",
"deleted_at": null
},
"documents": []
},
"programme": null
},
{
"id": 1792,
"annonce_id": 173,
"programme_id": null,
"website_id": 3,
"ip": "148.251.9.145",
"client_vars": "a:51:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\";s:6:\"TMPDIR\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"TEMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:5:\"SHLVL\";s:1:\"0\";s:3:\"TMP\";s:33:\"\/var\/www\/clients\/client1\/web3\/tmp\";s:4:\"PATH\";s:60:\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\";s:17:\"PHP_DOCUMENT_ROOT\";s:29:\"\/var\/www\/clients\/client1\/web3\";s:14:\"CONTENT_LENGTH\";s:1:\"0\";s:15:\"HTTP_CONNECTION\";s:5:\"close\";s:11:\"SCRIPT_NAME\";s:10:\"\/index.php\";s:11:\"REQUEST_URI\";s:44:\"\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:12:\"QUERY_STRING\";s:0:\"\";s:14:\"REQUEST_METHOD\";s:3:\"GET\";s:15:\"SERVER_PROTOCOL\";s:8:\"HTTP\/1.1\";s:17:\"GATEWAY_INTERFACE\";s:7:\"CGI\/1.1\";s:12:\"REDIRECT_URL\";s:44:\"\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:11:\"REMOTE_PORT\";s:5:\"43356\";s:15:\"SCRIPT_FILENAME\";s:57:\"\/var\/www\/appartement-construction.com\/web\/front\/index.php\";s:12:\"SERVER_ADMIN\";s:38:\"webmaster@appartement-construction.com\";s:21:\"CONTEXT_DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:14:\"CONTEXT_PREFIX\";s:0:\"\";s:14:\"REQUEST_SCHEME\";s:5:\"https\";s:13:\"DOCUMENT_ROOT\";s:47:\"\/var\/www\/appartement-construction.com\/web\/front\";s:11:\"REMOTE_ADDR\";s:13:\"148.251.9.145\";s:11:\"SERVER_PORT\";s:3:\"443\";s:11:\"SERVER_ADDR\";s:14:\"51.178.239.163\";s:11:\"SERVER_NAME\";s:32:\"www.appartement-construction.com\";s:15:\"SERVER_SOFTWARE\";s:22:\"Apache\/2.4.38 (Debian)\";s:16:\"SERVER_SIGNATURE\";s:94:\"<address>Apache\/2.4.38 (Debian) Server at www.appartement-construction.com Port 443<\/address>\n\";s:9:\"HTTP_HOST\";s:32:\"www.appartement-construction.com\";s:20:\"HTTP_ACCEPT_LANGUAGE\";s:2:\"en\";s:20:\"HTTP_ACCEPT_ENCODING\";s:7:\"br,gzip\";s:15:\"HTTP_USER_AGENT\";s:61:\"Mozilla\/5.0 (compatible; MJ12bot\/v1.4.8; http:\/\/mj12bot.com\/)\";s:11:\"HTTP_ACCEPT\";s:193:\"text\/html,text\/plain,text\/xml,text\/*,application\/xml,application\/xhtml+xml,application\/rss+xml,application\/atom+xml,application\/rdf+xml,application\/php,application\/x-php,application\/x-httpd-php\";s:11:\"SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:5:\"HTTPS\";s:2:\"on\";s:18:\"HTTP_AUTHORIZATION\";s:0:\"\";s:10:\"SCRIPT_URI\";s:84:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:10:\"SCRIPT_URL\";s:44:\"\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:15:\"REDIRECT_STATUS\";s:3:\"200\";s:20:\"REDIRECT_SSL_TLS_SNI\";s:32:\"www.appartement-construction.com\";s:14:\"REDIRECT_HTTPS\";s:2:\"on\";s:27:\"REDIRECT_HTTP_AUTHORIZATION\";s:0:\"\";s:19:\"REDIRECT_SCRIPT_URI\";s:84:\"https:\/\/www.appartement-construction.com\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:19:\"REDIRECT_SCRIPT_URL\";s:44:\"\/immobilier-neuf\/villeurbanne-69100\/n-a-\/173\";s:9:\"FCGI_ROLE\";s:9:\"RESPONDER\";s:8:\"PHP_SELF\";s:10:\"\/index.php\";s:18:\"REQUEST_TIME_FLOAT\";d:1588383896.902227;s:12:\"REQUEST_TIME\";i:1588383896;}",
"created_at": "2020-05-01T23:44:56.000000Z",
"updated_at": "2020-05-01T23:44:56.000000Z",
"deleted_at": null,
"annonce_count": 1,
"annonce": {
"id": 173,
"programme_id": 7,
"commune_id": 28709,
"client_id": 1,
"type": "APPARTEMENT",
"external_reference": "4191",
"slugged_external_reference": "4191",
"email_contact_additionnel": null,
"external_code_postal": "69100",
"adresse": "RUE LIBERTE",
"proximite": "",
"libelle": "N.O.U : NOUVEL OPUS URBAIN",
"description": "Profitez d'offres exceptionnelles jusqu'au 20 décembre 2020 !<BR><BR>Venez découvrir, au pied du métro, à Villeurbanne, votre nouvelle résidence au coeur d'un parc arboré. Au pied du métro et à proximité directe des commerces, ce nouvel ensemble offre des logements du 2 au 5 pièces prolongés par des terrasses ou loggias. Les plus chanceux pourront profiter de duplex en étage élevé. <BR><BR>Avec des immeubles de belles hauteurs, vous aurez une vue dégagée sur la métropole de Lyon et la chaine des alpes. <BR><BR>Réel jardin dans la ville, la résidence met à l'honneur la nature avec près de 50 variétés d'arbres, d'arbustes et de plantes différentes. Une promenade piétonne sera construite pour offrir aux residents convivialité et sérénité.<BR><BR>Tous les appartements possèdent un stationnement en sous-sol. <BR>et de l'offre de domotique Eugénie<BR>Venez profiter de la TVA réduite du T3 au T5 !<BR><BR>Rencontrons-nous à notre boutique connectée sur Lyon 06 pour découvrir nos offres. <BR>",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 107,
"surface_maison": null,
"surface_terrain": null,
"surface_habitable": null,
"surface_sejour": null,
"prix": 492000,
"prix_maison": null,
"prix_terrain": null,
"nbr_piece": 5,
"etage": 9,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": 0,
"nbr_etage": null,
"ascenseur": 1,
"cave": 0,
"nbr_parking": 1,
"nbr_boxe": null,
"nbr_chambre": null,
"nbr_chambre_rdc": null,
"nbr_sdb": null,
"type_cuisine": null,
"type_chauffage": 0,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": 1,
"etat_interieur": null,
"date_dispo": "2022-12-30T23:00:00.000000Z",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 1,
"create_batch_id": 13,
"update_batch_id": 2674,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-02-20T14:02:56.000000Z",
"created_at": "2020-02-20T14:02:56.000000Z",
"updated_at": "2020-12-28T11:05:12.000000Z",
"deleted_at": null,
"commune": {
"id": 28709,
"departement_id": 71,
"nom": "VILLEURBANNE",
"insee": "69266",
"nom_special": "Villeurbanne",
"nom_recherche": "VILLEURBANNE",
"prefixe_nom_special": "",
"population": 116872,
"actif": 1,
"zone_id": null,
"longitude": 4.880382,
"latitude": 45.764717,
"centre": {
"type": "Point",
"coordinates": [
4.880382,
45.764717
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:22.000000Z",
"deleted_at": null,
"departement": {
"id": 71,
"region_id": 3,
"nom": "RHONE",
"code": "69",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"deleted_at": null,
"region": {
"id": 3,
"pays_id": 1,
"nom": "Rhône-Alpes",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
},
"distributions": [
{
"id": 28831,
"commune_id": 28709,
"code_postal": "69100",
"acheminement": "VILLEURBANNE",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
},
{
"id": 68295,
"commune_id": 28709,
"code_postal": "69351",
"acheminement": "LYON CEDEX 08",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
},
{
"id": 80664,
"commune_id": 28709,
"code_postal": "69907",
"acheminement": "LYON CEDEX 20",
"actif": 1,
"created_at": null,
"updated_at": null,
"deleted_at": null
}
]
},
"programme": {
"id": 7,
"commune_id": 28709,
"client_id": 1,
"external_reference": "0051__06659",
"slugged_external_reference": "0051-06659",
"email_contact_additionnel": null,
"adresse": "RUE LIBERTE",
"proximite": "",
"libelle": "N.O.U : NOUVEL OPUS URBAIN",
"description": "Profitez d'offres exceptionnelles jusqu'au 20 décembre 2020 !<BR><BR>Venez découvrir, au pied du métro, à Villeurbanne, votre nouvelle résidence au coeur d'un parc arboré. Au pied du métro et à proximité directe des commerces, ce nouvel ensemble offre des logements du 2 au 5 pièces prolongés par des terrasses ou loggias. Les plus chanceux pourront profiter de duplex en étage élevé. <BR><BR>Avec des immeubles de belles hauteurs, vous aurez une vue dégagée sur la métropole de Lyon et la chaine des alpes. <BR><BR>Réel jardin dans la ville, la résidence met à l'honneur la nature avec près de 50 variétés d'arbres, d'arbustes et de plantes différentes. Une promenade piétonne sera construite pour offrir aux residents convivialité et sérénité.<BR><BR>Tous les appartements possèdent un stationnement en sous-sol. <BR>et de l'offre de domotique Eugénie<BR>Venez profiter de la TVA réduite du T3 au T5 !<BR><BR>Rencontrons-nous à notre boutique connectée sur Lyon 06 pour découvrir nos offres. <BR>",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 0,
"terrain": 0,
"piscine": 0,
"climatisation": 1,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-06-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:06:00.000000Z",
"created_at": "2020-02-20T13:01:28.000000Z",
"updated_at": "2020-12-28T11:06:00.000000Z",
"deleted_at": null
},
"documents": []
},
"programme": null
}
]
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"paginate": [
"La valeur de paginate ne peut être supérieure à 100."
],
"offset": [
"Le champ offset doit être un entier."
]
}
}
Received response:
Request failed with error:
Contacts
APIs for managing contacts
Get all contacts from specific client
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/contact/search/client/15?website=TC" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/contact/search/client/15"
);
let params = {
"website": "TC",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/contact/search/client/15',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/contact/search/client/15'
params = {
'website': 'TC',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website sélectionné est invalide."
],
"client_id": [
"Le champ client id sélectionné est invalide."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"id": 214,
"website_id": 4,
"annonce_id": 27154,
"programme_id": null,
"client_id": 92,
"inscription": null,
"civilite": null,
"nom": "Doe",
"prenom": "John",
"code_postal": null,
"ville": null,
"email": "john.doe@example.com",
"phone": null,
"code_postal_recherche": null,
"ville_recherche": null,
"type_commercialisation": null,
"optin_annonceur": null,
"optin_partenaire": null,
"optin_website": null,
"message": null,
"from": null,
"type_id": 2,
"instapage_id": null,
"departement_recherche_id": null,
"type_maison": null,
"budget_max_hors_terrain": null,
"utm_source": null,
"utm_medium": null,
"utm_campaign": null,
"utm_term": null,
"utm_content": null,
"front_user_id": null,
"created_at": "2021-02-22T14:54:25.000000Z",
"updated_at": "2021-02-22T14:54:25.000000Z",
"exports_count": 0
},
{
"id": 215,
"website_id": 4,
"annonce_id": 27154,
"programme_id": null,
"client_id": 92,
"inscription": null,
"civilite": null,
"nom": "Doe",
"prenom": "John",
"code_postal": null,
"ville": null,
"email": "john.doe@example.com",
"phone": null,
"code_postal_recherche": null,
"ville_recherche": null,
"type_commercialisation": null,
"optin_annonceur": null,
"optin_partenaire": null,
"optin_website": null,
"message": null,
"from": null,
"type_id": 2,
"instapage_id": null,
"departement_recherche_id": null,
"type_maison": null,
"budget_max_hors_terrain": null,
"utm_source": null,
"utm_medium": null,
"utm_campaign": null,
"utm_term": null,
"utm_content": null,
"front_user_id": null,
"created_at": "2021-02-22T15:09:51.000000Z",
"updated_at": "2021-02-22T15:09:51.000000Z",
"exports_count": 0
}
]
}
Received response:
Request failed with error:
Create Contact
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/contact/create" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","annonce_id":125,"programme_id":125,"civilite":"M","prenom":"John","nom":"Doe","email":"john.doe@example.com","code_postal_recherche":"75000","ville_recherche":"Paris","type_commercialisation":"vente","optin_annonceur":false,"optin_partenaire":false,"optin_website":false,"message":"this is an example message","utm_source":"est","utm_medium":"id","utm_campaign":"autem","utm_term":"minus","utm_content":"necessitatibus"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/contact/create"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"annonce_id": 125,
"programme_id": 125,
"civilite": "M",
"prenom": "John",
"nom": "Doe",
"email": "john.doe@example.com",
"code_postal_recherche": "75000",
"ville_recherche": "Paris",
"type_commercialisation": "vente",
"optin_annonceur": false,
"optin_partenaire": false,
"optin_website": false,
"message": "this is an example message",
"utm_source": "est",
"utm_medium": "id",
"utm_campaign": "autem",
"utm_term": "minus",
"utm_content": "necessitatibus"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/contact/create',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'annonce_id' => 125,
'programme_id' => 125,
'civilite' => 'M',
'prenom' => 'John',
'nom' => 'Doe',
'email' => 'john.doe@example.com',
'code_postal_recherche' => '75000',
'ville_recherche' => 'Paris',
'type_commercialisation' => 'vente',
'optin_annonceur' => false,
'optin_partenaire' => false,
'optin_website' => false,
'message' => 'this is an example message',
'utm_source' => 'est',
'utm_medium' => 'id',
'utm_campaign' => 'autem',
'utm_term' => 'minus',
'utm_content' => 'necessitatibus',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/contact/create'
payload = {
"website": "TC",
"annonce_id": 125,
"programme_id": 125,
"civilite": "M",
"prenom": "John",
"nom": "Doe",
"email": "john.doe@example.com",
"code_postal_recherche": "75000",
"ville_recherche": "Paris",
"type_commercialisation": "vente",
"optin_annonceur": false,
"optin_partenaire": false,
"optin_website": false,
"message": "this is an example message",
"utm_source": "est",
"utm_medium": "id",
"utm_campaign": "autem",
"utm_term": "minus",
"utm_content": "necessitatibus"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website sélectionné est invalide."
],
"client_id": [
"Le champ client id sélectionné est invalide."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"message": "contact created"
}
Received response:
Request failed with error:
Distribution
APIs for managing distributions
List all distributions
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/distribution/all?website=TC" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/distribution/all"
);
let params = {
"website": "TC",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/distribution/all',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/distribution/all'
params = {
'website': 'TC',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"id": 1,
"commune_id": 2,
"code_postal": "75001",
"acheminement": "PARIS",
"actif": 1
},
{
"id": 2,
"commune_id": 3,
"code_postal": "75002",
"acheminement": "PARIS",
"actif": 1
},
{
"id": 3,
"commune_id": 4,
"code_postal": "75003",
"acheminement": "PARIS",
"actif": 1
}
]
}
Received response:
Request failed with error:
Search distribution
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/distribution/search" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","format":"KILLI","type":"code_postal","query":"75001"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/distribution/search"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"format": "KILLI",
"type": "code_postal",
"query": "75001"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/distribution/search',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'format' => 'KILLI',
'type' => 'code_postal',
'query' => '75001',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/distribution/search'
payload = {
"website": "TC",
"format": "KILLI",
"type": "code_postal",
"query": "75001"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
],
"type": [
"Le champ type est obligatoire."
],
"query": [
"Le champ query est obligatoire."
]
}
}
Example response (404):
{
"code": 404,
"status": "error",
"data": []
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"distrib_id": 1,
"commune_id": 2,
"code_postal": "75001",
"commune_nom": "PARIS"
},
{
"distrib_id": 2,
"commune_id": 3,
"code_postal": "75002",
"commune_nom": "PARIS"
},
{
"distrib_id": 3,
"commune_id": 4,
"code_postal": "75003",
"commune_nom": "PARIS"
},
{
"distrib_id": 4,
"commune_id": 5,
"code_postal": "75004",
"commune_nom": "PARIS"
},
{
"distrib_id": 5,
"commune_id": 6,
"code_postal": "75005",
"commune_nom": "PARIS"
}
]
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": [
{
"distrib_id": {
"value": 1,
"editable": 1,
"reference": "75001"
},
"commune_id": {
"value": 2,
"editable": 1,
"reference": "75001"
},
"code_postal": {
"value": "75001",
"editable": 1
},
"commune_nom": {
"value": "PARIS",
"editable": 1,
"reference": null
}
},
{
"distrib_id": {
"value": 2,
"editable": 1,
"reference": "75002"
},
"commune_id": {
"value": 3,
"editable": 1,
"reference": "75002"
},
"code_postal": {
"value": "75002",
"editable": 1
},
"commune_nom": {
"value": "PARIS",
"editable": 1,
"reference": null
}
}
]
}
Received response:
Request failed with error:
Front (Deprecated)
APIs for custom frontend routes
Count and group by zip (Deprecated) (Cached for 15min)
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-zip" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","cpextended":"13080 AIX EN PROVENCE,91100 VILLABE","type":"APPARTEMENT,TERRAIN","range":10}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-zip"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"cpextended": "13080 AIX EN PROVENCE,91100 VILLABE",
"type": "APPARTEMENT,TERRAIN",
"range": 10
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-zip',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'cpextended' => '13080 AIX EN PROVENCE,91100 VILLABE',
'type' => 'APPARTEMENT,TERRAIN',
'range' => 10.0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-zip'
payload = {
"website": "TC",
"cpextended": "13080 AIX EN PROVENCE,91100 VILLABE",
"type": "APPARTEMENT,TERRAIN",
"range": 10
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type": [
"Le champ type est invalide."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"13080 AIX EN PROVENCE": 54,
"91100 VILLABE": 42
}
}
Received response:
Request failed with error:
Count and group by region (Deprecated) (Cached for 15min)
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-region" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","region":"01,04,07","type":"APPARTEMENT,TERRAIN"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-region"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"region": "01,04,07",
"type": "APPARTEMENT,TERRAIN"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-region',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'region' => '01,04,07',
'type' => 'APPARTEMENT,TERRAIN',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/custom-front/annonce/count-group-region'
payload = {
"website": "TC",
"region": "01,04,07",
"type": "APPARTEMENT,TERRAIN"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"region.22": [
"Le champ region.22 sélectionné est invalide."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"1 Alsace": 36,
"2 Nord-Pas-de-Calais": 228,
"3 Rhône-Alpes": 424,
"4 Franche-Comté": 1,
"5 Lorraine": 18,
"6 Champagne-Ardenne": 38,
"7 Picardie": 13,
"8 Haute-Normandie": 225,
"9 Basse-Normandie": 8,
"10 Bretagne": 63,
"11 Auvergne": 60,
"12 Pays de la Loire": 19,
"13 Île-de-France": 1455,
"14 Centre": 235,
"15 Bourgogne": 81,
"16 Poitou-Charentes": 14,
"18 Aquitaine": 180,
"19 Midi-Pyrénées": 57,
"20 Languedoc-Roussillon": 175,
"21 Provence-Alpes-Côte d'Azur": 1150
}
}
Received response:
Request failed with error:
Programme
APIs for managing programmes
Display the specified programme.
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/programme/123?website=TC&client_vars=a%3A50%3A%7Bs%3A21%3A%22PHP_FCGI_MAX_REQUESTS%22%3Bs%3A4%3A%225000%22%3Bs%3A5%3A%22PHPRC%22%3Bs%3A18%3A%22%2Fvar%2Fwww%2Fconf%2Fweb3%22%3Bs%3A3%3A%22PWD%22%3Bs%3A30%3A%22%2Fvar%2Fwww%2Fphp-fcgi-scripts%2Fweb3%22...&ip=88.12.14.134" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123"
);
let params = {
"website": "TC",
"client_vars": "a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...",
"ip": "88.12.14.134",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'client_vars'=> 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'ip'=> '88.12.14.134',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123'
params = {
'website': 'TC',
'client_vars': 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'ip': '88.12.14.134',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 15,
"commune_id": 36507,
"client_id": 1,
"external_reference": "0038__35000",
"slugged_external_reference": "0038-35000",
"email_contact_additionnel": null,
"adresse": "8 RUE EMMANUEL RAIN",
"proximite": "",
"libelle": "URBAN VILLAGE",
"description": "Lancement de 15 Logements - à deux pas du centre-ville de Gonesse ! Nexity érige rue Emmanuel Rain une nouvelle résidence avec une architecture traditionnelle et élégante.<BR><BR>Une situation idéale à seulement 300m* du coeur de ville et 1km du nouveau parc de la commune 'Le poumon vert'. <BR><BR>Crèches, collèges, et Lycée ainsi que de nombreux commerces et services sont à proximité immédiate du projet.<BR>A 200m se trouve l'arrêt de bus de la ligne n°23 qui permet de rejoindre la Gare du RER B de Villiers-le-Bel-Gonesse-Arnouville. <BR>Il y en a pour tous les goûts ! : Appartements lumineux, déclinés du 2 pièces au 5 pièces, avec loggias, terrasses et jardins privatifs mais aussi de jolies maisons exposées Sud, de 3 ou 4 chambres avec jardins privatifs et garages. <BR><BR>Une résidence IDEALE pour HABITER OU INVESTIR ! DES PRIX ATTRACTIFS !<BR>PROFITEZ également du DISPOSITIF PINEL pour votre investissement !<BR><BR>Pour toutes informations complémentaires, CONTACTEZ-NOUS DES MAINTENANT ! Pour toutes informations complémentaires, prenez contact avec nous !",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"appartement": 1,
"maison": 1,
"terrain": 0,
"piscine": 0,
"climatisation": 0,
"pinel": 1,
"anru": null,
"lmnp": null,
"tva5": null,
"localisation_mer": null,
"localisation_montagne": null,
"localisation_etranger": null,
"type_senior": null,
"type_etudiant": null,
"type_tourisme": null,
"date_dispo": "2022-06-29T22:00:00.000000Z",
"identifiant_quartier": "",
"transport_ligne": "",
"transport_station": "",
"etat": "avant-première",
"conso_energie": "",
"bilan_conso_energie": "",
"emission_ges": "",
"bilan_emission_ges": "",
"identifiant_technique": null,
"create_batch_id": 2,
"update_batch_id": 2476,
"remove_batch_id": null,
"lastseen_batch_id": 2674,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2020-12-28T11:07:13.000000Z",
"created_at": "2020-02-20T13:02:47.000000Z",
"updated_at": "2020-12-28T11:07:13.000000Z",
"deleted_at": null
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"ip": [
"Le champ ip est obligatoire quand la valeur de consultation est true."
],
"client_vars": [
"Le champ client vars est obligatoire quand la valeur de consultation est true."
]
}
}
Received response:
Request failed with error:
Store a newly created programme.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456,"commune_id":456,"ext_ref":"2924-Ab-c","type":"rerum","price":100000,"programme_id":12,"surface":104.9,"published":1,"adresse":"10 street of change","alarme":1,"annee_construction":"2012","ascenseur":0,"associated_websites_codes":"{\"0\":\"MB\",\"1\",\"AC\"}","avant_premiere":1,"bilan_conso_energie":"B","bilan_emission_ges":"A","cave":1,"charges_mois":55.12,"conso_energie":"1520","date_dispo":"15\/01\/2023","description":"My long description","droit_au_bail":0,"email_contact_additionnel":"me@example.com","emission_ges":"1520","etage":2,"etat_interieur":"Etat neuf","exclusivite":0,"external_code_postal":"25300","interphone":0,"libelle":"Appartement neuf sous les combles 75m\u0153","loyer_mois_charges_comprises":760.25,"loyer_mois":705.13,"moderated":0,"nbr_balcon":1,"nbr_boxe":0,"nbr_chambre_rdc":1,"nbr_etage":2,"nbr_parking":1,"nbr_piece":4,"nbr_sdb":4,"piscine":0,"priorite_visibilite":2,"prix_maison":120000,"prix_terrain":8000,"prix":200000,"proximite":"Arret de bus ligne 10","sous_type_bien":250,"surface_balcon":14,"surface_habitable":100,"surface_maison":152.15,"surface_sejour":40.51,"surface_terrain":800,"taxe_fonciere":1000.9,"terrasse":0,"type_chauffage":4608,"type_cuisine":6,"type_eau_chaude":70}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "rerum",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
'commune_id' => 456,
'ext_ref' => '2924-Ab-c',
'type' => 'rerum',
'price' => 100000.0,
'programme_id' => 12,
'surface' => 104.9,
'published' => 1,
'adresse' => '10 street of change',
'alarme' => 1,
'annee_construction' => '2012',
'ascenseur' => 0,
'associated_websites_codes' => '{"0":"MB","1","AC"}',
'avant_premiere' => 1,
'bilan_conso_energie' => 'B',
'bilan_emission_ges' => 'A',
'cave' => 1,
'charges_mois' => 55.12,
'conso_energie' => '1520',
'date_dispo' => '15/01/2023',
'description' => 'My long description',
'droit_au_bail' => 0.0,
'email_contact_additionnel' => 'me@example.com',
'emission_ges' => '1520',
'etage' => 2,
'etat_interieur' => 'Etat neuf',
'exclusivite' => 0,
'external_code_postal' => '25300',
'interphone' => 0,
'libelle' => 'Appartement neuf sous les combles 75mœ',
'loyer_mois_charges_comprises' => 760.25,
'loyer_mois' => 705.13,
'moderated' => 0,
'nbr_balcon' => 1,
'nbr_boxe' => 0,
'nbr_chambre_rdc' => 1,
'nbr_etage' => 2,
'nbr_parking' => 1,
'nbr_piece' => 4,
'nbr_sdb' => 4,
'piscine' => 0,
'priorite_visibilite' => 2,
'prix_maison' => 120000.0,
'prix_terrain' => 8000.0,
'prix' => 200000.0,
'proximite' => 'Arret de bus ligne 10',
'sous_type_bien' => 250,
'surface_balcon' => 14.0,
'surface_habitable' => 100.0,
'surface_maison' => 152.15,
'surface_sejour' => 40.51,
'surface_terrain' => 800.0,
'taxe_fonciere' => 1000.9,
'terrasse' => 0,
'type_chauffage' => 4608,
'type_cuisine' => 6,
'type_eau_chaude' => 70,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme'
payload = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "rerum",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "programme created"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"client_id": [
"Le champ client id sélectionné est invalide."
],
"commune_id": [
"Le champ commune id est obligatoire."
],
"external_reference": [
"Le champ external reference est obligatoire."
]
}
}
Received response:
Request failed with error:
Update the specified programme.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/{programme}" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456,"commune_id":456,"ext_ref":"2924-Ab-c","type":"itaque","price":100000,"programme_id":12,"surface":104.9,"published":1,"adresse":"10 street of change","alarme":1,"annee_construction":"2012","ascenseur":0,"associated_websites_codes":"{\"0\":\"MB\",\"1\",\"AC\"}","avant_premiere":1,"bilan_conso_energie":"B","bilan_emission_ges":"A","cave":1,"charges_mois":55.12,"conso_energie":"1520","date_dispo":"15\/01\/2023","description":"My long description","droit_au_bail":0,"email_contact_additionnel":"me@example.com","emission_ges":"1520","etage":2,"etat_interieur":"Etat neuf","exclusivite":0,"external_code_postal":"25300","interphone":0,"libelle":"Appartement neuf sous les combles 75m\u0153","loyer_mois_charges_comprises":760.25,"loyer_mois":705.13,"moderated":0,"nbr_balcon":1,"nbr_boxe":0,"nbr_chambre_rdc":1,"nbr_etage":2,"nbr_parking":1,"nbr_piece":4,"nbr_sdb":4,"piscine":0,"priorite_visibilite":2,"prix_maison":120000,"prix_terrain":8000,"prix":200000,"proximite":"Arret de bus ligne 10","sous_type_bien":250,"surface_balcon":14,"surface_habitable":100,"surface_maison":152.15,"surface_sejour":40.51,"surface_terrain":800,"taxe_fonciere":1000.9,"terrasse":0,"type_chauffage":4608,"type_cuisine":6,"type_eau_chaude":70}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/{programme}"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "itaque",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/{programme}',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
'commune_id' => 456,
'ext_ref' => '2924-Ab-c',
'type' => 'itaque',
'price' => 100000.0,
'programme_id' => 12,
'surface' => 104.9,
'published' => 1,
'adresse' => '10 street of change',
'alarme' => 1,
'annee_construction' => '2012',
'ascenseur' => 0,
'associated_websites_codes' => '{"0":"MB","1","AC"}',
'avant_premiere' => 1,
'bilan_conso_energie' => 'B',
'bilan_emission_ges' => 'A',
'cave' => 1,
'charges_mois' => 55.12,
'conso_energie' => '1520',
'date_dispo' => '15/01/2023',
'description' => 'My long description',
'droit_au_bail' => 0.0,
'email_contact_additionnel' => 'me@example.com',
'emission_ges' => '1520',
'etage' => 2,
'etat_interieur' => 'Etat neuf',
'exclusivite' => 0,
'external_code_postal' => '25300',
'interphone' => 0,
'libelle' => 'Appartement neuf sous les combles 75mœ',
'loyer_mois_charges_comprises' => 760.25,
'loyer_mois' => 705.13,
'moderated' => 0,
'nbr_balcon' => 1,
'nbr_boxe' => 0,
'nbr_chambre_rdc' => 1,
'nbr_etage' => 2,
'nbr_parking' => 1,
'nbr_piece' => 4,
'nbr_sdb' => 4,
'piscine' => 0,
'priorite_visibilite' => 2,
'prix_maison' => 120000.0,
'prix_terrain' => 8000.0,
'prix' => 200000.0,
'proximite' => 'Arret de bus ligne 10',
'sous_type_bien' => 250,
'surface_balcon' => 14.0,
'surface_habitable' => 100.0,
'surface_maison' => 152.15,
'surface_sejour' => 40.51,
'surface_terrain' => 800.0,
'taxe_fonciere' => 1000.9,
'terrasse' => 0,
'type_chauffage' => 4608,
'type_cuisine' => 6,
'type_eau_chaude' => 70,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/{programme}'
payload = {
"website": "TC",
"client_id": 456,
"commune_id": 456,
"ext_ref": "2924-Ab-c",
"type": "itaque",
"price": 100000,
"programme_id": 12,
"surface": 104.9,
"published": 1,
"adresse": "10 street of change",
"alarme": 1,
"annee_construction": "2012",
"ascenseur": 0,
"associated_websites_codes": "{\"0\":\"MB\",\"1\",\"AC\"}",
"avant_premiere": 1,
"bilan_conso_energie": "B",
"bilan_emission_ges": "A",
"cave": 1,
"charges_mois": 55.12,
"conso_energie": "1520",
"date_dispo": "15\/01\/2023",
"description": "My long description",
"droit_au_bail": 0,
"email_contact_additionnel": "me@example.com",
"emission_ges": "1520",
"etage": 2,
"etat_interieur": "Etat neuf",
"exclusivite": 0,
"external_code_postal": "25300",
"interphone": 0,
"libelle": "Appartement neuf sous les combles 75m\u0153",
"loyer_mois_charges_comprises": 760.25,
"loyer_mois": 705.13,
"moderated": 0,
"nbr_balcon": 1,
"nbr_boxe": 0,
"nbr_chambre_rdc": 1,
"nbr_etage": 2,
"nbr_parking": 1,
"nbr_piece": 4,
"nbr_sdb": 4,
"piscine": 0,
"priorite_visibilite": 2,
"prix_maison": 120000,
"prix_terrain": 8000,
"prix": 200000,
"proximite": "Arret de bus ligne 10",
"sous_type_bien": 250,
"surface_balcon": 14,
"surface_habitable": 100,
"surface_maison": 152.15,
"surface_sejour": 40.51,
"surface_terrain": 800,
"taxe_fonciere": 1000.9,
"terrasse": 0,
"type_chauffage": 4608,
"type_cuisine": 6,
"type_eau_chaude": 70
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "programme updated"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"programme_id": [
"Le champ programme id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Remove the specified programme.
Example request:
curl -X DELETE \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC"
}
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123'
payload = {
"website": "TC"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "programme deleted"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"programme_id": [
"Le champ programme id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Attach a document to the specified programme.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/attach/document" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","document_id":154}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/attach/document"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"document_id": 154
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/attach/document',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'document_id' => 154,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/attach/document'
payload = {
"website": "TC",
"document_id": 154
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "document attached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"document_id": [
"Le champ document id est obligatoire."
]
}
}
Received response:
Request failed with error:
Detach a document to the specified programme.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/detach/document" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","document_id":154}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/detach/document"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"document_id": 154
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/detach/document',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'document_id' => 154,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/123/detach/document'
payload = {
"website": "TC",
"document_id": 154
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "document detached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"document_id": [
"Le champ document id est obligatoire."
]
}
}
Received response:
Request failed with error:
Search by State
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/state" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_id":1,"client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","state":"01","country":"fr","limit":100}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/state"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr",
"limit": 100
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/state',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_id' => 1,
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'state' => '01',
'country' => 'fr',
'limit' => 100,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/state'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"state": "01",
"country": "fr",
"limit": 100
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Zip
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/zip" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_id":1,"client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","zip":"75000","country":"fr","limit":100}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/zip"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr",
"limit": 100
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/zip',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_id' => 1,
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'zip' => '75000',
'country' => 'fr',
'limit' => 100,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/zip'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"zip": "75000",
"country": "fr",
"limit": 100
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search by Region
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/region" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","range":10,"paginate":15,"page":1,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"client_id":1,"type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","consultation":"1","ip":"88.12.14.134","client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","region":"01","country":"fr","limit":100}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/region"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"range": 10,
"paginate": 15,
"page": 1,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"client_id": 1,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01",
"country": "fr",
"limit": 100
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/region',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'range' => 10,
'paginate' => 15,
'page' => 1,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'client_id' => 1,
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'consultation' => '1',
'ip' => '88.12.14.134',
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'region' => '01',
'country' => 'fr',
'limit' => 100,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/region'
payload = {
"website": "TC",
"range": 10,
"paginate": 15,
"page": 1,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"client_id": 1,
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"consultation": "1",
"ip": "88.12.14.134",
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"region": "01",
"country": "fr",
"limit": 100
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Search All
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/all" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","type_annonce":"'APPARTEMENT NEUF, MAISON NEUF'","only_with_annonce":false,"range":10,"paginate":15,"page":1,"order_on":"id","order_dir":"DESC","max_price":10000,"room":2,"consultation":"1","ip":"88.12.14.134","client_id":1,"client_vars":"a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...","country":"fr","limit":100}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/all"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"only_with_annonce": false,
"range": 10,
"paginate": 15,
"page": 1,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"limit": 100
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/all',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'type_annonce' => '\'APPARTEMENT NEUF, MAISON NEUF\'',
'only_with_annonce' => false,
'range' => 10,
'paginate' => 15,
'page' => 1,
'order_on' => 'id',
'order_dir' => 'DESC',
'max_price' => 10000,
'room' => 2,
'consultation' => '1',
'ip' => '88.12.14.134',
'client_id' => 1,
'client_vars' => 'a:50:{s:21:"PHP_FCGI_MAX_REQUESTS";s:4:"5000";s:5:"PHPRC";s:18:"/var/www/conf/web3";s:3:"PWD";s:30:"/var/www/php-fcgi-scripts/web3"...',
'country' => 'fr',
'limit' => 100,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/search/all'
payload = {
"website": "TC",
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
"only_with_annonce": false,
"range": 10,
"paginate": 15,
"page": 1,
"order_on": "id",
"order_dir": "DESC",
"max_price": 10000,
"room": 2,
"consultation": "1",
"ip": "88.12.14.134",
"client_id": 1,
"client_vars": "a:50:{s:21:\"PHP_FCGI_MAX_REQUESTS\";s:4:\"5000\";s:5:\"PHPRC\";s:18:\"\/var\/www\/conf\/web3\";s:3:\"PWD\";s:30:\"\/var\/www\/php-fcgi-scripts\/web3\"...",
"country": "fr",
"limit": 100
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 2,
"data": [
{
"id": 436126,
"programme_id": null,
"commune_id": 17425,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "21210_30495",
"slugged_external_reference": "21210-30495",
"email_contact_additionnel": null,
"external_code_postal": "45130",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "MEUNG-SUR-LOIRE, Maison sur sous sol, offrant pièce de vie avec cheminée à foyer ouvert, une cuisine indépendante, 3 chambres, laissant encore du potentiel à exploiter. Travaux de maçonnerie à prévoir. A 1,5 kilomètres de la gare et 2 kilomètres de l'autoroute...\nRéf 30495 Prix 164 3 7\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 70 40\nHonoraires à la charge de l'acquéreur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 140,
"surface_maison": null,
"surface_terrain": 1500,
"surface_habitable": 140,
"surface_sejour": 40,
"prix": 164300,
"prix_maison": 164300,
"prix_terrain": null,
"nbr_piece": 4,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 3,
"nbr_chambre_rdc": null,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8200,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": null,
"bilan_conso_energie": null,
"emission_ges": null,
"bilan_emission_ges": null,
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 17425,
"departement_id": 47,
"nom": "MEUNG SUR LOIRE",
"insee": "45203",
"nom_special": "Meung-sur-Loire",
"nom_recherche": "MEUNGSURLOIRE",
"prefixe_nom_special": "",
"population": 5993,
"actif": 1,
"zone_id": null,
"longitude": 1.695017,
"latitude": 47.82795,
"centre": {
"type": "Point",
"coordinates": [
1.695017,
47.82795
]
},
"created_at": null,
"updated_at": "2021-02-08T16:50:00.000000Z",
"deleted_at": null,
"departement": {
"id": 47,
"region_id": 14,
"nom": "LOIRET",
"code": "45",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 14,
"pays_id": 1,
"nom": "Centre",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
},
{
"id": 436127,
"programme_id": null,
"commune_id": 11566,
"client_id": 2202,
"type": "MAISON ANCIEN",
"external_reference": "22322_30477",
"slugged_external_reference": "22322-30477",
"email_contact_additionnel": null,
"external_code_postal": "30100",
"adresse": null,
"proximite": null,
"libelle": "Maison",
"description": "ALES, A 10 minutes de tout commerces, maison de 151 m² avec terrain de 843 m² clôturé et arboré. Dans un quartier calme . Au rez de chaussée, une chambre avec salle d'eau attenante, un bureau, une salle de jeux, un double garage, une chaufferie et une cuisine d'été. A l'étage, un salon salle à manger avec cheminée ouverte, une cuisine donnant sur une terrasse, trois chambres avec placards, une salle de bains, un toilette. Double vitrage. A voir...\nRéf 30477 Prix 284 0 25\nAgent Mandataire Indépendant\nRCS de Nîmes (30), n°832 122 824\nLCDI Réseau National Immobilier\nVous souhaitez être rappelé plus tard pour ce bien ?,\nEnvoyez : \"RAPPEL réf 3 59 25\nHonoraires à la charge du vendeur",
"avant_premiere": 0,
"exclusivite": null,
"priorite_visibilite": 0,
"surface": 151,
"surface_maison": null,
"surface_terrain": 843,
"surface_habitable": 151,
"surface_sejour": 37,
"prix": 284000,
"prix_maison": 284000,
"prix_terrain": null,
"nbr_piece": 5,
"etage": null,
"terrasse": null,
"nbr_balcon": null,
"surface_balcon": null,
"nbr_etage": null,
"ascenseur": null,
"cave": null,
"nbr_parking": null,
"nbr_boxe": null,
"nbr_chambre": 4,
"nbr_chambre_rdc": 1,
"nbr_sdb": 1,
"type_cuisine": 11,
"type_chauffage": 8704,
"type_eau_chaude": null,
"alarme": null,
"piscine": null,
"interphone": null,
"etat_interieur": null,
"date_dispo": null,
"conso_energie": "139",
"bilan_conso_energie": "C",
"emission_ges": "32",
"bilan_emission_ges": "D",
"annee_construction": null,
"loyer_mois": null,
"loyer_mois_charges_comprises": null,
"charges_mois": null,
"droit_au_bail": null,
"taxe_fonciere": null,
"sous_type_bien": 270,
"create_batch_id": 3006,
"update_batch_id": null,
"remove_batch_id": null,
"lastseen_batch_id": 3006,
"source": null,
"from_website": null,
"published": 1,
"moderated": 0,
"published_at": "2021-02-01T09:31:06.000000Z",
"created_at": "2021-02-01T09:31:03.000000Z",
"updated_at": "2021-02-01T09:31:06.000000Z",
"deleted_at": null,
"commune": {
"id": 11566,
"departement_id": 32,
"nom": "ALES",
"insee": "30007",
"nom_special": "Alès",
"nom_recherche": "ALES",
"prefixe_nom_special": "",
"population": 41037,
"actif": 1,
"zone_id": null,
"longitude": 4.079023,
"latitude": 44.127402,
"centre": {
"type": "Point",
"coordinates": [
4.079023,
44.127402
]
},
"created_at": null,
"updated_at": "2021-02-08T16:49:50.000000Z",
"deleted_at": null,
"departement": {
"id": 32,
"region_id": 20,
"nom": "GARD",
"code": "30",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null,
"region": {
"id": 20,
"pays_id": 1,
"nom": "Languedoc-Roussillon",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z",
"deleted_at": null
}
}
},
"programme": null
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"from": 3,
"last_page": 16,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=16",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=3",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client",
"per_page": 2,
"prev_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/annonce\/search\/client?page=1",
"to": 4,
"total": 32
}
}
Received response:
Request failed with error:
Global count
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/programme/count/all?website=TC&type_annonce=%22APPARTEMENT+NEUF%2C+MAISON+NEUF%22" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/count/all"
);
let params = {
"website": "TC",
"type_annonce": ""APPARTEMENT NEUF, MAISON NEUF"",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/count/all',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'type_annonce'=> '"APPARTEMENT NEUF, MAISON NEUF"',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/count/all'
params = {
'website': 'TC',
'type_annonce': '"APPARTEMENT NEUF, MAISON NEUF"',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"type_annonce": [
"Le champ type annonce est obligatoire."
]
}
}
Example response (200):
{
"code": 200,
"status": "ok",
"data": 32
}
Received response:
Request failed with error:
Get sitemap necessary informations
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/programme/utils/sitemap?website=TC&type_annonce=%27APPARTEMENT+NEUF%2C+MAISON+NEUF%27" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/programme/utils/sitemap"
);
let params = {
"website": "TC",
"type_annonce": "'APPARTEMENT NEUF, MAISON NEUF'",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/programme/utils/sitemap',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'type_annonce'=> ''APPARTEMENT NEUF, MAISON NEUF'',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/programme/utils/sitemap'
params = {
'website': 'TC',
'type_annonce': ''APPARTEMENT NEUF, MAISON NEUF'',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"current_page": 1,
"data": [
{
"id": 638,
"commune_id": 36419,
"client_id": 722,
"external_reference": "94SUCLEC",
"slugged_external_reference": "94suclec",
"email_contact_additionnel": "ogic@immolink.fr",
"adresse": "89-89 BIS, RUE DE GAL LECLERC",
"libelle": "LE GRAND VAL",
"description": "L’ensemble immobilier se compose de 6 bâtiments\n Bâtiments à 4 étages seulement et aux toitures végétalisées\nDu studio au 4 pièces\nLes logements bénéficient d’espaces extérieurs, balcon, terrasse ou jardin\nDes espaces de rencontre sont présents tout le long de la venelle piétonne, ainsi qu’un local partagé en cœur d’îlot, permettant ainsi les échanges et le bien-être de vivre ensemble\nSucy-en-Brie est à 17 kilomètres du centre de Paris et accessible via de grands axes routiers (A4 et la Francilienne). Il est également possible de rejoindre la capitale par le RER A grâce à la station Sucy-Bonneuil située à 6 minutes en bus de la résidence. Par ailleurs, le bus 393 vous permet d’accéder aux correspondances de la ligne 8 du métro, le RER C et le RER D.",
"appartement": 1,
"date_dispo": "2023-08-31T22:00:00.000000Z",
"etat": "Nouvelle réalisation",
"create_batch_id": 2405,
"lastseen_batch_id": 2631,
"published": 1,
"published_at": "2020-12-15T06:00:26.000000Z",
"created_at": "2020-11-24T17:08:12.000000Z",
"updated_at": "2020-12-15T06:00:26.000000Z",
"prix_max": 393000,
"prix_min": 165000,
"annonces_count": 22,
"consultations_count": 13,
"documents_count": 10,
"commune": {
"id": 36419,
"departement_id": 95,
"nom": "SUCY EN BRIE",
"insee": "94071",
"nom_special": "Sucy-en-Brie",
"nom_recherche": "SUCYENBRIE",
"population": 25839,
"actif": 1,
"longitude": 2.522617,
"latitude": 48.770901,
"centre": {
"type": "Point",
"coordinates": [
2.522617,
48.770901
]
},
"updated_at": "2021-02-08T16:50:35.000000Z",
"departement": {
"id": 95,
"region_id": 13,
"nom": "VAL-DE-MARNE",
"code": "94",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
},
"firstdistribution": {
"id": 36570,
"commune_id": 36419,
"code_postal": "94370",
"acheminement": "SUCY EN BRIE",
"actif": 1
}
},
"documents": [
"https:\/\/files.appartement-construction.com\/images\/ogic\/94SUCLEC-1.jpg",
"https:\/\/files.appartement-construction.com\/images\/ogic\/94SUCLEC-2.jpg",
"https:\/\/files.appartement-construction.com\/images\/ogic\/94SUCLEC-3.jpg",
"https:\/\/files.appartement-construction.com\/images\/ogic\/94SUCLEC-4.jpg",
"https:\/\/files.appartement-construction.com\/images\/ogic\/94SUCLEC-5.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/ogic_2_0\/94suclec\/5_ogic-sucy-en-brie-appartement-neuf-interieur-salon-balcon.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/ogic_2_0\/94suclec\/5_ogic-sucy-en-brie-appartement-neuf-jardin.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/ogic_2_0\/94suclec\/5_ogic-sucy-en-brie-appartement-neuf-terrasse.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/ogic_2_0\/94suclec\/5_ogic-sucy-en-brie-avant-premiere-appartement-neuf.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/ogic_2_0\/94suclec\/5_ogic-sucy-en-brie-residence-neuve.jpg"
]
},
{
"id": 413,
"commune_id": 36389,
"client_id": 1,
"external_reference": "0038__38106",
"slugged_external_reference": "0038-38106",
"adresse": "11 RUE DE LONRAY",
"libelle": "GREEN PARK",
"description": "SUCCES COMMERCIAL <BR>NOUVEAUX APPARTEMENTS A VENDRE, RENSEIGNEZ-VOUS DES MAINTENANT!<BR> <BR>Au coeur d'un quartier résidentiel, découvrez votre nouvelle résidence située rue de Lonray. <BR> Green Park se situe à proximité des commerces et de nombreux établissements scolaires de la maternelle au lycée. A quelques pas, le parc du Tremblay qui s'étend sur 75 hectares, vous permettra de vous détendre et de profiter des activités sportives en famille.<BR>Les bus 106\/108 et 110 situés à 400m* vous permettront de rejoindre le centre de Paris en 30 min* par les gares RER A ' Joinville-le-Pont ' ou par le RER E ' Les Boullereaux-Champigny '. Vous profiterez également d'un accès rapide aux autoroutes A4 et A86. <BR>Dans un environnement verdoyant, cette réalisation à l'architecture contemporaine accueille de NOUVEAUX APPARTEMENTS du studio au 5 pièces s'ouvrant pour la plupart sur des loggias, balcons, terrasses ou jardins privatifs.<BR><BR>Une adresse idéale pour HABITER OU INVESTIR.<BR><BR><BR>*Données à titre indicatif - Source Mappy<BR> Pour toutes informations complémentaires, prenez contact avec nous !",
"appartement": 1,
"climatisation": 1,
"pinel": 1,
"date_dispo": "2023-03-30T22:00:00.000000Z",
"create_batch_id": 1157,
"update_batch_id": 2476,
"lastseen_batch_id": 2674,
"published": 1,
"published_at": "2020-12-28T11:07:37.000000Z",
"created_at": "2020-04-09T02:00:54.000000Z",
"updated_at": "2020-12-28T11:07:37.000000Z",
"prix_max": 518000,
"prix_min": 195000,
"annonces_count": 27,
"consultations_count": 27,
"documents_count": 5,
"commune": {
"id": 36389,
"departement_id": 95,
"nom": "CHAMPIGNY SUR MARNE",
"insee": "94017",
"nom_special": "Champigny-sur-Marne",
"nom_recherche": "CHAMPIGNYSURMARNE",
"population": 79486,
"actif": 1,
"longitude": 2.497028,
"latitude": 48.817257,
"centre": {
"type": "Point",
"coordinates": [
2.497028,
48.817257
]
},
"updated_at": "2021-02-08T16:50:35.000000Z",
"departement": {
"id": 95,
"region_id": 13,
"nom": "VAL-DE-MARNE",
"code": "94",
"created_at": "2017-08-31T08:35:15.000000Z",
"updated_at": "2017-08-31T08:35:15.000000Z",
"region": {
"id": 13,
"pays_id": 1,
"nom": "Île-de-France",
"created_at": "2017-08-31T08:35:14.000000Z",
"updated_at": "2017-08-31T08:35:14.000000Z"
}
},
"firstdistribution": {
"id": 36539,
"commune_id": 36389,
"code_postal": "94500",
"acheminement": "CHAMPIGNY SUR MARNE",
"actif": 1
}
},
"documents": [
"https:\/\/files.appartement-construction.com\/images\/nexity\/0038__38106-1.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0038-38106\/3_0038_38106_PRG_PHOT_38106.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0038-38106\/3_0038_38106_PRG_PHO2_38106.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0038-38106\/3_0038_38106_PRG_PHO3_38106.jpg",
"https:\/\/files-preprod.appartement-construction.com\/images\/nexity_2_0\/0038-38106\/3_0038_38106_PRG_PHO4_38106.jpg"
]
}
],
"first_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/programme\/search\/state?page=1",
"from": 1,
"last_page": 4,
"last_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/programme\/search\/state?page=4",
"next_page_url": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/programme\/search\/state?page=2",
"path": "https:\/\/dashboard-preprod.appartement-construction.com\/api\/v2\/programme\/search\/state",
"per_page": 2,
"to": 2,
"total": 7
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
]
}
}
Received response:
Request failed with error:
User
APIs for managing users
Display the specified user.
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/user/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC"
}
fetch(url, {
method: "GET",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/123'
payload = {
"website": "TC"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 1,
"name": "john",
"email": "john.doe@example.com",
"email_verified_at": null,
"created_at": "2019-08-21T06:42:32.000000Z",
"updated_at": "2019-08-21T06:42:32.000000Z",
"deleted_at": null,
"clients": []
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"user_id": [
"Le champ user id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Get an user to the specified email.
Example request:
curl -X GET \
-G "https://dashboard-preprod.appartement-construction.com/api/v2/user/search/email?website=TC&email=john.doe%40example.com" \
-H "Content-Type: application/json" \
-H "Accept: application/json"
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/search/email"
);
let params = {
"website": "TC",
"email": "john.doe@example.com",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/search/email',
[
'headers' => [
'Accept' => 'application/json',
],
'query' => [
'website'=> 'TC',
'email'=> 'john.doe@example.com',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/search/email'
params = {
'website': 'TC',
'email': 'john.doe@example.com',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"data": {
"id": 99999,
"name": "John Doe",
"email": "john.doe@example.com",
"email_verified_at": null,
"created_at": "2021-03-08T10:32:34.000000Z",
"updated_at": "2021-03-08T10:32:34.000000Z",
"deleted_at": null
}
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"website": [
"Le champ website est obligatoire."
],
"email": [
"Le champ email est obligatoire."
]
}
}
Received response:
Request failed with error:
Attach a client to the specified user.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123/attach/client" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123/attach/client"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/123/attach/client',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/123/attach/client'
payload = {
"website": "TC",
"client_id": 456
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "client attached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"user_id": [
"Le champ user id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Detach a client to the specified user.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123/detach/client" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","client_id":456}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123/detach/client"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"client_id": 456
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/123/detach/client',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'client_id' => 456,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/123/detach/client'
payload = {
"website": "TC",
"client_id": 456
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "client detached"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"user_id": [
"Le champ user id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Create a new user.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/user" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","name":"John","email":"john.doe@example.com","password":"H_jS!12a"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"name": "John",
"email": "john.doe@example.com",
"password": "H_jS!12a"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/user',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'name' => 'John',
'email' => 'john.doe@example.com',
'password' => 'H_jS!12a',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user'
payload = {
"website": "TC",
"name": "John",
"email": "john.doe@example.com",
"password": "H_jS!12a"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "user created"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"email": [
"Le champ email est obligatoire."
],
"password": [
"Le champ password est obligatoire."
]
}
}
Received response:
Request failed with error:
Update the specified user.
Example request:
curl -X POST \
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC","name":"John","email":"john.doe@example.com","password":"H_jS!12a"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC",
"name": "John",
"email": "john.doe@example.com",
"password": "H_jS!12a"
}
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
'name' => 'John',
'email' => 'john.doe@example.com',
'password' => 'H_jS!12a',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/123'
payload = {
"website": "TC",
"name": "John",
"email": "john.doe@example.com",
"password": "H_jS!12a"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "user updated"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"user_id": [
"Le champ user id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Remove the specified user.
Example request:
curl -X DELETE \
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123" \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"website":"TC"}'
const url = new URL(
"https://dashboard-preprod.appartement-construction.com/api/v2/user/123"
);
let headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"website": "TC"
}
fetch(url, {
method: "DELETE",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://dashboard-preprod.appartement-construction.com/api/v2/user/123',
[
'headers' => [
'Accept' => 'application/json',
],
'json' => [
'website' => 'TC',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://dashboard-preprod.appartement-construction.com/api/v2/user/123'
payload = {
"website": "TC"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"code": 200,
"status": "ok",
"message": "user deleted"
}
Example response (400):
{
"code": 400,
"status": "error",
"message": {
"user_id": [
"Le champ user id sélectionné est invalide."
]
}
}
Received response:
Request failed with error:
Additional Datas
Annonce / Type values
Use one of these string to specify Annonce Type in Annonce
- APPARTEMENT
- APPARTEMENT ANCIEN
- APPARTEMENT LOCATION
- MAISON
- MAISON ANCIEN
- MAISON LOCATION
- TERRAIN
- TERRAIN ET MAISON
- ANNEXE
- COMMERCE
- BUREAU
Annonce / Bilan Conso & Emission
Use one of these chars to define bilan_* value in Annonce
- V = vierge / empty
- N = non soumis / NA
- A = A
- B = B
- C = C
- D = D
- E = E
- F = F
- G = G
Annonce / Sous Type de Bien
Use one of these key (int) to specify Annonce Sous Type in Annonce
- 1 = appartement
- 2 = appartement neuf
- 3 = appartement récent
- 4 = appartement rénové
- 5 = appartement à rénover
- 10 = bastide
- 11 = bastidon
- 20 = bergerie
- 30 = cabanon
- 40 = chalet
- 50 = chambre
- 51 = chambre de service
- 55 = château
- 60 = corps de ferme
- 70 = demeure
- 80 = domaine
- 90 = duplex
- 100 = duplex/triplex
- 110 = échoppe
- 120 = entrepôt
- 130 = exploitation agricole
- 140 = exploitation viticole
- 150 = ferme
- 160 = fermette
- 165 = gîte
- 170 = grange
- 175 = habitation
- 180 = hôtel particulier
- 190 = île
- 200 = immeuble commercial
- 210 = immeuble de bureaux
- 220 = immeuble mixte
- 230 = local dactivités
- 240 = local de stockage
- 250 = loft
- 260 = lotissement
- 270 = maison
- 275 = maison à rénover
- 280 = maison ancienne
- 290 = maison basque
- 300 = maison bourgeoise
- 310 = maison charentaise
- 320 = maison contemporaine
- 330 = maison darchitecte
- 340 = maison dhôte
- 345 = maison de bourg
- 348 = maison de campagne
- 350 = maison de loisirs
- 360 = maison de maître
- 370 = maison de village
- 380 = maison de ville
- 385 = maison en bois
- 390 = maison en pierre
- 400 = maison jumelée
- 410 = maison landaise
- 420 = maison longère
- 425 = maison neuve
- 430 = maison provençale
- 435 = maison récente
- 440 = maison traditionnelle
- 450 = manoir
- 460 = mas
- 470 = mazet
- 480 = moulin
- 490 = pavillon
- 500 = programme
- 510 = projet
- 520 = propriété
- 530 = propriété de chasse
- 540 = propriété équestre
- 550 = riad
- 560 = studette
- 561 = studio
- 562 = t1
- 563 = t1bis
- 564 = t2
- 565 = t3
- 566 = t4
- 567 = t5
- 568 = t6
- 569 = terrain
- 570 = terrain agricole
- 580 = terrain commercial
- 590 = terrain de loisirs
- 600 = terrain industriel
- 610 = terrain viticole
- 620 = toulousaine
- 630 = triplex
- 640 = villa
Annonce / Type Chauffage
Use one of these key (int) to specify Type Chauffage in Annonce
- 64 = aérothermie
- 92 = bois
- 128 = radiateur
- 256 = sol
- 384 = mixte
- 512 = gaz
- 640 = gaz radiateur
- 768 = gaz sol
- 896 = gaz mixte
- 1024 = fuel
- 1152 = fuel radiateur
- 1280 = fuel sol
- 1408 = fuel mixte
- 2048 = électrique
- 2176 = électrique radiateur
- 2304 = électrique sol
- 2432 = électrique mixte
- 4096 = collectif
- 4201 = collectif bois
- 4224 = collectif radiateur
- 4352 = collectif sol
- 4480 = collectif mixte
- 4608 = collectif gaz
- 4736 = collectif gaz radiateur
- 4864 = collectif gaz sol
- 4992 = collectif gaz mixte
- 5120 = collectif fuel
- 5248 = collectif fuel radiateur
- 5376 = collectif fuel sol
- 5504 = collectif fuel mixte
- 6144 = collectif électrique
- 6272 = collectif électrique radiateur
- 6400 = collectif électrique sol
- 6528 = collectif électrique mixte
- 8192 = individuel
- 8200 = individuel bois
- 8320 = individuel radiateur
- 8448 = individuel sol
- 8576 = individuel mixte
- 8704 = individuel gaz
- 8832 = individuel gaz radiateur
- 8960 = individuel gaz sol
- 9088 = individuel gaz mixte
- 9216 = individuel fuel
- 9344 = individuel fuel radiateur
- 9472 = individuel fuel sol
- 9600 = individuel fuel mixte
- 9800 = individuel solaire
- 10240 = individuel électrique
- 10368 = individuel électrique radiateur
- 10496 = individuel électrique sol
- 10624 = individuel électrique mixte
- 16384 = climatisation réversible
- 20480 = climatisation réversible centrale
- 24576 = climatisation réversible individuelle
Annonce / Type Cuisine
Use one of these key (int) to specify Type Cuisine in Annonce
- 0 = aucune
- 1 = aucune
- 2 = américaine
- 3 = séparée
- 4 = industrielle
- 5 = coin cuisine
- 6 = américaine équipée
- 7 = séparée équipée
- 8 = coin cuisine équipé
- 9 = équipée
- 10 = ouverte
- 11 = aménagée
- 12 = vide
Annonce / Type Eau chande
Use one of these key (int) to specify Type Cuisine in Annonce
- 20 = ballon électrique
- 30 = chaudière
- 70 = gaz
- 90 = individuelle
Annonce / State values
Use one of these key (int) to specify State in Annonce
- 1 = PARIS
- 2 = AIN
- 3 = AISNE
- 4 = ALLIER
- 5 = ALPES-DE-HAUTE-PROVENCE
- 6 = HAUTES-ALPES
- 7 = ALPES-MARITIMES
- 8 = ARDECHE
- 9 = ARDENNES
- 10 = ARIEGE
- 11 = AUBE
- 12 = AUDE
- 13 = AVEYRON
- 14 = BOUCHES-DU-RHONE
- 15 = CALVADOS
- 16 = CANTAL
- 17 = CHARENTE
- 18 = CHARENTE-MARITIME
- 19 = CHER
- 20 = CORREZE
- 21 = COTE-D'OR
- 22 = COTES-D'ARMOR
- 23 = CREUSE
- 24 = DORDOGNE
- 25 = DOUBS
- 26 = DROME
- 27 = EURE
- 28 = EURE-ET-LOIR
- 29 = FINISTERE
- 30 = CORSE-DU-SUD
- 31 = HAUTE-CORSE
- 32 = GARD
- 33 = HAUTE-GARONNE
- 34 = GERS
- 35 = GIRONDE
- 36 = HERAULT
- 37 = ILLE-ET-VILAINE
- 38 = INDRE
- 39 = INDRE-ET-LOIRE
- 40 = ISERE
- 41 = JURA
- 42 = LANDES
- 43 = LOIR-ET-CHER
- 44 = LOIRE
- 45 = HAUTE-LOIRE
- 46 = LOIRE-ATLANTIQUE
- 47 = LOIRET
- 48 = LOT
- 49 = LOT-ET-GARONNE
- 50 = LOZERE
- 51 = MAINE-ET-LOIRE
- 52 = MANCHE
- 53 = MARNE
- 54 = HAUTE-MARNE
- 55 = MAYENNE
- 56 = MEURTHE-ET-MOSELLE
- 57 = MEUSE
- 58 = MORBIHAN
- 59 = MOSELLE
- 60 = NIEVRE
- 61 = NORD
- 62 = OISE
- 63 = ORNE
- 64 = PAS-DE-CALAIS
- 65 = PUY-DE-DOME
- 66 = PYRENEES-ATLANTIQUES
- 67 = HAUTES-PYRENEES
- 68 = PYRENEES-ORIENTALES
- 69 = BAS-RHIN
- 70 = HAUT-RHIN
- 71 = RHONE
- 72 = HAUTE-SAONE
- 73 = SAONE-ET-LOIRE
- 74 = SARTHE
- 75 = SAVOIE
- 76 = HAUTE-SAVOIE
- 77 = SEINE-MARITIME
- 78 = SEINE-ET-MARNE
- 79 = YVELINES
- 80 = DEUX-SEVRES
- 81 = SOMME
- 82 = TARN
- 83 = TARN-ET-GARONNE
- 84 = VAR
- 85 = VAUCLUSE
- 86 = VENDEE
- 87 = VIENNE
- 88 = HAUTE-VIENNE
- 89 = VOSGES
- 90 = YONNE
- 91 = TERRITOIRE DE BELFORT
- 92 = ESSONNE
- 93 = HAUTS-DE-SEINE
- 94 = SEINE-SAINT-DENIS
- 95 = VAL-DE-MARNE
- 96 = VAL-D'OISE