Documentation API - Rassemblements
  • Fonctions API
  • Exemples scripts PHP/JS

Fonctions de l'API

  •   Tester la liaison vers l'API (GetTestAPI)
  •   Tester la liaison vers l'API (GetTestAPI)
  • Tester la liaison vers l'API (GetTestAPI)

    On test un appel de fonction de l'API.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetTestAPI/Key/UserID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [RetourTest] => VARCHAR
    )
    

    Démonstration:

    Key:
    UserID:
  •   Charger la liste des structures par type (GetStructures)
  •   Charger la liste des structures par type (GetStructures)
  • Charger la liste des structures par type (GetStructures)

    Charge la liste des structures dans un tableau.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes
    - StructureType = Type de structures (all, fictive, unite, ...)
    - MeetingID = ID du rassemblement

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetStructures/Key/UserID/StructureType/MeetingID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Structures] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [CodeStructure] => VARCHAR
                        [Libelle] => VARCHAR
                        [TypeStructure] => VARCHAR
                        [idVillage] => INT
                        [EPJeunes] => INT
                        [EPAdultes] => INT
                        [EPGarderie] => INT
                        [EtatEmargement] => INT
                        [Responsable] => VARCHAR
                        [Contact] => VARCHAR
                        [idTerritoire] => INT
                        [CodeTerritoire] => VARCHAR
                        [LibelleTerritoire] => VARCHAR
                        [Handicap] => VARCHAR
                        [HandicapDetail] => VARCHAR
                        [NbAllergiesGluten] => INT
                        [NbAllergiesOeufs] => INT
                        [NbAllergiesLactose] => INT
                        [NombrePiqueNique] => INT
                    )
    
            )
    
    )
    

    Démonstration:

    Key:
    UserID:
    StructureType:
    MeetingID:
  •   Charger la liste des villages (GetVillages)
  •   Charger la liste des villages (GetVillages)
  • Charger la liste des villages (GetVillages)

    Charge la liste des villages dans un tableau.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes
    - MeetingID = ID du rassemblement

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetVillages/Key/UserID/MeetingID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Villages] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [NomVillage] => VARCHAR
                        [Responsable] => VARCHAR
                        [Contact] => VARCHAR
                    )
    
            )
    
    )
    

    Démonstration:

    Key:
    UserID:
    MeetingID:
  •   Charger la liste des rassemblements (GetMeetingList)
  •   Charger la liste des rassemblements (GetMeetingList)
  • Charger la liste des rassemblements (GetMeetingList)

    Charge la liste des rassemblements dans un tableau.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetMeetingList/Key/UserID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Rassemblements] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [Libelle] => VARCHAR
                        [Creation] => TIMESTAMP
                        [Modification] => TIMESTAMP
                        [Publie] => INT
                    )
    
            )
    
    )
    

    Démonstration:

    Key:
    UserID:
  •   Charger un participant par son badge (GetParticipantByBadge)
  •   Charger un participant par son badge (GetParticipantByBadge)
  • Charger un participant par son badge (GetParticipantByBadge)

    Retourne les informations d'un utilisateur à partir dela clé de son badge.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes
    - BadgeID = Code du badge
    - MeetingID = ID du rassemblement

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetParticipantByBadge/Key/UserID/BadgeID/MeetingID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Participant] => Array
            (
                [id] => INT
                [Identifiant] => VARCHAR
                [Nom] => VARCHAR
                [Prenom] => VARCHAR
                [Mail] => VARCHAR
                [Telephone] => VARCHAR
                [Civilite] => VARCHAR
                [TypeAjout] => VARCHAR
                [ImportIntranet] => INT
                [IDStructure] => INT
                [CodeStructure] => VARCHAR
                [CodeFonction] => VARCHAR
                [NomFonction] => VARCHAR
                [Allergie] => VARCHAR
                [Contact_Pere] => VARCHAR
                [Contact_Mere] => VARCHAR
                [Contact_ResponsableStructure] => VARCHAR
                [IDVillage] => INT
                [CleBadge] => VARCHAR
                [JoursPresence] => Array
                    (
                        [0] => TIMESTAMP
                        [1] => TIMESTAMP
                    )
    
                [DateMAJ] => TIMESTAMP
                [EtatEmargement] => INT
                [IDEquipe] => INT
                [IDEquipeJeux] => INT
                [DateNaissance] => TIMESTAMP
            )
    
    )
    

    Démonstration:

    Key:
    UserID:
    BadgeID:
    MeetingID:
  •   Charger la liste des participants (GetParticipantsList)
  •   Charger la liste des participants (GetParticipantsList)
  • Charger la liste des participants (GetParticipantsList)

    Cette fonction permet de charger un nombre d'enregistrement X à partir de l'enregistrement Y dans la liste des participants.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes
    - FirstLine = Premier enregistrement (Pour appeler le début saisir 0)
    - NumberLine = Nombre d'enregistrements (Valeur entre 1 et 1000)
    - MeetingID = ID du rassemblement

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetParticipantsList/Key/UserID/FirstLine/NumberLine/MeetingID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Participants] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [Identifiant] => VARCHAR
                        [Nom] => VARCHAR
                        [Prenom] => VARCHAR
                        [Mail] => VARCHAR
                        [Telephone] => VARCHAR
                        [Civilite] => VARCHAR
                        [TypeAjout] => VARCHAR
                        [ImportIntranet] => INT
                        [IDStructure] => INT
                        [CodeStructure] => VARCHAR
                        [CodeFonction] => VARCHAR
                        [NomFonction] => VARCHAR
                        [Allergie] => VARCHAR
                        [Contact_Pere] => VARCHAR
                        [Contact_Mere] => VARCHAR
                        [Contact_ResponsableStructure] => VARCHAR
                        [IDVillage] => INT
                        [CleBadge] => VARCHAR
                        [JoursPresence] => Array
                            (
                                [0] => TIMESTAMP
                                [1] => TIMESTAMP
                            )
    
                        [DateMAJ] => TIMESTAMP
                        [EtatEmargement] => INT
                        [IDEquipe] => INT
                        [IDEquipeJeux] => INT
                        [DateNaissance] => TIMESTAMP
                    )
    
                [1] => Array
                    (
                        [id] => INT
                        [Identifiant] => VARCHAR
                        [Nom] => VARCHAR
                        [Prenom] => VARCHAR
                        [Mail] => VARCHAR
                        [Telephone] => VARCHAR
                        [Civilite] => VARCHAR
                        [TypeAjout] => VARCHAR
                        [ImportIntranet] => INT
                        [IDStructure] => INT
                        [CodeStructure] => VARCHAR
                        [CodeFonction] => VARCHAR
                        [NomFonction] => VARCHAR
                        [Allergie] => VARCHAR
                        [Contact_Pere] => VARCHAR
                        [Contact_Mere] => VARCHAR
                        [Contact_ResponsableStructure] => VARCHAR
                        [IDVillage] => INT
                        [CleBadge] => VARCHAR
                        [JoursPresence] => Array
                            (
                                [0] => TIMESTAMP
                                [1] => TIMESTAMP
                            )
    
                        [DateMAJ] => TIMESTAMP
                        [EtatEmargement] => INT
                        [IDEquipe] => INT
                        [IDEquipeJeux] => INT
                        [DateNaissance] => TIMESTAMP
                    )
    
            )
    
        [LignesRestantes] => INT
    )
    

    Démonstration:

    Key:
    UserID:
    FirstLine:
    NumberLine:
    MeetingID:
  •   Charger la liste des participants modifié depuis un instant donné (GetParticipantsUpdateList)
  •   Charger la liste des participants modifié depuis un instant donné (GetParticipantsUpdateList)
  • Charger la liste des participants modifié depuis un instant donné (GetParticipantsUpdateList)

    Cette fonction permet de charger un nombre d'enregistrement X à partir de l'enregistrement Y dans la liste des participants pour les participants dont une donnée quelconque a été modifiée (émargement compris) depuis un instant donné.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes
    - UpdateTime = Timestamp de l'heure à partir de laquelle les données sont appelées
    - FirstLine = Premier enregistrement (Pour appeler le début saisir 0)
    - NumberLine = Nombre d'enregistrements (Valeur entre 1 et 1000)
    - MeetingID = ID du rassemblement

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetParticipantsUpdateList/Key/UserID/UpdateTime/FirstLine/NumberLine/MeetingID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Participants] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [Identifiant] => VARCHAR
                        [Nom] => VARCHAR
                        [Prenom] => VARCHAR
                        [Mail] => VARCHAR
                        [Telephone] => VARCHAR
                        [Civilite] => VARCHAR
                        [TypeAjout] => VARCHAR
                        [ImportIntranet] => INT
                        [IDStructure] => INT
                        [CodeStructure] => VARCHAR
                        [CodeFonction] => VARCHAR
                        [NomFonction] => VARCHAR
                        [Allergie] => VARCHAR
                        [Contact_Pere] => VARCHAR
                        [Contact_Mere] => VARCHAR
                        [Contact_ResponsableStructure] => VARCHAR
                        [IDVillage] => INT
                        [CleBadge] => VARCHAR
                        [JoursPresence] => Array
                            (
                                [0] => TIMESTAMP
                                [1] => TIMESTAMP
                            )
    
                        [DateMAJ] => TIMESTAMP
                        [EtatEmargement] => INT
                        [IDEquipe] => INT
                        [IDEquipeJeux] => INT
                        [DateNaissance] => TIMESTAMP
                    )
    
                [1] => Array
                    (
                        [id] => INT
                        [Identifiant] => VARCHAR
                        [Nom] => VARCHAR
                        [Prenom] => VARCHAR
                        [Mail] => VARCHAR
                        [Telephone] => VARCHAR
                        [Civilite] => VARCHAR
                        [TypeAjout] => VARCHAR
                        [ImportIntranet] => INT
                        [IDStructure] => INT
                        [CodeStructure] => VARCHAR
                        [CodeFonction] => VARCHAR
                        [NomFonction] => VARCHAR
                        [Allergie] => VARCHAR
                        [Contact_Pere] => VARCHAR
                        [Contact_Mere] => VARCHAR
                        [Contact_ResponsableStructure] => VARCHAR
                        [IDVillage] => INT
                        [CleBadge] => VARCHAR
                        [JoursPresence] => Array
                            (
                                [0] => TIMESTAMP
                                [1] => TIMESTAMP
                            )
    
                        [DateMAJ] => TIMESTAMP
                        [EtatEmargement] => INT
                        [IDEquipe] => INT
                        [IDEquipeJeux] => INT
                        [DateNaissance] => TIMESTAMP
                    )
    
            )
    
        [LignesRestantes] => INT
    )
    

    Démonstration:

    Key:
    UserID:
    UpdateTime:
    FirstLine:
    NumberLine:
    MeetingID:
  •   Charger la liste des territoires (GetTerritoires)
  •   Charger la liste des territoires (GetTerritoires)
  • Charger la liste des territoires (GetTerritoires)

    Charge la liste des territoires dans un tableau.
    Variables à envoyer:
    - Key = Clé de l'API
    - UserID = ID de l'utilisateur autorisé à effectuer des requêtes

    URL: https://sgdfconnecte.fr/rassemblement/Api/GetTerritoires/Key/UserID

    Retour:

    Array
    (
        [Status] => OK
        [Message] => Reponse si Etat <> OK
        [Territoires] => Array
            (
                [0] => Array
                    (
                        [id] => INT
                        [CodeStructure] => VARCHAR
                        [Libelle] => VARCHAR
                    )
    
                [1] => Array
                    (
                        [id] => INT
                        [CodeStructure] => VARCHAR
                        [Libelle] => VARCHAR
                    )
    
            )
    
    )
    

    Démonstration:

    Key:
    UserID:

