Concept

Méthode GET permettant de lister les vues météos actuellement créées, comme dans l'Interface de Visualisation.

Les paramètres

Nom et formatValeur par défautDescription et Syntaxe

filter0=expression~expression~...
...
filter9=...

---

  • ~ ayant le sens de "et" 
  • expression de la forme :  critère:valeur0^^valeur1 
    • ^^ a le sens de "ou"

Plusieurs filtres peuvent être utilisés ( filter0 , filter1, ...), chaque élément correspondant à au moins un des filtres sera retourné en résultat de la requête.

S'il y a plusieurs filtres, les éléments correspondant au filtre0 seront retournés ainsi que les éléments correspondant au filtre1, ainsi que…

filterX ( Filtres )

Les filtres ont pour formes :

  • filterX=expression~expression
    • ~ ayant le sens de "et" 
    • expression de la forme : critère:valeur0^^valeur1
      • ^^ a le sens de "ou"
  • X vaut de 0 à 9.
  • Chaque élément correspondant à au moins un des filtres sera retourné.

Liste des critères et leurs valeurs possibles:

NomMatchingTypeValeurExemple d’expression

name

contient
( insensible à la casse )

Tableau

 Filtrer par le nom de la vue.

bor^^paris

state

correspond exactement

Tableau

  • draft : Météo en construction.
  • published : Météo publiée.
draft^^published

Réponse

Codes de retour

Codes de retourExplications
200

OK

400

Paramètre invalide

401

L'accès nécessite une authentification ou un Token valide.

403

Authentification de l'utilisateur OK, mais droits non suffisants.

500

L'appel est valide, mais un problème d'exécution est rencontré.

Retour du code 200

curl -s -S -U 'username:password' \
"http://webui:7767/external-api/service-weather/v1/list"


Exemple de sortie attendue :

{
  "output": {
    "views": [
      {
        "uuid": "ab512c70e84a4c7a9b0e23b46eec5355",
        "name": "Bordeaux",
        "state": "draft"
      },
      {
        "uuid": "cc30ce13004d41ada2d3f765fab680e3",
        "name": "Paris",
        "state": "published"
      }
    ]
  }
}

Retour du code 400

Messages d'erreurs des filtres 

Paramètre de filtre inconnu
curl -s -S -U 'username:password' \
"http://webui:7767/external-api/service-weather/v1/list?filter=unknown_key:value"
{
  "output": "filtering[0]: invalid field name [ unknown_key ]"
}
Valeur de filtre manquante
curl -s -S -U 'username:password' \
"http://webui:7767/external-api/service-weather/v1/list?filter=name"
{
  "output": "filtering[0]: missing value for field [ name ]"
}
Paramètre "state": valeur invalide
curl -s -S -U 'username:password' \
"http://webui:7767/external-api/service-weather/v1/list?filter=name"
{
  "output": "filtering[0]: field [ state ] => Wrong value: ['unknown']"
}