| Scroll Ignore | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
|
Concept
- Renvoi du JSON complet
- Explication sur la mise à jour d'un élément dans un Widget Météo
- Renseigner UUID et/ou nom.
Méthode PUT permettant d'éditer une vue météo, à l'instar du mode édition JSON de l'Interface de Visualisation ( voir la page Édition JSON - Météo ).
Les paramètres
Le paramètre ID reçu dans l'URL identifie la vue météo à modifier.
Le corps de la requête
Le corps de la requête doit contenir le nouveau contenu de la vue météo ( voir la page JSON d'exemple pour commencer - Édition JSON - Météo ).
| Info |
|---|
La requête réécrit toute la vue. Il faut envoyer le JSON avec tous les widgets voulus. |
Réponse
Codes de retour
| Codes de retour | Explications |
|---|---|
| 200 | OK |
| 400 | Paramètre invalideLe JSON est invalide ou contient des erreurs. |
| 401 | L'accès nécessite une authentification ou un Token valide. |
| 403 | Authentification de l'utilisateur OK, mais droits non suffisants. |
| 404 | La vue météo n'existe pas. |
| 500 | L'appel est valide, mais un problème d'exécution est rencontré. |
Retour du code 200
Exemple de commande curl avec le contenu du JSON de la vue dans un fichier "weather_view.json"
| Code Block | ||||
|---|---|---|---|---|
| ||||
curl -s -S -U 'username:password' -X PUT \
-H 'Content-Type: application/json' -d '@-' \
"http://webui:7767/external-api/service-weather/v1/update/WEATHER_UUID" < ./weather_view.json |
| Tip |
|---|
L'option -d '@-' demande à curl de lire le corps de la requête dans l'entrée standard, permettant d'y injecter le contenu du fichier "weather_view.json". |
Exemple de sortie attendue :
| Code Block | ||||
|---|---|---|---|---|
| ||||
{
"critical": [],
"errors": [],
"warnings": [],
"output": {
"view_info": {
"name": "Bordeaux",
"state": "draft",
"type": "service_weather",
"weather_uuid": "ab512c70e84a4c7a9b0e23b46eec5355",
"weather_version": 2,
"weather_format_version": 5,
"weather_shared_group": "service_weather",
"weather_creation_time": 1787666586.1508853
},
"view_json": {
...
}
}
} |
| Info |
|---|
Dans view_json se trouve le contenu de la vue météo sauvegardée. S'il y a eu une erreur de validation ( les champs errors et critical contiennent des messages ), le JSON fournit n'a pas été sauvegardé et la route retourne le contenue de la vue actuelle. |
Messages de validation
| Excerpt | |||||||||
|---|---|---|---|---|---|---|---|---|---|
Les messages d'erreurs et d'attention liées à la vue seront dans les champs critical, errors et warnings respectivement ( voir la page Gestion des problèmes de configuration - Édition - Météo ). Exemple avec un widget météo non configuré :
|
Retour du code 400
- Mêmes erreurs que dans l'interface ( dans la langue de l'interface )
- Même comportement que l'interface : On peut sauvegarder la vue si l'interface l'aurait autorisé.
- Code d'erreur HTTP cohérent
Paramètres POST incorrects
Paramètre inconnu
Messages d'erreurs des filtres
Retour du code 404
| Code Block | ||||
|---|---|---|---|---|
| ||||
curl -s -S -U 'username:password' -X PUT \
-H 'Content-Type: application/json' -d '@-' \
"http://webui:7767/external-api/service-weather/v1/update/unknown_uuid" < ./weather_view.json |
| Code Block | ||||
|---|---|---|---|---|
| ||||
{
"output": "Weather with uuid [ unknown_uuid ] was not found"
} |
| Excerpt Include | ||||||
|---|---|---|---|---|---|---|
|
...