Exemples de codes

  •   Exécuter une requête via PHP (PHP CURL)
  •   Exécuter une requête via PHP (PHP CURL)
  • Exécuter une requête via PHP

    Ce code permet de contacter l'API en remplaçant les variables

    Code:

    <?php
    // ########### DEFINIR LES VARIABLES ###########
    $baseurl="https://scoutsguides.fr/rassemblement/";// URL de l'API
    $fonctionapi="NomFonctionAPI";// Nom de la fonction ex: GetParticipantByBadge
    $key="CLE";// Cle de l'API
    $userid="USERID";// ID de l'utilisateur autorise a executer une requete
    $var1="VARIABLE1";
    $var2="VARIABLE2";
    $varX="X";
    // ########### DEBUT DE LA REQUETE ###########
    $url = $baseurl."Api/".$fonctionapi."/".$key."/".$userid."/".$var1."/".$var2."/".$varX;
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
    $retour = curl_exec($ch);
    curl_close($ch);
    // ########### FIN DE LA REQUETE ###########
    $retour = json_decode($retour, true);// Converti le JSON en Array
    ?>
  •   Boucle de traitement intégral d'une liste appelée par tronçons (PHP CURL)
  •   Boucle de traitement intégral d'une liste appelée par tronçons (PHP CURL)
  • Boucle de traitement intégral d'une liste appelée par tronçons

    Cet exemple de boucle permet de traiter l'intégralité d'une liste en relançant la fonction tant qu'il reste des enregistrements à charger.

    Code:

    <?php
    // =================================================================
    // =====      Exemple base sur la fonction d'appel de la       =====
    // =====      liste des participants "GetParticipantsList"     =====
    // =====     Peut etre adapte aux autres fonctions d'appel     =====
    // =====             des autres listes par troncons.           =====
    // =================================================================

    function ChargerListe($key,$userid,$start,$number){
      $baseurl='https://scoutsguides.fr/rassemblement/';// Base URL de l'API
      $url=$baseurl.'Api/GetParticipantsList/'.$key.'/'.$userid.'/'.$start.'/'.$number;
      // ##################### LANCEMENT DE LA REQUETE #####################
      $ch = curl_init($url);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  
      $retour = curl_exec($ch);
      curl_close($ch);
      // ##################### FIN DE LA REQUETE #####################
      $retour = json_decode($retour, true);// Convertion du retour JSON en Array
      $status=$retour['Status'];// Controle du statut de la reponse
      if ($status=="OK"){
        // Si le statut est "OK" on traite le retour de la requete
        $listeparticipants=$retour['Participants'];
        for($p=0;$p<sizeof($listeparticipants);$p++){// On boucle sur les reponses
          $ligneparticipant=$listeparticipants[$p];
          // ================================================================
          // ===== ICI INSERER LE TRAITEMENT VERS VOTRE BASE DE DONNEES =====
          // =====     LA VARIABLE "$ligneparticipant" est un Array     =====
          // =====      contenant les informations du participant       =====
          // ================================================================
          }
        // On recupere le nombre d'enregistrements restants a recuperer
        $nbrestant=$retour['LignesRestantes'];
        if ($nbrestant>0){
          // Si le nombre restant est superieur a O on relance la requete
          // a partir de l'enregistrement suivant
          $newstart=(int)($start+$number);
          ChargerListe($key,$userid,$newstart,$number);
          }
        }
      }

    $key="CLEAPI";// Cle de l'API
    $userid="USERID";// Identifiant de l'utilisateur autorise a requeter l'API
    $start=0;// Premier enregistrement a recuperer (0 pour partir du debut)
    $number=20;// Nombre d'enregistrement a recuperer par boucle (entre 0 et 1000)
    ChargerListe($key,$userid,$start,$number);// Lancement du traitement
    ?>
  •   Récuperation de la clé du badge dans l'URL du QR Code (Fonction JS)
  •   Récuperation de la clé du badge dans l'URL du QR Code (Fonction JS)
  • Récuperation de la clé du badge dans l'URL du QR Code

    Precisions

    Code:

    function ExtraireCleBadge(){
      var valeurchamp=$("#champdecollecte").val();
      var urlbadge="https://rassemblement.scoutsguides.fr/E/";// URL d'acces au site via le badge
      var cle=valeurchamp.replace(urlbadge, '');
      actiondetraitementaveclacle(cle);// Lance l'action utilisant la cle
      }
  •   Déclenche le traitement lors du scan avec la douchette (Fonction JS)
  •   Déclenche le traitement lors du scan avec la douchette (Fonction JS)
  • Déclenche le traitement lors du scan avec la douchette

    Ce code permet le déclenchement d'une fonction lorsqu'une douchette valide une lecture sur un champ de type "input".

    Code:

    $(document).ready(function(){
      declencheractionscandouchette();// On lance la fonction des le chargement de la page
      });
    function declencheractionscandouchette(){
      $(document).keyup(function(touche){ // on ecoute l'evenement keyup()
        var touche = touche.which || touche.keyCode;
        if (touche=="13"){
          var valeurchamp=$("#champdecollecte").val();// Cibler l'input de collecte
          if (valeurchamp!=""){
            lanceraction();// Lancement de la fonction de traitement
            }
          }
        });
      }