# Ajout de simulations

## Paramètres HTTP

Paramètre | Valeur
--------- | ------
Route     | simulation
Méthode   | POST
Contenu   | une liste d'objets [Simulation](../../objets/simulation.md) 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

```{literalinclude} /schemas/Simulation/addSimulation.json
:language: json
```

### Exemple d'entrée

```json
[
  {
    "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.
