{"openapi":"3.1.0","info":{"title":"API Gerelio","version":"v1","summary":"API REST du logiciel de syndic et de gérance Gerelio","description":"Référentiel, comptabilité, appels de fonds, factures, assemblées et documents d’un cabinet. Documentation : https://gerelio.com/api","contact":{"name":"KAPSELL","url":"https://gerelio.com/contact"}},"servers":[{"url":"https://gerelio.com/api/v1"}],"security":[{"cleApi":[]}],"paths":{"/cabinet":{"get":{"operationId":"cabinetLire","summary":"Cabinet et clé utilisée","tags":["cabinet"],"parameters":[],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Cabinet"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/immeubles":{"get":{"operationId":"immeublesLister","summary":"Lister les immeubles","tags":["immeubles"],"parameters":[{"name":"gere_en_syndic","in":"query","required":false,"schema":{"type":"boolean"},"description":"true : copropriétés dont le cabinet est syndic ; false : immeubles en gestion locative seule"},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Immeuble"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/immeubles/{id}":{"get":{"operationId":"immeublesLire","summary":"Lire un immeuble","tags":["immeubles"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Immeuble"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/lots":{"get":{"operationId":"lotsLister","summary":"Lister les lots","tags":["lots"],"parameters":[{"name":"immeuble_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"proprietaire_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Lot"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/lots/{id}":{"get":{"operationId":"lotsLire","summary":"Lire un lot","tags":["lots"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Lot"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/personnes":{"get":{"operationId":"personnesLister","summary":"Lister les personnes","tags":["personnes"],"parameters":[{"name":"role","in":"query","required":false,"schema":{"enum":["coproprietaire","bailleur","locataire","fournisseur"]}},{"name":"email","in":"query","required":false,"schema":{"type":"string","format":"email"},"description":"Adresse exacte, sans tenir compte de la casse"},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Personne"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}},"post":{"operationId":"personnesCreer","summary":"Créer une personne","tags":["personnes"],"parameters":[],"responses":{"201":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Personne"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"403":{"description":"Clé en lecture seule, ou cabinet en lecture seule","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"409":{"description":"Doublon","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"422":{"description":"Règle métier non respectée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}},"x-portee":"lecture_ecriture","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PersonneCreation"}}}}}},"/personnes/{id}":{"get":{"operationId":"personnesLire","summary":"Lire une personne","tags":["personnes"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Personne"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}},"patch":{"operationId":"personnesModifier","summary":"Modifier une personne","tags":["personnes"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Personne"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"403":{"description":"Clé en lecture seule, ou cabinet en lecture seule","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"409":{"description":"Doublon","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"422":{"description":"Règle métier non respectée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}},"x-portee":"lecture_ecriture","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PersonneModification"}}}}}},"/baux":{"get":{"operationId":"bauxLister","summary":"Lister les baux","tags":["baux"],"parameters":[{"name":"statut","in":"query","required":false,"schema":{"type":"string"},"description":"Voir les valeurs possibles de la ressource"},{"name":"lot_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"locataire_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Bail"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/baux/{id}":{"get":{"operationId":"bauxLire","summary":"Lire un bail","tags":["baux"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Bail"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/entites":{"get":{"operationId":"entitesLister","summary":"Lister les entités comptables","tags":["entites"],"parameters":[{"name":"type","in":"query","required":false,"schema":{"enum":["syndicat","gerance"]}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Entite"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/entites/{id}":{"get":{"operationId":"entitesLire","summary":"Lire une entité comptable","tags":["entites"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Entite"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/entites/{id}/balance":{"get":{"operationId":"entitesBalance","summary":"Balance des comptes d’une entité","tags":["entites"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"date","in":"query","required":false,"schema":{"type":"string","format":"date"},"description":"Balance arrêtée à cette date (incluse) ; par défaut, toutes les écritures"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Balance"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/ecritures":{"get":{"operationId":"ecrituresLister","summary":"Lister les écritures comptables","tags":["ecritures"],"parameters":[{"name":"entite_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"journal","in":"query","required":false,"schema":{"enum":["AC","AP","BQ","OD","QT","AN"]}},{"name":"du","in":"query","required":false,"schema":{"type":"string","format":"date"},"description":"Date d’écriture minimale (incluse)"},{"name":"au","in":"query","required":false,"schema":{"type":"string","format":"date"},"description":"Date d’écriture maximale (incluse)"},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Ecriture"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/ecritures/{id}":{"get":{"operationId":"ecrituresLire","summary":"Lire une écriture","tags":["ecritures"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Ecriture"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/appels-de-fonds":{"get":{"operationId":"appelsLister","summary":"Lister les appels de fonds","tags":["appels-de-fonds"],"parameters":[{"name":"immeuble_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"annee","in":"query","required":false,"schema":{"type":"integer"}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/AppelDeFonds"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/appels-de-fonds/{id}":{"get":{"operationId":"appelsLire","summary":"Lire un appel de fonds","tags":["appels-de-fonds"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/AppelDeFonds"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/factures":{"get":{"operationId":"facturesLister","summary":"Lister les factures fournisseurs","tags":["factures"],"parameters":[{"name":"statut","in":"query","required":false,"schema":{"type":"string"},"description":"Voir les valeurs possibles de la ressource"},{"name":"entite_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"fournisseur_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Facture"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}},"post":{"operationId":"facturesCreer","summary":"Enregistrer une facture fournisseur","tags":["factures"],"parameters":[],"responses":{"201":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Facture"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"403":{"description":"Clé en lecture seule, ou cabinet en lecture seule","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"409":{"description":"Doublon","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"422":{"description":"Règle métier non respectée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}},"x-portee":"lecture_ecriture","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FactureCreation"}}}}}},"/factures/{id}":{"get":{"operationId":"facturesLire","summary":"Lire une facture","tags":["factures"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Facture"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/releves":{"get":{"operationId":"relevesLister","summary":"Lister les opérations bancaires","tags":["releves"],"parameters":[{"name":"entite_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"statut","in":"query","required":false,"schema":{"type":"string"},"description":"Voir les valeurs possibles de la ressource"},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/OperationBancaire"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}},"post":{"operationId":"relevesImporter","summary":"Importer un relevé bancaire","tags":["releves"],"parameters":[],"responses":{"201":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/ImportReleve"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"403":{"description":"Clé en lecture seule, ou cabinet en lecture seule","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"409":{"description":"Doublon","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"422":{"description":"Règle métier non respectée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}},"x-portee":"lecture_ecriture","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImportReleveCorps"}}}}}},"/releves/{id}":{"get":{"operationId":"relevesLire","summary":"Lire une opération bancaire","tags":["releves"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/OperationBancaire"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/assemblees":{"get":{"operationId":"assembleesLister","summary":"Lister les assemblées générales","tags":["assemblees"],"parameters":[{"name":"immeuble_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"statut","in":"query","required":false,"schema":{"type":"string"},"description":"Voir les valeurs possibles de la ressource"},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Assemblee"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/assemblees/{id}":{"get":{"operationId":"assembleesLire","summary":"Lire une assemblée, ses résolutions et son PV","tags":["assemblees"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Assemblee"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/documents":{"get":{"operationId":"documentsLister","summary":"Lister les documents","tags":["documents"],"parameters":[{"name":"immeuble_id","in":"query","required":false,"schema":{"type":"string","format":"uuid"}},{"name":"categorie","in":"query","required":false,"schema":{"type":"string"},"description":"Catégorie de document (pv_ag, compte_coproprietaire, fiche_synthetique…)"},{"name":"genere","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"limite","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":25},"description":"Nombre d’éléments par page"},{"name":"curseur","in":"query","required":false,"schema":{"type":"string"},"description":"Valeur curseur_suivant de la page précédente"}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"type":"array","items":{"$ref":"#/components/schemas/Document"}},"a_suivre":{"type":"boolean"},"curseur_suivant":{"type":["string","null"]}},"required":["donnees","a_suivre","curseur_suivant"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}},"/documents/{id}":{"get":{"operationId":"documentsLire","summary":"Lire un document","tags":["documents"],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}}],"responses":{"200":{"description":"Succès","content":{"application/json":{"schema":{"type":"object","properties":{"donnees":{"$ref":"#/components/schemas/Document"}},"required":["donnees"]}}}},"400":{"description":"Paramètre ou donnée invalide","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"401":{"description":"Clé absente, inconnue, révoquée ou expirée","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"404":{"description":"Introuvable dans votre cabinet","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}},"429":{"description":"Limite de 120 requêtes par minute atteinte (voir Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Erreur"}}}}}}}},"webhooks":{"paiement.recu":{"post":{"summary":"Événement paiement.recu","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}},"ag.close":{"post":{"summary":"Événement ag.close","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}},"facture.validee":{"post":{"summary":"Événement facture.validee","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}},"appel_de_fonds.emis":{"post":{"summary":"Événement appel_de_fonds.emis","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}},"bail.signe":{"post":{"summary":"Événement bail.signe","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}},"test.ping":{"post":{"summary":"Événement test.ping","parameters":[{"name":"Gerelio-Signature","in":"header","required":true,"schema":{"type":"string"},"description":"t=<horodatage Unix>,v1=<HMAC-SHA256 hexadécimal de « t.corps » avec le secret de l’abonnement>"},{"name":"Gerelio-Evenement","in":"header","required":true,"schema":{"type":"string"}},{"name":"Gerelio-Livraison","in":"header","required":true,"schema":{"type":"string","format":"uuid"}},{"name":"Gerelio-Tentative","in":"header","required":true,"schema":{"type":"integer"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Evenement"}}}},"responses":{"2XX":{"description":"Reçu. Toute autre réponse (ou aucune réponse en 10 s) déclenche une nouvelle tentative."}}}}},"components":{"securitySchemes":{"cleApi":{"type":"http","scheme":"bearer","bearerFormat":"gk_live_…","description":"Clé créée par un dirigeant dans Paramètres → API"}},"schemas":{"Erreur":{"type":"object","properties":{"erreur":{"type":"object","properties":{"statut":{"type":"integer"},"code":{"type":"string","examples":["introuvable"]},"message":{"type":"string"}},"required":["statut","code","message"]},"requete_id":{"type":"string","format":"uuid"}},"required":["erreur"]},"Cabinet":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"nom":{"type":"string"},"siren":{"type":["string","null"]},"adresse":{"type":["string","null"]},"code_postal":{"type":["string","null"]},"ville":{"type":["string","null"]},"email":{"type":["string","null"]},"telephone":{"type":["string","null"]},"carte_pro_numero":{"type":["string","null"]},"lecture_seule":{"type":"boolean"},"cle":{"type":"object","properties":{"nom":{"type":"string"},"prefixe":{"type":"string"},"portee":{"enum":["lecture","lecture_ecriture"]},"expire_le":{"type":["string","null"],"format":"date-time"}}},"limite_par_minute":{"type":"integer"}}},"Immeuble":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"nom":{"type":"string"},"adresse":{"type":"string"},"code_postal":{"type":["string","null"]},"ville":{"type":["string","null"]},"annee_construction":{"type":["integer","null"]},"gere_en_syndic":{"type":"boolean"},"rnic_numero":{"type":["string","null"]},"exercice_debut_mois":{"type":"integer"},"entite_id":{"type":["string","null"],"format":"uuid","description":"Entité comptable du syndicat"},"nombre_lots":{"type":"integer"},"cree_le":{"type":"string","format":"date-time"}}},"Lot":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"immeuble_id":{"type":"string","format":"uuid"},"numero":{"type":"string"},"type":{"enum":["appartement","maison","commerce","bureau","parking","cave","local"]},"etage":{"type":["string","null"]},"surface_m2":{"type":["number","null"]},"pieces":{"type":["integer","null"]},"proprietaire_id":{"type":["string","null"],"format":"uuid"},"dpe_classe":{"type":["string","null"],"enum":["A","B","C","D","E","F","G",null]},"dpe_date":{"type":["string","null"],"format":"date"},"tantiemes":{"type":"object","additionalProperties":{"type":"integer"},"description":"Tantièmes par code de clé de répartition (CG = charges générales)"},"cree_le":{"type":"string","format":"date-time"}}},"Personne":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"type":{"enum":["physique","morale"]},"civilite":{"type":["string","null"]},"nom":{"type":"string"},"prenom":{"type":["string","null"]},"raison_sociale":{"type":["string","null"]},"nom_affiche":{"type":"string"},"email":{"type":["string","null"]},"telephone":{"type":["string","null"]},"adresse":{"type":["string","null"]},"code_postal":{"type":["string","null"]},"ville":{"type":["string","null"]},"siren":{"type":["string","null"]},"iban_masque":{"type":["string","null"],"description":"Quatre premiers et quatre derniers caractères : l’IBAN complet n’est jamais renvoyé","examples":["FR76 **** 0189"]},"est_fournisseur":{"type":"boolean"},"metier":{"type":["string","null"]},"notification_papier_demandee":{"type":"boolean"},"roles":{"type":"array","items":{"enum":["coproprietaire","bailleur","locataire","fournisseur"]}},"cree_le":{"type":"string","format":"date-time"}}},"PersonneCreation":{"type":"object","properties":{"type":{"enum":["physique","morale"],"default":"physique"},"civilite":{"type":"string"},"nom":{"type":"string"},"prenom":{"type":"string"},"raison_sociale":{"type":"string"},"email":{"type":"string","format":"email"},"telephone":{"type":"string"},"adresse":{"type":"string"},"code_postal":{"type":"string"},"ville":{"type":"string"},"iban":{"type":"string","description":"Accepté en écriture, jamais renvoyé en entier"},"siren":{"type":"string"},"est_fournisseur":{"type":"boolean"},"metier":{"type":"string"},"notification_papier_demandee":{"type":"boolean"}},"required":["nom"],"additionalProperties":false},"PersonneModification":{"type":"object","properties":{"civilite":{"type":"string"},"nom":{"type":"string"},"prenom":{"type":"string"},"raison_sociale":{"type":"string"},"email":{"type":"string","format":"email"},"telephone":{"type":"string"},"adresse":{"type":"string"},"code_postal":{"type":"string"},"ville":{"type":"string"},"iban":{"type":"string"},"metier":{"type":"string"},"notification_papier_demandee":{"type":"boolean"}},"additionalProperties":false,"description":"Seuls les champs présents sont modifiés."},"Bail":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"lot_id":{"type":"string","format":"uuid"},"immeuble_id":{"type":"string","format":"uuid"},"mandat_gestion_id":{"type":"string","format":"uuid"},"bailleur_id":{"type":"string","format":"uuid"},"locataire_id":{"type":"string","format":"uuid"},"type":{"enum":["vide","meuble","mobilite","commercial","professionnel"]},"date_debut":{"type":"string","format":"date"},"duree_mois":{"type":"integer"},"date_fin":{"type":["string","null"],"format":"date"},"loyer_hc_cents":{"type":"integer","description":"Montant en centimes d’euro"},"provisions_charges_cents":{"type":"integer","description":"Montant en centimes d’euro"},"depot_garantie_cents":{"type":"integer","description":"Montant en centimes d’euro"},"irl_reference":{"type":["string","null"]},"revision_mois":{"type":["integer","null"]},"statut":{"enum":["actif","resilie"]},"signature":{"type":["object","null"],"properties":{"id":{"type":"string","format":"uuid"},"statut":{"type":"string"},"signee_le":{"type":["string","null"],"format":"date-time"}}},"cree_le":{"type":"string","format":"date-time"}}},"Entite":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"type":{"enum":["syndicat","gerance"]},"libelle":{"type":"string"},"immeuble_id":{"type":["string","null"],"format":"uuid"},"banque":{"type":["string","null"]},"iban_masque":{"type":["string","null"]},"cloture_jusquau":{"type":["string","null"],"format":"date"},"dernier_numero":{"type":"integer"},"cree_le":{"type":"string","format":"date-time"}}},"Balance":{"type":"object","properties":{"entite_id":{"type":"string","format":"uuid"},"date":{"type":["string","null"],"format":"date"},"comptes":{"type":"array","items":{"type":"object","properties":{"compte":{"type":"string"},"libelle":{"type":["string","null"]},"debit_cents":{"type":"integer","description":"Montant en centimes d’euro"},"credit_cents":{"type":"integer","description":"Montant en centimes d’euro"},"solde_cents":{"type":"integer","description":"Montant en centimes d’euro"},"tiers":{"type":"integer"}}}},"total_debit_cents":{"type":"integer","description":"Montant en centimes d’euro"},"total_credit_cents":{"type":"integer","description":"Montant en centimes d’euro"}}},"Ecriture":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"entite_id":{"type":"string","format":"uuid"},"numero":{"type":"integer"},"journal":{"enum":["AC","AP","BQ","OD","QT","AN"]},"date_ecriture":{"type":"string","format":"date"},"libelle":{"type":"string"},"piece_ref":{"type":["string","null"]},"origine_type":{"type":["string","null"]},"origine_id":{"type":["string","null"],"format":"uuid"},"contrepasse_de":{"type":["string","null"],"format":"uuid"},"hash":{"type":"string","description":"Sceau SHA-256 chaîné (journal inaltérable)"},"hash_precedent":{"type":["string","null"]},"lignes":{"type":"array","items":{"type":"object","properties":{"compte":{"type":"string"},"libelle":{"type":["string","null"]},"personne_id":{"type":["string","null"],"format":"uuid"},"lot_id":{"type":["string","null"],"format":"uuid"},"cle_id":{"type":["string","null"],"format":"uuid"},"debit_cents":{"type":"integer","description":"Montant en centimes d’euro"},"credit_cents":{"type":"integer","description":"Montant en centimes d’euro"}}}},"cree_le":{"type":"string","format":"date-time"}}},"AppelDeFonds":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"immeuble_id":{"type":"string","format":"uuid"},"type":{"enum":["budget","travaux"]},"annee":{"type":"integer"},"trimestre":{"type":["integer","null"]},"libelle":{"type":"string"},"date_echeance":{"type":"string","format":"date"},"total_budget_cents":{"type":"integer","description":"Montant en centimes d’euro"},"total_fonds_travaux_cents":{"type":"integer","description":"Montant en centimes d’euro"},"total_cents":{"type":"integer","description":"Montant en centimes d’euro"},"emis":{"type":"boolean"},"ecriture_id":{"type":["string","null"],"format":"uuid"},"lien":{"type":"string","format":"uri","description":"Document dans l’espace Gerelio (connexion requise)"},"lignes":{"type":"array","items":{"type":"object","properties":{"lot_id":{"type":"string","format":"uuid"},"lot_numero":{"type":"string"},"personne_id":{"type":"string","format":"uuid"},"budget_cents":{"type":"integer","description":"Montant en centimes d’euro"},"fonds_travaux_cents":{"type":"integer","description":"Montant en centimes d’euro"},"total_cents":{"type":"integer","description":"Montant en centimes d’euro"}}}},"cree_le":{"type":"string","format":"date-time"}}},"Facture":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"entite_id":{"type":"string","format":"uuid"},"fournisseur_id":{"type":"string","format":"uuid"},"fournisseur_nom":{"type":"string"},"numero":{"type":"string"},"date_facture":{"type":"string","format":"date"},"date_echeance":{"type":["string","null"],"format":"date"},"libelle":{"type":"string"},"montant_ttc_cents":{"type":"integer","description":"Montant en centimes d’euro"},"compte_charge":{"type":["string","null"]},"cle_id":{"type":["string","null"],"format":"uuid"},"lot_id":{"type":["string","null"],"format":"uuid"},"source":{"enum":["manuel","lecture_auto","plateforme_agreee"]},"statut":{"enum":["a_valider","validee","payee","rejetee"]},"motif_rejet":{"type":["string","null"]},"ecriture_id":{"type":["string","null"],"format":"uuid"},"ecriture_paiement_id":{"type":["string","null"],"format":"uuid"},"cree_le":{"type":"string","format":"date-time"}}},"FactureCreation":{"type":"object","properties":{"entite_id":{"type":"string","format":"uuid"},"fournisseur_id":{"type":"string","format":"uuid"},"numero":{"type":"string"},"date_facture":{"type":"string","format":"date"},"date_echeance":{"type":"string","format":"date"},"libelle":{"type":"string"},"montant_ttc_cents":{"type":"integer","minimum":1},"lot_id":{"type":"string","format":"uuid","description":"Gérance : lot concerné"},"source":{"enum":["manuel","lecture_auto","plateforme_agreee"],"default":"manuel"}},"required":["entite_id","fournisseur_id","numero","date_facture","libelle","montant_ttc_cents"],"additionalProperties":false},"OperationBancaire":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"entite_id":{"type":"string","format":"uuid"},"date_operation":{"type":"string","format":"date"},"libelle":{"type":"string"},"montant_cents":{"type":"integer","description":"Positif : crédit ; négatif : débit"},"reference_banque":{"type":["string","null"]},"statut":{"enum":["a_rapprocher","rapproche","ignore"]},"personne_id":{"type":["string","null"],"format":"uuid"},"facture_id":{"type":["string","null"],"format":"uuid"},"ecriture_id":{"type":["string","null"],"format":"uuid"},"cree_le":{"type":"string","format":"date-time"}}},"ImportReleveCorps":{"type":"object","properties":{"entite_id":{"type":"string","format":"uuid"},"operations":{"type":"array","minItems":1,"maxItems":1000,"items":{"type":"object","properties":{"date_operation":{"type":"string","format":"date"},"libelle":{"type":"string"},"montant_cents":{"type":"integer","description":"Non nul ; négatif pour un débit"},"reference_banque":{"type":"string"}},"required":["date_operation","libelle","montant_cents"],"additionalProperties":false}}},"required":["entite_id","operations"],"additionalProperties":false},"ImportReleve":{"type":"object","properties":{"entite_id":{"type":"string","format":"uuid"},"importees":{"type":"integer"},"doublons":{"type":"integer","description":"Opérations déjà présentes (même date, montant et libellé), ignorées"}}},"Assemblee":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"immeuble_id":{"type":"string","format":"uuid"},"type":{"enum":["ordinaire","extraordinaire"]},"date_ag":{"type":"string","format":"date-time"},"lieu":{"type":["string","null"]},"statut":{"enum":["preparation","convoquee","tenue","pv_diffuse"]},"convoquee_le":{"type":["string","null"],"format":"date"},"tenue_le":{"type":["string","null"],"format":"date"},"president_nom":{"type":["string","null"]},"secretaire_nom":{"type":["string","null"]},"resolutions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"ordre":{"type":"integer"},"titre":{"type":"string"},"texte":{"type":"string"},"majorite":{"enum":["art24","art25","art26","unanimite"]},"nature":{"type":"string"},"resultat":{"type":["object","null"],"description":"Après clôture : adoptee, regle, voix_pour, voix_contre, voix_abstention, voix_total_syndicat…"}}}},"proces_verbal":{"type":["object","null"],"properties":{"diffuse":{"type":"boolean"},"document_id":{"type":["string","null"],"format":"uuid"},"lien":{"type":"string","format":"uri"}}},"cree_le":{"type":"string","format":"date-time"}}},"Document":{"type":"object","properties":{"id":{"type":"string","format":"uuid"},"immeuble_id":{"type":["string","null"],"format":"uuid"},"lot_id":{"type":["string","null"],"format":"uuid"},"personne_id":{"type":["string","null"],"format":"uuid"},"categorie":{"type":"string"},"titre":{"type":"string"},"date_document":{"type":"string","format":"date"},"genere":{"type":"boolean","description":"Produit par Gerelio (appel de fonds, PV, fiche synthétique, convocation…)"},"source_type":{"type":["string","null"]},"source_id":{"type":["string","null"],"format":"uuid"},"publie_extranet":{"type":"boolean"},"lien":{"type":["string","null"],"format":"uri"},"cree_le":{"type":"string","format":"date-time"}}},"Evenement":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Identifiant unique : à utiliser pour ignorer un doublon"},"type":{"enum":["paiement.recu","ag.close","facture.validee","appel_de_fonds.emis","bail.signe","test.ping"]},"cree_le":{"type":"string","format":"date-time"},"cabinet_id":{"type":"string","format":"uuid"},"donnees":{"type":"object","description":"paiement.recu : { operation, payeur, compte, role, entite_id, montant_cents, date_operation, ecriture_id } ; ag.close : Assemblee ; facture.validee : Facture ; appel_de_fonds.emis : AppelDeFonds ; bail.signe : { bail, signature }"}},"required":["id","type","cree_le","cabinet_id","donnees"]}}}}