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).