### Build the AGORA application Source: https://gitlab.com/hatvp-open/agora/-/blob/master/README.md Commands to install global dependencies and build the project using Maven and npm. ```bash npm install -g gulp npm install -g bower cd registre-web cd .. npm install cd registre-bo-web npm install cd .. mvn clean install ``` -------------------------------- ### Retrieve Organization Space Information Source: https://context7.com/hatvp-open/agora/llms.txt Use this endpoint to get current organization space details. Requires administrator, publisher, or contributor roles. ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/find/espace" \ -H "Authorization: Bearer " ``` -------------------------------- ### HATVP Nomenclature API - Response Structure Source: https://context7.com/hatvp-open/agora/llms.txt Example HTTP 200 OK response structure for the nomenclature API, detailing the available categories and their codes. ```json { "secteursActivites": [ {"code": "ENV", "libelle": "Environnement"}, {"code": "FIN", "libelle": "Finance et banque"}, {"code": "SAN", "libelle": "Santé"} ], "niveauxIntervention": [ {"code": "NAT", "libelle": "National"}, {"code": "EUR", "libelle": "Européen"}, {"code": "LOC", "libelle": "Local"} ], "typesAction": [ {"code": "RENDEZ_VOUS", "libelle": "Rendez-vous"}, {"code": "COMMUNICATION_ECRITE", "libelle": "Communication écrite"}, {"code": "EVENEMENT", "libelle": "Organisation d''événement"} ], "categoriesOrganisation": [ {"code": "ENT", "libelle": "Entreprise"}, {"code": "ASSO", "libelle": "Association"}, {"code": "CAB", "libelle": "Cabinet de conseil"} ] } ``` -------------------------------- ### HATVP Nomenclature API - Get All Nomenclatures Source: https://context7.com/hatvp-open/agora/llms.txt Retrieve all available nomenclatures for declarations. This endpoint returns a JSON object containing various lists such as activity sectors, intervention levels, action types, and organization categories. ```bash // GET /nomenclature/declaration/all - Toutes les nomenclatures curl -X GET "https://repertoire.hatvp.fr/api/nomenclature/declaration/all" ``` -------------------------------- ### GET /corporate/unsubscribe/desinscription_no_activite Source: https://context7.com/hatvp-open/agora/llms.txt Provides an automatic notification if no activity has been declared. ```APIDOC ## GET /corporate/unsubscribe/desinscription_no_activite ### Description Notification automatique si aucune activité déclarée. ### Method GET ### Endpoint /corporate/unsubscribe/desinscription_no_activite ### Parameters None ### Response #### Success Response (200 OK) Indicates successful retrieval of the notification. ``` -------------------------------- ### Register a new declarant Source: https://context7.com/hatvp-open/agora/llms.txt Registers a new user in the system using multipart/form-data to include identity documents and user profile information. ```bash curl -X POST "https://repertoire.hatvp.fr/api/declarant/add" \ -H "Content-Type: multipart/form-data" \ -F "file1=@piece_identite.pdf" \ -F 'declarant={ "prenom": "Jean", "nom": "Dupont", "date_naissance": "15/03/1980", "email": "jean.dupont@exemple.fr", "telephone": "0612345678", "civilite": "M", "password": "MotDePasse123" }' ``` -------------------------------- ### Create organization space Source: https://context7.com/hatvp-open/agora/llms.txt Creates a collaborative space for an organization, requiring authentication and multiple supporting documents. ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/registration/create" \ -H "Content-Type: multipart/form-data" \ -H "Authorization: Bearer " \ -F "file1=@piece_identite.pdf" \ -F "file2=@mandat_declaration.pdf" \ -F "file3=@justificatif_pouvoir.pdf" \ -F "file4=@statuts_association.pdf" \ -F "representantLegal=false" \ -F "association=true" \ -F 'organisation={ "raisonSociale": "Association Exemple", "siren": "123456789", "siret": "12345678901234", "adresse": "1 rue de la République", "codePostal": "75001", "ville": "Paris", "pays": "France", "organisationExist": false }' ``` -------------------------------- ### POST /api/corporate/registration/create Source: https://context7.com/hatvp-open/agora/llms.txt Creates a collaborative space linked to an organization. ```APIDOC ## POST /api/corporate/registration/create ### Description Creates an organization-linked space for collaborative work. ### Method POST ### Endpoint /api/corporate/registration/create ### Parameters #### Request Body - **file1..4** (file) - Required - Supporting documents (ID, mandate, power of attorney, statutes) - **representantLegal** (boolean) - Required - Flag if user is legal representative - **association** (boolean) - Required - Flag if organization is an association - **organisation** (json) - Required - Object containing raisonSociale, siren, siret, adresse, codePostal, ville, pays, organisationExist ### Request Example curl -X POST "https://repertoire.hatvp.fr/api/corporate/registration/create" -H "Authorization: Bearer " -F "file1=@piece_identite.pdf" -F "file2=@mandat_declaration.pdf" -F "file3=@justificatif_pouvoir.pdf" -F "file4=@statuts_association.pdf" -F "representantLegal=false" -F "association=true" -F 'organisation={"raisonSociale": "Association Exemple", "siren": "123456789", "siret": "12345678901234", "adresse": "1 rue de la République", "codePostal": "75001", "ville": "Paris", "pays": "France", "organisationExist": false}' ### Response #### Success Response (200) - **id** (integer) - Registration ID - **organizationId** (integer) - Organization ID - **representantLegal** (boolean) - Legal representative status - **statut** (string) - Current status of the registration #### Response Example { "id": 567, "organizationId": 890, "representantLegal": false, "statut": "EN_ATTENTE_VALIDATION" } ``` -------------------------------- ### Gestion des exercices comptables via API Source: https://context7.com/hatvp-open/agora/llms.txt Opérations pour lister, mettre à jour les moyens alloués, déclarer l'absence d'activité et générer des rapports PDF pour les exercices. ```bash curl -X GET "https://repertoire.hatvp.fr/api/declaration/exercice/all" \ -H "Authorization: Bearer " ``` ```bash curl -X GET "https://repertoire.hatvp.fr/api/declaration/exercice/fiche/all" \ -H "Authorization: Bearer " ``` ```bash curl -X PUT "https://repertoire.hatvp.fr/api/declaration/exercice/2023" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '{ "id": 2023, "montantDepenses": "100000-199999", "nbEtp": "5-10", "chiffreAffaires": "1000000-4999999" }' ``` ```bash curl -X PUT "https://repertoire.hatvp.fr/api/declaration/exercice/nulle/2023" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '{"id": 2023, "aucuneActivite": true}' ``` ```bash curl -X POST "https://repertoire.hatvp.fr/api/declaration/exercice/pdf/2023/true" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '["PUBLIE", "A_PUBLIER"]' \ --output rapport_activites_2023.pdf ``` -------------------------------- ### Create Activity Declaration Source: https://context7.com/hatvp-open/agora/llms.txt Submit a new declaration for interest representation activities. Requires details like accounting period, dates, action type, and object. ```bash curl -X POST "https://repertoire.hatvp.fr/api/declaration/fiche" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '{ "exerciceComptableId": 2023, "dateDebut": "15/04/2023", "dateFin": "15/04/2023", "typeAction": "COMMUNICATION_ECRITE", "objetAction": "Transmission note position sur directive européenne", "responsablesPublics": ["Conseiller ministériel"], "decisionPubliqueVisee": "Directive UE 2023/xxx" }' ``` -------------------------------- ### Add Collaborator Source: https://context7.com/hatvp-open/agora/llms.txt Add a new collaborator to the system. Requires nom, prenom, and fonction. ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/information/collaborateur" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '{ "nom": "Durand", "prenom": "Pierre", "fonction": "Chargé de mission" }' ``` -------------------------------- ### HATVP Back-Office API - Space Validation Source: https://context7.com/hatvp-open/agora/llms.txt Use these endpoints to manage pending space creation requests. Requires appropriate roles for authorization. ```bash // GET /corporate/pending/page/{page_no}/{result_per_page} - Liste paginée // Requiert: ROLE_VALIDATION_ESPACES_COLLABORATIFS ou ROLE_MANAGER curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/page/1/20" \ -H "Authorization: Bearer " ``` ```bash // GET /corporate/pending/{id} - Détail demande en attente curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/567" \ -H "Authorization: Bearer " ``` ```bash // POST /corporate/pending/{id}/accept - Valider la demande curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/accept" \ -H "Authorization: Bearer " ``` ```bash // POST /corporate/pending/{id}/reject - Rejeter la demande curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/reject" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '"Le SIREN fourni ne correspond pas à l'organisation déclarée."' ``` ```bash // POST /corporate/pending/{id}/complement - Demander pièces complémentaires curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/complement" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '"Merci de fournir une copie du mandat de déclaration signé."' ``` ```bash // GET /corporate/pending/{id}/motif/{idMotif} - Template motif de rejet curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/567/motif/1" \ -H "Authorization: Bearer " ``` -------------------------------- ### Upload Organization Logo Source: https://context7.com/hatvp-open/agora/llms.txt Upload the organization's logo. The file must be a JPG or PNG and not exceed 1MB. ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/logo/upload" \ -H "Authorization: Bearer " \ -F "file=@logo_entreprise.png" ``` -------------------------------- ### API Back-Office - Validation des Espaces Source: https://context7.com/hatvp-open/agora/llms.txt REST service for HATVP agents to validate/reject space creation requests. ```APIDOC ## GET /corporate/pending/page/{page_no}/{result_per_page} - Liste paginée ### Description Lists paginated pending requests for collaborative spaces. ### Method GET ### Endpoint /corporate/pending/page/{page_no}/{result_per_page} ### Parameters #### Path Parameters - **page_no** (integer) - Required - The page number to retrieve. - **result_per_page** (integer) - Required - The number of results per page. ### Request Example ```bash curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/page/1/20" \ -H "Authorization: Bearer " ``` ### Response #### Success Response (200) - **(structure not detailed)** - List of pending requests. ``` ```APIDOC ## GET /corporate/pending/{id} - Détail demande en attente ### Description Retrieves the details of a specific pending request. ### Method GET ### Endpoint /corporate/pending/{id} ### Parameters #### Path Parameters - **id** (integer) - Required - The ID of the pending request. ### Request Example ```bash curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/567" \ -H "Authorization: Bearer " ``` ### Response #### Success Response (200) - **(structure not detailed)** - Details of the pending request. ``` ```APIDOC ## POST /corporate/pending/{id}/accept - Valider la demande ### Description Validates a pending request for a corporate space. ### Method POST ### Endpoint /corporate/pending/{id}/accept ### Parameters #### Path Parameters - **id** (integer) - Required - The ID of the pending request to accept. ### Request Example ```bash curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/accept" \ -H "Authorization: Bearer " ``` ### Response #### Success Response (200) - **(structure not detailed)** - Confirmation of acceptance. ``` ```APIDOC ## POST /corporate/pending/{id}/reject - Rejeter la demande ### Description Rejects a pending request for a corporate space, with a reason. ### Method POST ### Endpoint /corporate/pending/{id}/reject ### Parameters #### Path Parameters - **id** (integer) - Required - The ID of the pending request to reject. #### Request Body - **(string)** - Required - The reason for rejection. ### Request Example ```bash curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/reject" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '"Le SIREN fourni ne correspond pas à l\'organisation déclarée."' ``` ### Response #### Success Response (200) - **(structure not detailed)** - Confirmation of rejection. ``` ```APIDOC ## POST /corporate/pending/{id}/complement - Demander pièces complémentaires ### Description Requests additional documents for a pending request. ### Method POST ### Endpoint /corporate/pending/{id}/complement ### Parameters #### Path Parameters - **id** (integer) - Required - The ID of the pending request. #### Request Body - **(string)** - Required - The request for complementary documents. ### Request Example ```bash curl -X POST "https://backoffice.hatvp.fr/api/corporate/pending/567/complement" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '"Merci de fournir une copie du mandat de déclaration signé."' ``` ### Response #### Success Response (200) - **(structure not detailed)** - Confirmation of request for complementary documents. ``` ```APIDOC ## GET /corporate/pending/{id}/motif/{idMotif} - Template motif de rejet ### Description Retrieves a template for a rejection reason. ### Method GET ### Endpoint /corporate/pending/{id}/motif/{idMotif} ### Parameters #### Path Parameters - **id** (integer) - Required - The ID of the pending request. - **idMotif** (integer) - Required - The ID of the rejection motif. ### Request Example ```bash curl -X GET "https://backoffice.hatvp.fr/api/corporate/pending/567/motif/1" \ -H "Authorization: Bearer " ``` ### Response #### Success Response (200) - **(structure not detailed)** - The rejection motif template. ``` -------------------------------- ### POST /api/declarant/add Source: https://context7.com/hatvp-open/agora/llms.txt Registers a new declarant in the system with an identity document upload. ```APIDOC ## POST /api/declarant/add ### Description Registers a new declarant (user) in the system with a mandatory identity document upload. ### Method POST ### Endpoint /api/declarant/add ### Request Body - **file1** (file) - Required - Identity document PDF - **declarant** (json) - Required - Object containing prenom, nom, date_naissance, email, telephone, civilite, and password ### Request Example curl -X POST "https://repertoire.hatvp.fr/api/declarant/add" -H "Content-Type: multipart/form-data" -F "file1=@piece_identite.pdf" -F 'declarant={"prenom": "Jean", "nom": "Dupont", "date_naissance": "15/03/1980", "email": "jean.dupont@exemple.fr", "telephone": "0612345678", "civilite": "M", "password": "MotDePasse123"}' ### Response #### Success Response (201) - **id** (integer) - Declarant ID - **prenom** (string) - First name - **nom** (string) - Last name - **email** (string) - Email address - **telephone** (string) - Phone number - **civilite** (string) - Title - **activated** (boolean) - Account activation status - **firstConn** (boolean) - First connection flag #### Response Example { "id": 12345, "prenom": "Jean", "nom": "Dupont", "email": "jean.dupont@exemple.fr", "telephone": "0612345678", "civilite": "M", "activated": false, "firstConn": true } ``` -------------------------------- ### Gestion des publications au répertoire public Source: https://context7.com/hatvp-open/agora/llms.txt Endpoints pour consulter les publications, prévisualiser de nouvelles entrées et déclencher la publication d'informations ou d'activités spécifiques. ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/publication/last" \ -H "Authorization: Bearer " ``` ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/publication/new" \ -H "Authorization: Bearer " ``` ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/publication" \ -H "Authorization: Bearer " ``` ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/publication/exercice/2023" \ -H "Authorization: Bearer " ``` ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/publication/activite/456" \ -H "Authorization: Bearer " ``` ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/publication/hasPublished/567" ``` -------------------------------- ### List All Collaborators Source: https://context7.com/hatvp-open/agora/llms.txt Retrieve a list of all collaborators associated with interest representation actions. ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/information/collaborateur" \ -H "Authorization: Bearer " ``` -------------------------------- ### API de Gestion des Exercices Comptables Source: https://context7.com/hatvp-open/agora/llms.txt Service REST pour gérer les exercices comptables et les moyens alloués aux activités de lobbying. ```APIDOC ## GET /declaration/exercice/all ### Description Liste des exercices comptables simplifiés. ### Method GET ### Endpoint /declaration/exercice/all ### Response #### Success Response (200) - **id** (integer) - The year of the accounting period. - **anneeDebut** (integer) - The start year of the accounting period. - **anneeFin** (integer) - The end year of the accounting period. - **dateDebut** (string) - The start date of the accounting period (format: DD/MM/YYYY). - **dateFin** (string) - The end date of the accounting period (format: DD/MM/YYYY). - **montantDepenses** (string) - Range of expenses incurred during the period (e.g., "50000-99999"). - **nbEtp** (string) - Range of full-time equivalent employees (e.g., "2-5"). ### Response Example ```json [ { "id": 2023, "anneeDebut": 2023, "anneeFin": 2023, "dateDebut": "01/01/2023", "dateFin": "31/12/2023", "montantDepenses": "50000-99999", "nbEtp": "2-5" } ] ``` ``` ```APIDOC ## GET /declaration/exercice/fiche/all ### Description Récupère les exercices comptables incluant les activités liées. ### Method GET ### Endpoint /declaration/exercice/fiche/all ``` ```APIDOC ## PUT /declaration/exercice/{exerciceId} ### Description Mettre à jour les moyens alloués à un exercice comptable. ### Method PUT ### Endpoint /declaration/exercice/{exerciceId} ### Parameters #### Path Parameters - **exerciceId** (integer) - Required - The ID of the accounting period to update. #### Request Body - **id** (integer) - Required - The ID of the accounting period. - **montantDepenses** (string) - Optional - The range of expenses (e.g., "100000-199999"). - **nbEtp** (string) - Optional - The range of full-time equivalent employees (e.g., "5-10"). - **chiffreAffaires** (string) - Optional - The range of turnover (e.g., "1000000-4999999"). ### Request Example ```json { "id": 2023, "montantDepenses": "100000-199999", "nbEtp": "5-10", "chiffreAffaires": "1000000-4999999" } ``` ``` ```APIDOC ## PUT /declaration/exercice/nulle/{exerciceId} ### Description Déclarer qu'il n'y a eu aucune activité pour un exercice comptable donné. ### Method PUT ### Endpoint /declaration/exercice/nulle/{exerciceId} ### Parameters #### Path Parameters - **exerciceId** (integer) - Required - The ID of the accounting period. #### Request Body - **id** (integer) - Required - The ID of the accounting period. - **aucuneActivite** (boolean) - Required - Set to true to declare no activity. ### Request Example ```json { "id": 2023, "aucuneActivite": true } ``` ``` ```APIDOC ## POST /declaration/exercice/pdf/{exerciceId}/{withMoyens} ### Description Générer un fichier PDF récapitulatif pour un exercice comptable, avec ou sans les moyens associés. ### Method POST ### Endpoint /declaration/exercice/pdf/{exerciceId}/{withMoyens} ### Parameters #### Path Parameters - **exerciceId** (integer) - Required - The ID of the accounting period. - **withMoyens** (boolean) - Required - Whether to include means in the PDF. #### Request Body - **statusList** (array of strings) - Required - A list of statuses to include in the PDF (e.g., ["PUBLIE", "A_PUBLIER"]). ### Request Example ```json ["PUBLIE", "A_PUBLIER"] ``` ### Response #### Success Response (200) - The response is the PDF file content. ### Response Example ``` --output rapport_activites_2023.pdf ``` ``` -------------------------------- ### Open Data Update Batch - Configuration Source: https://context7.com/hatvp-open/agora/llms.txt Configuration properties for the Open Data update batch process, including email recipients, SFTP details, and local/remote folder paths for the generated JSON file. ```properties batch.alert.recipient=webmestre@hatvp.fr batch.publication.ssh.host=sftp.hatvp.fr batch.publication.ssh.user=batch_user batch.publication.ssh.password=*** batch.publication.ssh.port=22 batch.opendata.dist.folder=/var/www/opendata batch.opendata.local.folder=/tmp/opendata batch.opendata.filename=repertoire_ri.json ``` -------------------------------- ### Display Collaborator Name and Email Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/espace/tabs/collaborateur_list.html Renders the collaborator's full name and email address. Ensure the 'c' object is properly defined and populated. ```HTML/AngularJS {{c.civilite + " " + c.nom + " " + c.prenom}} ``` ```HTML/AngularJS {{c.email}} ``` -------------------------------- ### Batch Open Data Source: https://context7.com/hatvp-open/agora/llms.txt Automated process to generate and publish the open data JSON file to the HATVP website. ```APIDOC ## Batch Open Data ### Description This batch process automates the generation and publication of the open data JSON file to the HATVP website. It involves listing published spaces, generating a JSON file with all publications, and transferring it via SFTP. ### Process Steps 1. List all published spaces. 2. Generate a JSON file containing all publications. 3. Transfer the JSON file via SFTP to the HATVP website. ### Configuration (application.properties) - **batch.alert.recipient**: Email address for batch alerts (e.g., `webmestre@hatvp.fr`). - **batch.publication.ssh.host**: SFTP host for publication (e.g., `sftp.hatvp.fr`). - **batch.publication.ssh.user**: SFTP username (e.g., `batch_user`). - **batch.publication.ssh.password**: SFTP password (hidden, e.g., `***`). - **batch.publication.ssh.port**: SFTP port (e.g., `22`). - **batch.opendata.dist.folder**: Remote folder for distribution (e.g., `/var/www/opendata`). - **batch.opendata.local.folder**: Local temporary folder (e.g., `/tmp/opendata`). - **batch.opendata.filename**: Name of the generated JSON file (e.g., `repertoire_ri.json`). ### JSON Output Structure ```json { "publications": [ { "identifiant": "string", "raisonSociale": "string", "categorieOrganisation": "string", "adresse": {}, "dirigeants": [], "collaborateurs": [], "clients": [], "activites": [ { "periode": "string", "montantDepenses": "string", "actions": [] } ] } ] } ``` ``` -------------------------------- ### Appels API de désinscription Source: https://context7.com/hatvp-open/agora/llms.txt Requêtes cURL pour la gestion de la désinscription des représentants d'intérêts. ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/unsubscribe" \ -H "Content-Type: multipart/form-data" \ -H "Authorization: Bearer " \ -F "files=@justificatif_cessation.pdf" \ -F 'demandeDesinscription={ "cessationDate": "31/12/2023", "motif": "CESSATION_ACTIVITE", "commentaire": "Cessation des activités de lobbying" }' ``` ```bash curl -X GET "https://repertoire.hatvp.fr/api/corporate/unsubscribe/desinscription_no_activite" \ -H "Authorization: Bearer " ``` -------------------------------- ### PUT /api/account/validate/{key} Source: https://context7.com/hatvp-open/agora/llms.txt Activates a declarant account or validates a new email address using a validation key. ```APIDOC ## PUT /api/account/validate/{key} ### Description Activates a declarant account or validates a new email address after verification via a link. ### Method PUT ### Endpoint /api/account/validate/{key} or /api/account/validate/email/{key} ### Parameters #### Path Parameters - **key** (string) - Required - The validation key provided via email ### Request Body - **password** (string) - Required - The user password ### Request Example curl -X PUT "https://repertoire.hatvp.fr/api/account/validate/abc123-validation-key" -H "Content-Type: application/json" -d '"MotDePasse123"' ### Response #### Success Response (200) - **id** (integer) - Declarant ID - **prenom** (string) - First name - **nom** (string) - Last name - **email** (string) - Email address - **activated** (boolean) - Activation status #### Response Example { "id": 12345, "prenom": "Jean", "nom": "Dupont", "email": "jean.dupont@exemple.fr", "activated": true } ``` -------------------------------- ### Retrieve Declaration Source: https://context7.com/hatvp-open/agora/llms.txt Fetch a specific interest representation declaration using its ficheId. ```bash curl -X GET "https://repertoire.hatvp.fr/api/declaration/fiche/456" \ -H "Authorization: Bearer " ``` -------------------------------- ### Client Table Row Template Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/espace/tabs/client_list.html Displays client attributes using Angular data binding and date formatting pipes. ```html {{c.denomination}} {{c.nationalId}} {{c.dateAjout ? (c.dateAjout | date: 'dd/MM/yyyy') : "-"}} {{c.periodeActiviteClientEnCours.dateAjout ? (c.periodeActiviteClientEnCours.dateAjout | date: 'dd/MM/yyyy') : "-"}} {{c.periodeActiviteClientEnCours.dateDesactivation ? (c.periodeActiviteClientEnCours.dateDesactivation | date: 'dd/MM/yyyy') : "-"}} {{c.dateDernierePublication ? (c.dateDernierePublication | date: 'dd/MM/yyyy') : "-"}} Oui Non {{c.isAncienClient ? "Oui" : "Non"}} Détail ``` -------------------------------- ### Display organization and user data templates Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/surveillance/surveillance_validation_ajouts.html Angular template fragments for rendering organization identifiers, user names, and group labels. ```html {{element.idNational}} ``` ```html {{element.denomination}} {{element.denomination}} ``` ```html {{element.error}} ``` ```html Utilisateurs BO {{user.nom}} {{user.prenom}} ``` ```html Groupes BO {{group.libelle}} ``` ```html Type de surveillance {{statut.label}} {{statut.label}} ``` -------------------------------- ### POST /corporate/unsubscribe Source: https://context7.com/hatvp-open/agora/llms.txt Initiates a request for unsubscription from the directory, requiring an administrator role. ```APIDOC ## POST /corporate/unsubscribe ### Description Service REST pour demander la désinscription du répertoire. Requiert le rôle ROLE_ADMINISTRATEUR. ### Method POST ### Endpoint /corporate/unsubscribe ### Parameters #### Form Data - **files** (file) - Required - Justificatif de cessation (e.g., justificatif_cessation.pdf). - **demandeDesinscription** (object) - Required - Details of the unsubscription request. - **cessationDate** (string) - Required - Date of cessation (format: dd/MM/yyyy). - **motif** (string) - Required - Reason for unsubscription (e.g., CESSATION_ACTIVITE). - **commentaire** (string) - Optional - Additional comments. ### Request Example ```bash curl -X POST "https://repertoire.hatvp.fr/api/corporate/unsubscribe" \ -H "Content-Type: multipart/form-data" \ -H "Authorization: Bearer " \ -F "files=@justificatif_cessation.pdf" \ -F 'demandeDesinscription={"cessationDate": "31/12/2023", "motif": "CESSATION_ACTIVITE", "commentaire": "Cessation des activités de lobbying"}' ``` ### Response #### Success Response (202 Accepted) Indicates that the unsubscription request has been accepted. ``` -------------------------------- ### Affichage des informations de la blacklist Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/blacklist/blacklist.html Utilisé pour afficher dynamiquement les données de la blacklist, telles que les noms, identifiants, dates et décomptes de jours. ```HTML {{e.nomUsage ? e.nomUsage : e.nomUsageHatvp ? e.nomUsageHatvp : e.denomination}} ``` ```HTML {{e.identifiant}} ``` ```HTML {{e.creationDate }} ``` ```HTML {{e.validationDate != null ? e.validationDate : "Pas de publications"}} ``` ```HTML {{e.dateExCourant}} ``` ```HTML {{e.nbJoursBlacklist}} ``` ```HTML {{e.raisonBlacklist ? e.raisonBlacklist : "Non spécifié dans l'exercice courant"}} ``` ```HTML {{e.dateExPrecedent}} ``` ```HTML {{e.nbJoursBlacklistExPrecedentFA}} ``` ```HTML {{e.nbJoursBlacklistExPrecedentMA}} ``` ```HTML {{e.nbJoursBlacklistTotalFA}} ``` ```HTML {{e.nbJoursBlacklistTotalMA}} ``` -------------------------------- ### Validate declarant account Source: https://context7.com/hatvp-open/agora/llms.txt Activates a user account or updates an email address using a validation key provided via email. ```bash curl -X PUT "https://repertoire.hatvp.fr/api/account/validate/abc123-validation-key" \ -H "Content-Type: application/json" \ -d '"MotDePasse123"' ``` ```bash curl -X PUT "https://repertoire.hatvp.fr/api/account/validate/email/xyz789-email-key" \ -H "Content-Type: application/json" \ -d '"MotDePasse123"' ``` -------------------------------- ### Exemple d'objet JSON Declarant Source: https://context7.com/hatvp-open/agora/llms.txt Représentation JSON d'un objet déclarant pour les échanges d'API. ```json { "id": 12345, "version": 3, "prenom": "Jean", "nom": "Dupont", "date_naissance": "15/03/1980", "email": "jean.dupont@exemple.fr", "telephone": "0612345678", "civilite": "M", "activated": true, "firstConn": false, "lastConnexionDate": "20/06/2023 09:15:30", "emails_complement": [ {"valeur": "jean.dupont@autre.fr", "categorie": "PROFESSIONNEL"} ], "telephones": [ {"valeur": "0145678900", "categorie": "BUREAU"} ] } ``` -------------------------------- ### Display Collaborator Function and Dates Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/espace/tabs/collaborateur_list.html Shows the collaborator's job function, creation date, publication date, and deactivation date. Dates are formatted for readability. ```HTML/AngularJS {{c.fonction}} ``` ```HTML/AngularJS {{c.dateAjout | date: 'dd/MM/yyyy HH:mm:ms'}} ``` ```HTML/AngularJS {{c.datePublication | date: 'dd/MM/yyyy HH:mm'}} ``` ```HTML/AngularJS {{c.dateDesactivation ? (c.dateDesactivation | date: 'dd/MM/yyyy HH:mm') : "-"}} ``` -------------------------------- ### API de Déclaration d'Activités Source: https://context7.com/hatvp-open/agora/llms.txt REST CRUD service to declare lobbying activities. ```APIDOC ## GET /declaration/fiche/{ficheId} ### Description Retrieve a specific activity declaration. ### Method GET ### Endpoint /declaration/fiche/{ficheId} ### Parameters #### Path Parameters - **ficheId** (integer) - Required - The ID of the declaration fiche. ### Request Example (Curl command provided in source text) ### Response #### Success Response (200) - The activity declaration object. ### Response Example ```json { "id": 456, "exerciceComptableId": 2023, "dateDebut": "01/01/2023", "dateFin": "31/03/2023", "typeAction": "RENDEZ_VOUS", "objetAction": "Discussion projet de loi finances", "responsablesPublics": ["Député X", "Sénateur Y"], "statut": "BROUILLON" } ``` ## POST /declaration/fiche ### Description Create a new activity declaration. ### Method POST ### Endpoint /declaration/fiche ### Parameters #### Request Body - **exerciceComptableId** (integer) - Required - The accounting year ID. - **dateDebut** (string) - Required - Start date of the activity (DD/MM/YYYY). - **dateFin** (string) - Required - End date of the activity (DD/MM/YYYY). - **typeAction** (string) - Required - Type of action (e.g., RENDEZ_VOUS, COMMUNICATION_ECRITE). - **objetAction** (string) - Required - Subject of the activity. - **responsablesPublics** (array of strings) - Required - List of public officials targeted. - **decisionPubliqueVisee** (string) - Optional - The public decision aimed at. ### Request Example ```json { "exerciceComptableId": 2023, "dateDebut": "15/04/2023", "dateFin": "15/04/2023", "typeAction": "COMMUNICATION_ECRITE", "objetAction": "Transmission note position sur directive européenne", "responsablesPublics": ["Conseiller ministériel"], "decisionPubliqueVisee": "Directive UE 2023/xxx" } ``` ### Response #### Success Response (200) - Confirmation of declaration creation. ### Response Example (Structure not provided in source text) ## PUT /declaration/fiche/{ficheId} ### Description Update an existing activity declaration. ### Method PUT ### Endpoint /declaration/fiche/{ficheId} ### Parameters #### Path Parameters - **ficheId** (integer) - Required - The ID of the declaration fiche to update. #### Request Body - **id** (integer) - Required - The ID of the declaration. - **objetAction** (string) - Optional - The subject of the activity. - **statut** (string) - Optional - The status of the declaration (e.g., BROUILLON, A_PUBLIER). ### Request Example ```json { "id": 456, "objetAction": "Discussion projet de loi finances 2024", "statut": "A_PUBLIER" } ``` ### Response #### Success Response (200) - Confirmation of declaration update. ### Response Example (Structure not provided in source text) ## DELETE /declaration/fiche/{ficheId} ### Description Delete an activity declaration. ### Method DELETE ### Endpoint /declaration/fiche/{ficheId} ### Parameters #### Path Parameters - **ficheId** (integer) - Required - The ID of the declaration fiche to delete. ### Request Example (Curl command provided in source text) ### Response #### Success Response (200) - Confirmation of declaration deletion. ### Response Example (Structure not provided in source text) ``` -------------------------------- ### Center Alignment CSS Source: https://gitlab.com/hatvp-open/agora/-/blob/master/registre-bo-web/app/modules/espace/tabs/client_list.html Utility class for centering text content. ```css .center { text-align: center; } ``` -------------------------------- ### API de Gestion de l'Espace Organisation Source: https://context7.com/hatvp-open/agora/llms.txt REST service to manage organization space information (data, location, leaders, etc.). ```APIDOC ## GET /corporate/find/espace ### Description Retrieve information for the current organization space. ### Method GET ### Endpoint /corporate/find/espace ### Parameters #### Query Parameters None #### Request Body None ### Response #### Success Response (200) - Information about the organization space. ### Response Example (Structure not provided in source text) ## PUT /corporate/update/{cardId} ### Description Update a specific section of the organization's information. ### Method PUT ### Endpoint /corporate/update/{cardId} ### Parameters #### Path Parameters - **cardId** (string) - Required - The ID of the section to update (e.g., DIRIGEANTS, DONNEES, INFOS_CONTACT, LOCALISATION, PROFILE_ORGA, WEB, PRESENTATION_INTERET, EXERCICE_COMPTABLE). #### Query Parameters None #### Request Body - **field1** (type) - Required/Optional - Description of the field (depends on the cardId). ### Request Example ```json { "id": 567, "adresse": "10 avenue des Champs-Élysées", "codePostal": "75008", "ville": "Paris", "pays": "France" } ``` ### Response #### Success Response (200) - Confirmation of update. ### Response Example (Structure not provided in source text) ## POST /corporate/logo/upload ### Description Upload the organization's logo. Maximum size 1 MB, JPG/PNG format. ### Method POST ### Endpoint /corporate/logo/upload ### Parameters #### Query Parameters None #### Request Body - **file** (file) - Required - The logo file to upload. ### Request Example (Curl command provided in source text) ### Response #### Success Response (202 Accepted) - Confirmation of logo upload. ### Response Example (Structure not provided in source text) ``` -------------------------------- ### Update Organization Space Section Source: https://context7.com/hatvp-open/agora/llms.txt Update a specific section of the organization's space. Sections include DIRIGEANTS, DONNEES, INFOS_CONTACT, LOCALISATION, PROFILE_ORGA, WEB, PRESENTATION_INTERET, EXERCICE_COMPTABLE. ```bash curl -X PUT "https://repertoire.hatvp.fr/api/corporate/update/LOCALISATION" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer " \ -d '{ "id": 567, "adresse": "10 avenue des Champs-Élysées", "codePostal": "75008", "ville": "Paris", "pays": "France" }' ``` -------------------------------- ### Open Data Update Batch - JSON Output Structure Source: https://context7.com/hatvp-open/agora/llms.txt Defines the structure of the JSON file produced by the Open Data update batch process, containing publication details like identifiers, company names, addresses, directors, and activities. ```json { "publications": [ { "identifiant": "123456789", "raisonSociale": "Association Exemple", "categorieOrganisation": "Association", "adresse": {...}, "dirigeants": [...], "collaborateurs": [...], "clients": [...], "activites": [ { "periode": "2023", "montantDepenses": "50000-99999", "actions": [...] } ] } ] } ```