Exemples de scripts d’appel aux API REST de Carto-SI

Documentation des API REST de Carto-SI

La documentation des API est disponible sur : https://app.carto-si.com/apidocs/

Utiliser les API REST via cURL

Méthode 1 – via fichier et console

Remplacez le contenu des variables suivantes par les valeurs qui correspondent à votre environnement.

token : doit contenir la clef API de votre tenant

tenant : doit contenir l’identifiant de votre tenant

host : doit contenir l’url d’accès à votre tenant

Vous trouverez ces valeurs dans la section API de la page Administration en vous connectant à votre environnement Carto-SI.

Liste des tokens

Script sous Unix

Copiez le code ci-dessous dans un fichier nommé script.sh et lancez le via un terminal.

Pour tester en ligne de commande, assurez vous des conditions de lancement et d’exécutabilité du fichier script.sh que vous aurez créé.

#!/bin/bash

# remplacez la valeur exemple ci-dessous par celle de votre token
TOKEN='eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0ZW5hbnRJZCI6IjhlYmY2NTEyLTFiZmUtNGIyMS1hNDBhLTgyNWMwMGM0ZjY2OSIsImlzcyI6ImF1dGgwIiwiZXhwIjozMzIxNzU1MjU4OCwibG9naW4iOiJhcGkifQ.CqtdpkuB9ZA7jnlBnhTYTDH2W8LqglAikMH_H2zmudc'

# remplacez la valeur exemple ci-dessous par celle de votre tenant
TENANT='8ebf6512-1bfe-4b21-a40a-825c00c4f669'

# remplacez la valeur exemple ci-dessous par celle de votre host
HOST='http://localhost:9327'

API="/api/v2/activity/"

URLAPI=${HOST}${API}

echo TOKEN = $TOKEN
echo TENANT = $TENANT
echo URLAPI = $URLAPI

echo ""
echo "---"

curl "$URLAPI" -H 'Authorization: Bearer {"token":"'"$TOKEN"'","myTenant":{"id":"'"$TENANT"'"}}'

echo ""
echo "---"

Script python

Copiez le code ci-dessous dans un fichier nommé script.py et lancez le.

#! /usr/bin/env python3

# remplacez la valeur exemple ci-dessous par celle de votre token
TOKEN='eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ0ZW5hbnRJZCI6IjhlYmY2NTEyLTFiZmUtNGIyMS1hNDBhLTgyNWMwMGM0ZjY2OSIsImlzcyI6ImF1dGgwIiwiZXhwIjozMzIxNzU1MjU4OCwibG9naW4iOiJhcGkifQ.CqtdpkuB9ZA7jnlBnhTYTDH2W8LqglAikMH_H2zmudc'

# remplacez la valeur exemple ci-dessous par celle de votre tenant
TENANT='8ebf6512-1bfe-4b21-a40a-825c00c4f669'

# remplacez la valeur exemple ci-dessous par celle de votre host
HOST='http://localhost:9327'

print("TOKEN = %s"%TOKEN)
print("TENANT = %s"%TENANT)
print("HOST = %s"%HOST)

#############################################################################
import requests
import sys

headers = {
    "Authorization": 'Bearer {"token":"%s","myTenant":{"id":"%s"}}' % (TOKEN, TENANT)
}

URLAPI=HOST+"/api/v2/activity"

rep = requests.get(URLAPI, headers=headers)
if rep.status_code != 200:
    print("Erreur %d : %s"%(rep.status_code, rep.text))
    sys.exit(1)

for activity in rep.json():
    print("- "+activity["label"])

Script sous Windows

Copiez le code ci-dessous dans un fichier nommé script.cmd et lancez le.

@echo off


rem remplacez la valeur exemple ci-dessous par celle de votre token
set TOKEN="eyJ0eXAiOiJKV1IUzI1NiJ9.eyJ0ZJhcGkifQ.m0dOOo4ekUwOxJa3L1-YvNnI4D5M"

rem remplacez la valeur exemple ci-dessous par celle de votre tenant
set TENANT="fdd58686-4171-de55-b897-bafd3ce0abc6"

rem remplacez la valeur exemple ci-dessous par celle de votre host
set HOST="http://localhost:4200"


echo TOKEN = %TOKEN%
echo TENANT = %TENANT%
echo HOST= %HOST%

rem exemple of upload file
curl -H "Authorization: Bearer {\"token\":\"%TOKEN%\", \"myTenant\":{\"id\":\"%TENANT%\"}}" "%HOST%/api/v2/activity/" 

Méthode 2 – via le navigateur

Récupérer directement une requête cURL valide et complète faite par votre navigateur web vers l’API avec la touche F12.

API Curl - Récupération d'une requête dans le navigateur web from Carto-SI on Vimeo.

Annexes

Régler les soucis qu’on peut parfois rencontrer avec les guillemets https://stackoverflow.com/a/50613209

Lien vers Swagger https://app.carto-si.com/apidocs/ui/index.html