Aller au contenu

Module Immo — Endpoints API

Ce module couvre tous les endpoints REST utilisés par le site drwh_immo.

Base URL

https://api.darewatch.com/api/v1
→ Conventions générales


Vue d'ensemble des endpoints Immo

graph LR
    API[API Backend] --> P[/properties\nBiens immobiliers]
    API --> PR[/projects\nProjets construction]
    API --> L[/lots\nLotissements]
    API --> B[/blog/articles\nBlog Immo]
    API --> J[/careers\nCarrières Immo]
    API --> C[/contact/immo\nContact]
    style API fill:#8e44ad,color:#fff
    style P fill:#27ae60,color:#fff
    style PR fill:#0066FF,color:#fff
    style L fill:#f39c12,color:#fff
    style B fill:#e74c3c,color:#fff
    style J fill:#9b59b6,color:#fff

3.1 Propriétés (biens immobiliers)

Lister les propriétés

GET /properties?page=1&pageSize=12&type=villa&city=Douala

Paramètres de filtre :

Paramètre Type Description
page integer Numéro de page
pageSize integer Éléments par page
type string villa, appartement, terrain
city string Ville (ex: Douala, Yaoundé)
minPrice integer Prix minimum (FCFA)
maxPrice integer Prix maximum (FCFA)
status string disponible, vendu, en_construction

Réponse :

{
  "success": true,
  "data": [
    {
      "id": 1,
      "title": "Villa F5 Bonamoussadi",
      "slug": "villa-f5-bonamoussadi",
      "type": "villa",
      "status": "disponible",
      "price": 45000000,
      "currency": "FCFA",
      "surface_m2": 250,
      "bedrooms": 5,
      "bathrooms": 3,
      "location": {
        "city": "Douala",
        "district": "Bonamoussadi",
        "description": "Résidence sécurisée, proche commerces"
      },
      "images": ["https://...", "https://..."],
      "features": ["Piscine", "Jardin", "Garage", "Groupe électrogène"],
      "created_at": "2026-03-01T10:00:00Z"
    }
  ],
  "meta": { "total": 48, "page": 1, "pageSize": 12 }
}

Récupérer une propriété

GET /properties/:id

Rechercher des propriétés

GET /properties/search?q=villa&city=Douala&minPrice=20000000&maxPrice=60000000

3.2 Projets de construction

Lister les projets

GET /projects?status=en_cours&page=1&pageSize=9

Réponse :

{
  "success": true,
  "data": [
    {
      "id": 1,
      "title": "Résidence Les Palmiers",
      "slug": "residence-les-palmiers",
      "description": "Résidence sécurisée de 24 appartements",
      "status": "en_cours",
      "progress_percent": 65,
      "delivery_date": "2026-12-01",
      "location": {
        "city": "Douala",
        "district": "Makepe"
      },
      "units_total": 24,
      "units_available": 8,
      "price_from": 18000000,
      "images": ["https://..."],
      "features": ["Gardiennage 24/7", "Parking", "Groupe électrogène"]
    }
  ]
}

Récupérer un projet

GET /projects/:id

3.3 Lotissements

Lister les lots disponibles

GET /lots?city=Douala&is_available=true&page=1&pageSize=20

Réponse :

{
  "success": true,
  "data": [
    {
      "id": 1,
      "reference": "LOT-DLA-042",
      "surface_m2": 500,
      "price": 8000000,
      "currency": "FCFA",
      "is_available": true,
      "location": {
        "city": "Douala",
        "district": "Logpom",
        "subdivision": "Lotissement Horizon"
      },
      "coordinates": {
        "lat": 4.0452,
        "lng": 9.7122
      }
    }
  ]
}

3.4 Blog Immo

Lister les articles immobiliers

GET /blog/articles?category=immobilier&page=1&pageSize=10

Réponse :

{
  "success": true,
  "data": [
    {
      "id": 1,
      "title": "Comment financer son premier bien immobilier au Cameroun",
      "slug": "financer-premier-bien-cameroun",
      "excerpt": "Guide pratique pour obtenir un prêt immobilier...",
      "category": "Conseils",
      "author": {
        "name": "Équipe Darewatch Immo"
      },
      "published_at": "2026-04-01T10:00:00Z",
      "reading_time": 6
    }
  ]
}

3.5 Contact Immo

Envoyer une demande

POST /contact/immo
Content-Type: application/json

{
  "name": "Marie Nkolo",
  "email": "marie@exemple.com",
  "phone": "+237 677123456",
  "subject": "Intérêt pour Villa F5 Bonamoussadi",
  "message": "Je souhaite visiter le bien en référence...",
  "property_id": 1
}

3.6 Carrières Immo

GET /careers?domain=immo&page=1&pageSize=10

Même format que les carrières Tech avec domain=immo.


Endpoints Admin Immo (authentification requise)

Méthode Route Action
GET /admin/properties Lister tous les biens
POST /admin/properties Créer un bien
PUT /admin/properties/:id Modifier un bien
DELETE /admin/properties/:id Supprimer un bien
GET /admin/projects Lister les projets
POST /admin/projects Créer un projet
PUT /admin/projects/:id Modifier un projet
GET /admin/lots Lister les lots
POST /admin/lots Créer des lots
PUT /admin/lots/:id Modifier un lot

Liens complémentaires