Ajout de simulations¶
Paramètres HTTP¶
Paramètre |
Valeur |
|---|---|
Route |
simulation |
Méthode |
POST |
Contenu |
une liste d’objets Simulation au format json |
Contenu de la requête HTTP¶
La requête contiendra des simulations à insérer au format json. Le code de simulation doit obligatoirement valoir 0.
Les propriétés suivantes sont obligatoires: DtProdSimul, CdSimul, CdSiteHydro ou CdStationHydro, GrdSimul et CdModelePrevision.
Schéma de validation¶
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://phyc.org/addsimulation.json",
"type": "array",
"items": {
"type": "object",
"properties": {
"CdSiteHydro": {"type": "string"},
"CdStationHydro": {"type": "string"},
"DtProdSimul": {"format": "date-time"},
"GrdSimul": {"type": "string", "enum": ["H", "Q"]},
"CdSimul": {"type": "integer"},
"IndiceQualSimul": {"type": "number", "minimum": 0, "maximum": 100},
"DtFinValidSimul": {"format": "date-time"},
"DtDebSimul": {"format": "date-time"},
"DtFinSimul": {"format": "date-time"},
"DtBaseSimul": {"format": "date-time"},
"DtDerObsSimul": {"format": "date-time"},
"ModeCalSimul": {"type": "integer", "minimum": 0, "maximum": 4},
"StSimul": {"type": "integer", "enum": [4, 16]},
"TypPubliSimul": {"type": "integer", "enum": [0,10,11,12,20,21,22,30,31,32]},
"SysAltiSimul": {"type": "integer", "minimum": 0, "maximum": 31},
"ContexteSimul": {"type": "string"},
"ComSimul": {"type": "string"},
"ComPrivSimul": {"type": "string"},
"ModeSimul": {"type": "integer", "minimum": 0, "maximum": 5},
"CdModelePrevision": {"type": "string"},
"CdContact": {"type": "string"},
"CdIntervenant": {"type": "string"},
"schemeAgencyID": {
"type": "string",
"enum": ["SANDRE", "SIRET"]
},
"DtDebutRefAlti": {"format": "date-time"},
"CdCourbeTarage": {"type": "integer"},
"PrevsTendance": {
"type": "array",
"items": {
"type": "object",
"properties": {
"DtPrevTendance": {"format": "date-time"},
"ResMoyPrevTendance": {"type": "number"},
"ResMinPrevTendance": {"type": "number"},
"ResMaxPrevTendance": {"type": "number"},
"IncertDtPrevTendance": {"type": "integer", "minimum": 0}
},
"required": ["DtPrevTendance"],
"additionalProperties": false
},
"minItems": 1
},
"PrevsDeterministe" : {
"type": "array",
"items": {
"type": "object",
"properties": {
"DtPrevDeterministe": {"format": "date-time"},
"ResPrevDeterministe": {"type": "number"},
"IncertDtPrevDeterministe": {"type": "integer", "minimum": 0}
},
"required": ["DtPrevDeterministe", "ResPrevDeterministe"],
"additionalProperties": false
},
"minItems": 1
},
"PrevsProb" : {
"type": "array",
"items": {
"type": "object",
"properties": {
"DtPrevProb": {"format": "date-time"},
"ProbsPrev": {
"type": "array",
"items": {
"type": "object",
"properties": {
"PProbPrev": {"type": "number", "minimum": 0, "maximum": 100},
"ResProbPrev": {"type" : "number"}
},
"required": ["PProbPrev", "ResProbPrev"]
},
"minItems": 1
}
},
"required": ["DtPrevProb", "ProbsPrev"],
"additionalProperties": false
},
"minItems": 1
},
"ScnSimul": {
"type": "object",
"properties": {
"LbScnSimul" : {"type": "string"},
"DescScnSimul" : {"type": "string"}
},
"required": ["LbScnSimul"],
"additionalProperties": false
},
"PrevsEnsemble" : {
"type": "array",
"items": {
"type": "object",
"properties": {
"DtPrevEnsembliste": {"format": "date-time"},
"MembresPrevEnsemble": {
"type": "array",
"items": {
"type": "object",
"properties": {
"LbMembrePrevEnsemble": {"type": "string"},
"PoidMembrePrevEnsemble": {"type": "integer"},
"ResMembrePrevEnsemble": {"type": "number"}
},
"required": ["LbMembrePrevEnsemble", "ResMembrePrevEnsemble"],
"additionalProperties": false
},
"minItems": 1
}
},
"required": ["DtPrevEnsembliste", "MembresPrevEnsemble"],
"additionalProperties": false
},
"minItems": 1
},
"PrevsEvol" : {
"type": "array",
"items": {
"type": "object",
"properties": {
"TypPrevEvol": {"type": "integer", "minimum": 0, "maximum": 6},
"DtDebPrevEvol": {"format": "date-time"},
"IncertDtPrevEvol": {"type": "integer", "minimum": 0}
},
"required": ["TypPrevEvol", "DtDebPrevEvol"],
"additionalProperties": false
},
"minItems": 1
}
},
"required" : ["DtProdSimul", "GrdSimul", "CdSimul"],
"oneOf": [
{"required": ["CdSiteHydro"]},
{"required": ["CdStationHydro"]}
],
"additionalProperties": false
},
"minItems": 1
}
Exemple d’entrée¶
[
{
"CdSiteHydro": "A1234567",
"DtProdSimul": "2015-01-01T06:05:00",
"GrdSimul": "Q",
"CdSimul": 0,
"IndiceQualSimul": 100,
"DtFinValidSimul": "2015-01-01T10:00:00",
"DtDebSimul": "2015-01-01T07:00:00",
"DtFinSimul": "2015-01-02T10:00:00",
"DtBaseSimul": "2015-01-01T06:00:00",
"DtDerObsSimul": "2015-01-02T10:00:00",
"ModeCalSimul": 2,
"StSimul": 4,
"TypPubliSimul": 22,
"SysAltiSimul": 31,
"ContexteSimul": "contexte",
"ComSimul": "cmnt",
"ComPrivSimul": "privé",
"ModeSimul": 5,
"CdModelePrevision": "31",
"CdContact": "0",
"CdIntervenant": "1537",
"schemeAgencyID": "SANDRE",
"CdCourbeTarage": "1",
"PrevsTendance": [{
"DtPrevTendance": "2015-01-02T05:00:00",
"ResMoyPrevTendance": 158,
"ResMinPrevTendance": 155,
"ResMaxPrevTendance": 167,
"IncertDtPrevTendance": 3
}],
"PrevsDeterministe": [{
"DtPrevDeterministe": "2015-01-02T06:00:00",
"ResPrevDeterministe": 156,
"IncertDtPrevDeterministe": 4
}],
"PrevsProb": [{
"DtPrevProb": "2015-01-02T07:00:00",
"ProbsPrev": [{
"PProbPrev": 50,
"ResProbPrev": 160
}]
}],
"ScnSimul": {
"LbScnSimul": "Lb scénario",
"DescScnSimul": "Description"
},
"PrevsEnsemble": [{
"DtPrevEnsembliste": "2015-01-02T08:00:00",
"MembresPrevEnsemble": [{
"LbMembrePrevEnsemble": "Lb membre",
"PoidMembrePrevEnsemble": 19,
"ResMembrePrevEnsemble": 165
}]
}],
"PrevsEvol": [{
"TypPrevEvol": 2,
"DtDebPrevEvol": "2015-01-02T09:00:00",
"IncertDtPrevEvol": 8
}]
}
]
Droit de gestion¶
L’utilisateur du web-service doit avoir les bons droits sur le site ou la station associé à la simulation.
Sortie du web-service¶
Le web-service renverra les simulations insérées.
En cas d’erreur pour une simulation, le web-service renverra comme code de simulation O et le message d’erreur dans le commentaire de la simulation.
Pour chaque simulation insérée, la PHyC renseignera le code de simulation.