Aller au contenu principal
Référence

API Lokatix v1

API REST publique pour vos intégrations externes. Tous les endpoints sont limités au compte authentifié et renvoient du JSON.

URL de base

https://www.lokatix.com

Authentification

Chaque requête doit inclure votre clé API. Transmettez-la via l'en-tête x-api-key ou en tant que jeton Bearer dans l'en-tête Authorization.

Option A — en-tête x-api-key (recommandé)
curl https://www.lokatix.com/api/v1/properties \
  -H "x-api-key: YOUR_API_KEY"
Option B — en-tête Authorization
curl https://www.lokatix.com/api/v1/properties \
  -H "Authorization: Bearer YOUR_API_KEY"
Où trouver votre clé API : connectez-vous à Lokatix, allez dans Paramètres → API et copiez votre clé personnelle (bientôt disponible sur le plan Business). Gardez-la secrète — elle donne un accès complet aux données de votre compte.

Format des réponses

Toutes les réponses sont au format JSON. Les endpoints de liste renvoient une enveloppe paginée :

{
  "data":   [...],   // tableau d'enregistrements
  "total":  120,     // nombre total d'enregistrements correspondants
  "limit":  50,      // taille de page utilisée
  "offset": 0        // début de page utilisé
}

Les endpoints de création (POST) renvoient { "data": { ... } } avec un statut HTTP 201 en cas de succès. Les erreurs renvoient { "error": "message" } avec le code HTTP approprié.

Code HTTPSignification
200OK — la requête de liste a réussi
201Créé — ressource créée avec succès
400Requête invalide — erreur de validation ou JSON malformé
401Non autorisé — clé API manquante ou invalide
500Erreur serveur — erreur interne inattendue

Endpoints

MéthodeURLDescription
GET/api/v1/propertiesListe tous les biens du compte authentifié.
POST/api/v1/propertiesCrée un nouveau bien.
GET/api/v1/tenantsListe tous les locataires du compte authentifié.
POST/api/v1/tenantsCrée un nouveau locataire.
GET/api/v1/leasesListe tous les baux du compte authentifié.
POST/api/v1/leasesCrée un nouveau bail.
GET/api/v1/paymentsListe tous les paiements du compte authentifié.
POST/api/v1/paymentsCrée un nouveau paiement.

Référence des endpoints

GET/api/v1/properties

Liste tous les biens du compte authentifié.

Paramètres de requête
NomTypeDescription
statusstringFiltrer par statut : available | rented | maintenance | archived
typestringFiltrer par type : apartment | house | studio | parking | garage | commercial | office | other
limitnumberNombre de résultats à retourner (défaut : 50, max : 200)
offsetnumberNombre de résultats à ignorer pour la pagination (défaut : 0)
Exemple
curl "https://www.lokatix.com/api/v1/properties?status=active&limit=10" \
  -H "x-api-key: YOUR_API_KEY"
POST/api/v1/properties

Crée un nouveau bien.

Corps de la requête

Corps JSON avec les champs du bien. Requis : name, type, address, postal_code, city, rent_amount.

Exemple
curl -X POST "https://www.lokatix.com/api/v1/properties" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "name": "Appartement Centre-ville",
  "type": "apartment",
  "address": "12 rue de la Paix",
  "postal_code": "75001",
  "city": "Paris",
  "rent_amount": 1200
}'
GET/api/v1/tenants

Liste tous les locataires du compte authentifié.

Paramètres de requête
NomTypeDescription
statusstringFiltrer par statut : active | pending | archived
limitnumberNombre de résultats à retourner (défaut : 50, max : 200)
offsetnumberNombre de résultats à ignorer pour la pagination (défaut : 0)
Exemple
curl "https://www.lokatix.com/api/v1/tenants?status=active&limit=10" \
  -H "x-api-key: YOUR_API_KEY"
POST/api/v1/tenants

Crée un nouveau locataire.

Corps de la requête

Corps JSON avec les champs du locataire. Requis : first_name, last_name, email.

Exemple
curl -X POST "https://www.lokatix.com/api/v1/tenants" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "first_name": "Marie",
  "last_name": "Dupont",
  "email": "marie.dupont@example.com",
  "phone": "+33 6 12 34 56 78"
}'
GET/api/v1/leases

Liste tous les baux du compte authentifié.

Paramètres de requête
NomTypeDescription
statusstringFiltrer par statut : draft | pending_signature | active | terminated | archived
limitnumberNombre de résultats à retourner (défaut : 50, max : 200)
offsetnumberNombre de résultats à ignorer pour la pagination (défaut : 0)
Exemple
curl "https://www.lokatix.com/api/v1/leases?status=active&limit=10" \
  -H "x-api-key: YOUR_API_KEY"
POST/api/v1/leases

Crée un nouveau bail.

Corps de la requête

Corps JSON avec les champs du bail. Requis : property_id, tenant_id, lease_type, start_date, rent_amount.

Exemple
curl -X POST "https://www.lokatix.com/api/v1/leases" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "property_id": "uuid-of-property",
  "tenant_id": "uuid-of-tenant",
  "lease_type": "empty",
  "start_date": "2026-05-01",
  "rent_amount": 1200
}'
GET/api/v1/payments

Liste tous les paiements du compte authentifié.

Paramètres de requête
NomTypeDescription
statusstringFiltrer par statut : pending | partial | paid | late | unpaid
limitnumberNombre de résultats à retourner (défaut : 50, max : 200)
offsetnumberNombre de résultats à ignorer pour la pagination (défaut : 0)
Exemple
curl "https://www.lokatix.com/api/v1/payments?status=active&limit=10" \
  -H "x-api-key: YOUR_API_KEY"
POST/api/v1/payments

Crée un nouveau paiement.

Corps de la requête

Corps JSON avec les champs du paiement. Requis : lease_id, due_date, amount_due.

Exemple
curl -X POST "https://www.lokatix.com/api/v1/payments" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "lease_id": "uuid-of-lease",
  "due_date": "2026-05-01",
  "amount_due": 1200,
  "payment_type": "rent"
}'

Pagination

Tous les endpoints de liste supportent une pagination par offset (sans curseur) via limit et offset. La réponse inclut toujours un total (total) pour calculer le nombre de pages.

# Récupère la page 3 (indexée à 0), 20 éléments par page
curl "https://www.lokatix.com/api/v1/properties?limit=20&offset=40" \
  -H "x-api-key: YOUR_API_KEY"

Limitation de débit

Prévu. La limitation de débit n'est pas appliquée dans la version actuelle. Une prochaine version introduira des limites par clé (par ex. 100 requêtes / minute). Un dépassement renverra HTTP 429 Too Many Requests avec un en-tête Retry-After. Nous recommandons de rester sous 60 req/min en anticipation de ce changement.
Documentation API Lokatix v1 | Lokatix