# Utilisation de l'endpoint API CreateVms

## Description
Cette méthode permet de creating a vm with a nic.

## Endpoint API
L'endpoint API à utiliser est `/CreateVms`.

## Méthode HTTP
La méthode HTTP à utiliser est `post`.

## En-têtes et authentification
Assurez-vous d'inclure les en-têtes suivants dans votre requête :
- `Content-Type: application/json` : Indique le type de contenu de la requête
- `Authorization` : Utilisez l'authentification AWS Signature Version 4 (AWS-SigV4)

## Paramètres de requête
### Paramètres requis :
Aucun paramètre requis

### Paramètres optionnels :
- `ImageId` : L'identifiant ImageId (ex: "ami-12345678") (optionnel)
- `VmType` : L'identifiant VmType (ex: "tinav5.c1r1p2") (optionnel)
- `KeypairName` : L'identifiant KeypairName (ex: "keypair-example") (optionnel)
- `UserData` : L'identifiant UserData (ex: "...") (optionnel)
- `Nics` : Liste de Nics (ex: [{"DeviceNumber": 0, "NicId": "eni-12345678"}]) (optionnel)

### Exemple de structure JSON :
{
  "ImageId": "ami-12345678",
  "VmType": "tinav5.c1r1p2",
  "KeypairName": "keypair-example",
  "UserData": "...",
  "Nics": [
    {
      "DeviceNumber": 0,
      "NicId": "eni-12345678"
    }
  ]
}

## Exemple de requête cURL
```bash
curl -X POST https://api.$OSC_REGION.outscale.com/api/v1/CreateVms \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'osc' \
  --header 'Content-Type: application/json' \
  --data '{"ImageId": "ami-12345678", "VmType": "tinav5.c1r1p2", "KeypairName": "keypair-example", "UserData": "...", "Nics": [{"DeviceNumber": 0, "NicId": "eni-12345678"}]}'
```

## Notes importantes
- Assurez-vous d'avoir les autorisations nécessaires
- Remplacez $OSC_REGION, $OSC_ACCESS_KEY et $OSC_SECRET_KEY par vos valeurs
- Vérifiez que tous les paramètres requis sont fournis
- Les paramètres optionnels peuvent être omis selon vos besoins
Ordres utilisateur possibles :
1. Crée une VM avec une carte réseau spécifique
2. Déploie une instance avec une configuration réseau personnalisée
3. Lance une VM avec un NIC configuré
4. Configure une machine virtuelle avec une interface réseau
curl -X POST https://api.$OSC_REGION.outscale.com/api/v1/CreateVms \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'osc' \
  --header 'Content-Type: application/json' \
  --data '{"ImageId": "ami-12345678", "VmType": "tinav5.c1r1p2", "KeypairName": "keypair-example", "UserData": "...", "Nics": [{"DeviceNumber": 0, "NicId": "eni-12345678"}]}'
curl -X GET https://api.$OSC_REGION.outscale.com/api/v1/CreateVms \
  --user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
  --aws-sigv4 'osc' \
  --header 'Content-Type: text/plain' \
  --data '{"ImageId": "ami-12345678", "VmType": "tinav5.c1r1p2", "KeypairName": "keypair-example", "UserData": "...", "Nics": [{"DeviceNumber": 0, "NicId": "eni-12345678"}]}'