Exemples d'utilisation en VBA

Commencez tout d'abord par copier la fonction suivante (et la variable Public qui servira à conserver en mémoire le token) dans un module :

Public token

'Fonction pour API Jestyc
'https://jestyc.com/api/example-vba
Function jestycApi(dataApi, urlApi)

    jestycApi = ""
    
    With CreateObject("MSXML2.XMLHTTP")
        .Open "POST", urlApi, False
        .SetRequestHeader "Content-Type", "application/x-www-form-urlencoded"
        .setRequestHeader "User-Agent", "Jestyc API"
        .Send dataApi
        
        If .ReadyState = 4 And .Status = 200 Then
            jestycApi = .ResponseText
            
            'Erreur : code d'erreur reçu
            If Left(jestycApi, 19) = "{""request"":""failure" Then
                Debug.Print jestycApi
                jestycApi = ""
            End If
        Else
            'Erreur : aucune réponse reçue
            MsgBox "Le serveur ne répond pas ou l'URL est invalide (ou pas de connexion à Internet).", 48, "Erreur"
        End If
    End With

End Function

Récupérer le token

Le code suivant vous permet de récupérer le token dans la variable Public token :

'Récupération du token
Sub getToken()

    dataApi = "{""p"":{""login"":""NOM_UTILISATEUR"",""password"":""MOT_DE_PASSE""}}"
    urlApi = "https://api.jestyc.com/v1/Login"
    
    response = jestycApi(dataApi, urlApi)
    
    'Si aucune erreur : récupération du token
    If response <> "" Then token = Split(response, """")(3)

End Sub

Récupérer la liste des outils

Le code suivant vous permet de récupérer la liste des outils et leurs données :

'Récupération de la liste des outils
Sub getTools()
    
    'Générer le token si nécessaire (et quitter en cas d'échec)
    If IsEmpty(token) Then getToken
    If IsEmpty(token) Then Exit Sub
    
    dataApi = "{""p"":{""token"":""" & token & """}}"
    urlApi = "https://api.jestyc.com/v1/ToolsAccess"
    
    response = jestycApi(dataApi, urlApi)
    
    'Si aucune erreur
    If response <> "" Then
        
        'Traitement des données reçues ici ...
        MsgBox response
        
    End If

End Sub

Rechercher et récupérer des contacts

Le code suivant vous permet de rechercher et récupérer la liste des contacts correspondants.

Dans cet exemple, l'objectif est de récupérer la liste des contacts dont le champ "Email" contient une adresse email et de trier ces données en fonction du 5e champ :

'Recherche et récupération de contacts
Sub getContacts()
    
    'Générer le token si nécessaire (et quitter en cas d'échec)
    If IsEmpty(token) Then getToken
    If IsEmpty(token) Then Exit Sub
    
    dataApi = "{""p"":{""token"":""" & token & """,""tool_id"":115,""search_9"":""@"",""order_by"":4}}"
    urlApi = "https://api.jestyc.com/v1/Contacts"
    
    response = jestycApi(dataApi, urlApi)
    
    'Si aucune erreur
    If response <> "" Then
        
        'Traitement des données ici ...
        MsgBox response
        
    End If

End Sub

Ajouter un nouveau contact

Le code suivant vous permet d'ajouter un nouveau contact :

'Ajouter un nouveau contact
Sub addContact()
    
    'Générer le token si nécessaire (et quitter en cas d'échec)
    If IsEmpty(token) Then getToken
    If IsEmpty(token) Then Exit Sub
    
    dataApi = "{""p"":{""token"":""" & token & """,""tool_id"":115},""d"":{""data_2"":""Exemple"",""data_3"":""Test"",""data_9"":""exemple@test.com"",""data_29"":""Ceci est un test.""}}"
    urlApi = "https://api.jestyc.com/v1/ContactWrite"
    
    response = jestycApi(dataApi, urlApi)
    
    'Si aucune erreur
    If response <> "" Then MsgBox "Contact ajouté !"

End Sub
Il ne s'agit ici que de quelques exemples ... Vous trouverez la liste des requêtes que vous pouvez exécuter sur chaque outil sur la page API outils (ainsi que les paramètres de chaque requête et un exemple de valeurs de retour).