L'API REST vous permet d'integrer Expert Copro Gestion a vos outils existants : logiciels de comptabilite, extensions navigateur, scripts d'automatisation, ou toute application tierce.
L'API est organisee autour de ressources REST. Elle accepte les corps de requete en JSON, retourne des reponses JSON et utilise les codes de statut HTTP standards.
# Lister vos taches curl -H "X-API-Key: ecg_votre_cle_api" \ https://www.expert-copro-gestion.fr/api/client/v1/tasks.php
{
"success": true,
"data": [
{
"id": 12,
"title": "Verifier etancheite toiture bat A",
"status": "todo",
"priority": "high",
"due_date": "2026-04-10"
}
],
"meta": { "total": 47, "page": 1 }
}
L'API utilise des cles API pour authentifier les requetes. Chaque cle est liee a un utilisateur et une organisation.
Connectez-vous a votre espace client et allez dans Parametres > Cles API.
Generez une cle avec les permissions souhaitees : read (lecture seule) ou read + write (lecture/ecriture).
Ajoutez le header X-API-Key a chaque requete HTTP.
X-API-Key: ecg_a1b2c3d4e5f6...
{
"success": false,
"error": {
"code": "UNAUTHORIZED",
"message": "Cle API invalide ou expiree."
}
}
L'API applique un rate limiting pour garantir la stabilite du service.
429 Too Many Requests. Attendez quelques secondes avant de retenter.HTTP/1.1 429 Too Many Requests Content-Type: application/json Retry-After: 60
Toutes les reponses suivent le meme format. En cas d'erreur, success vaut false et un objet error decrit le probleme.
200 Succes201 Ressource creee400 Requete invalide401 Non authentifie403 Permission insuffisante404 Ressource introuvable422 Erreur de validation429 Trop de requetes500 Erreur serveur{
"success": false,
"error": {
"code": "NOT_FOUND",
"message": "Tache introuvable."
}
}
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Champs invalides.",
"fields": {
"title": "Titre requis.",
"due_date": "Format de date invalide."
}
}
}
Les endpoints de liste retournent des resultats pagines. Utilisez les parametres page et per_page.
| Parametre | Defaut | Description |
|---|---|---|
page | 1 | Numero de page |
per_page | 20 | Resultats par page (max 100) |
{
"success": true,
"data": [ /* ... resultats ... */ ],
"meta": {
"page": 2,
"per_page": 20,
"total": 47,
"pages": 3
}
}
Retourne la liste paginee des taches de votre organisation avec filtres optionnels.
| Parametre | Type | Description | |
|---|---|---|---|
status | string | optionnel | todo, in_progress, done, cancelled. Virgule pour multi. |
priority | string | optionnel | low, medium, high |
assigned_to_user_id | integer | optionnel | ID du membre assigne |
overdue | boolean | optionnel | 1 = taches en retard |
q | string | optionnel | Recherche texte (titre + description) |
sort | string | optionnel | created_at, due_date, priority, status, title |
order | string | optionnel | asc ou desc (defaut) |
curl -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?status=todo,in_progress&sort=due_date&order=asc"
{
"success": true,
"data": [
{
"id": 12,
"title": "Verifier etancheite toiture bat A",
"description": "Infiltrations au 3e etage",
"status": "todo",
"priority": "high",
"assigned_to": "Duclim SARL",
"assigned_to_user_id": 8,
"assignee_name": "Nicolas Lambert",
"property_name": "Residence Les Pins",
"due_date": "2026-04-10",
"document_count": 2,
"created_at": "2026-04-01 09:00:00"
}
],
"meta": {
"page": 1,
"per_page": 20,
"total": 47,
"pages": 3
}
}
Retourne le detail complet d'une tache avec ses documents attaches.
| Parametre | Type | Description | |
|---|---|---|---|
id | integer | requis | ID de la tache |
curl -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?id=12"
{
"success": true,
"data": {
"id": 12,
"title": "Verifier etancheite toiture bat A",
"description": "Infiltrations au 3e etage",
"status": "todo",
"priority": "high",
"due_date": "2026-04-10",
"creator_name": "Sophie Martin",
"assignee_name": "Nicolas Lambert",
"property_name": "Residence Les Pins",
"documents": [
{
"id": 1,
"original_name": "devis-toiture.pdf",
"mime_type": "application/pdf",
"size": 245000
}
]
}
}
Retourne les compteurs par statut et les statistiques globales.
curl -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?stats=1"
{
"success": true,
"data": {
"total": 47,
"todo": 18,
"in_progress": 12,
"done": 14,
"cancelled": 3,
"overdue": 5,
"high_priority": 8
}
}
Cree une nouvelle tache. Necessite la permission write.
| Champ | Type | Description | |
|---|---|---|---|
title | string | requis | Titre (max 255 car.) |
description | string | optionnel | Description detaillee |
status | string | optionnel | todo (defaut), in_progress, done, cancelled |
priority | string | optionnel | low, medium (defaut), high |
assigned_to_user_id | integer | optionnel | ID du membre assigne |
assigned_to | string | optionnel | Prestataire externe (texte libre) |
property_id | integer | optionnel | ID du bien concerne |
due_date | string | optionnel | Echeance (YYYY-MM-DD) |
curl -X POST \ -H "X-API-Key: ecg_votre_cle" \ -H "Content-Type: application/json" \ -d '{ "title": "Verifier etancheite toiture", "priority": "high", "assigned_to_user_id": 8, "due_date": "2026-04-15" }' \ https://www.expert-copro-gestion.fr/api/client/v1/tasks.php
{
"success": true,
"data": {
"id": 48,
"title": "Verifier etancheite toiture",
"status": "todo",
"priority": "high",
"assigned_to_user_id": 8,
"assignee_name": "Nicolas Lambert",
"due_date": "2026-04-15",
"created_at": "2026-04-08 14:30:00"
}
}
Met a jour une tache existante. Envoyez uniquement les champs a modifier. Permission write requise.
curl -X PUT \ -H "X-API-Key: ecg_votre_cle" \ -H "Content-Type: application/json" \ -d '{ "status": "done" }' \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?id=48"
{
"success": true,
"data": {
"id": 48,
"status": "done",
"completed_at": "2026-04-08 16:00:00",
// ... tous les champs
}
}
Supprime definitivement une tache et tous ses documents. Permission write requise.
curl -X DELETE \ -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?id=48"
{
"success": true,
"data": {
"deleted": 48
}
}
Retourne la liste des documents attaches a une tache (PDF, images, Word, Excel).
PDF, JPEG, PNG, GIF, WebP, Word (.doc, .docx), Excel (.xls, .xlsx). Maximum 20 documents par tache, 10 Mo par fichier.
curl -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/tasks.php?id=12&documents=1"
{
"success": true,
"data": [
{
"id": 1,
"original_name": "devis-toiture.pdf",
"mime_type": "application/pdf",
"size": 245000,
"uploaded_by_name": "Julie Moreau",
"created_at": "2026-04-01 14:30:00"
}
]
}
Retourne la liste paginee des biens et immeubles de votre organisation.
| Parametre | Type | Description | |
|---|---|---|---|
page | integer | optionnel | Page (defaut: 1) |
per_page | integer | optionnel | Par page (defaut: 20, max: 100) |
curl -H "X-API-Key: ecg_votre_cle" \
https://www.expert-copro-gestion.fr/api/client/v1/properties.php
{
"success": true,
"data": [
{
"id": 1,
"name": "Residence Les Pins",
"address": "12 rue des Pins, 75016 Paris",
"lots_count": 45,
"created_at": "2026-01-15 10:00:00"
}
],
"meta": { "page": 1, "total": 3 }
}
Retourne le detail complet d'un bien ou immeuble.
| Champ | Type | Description |
|---|---|---|
id | integer | Identifiant unique |
name | string | Nom du bien |
address | string | Adresse complete |
lots_count | integer | Nombre de lots |
notes | string | Notes internes |
created_at | datetime | Date de creation |
curl -H "X-API-Key: ecg_votre_cle" \ "https://www.expert-copro-gestion.fr/api/client/v1/properties.php?id=1"
{
"success": true,
"data": {
"id": 1,
"name": "Residence Les Pins",
"address": "12 rue des Pins, 75016 Paris",
"lots_count": 45,
"notes": "Gardien: M. Fernandez",
"created_at": "2026-01-15 10:00:00"
}
}