

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation des fonctions Lambda dans AWS SAM et Infrastructure Composer
<a name="foundation-iac-getting-started"></a>

Dans ce tutoriel, vous pouvez commencer à utiliser l’IaC avec Lambda en créant un modèle AWS SAM à partir d’une fonction Lambda existante, puis en développant une application sans serveur dans Infrastructure Composer en ajoutant d’autres ressources AWS.

Au cours de ce didacticiel, vous apprendrez certains concepts fondamentaux, tels que la manière dont les ressources AWS sont spécifiées dans AWS SAM. Vous découvrirez également comment utiliser Infrastructure Composer pour créer une application sans serveur que vous pouvez déployer à l’aide d’AWS SAM ou d’CloudFormation.

Pour compléter ce didacticiel, effectuez les tâches suivantes :
+ Créer un exemple de fonction Lambda
+ Utiliser la console Lambda pour afficher le modèle AWS SAM de la fonction
+ Exportez la configuration de votre fonction vers une application sans serveur simple AWS Infrastructure Composer et concevez une application sans serveur basée sur la configuration de votre fonction
+ Enregistrez un modèle AWS SAM mis à jour que vous pouvez utiliser comme base pour déployer votre application sans serveur

## Prérequis
<a name="foundation-iac-prerequisites"></a>

Dans ce tutoriel, vous allez utiliser la fonctionnalité de [synchronisation locale](https://docs.aws.amazon.com/application-composer/latest/dg/reference-features-local-sync.html) d’Infrastructure Composer pour enregistrer votre modèle et vos fichiers de code sur votre machine de génération locale. Pour utiliser cette fonctionnalité, vous devez disposer d’un navigateur compatible avec l’API d’accès au système de fichiers, qui permet aux applications Web de lire, d’écrire et d’enregistrer des fichiers dans votre système de fichiers local. Nous vous recommandons d’utiliser Google Chrome ou Microsoft Edge. Pour plus d’informations sur l’API d’accès au système de fichiers, voir [Qu’est-ce que l’API d’accès au système de fichiers ?](https://docs.aws.amazon.com/application-composer/latest/dg/reference-fsa.html#reference-fsa-api)

## Création d’une fonction Lambda
<a name="foundation-iac-create-function"></a>

Dans cette première étape, vous allez créer une fonction Lambda que vous pouvez utiliser pour terminer le reste du didacticiel. Pour simplifier les choses, vous utilisez la console Lambda pour créer une fonction de base « Hello world » à l’aide du moteur d’exécution Python 3.11.

**Pour créer une fonction Lambda « Hello world » à l’aide de la console**

1. Ouvrez la [console Lambda](https://console.aws.amazon.com/lambda).

1. Choisissez **Créer une fonction**.

1. Ne désélectionnez pas l’option **Créer à partir de zéro** puis, sous **Informations de base**, saisissez **LambdaIaCDemo** pour le **nom de la fonction**.

1. Pour l’**environnement d’exécution**, sélectionnez **Python 3.11**.

1. Choisissez **Créer une fonction**.

## Afficher le modèle AWS SAM correspondant à votre fonction
<a name="foundation-iac-view-template"></a>

Avant d’exporter la configuration de votre fonction vers Infrastructure Composer, utilisez la console Lambda pour afficher la configuration actuelle de votre fonction sous forme de modèle AWS SAM. En suivant les étapes décrites dans cette section, vous découvrirez l’anatomie d’un modèle AWS SAM et comment définir des ressources telles que les fonctions Lambda pour commencer à spécifier une application sans serveur.

**Pour afficher le modèle AWS SAM correspondant à votre fonction**

1. Ouvrez la [page Functions](https://console.aws.amazon.com/lambda/home#/functions) (Fonctions) de la console Lambda.

1. Choisissez la fonction que vous venez de créer (`LambdaIaCDemo`).

1. Dans le volet de **Présentation de la fonction**, choisissez **Modèle**.

   À la place du schéma représentant la configuration de votre fonction, vous verrez un modèle AWS SAM pour votre fonction. Le modèle doit ressembler à ce qui suit.

   ```
   # This AWS SAM template has been generated from your function's 
   # configuration. If your function has one or more triggers, note 
   # that the AWS resources associated with these triggers aren't fully 
   # specified in this template and include placeholder values.Open this template 
   # in AWS Application Composer or your favorite IDE and modify 
   # it to specify a serverless application with other AWS resources. 
   AWSTemplateFormatVersion: '2010-09-09'
   Transform: AWS::Serverless-2016-10-31
   Description: An AWS Serverless Specification template describing your function.
   Resources:
     LambdaIaCDemo:
       Type: AWS::Serverless::Function
       Properties:
         CodeUri: .
         Description: ''
         MemorySize: 128
         Timeout: 3
         Handler: lambda_function.lambda_handler
         Runtime: python3.11
         Architectures:
           - x86_64
         EventInvokeConfig:
           MaximumEventAgeInSeconds: 21600
           MaximumRetryAttempts: 2
         EphemeralStorage:
           Size: 512
         RuntimeManagementConfig:
           UpdateRuntimeOn: Auto
         SnapStart:
           ApplyOn: None
         PackageType: Zip
         Policies:
           Statement:
             - Effect: Allow
               Action:
                 - logs:CreateLogGroup
               Resource: arn:aws:logs:us-east-1:123456789012:*
             - Effect: Allow
               Action:
                 - logs:CreateLogStream
                 - logs:PutLogEvents
               Resource:
                 - >-
                   arn:aws:logs:us-east-1:123456789012:log-group:/aws/lambda/LambdaIaCDemo:*
   ```

Examinons le modèle YAML pour votre fonction pour comprendre certains concepts clés.

Le modèle commence par la déclaration `Transform: AWS::Serverless-2016-10-31`. Cette déclaration est obligatoire car, en arrière-plan, les modèles AWS SAM sont déployés via CloudFormation. L’utilisation de l’instruction `Transform` identifie le modèle en tant que fichier modèle AWS SAM.

Après la déclaration `Transform` vient la section `Resources`. C’est ici que sont définies les ressources AWS que vous souhaitez déployer avec votre modèle AWS SAM. Les modèles AWS SAM peuvent contenir une combinaison de ressources AWS SAM et de ressources CloudFormation. Cela est dû au fait que pendant le déploiement, les modèles AWS SAM se transforment en modèles CloudFormation, de sorte que toute CloudFormation syntaxe valide peut être ajoutée à un modèle AWS SAM.

Pour le moment, une seule ressource est définie dans la section `Resources` du modèle, votre fonction Lambda `LambdaIaCDemo`. Pour ajouter une fonction Lambda à un modèle AWS SAM, vous devez utiliser le type de ressource `AWS::Serverless::Function`. La ressource `Properties` d’une fonction Lambda définit l’exécution de la fonction, le gestionnaire de fonctions et les autres options de configuration. Le chemin d’accès au code source de votre fonction qui doit être utilisé par AWS SAM pour déployer la fonction est également défini ici. Pour en savoir plus sur les ressources de fonction Lambda dans AWS SAM, consultez [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) dans le *Guide du développeur AWS SAM*.

Outre les propriétés et les configurations des fonctions, le modèle spécifie également une politique Gestion des identités et des accès AWS (IAM) pour votre fonction. Cette stratégie autorise votre fonction à écrire des journaux dans Amazon CloudWatch Logs. Lorsque vous créez une fonction dans la console Lambda, Lambda associe automatiquement cette politique à votre fonction. Pour en savoir plus sur la spécification d’une politique IAM pour une fonction dans un modèle AWS SAM, consultez la propriété `policies` à la page [AWS::Serverless::Function](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-resource-function.html) du *Guide du développeur AWS SAM*.

Pour en savoir plus sur la structure des modèles AWS SAM, consultez la section [Anatomie des modèles AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-specification-template-anatomy.html).

## Utiliser AWS Infrastructure Composer pour concevoir une application sans serveur
<a name="foundation-iac-design-app"></a>

Pour commencer à créer une application sans serveur simple en utilisant le modèle AWS SAM de votre fonction comme point de départ, vous devez exporter la configuration de votre fonction vers Infrastructure Composer et activer le mode de synchronisation local d’Infrastructure Composer. La synchronisation locale enregistre automatiquement le code de votre fonction et votre modèle AWS SAM sur votre machine de génération locale et synchronise votre modèle enregistré lorsque vous ajoutez d’autres ressources AWS dans Infrastructure Composer.

**Pour exporter votre fonction vers Infrastructure Composer**

1. Dans le volet **Vue d’ensemble des fonctions**, choisissez **Exporter vers Application Composer**.

   Pour exporter la configuration et le code de votre fonction vers Infrastructure Composer, Lambda crée un compartiment Amazon S3 dans votre compte pour stocker temporairement ces données.

1. Dans la boîte de dialogue, choisissez **Confirmer et créer un projet** pour accepter le nom par défaut de ce compartiment et exporter la configuration et le code de votre fonction vers Infrastructure Composer.

1. (Facultatif) Pour choisir un autre nom pour le compartiment Amazon S3 créé par Lambda, entrez un nouveau nom et choisissez **Confirmer et créer un projet**. Les noms de compartiment Amazon S3 doivent être uniques et respecter les [règles de dénomination de compartiment](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html).

   Sélectionnez **Confirmer et créer un projet** pour ouvrir la console Infrastructure Composer. Sur le *canevas*, votre fonction Lambda apparaît.

1. **Dans le menu déroulant**, choisissez **Activer la synchronisation locale**.

1. Dans la boîte de dialogue qui apparaît, choisissez **Sélectionner un dossier** et un dossier sur votre machine de construction locale.

1. Choisissez **Activer** pour activer la synchronisation locale.

Pour exporter votre fonction vers Infrastructure Composer, vous avez besoin d’une autorisation pour utiliser certaines actions d’API. Si vous ne parvenez pas à exporter votre fonction, vérifiez [Autorisations requises](services-appcomposer.md#services-appcomposer-permissions) et assurez-vous que vous disposez des autorisations nécessaires.

**Note**  
La [tarification standard d’Amazon S3](https://aws.amazon.com/s3/pricing) s’applique au compartiment créé par Lambda lorsque vous exportez une fonction vers Infrastructure Composer. Les objets que Lambda place dans le compartiment sont automatiquement supprimés au bout de 10 jours, mais Lambda ne supprime pas le compartiment lui-même.  
Pour éviter que des frais supplémentaires ne soient ajoutés à votre Compte AWS, suivez les instructions de la section [Supprimer un compartiment](https://docs.aws.amazon.com/AmazonS3/latest/userguide/delete-bucket.html) après avoir exporté votre fonction vers Infrastructure Composer. Pour en savoir plus sur le compartiment Amazon S3 créé par Lambda, consultez [Utilisation AWS Lambda avec AWS Infrastructure Composer](services-appcomposer.md).

**Pour concevoir votre application sans serveur dans Infrastructure Composer**

Après avoir activé la synchronisation locale, les modifications que vous apportez dans Infrastructure Composer seront reflétées dans le modèle AWS SAM enregistré sur votre machine de génération locale. Vous pouvez désormais glisser-déposer des ressources AWS supplémentaires sur le canevas d’Infrastructure Composer pour créer votre application. Dans cet exemple, vous ajoutez une file d’attente simple Amazon SQS comme déclencheur pour votre fonction Lambda et une table DynamoDB pour la fonction dans laquelle écrire des données.

1. Ajoutez un déclencheur Amazon SQS à votre fonction Lambda en procédant comme suit :

   1. Dans le champ de recherche de la palette **Ressources**, entrez **SQS**.

   1. Faites glisser la ressource **SQS Queue** sur votre canevas et positionnez-la à gauche de votre fonction Lambda.

   1. Choisissez **Détails**, puis, pour **Logical ID**, entrez **LambdaIaCQueue**.

   1. Choisissez **Enregistrer**.

   1. Connectez vos ressources Amazon SQS et Lambda en cliquant sur le port **Abonnement** sur la carte de file d’attente SQS et en le faisant glisser vers le port gauche de la carte de fonction Lambda. L’apparition d’une ligne entre les deux ressources indique que la connexion a abouti. Infrastructure Composer affiche également un message au bas du canevas indiquant que les deux ressources sont correctement connectées.

1. Ajoutez une table Amazon DynamoDB dans laquelle votre fonction Lambda pourra y écrire des données en procédant comme suit :

   1. Dans le champ de recherche de la palette **Ressources**, entrez **DynamoDB**.

   1. Faites glisser la ressource **Table DynamoDB** sur votre canevas et positionnez-la à droite de votre fonction Lambda.

   1. Choisissez **Détails**, puis, pour **Logical ID**, entrez **LambdaIaCTable**.

   1. Choisissez **Enregistrer**.

   1. Connectez la table DynamoDB à votre fonction Lambda en cliquant sur le port droit de la carte de fonction Lambda et en la faisant glisser vers le port gauche de la carte DynamoDB. 

Maintenant que vous avez ajouté ces ressources supplémentaires, examinons le modèle AWS SAM mis à jour qu’Infrastructure Composer a créé.

**Pour afficher votre modèle AWS SAM mis à jour**
+ Sur le canevas Infrastructure Composer, choisissez **Modèle** pour passer de la vue canevas à la vue modèle.

Votre modèle AWS SAM doit désormais contenir les ressources et propriétés supplémentaires suivantes :
+ File d’attente Amazon SQS avec l’identifiant `LambdaIaCQueue`

  ```
  LambdaIaCQueue:
      Type: AWS::SQS::Queue
      Properties:
        MessageRetentionPeriod: 345600
  ```

  Lorsque vous ajoutez une file d’attente Amazon SQS à l’aide d’Infrastructure Composer, Infrastructure Composer définit la propriété `MessageRetentionPeriod`. Vous pouvez également définir la propriété `FifoQueue` en sélectionnant **Détails** sur la carte SQS Queue et en cochant ou décochant la **file d’attente Fifo**.

  Pour définir d’autres propriétés pour votre file d’attente, vous pouvez modifier manuellement le modèle et les y ajouter. Pour en savoir plus sur la ressource `AWS::SQS::Queue` et ses propriétés disponibles, consultez [AWS::SQS::Queue](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-sqs-queue.html) dans le *Guide de l’utilisateur CloudFormation*.
+ Propriété `Events` de votre définition de fonction Lambda qui spécifie la file d’attente Amazon SQS comme déclencheur de la fonction

  ```
  Events:
    LambdaIaCQueue:
      Type: SQS
      Properties:
        Queue: !GetAtt LambdaIaCQueue.Arn
        BatchSize: 1
  ```

  La propriété `Events` est constituée d’un type d’événement et d’un ensemble de propriétés qui dépendent du type. Pour en savoir plus sur les différents Services AWS que vous pouvez configurer pour déclencher une fonction Lambda et sur les propriétés que vous pouvez définir, consultez [EventSource](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/sam-property-function-eventsource.html) dans le *Guide du développeur AWS SAM*.
+ Table DynamoDB avec l’identifiant `LambdaIaCTable`

  ```
  LambdaIaCTable:
      Type: AWS::DynamoDB::Table
      Properties:
        AttributeDefinitions:
          - AttributeName: id
            AttributeType: S
        BillingMode: PAY_PER_REQUEST
        KeySchema:
          - AttributeName: id
            KeyType: HASH
        StreamSpecification:
          StreamViewType: NEW_AND_OLD_IMAGES
  ```

  Lorsque vous ajoutez une table DynamoDB à l’aide d’Infrastructure Composer, vous pouvez définir les clés de votre table en choisissant **Détails** sur la fiche de table DynamoDB et en modifiant les valeurs clés. Infrastructure Composer définit également des valeurs par défaut pour un certain nombre d’autres propriétés, notamment `BillingMode` et `StreamViewType`.

  Pour en savoir plus sur ces propriétés et les autres propriétés que vous pouvez ajouter à votre modèle AWS SAM, consultez [AWS::DynamoDB::Table](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html) dans le *Guide de l’utilisateur CloudFormation*.
+ Une nouvelle politique IAM qui autorise votre fonction à effectuer des opérations CRUD sur la table DynamoDB que vous avez ajoutée.

  ```
  Policies:
  ...
    - DynamoDBCrudPolicy:
      TableName: !Ref LambdaIaCTable
  ```

Le modèle AWS SAM final complet doit ressembler à ce qui suit.

```
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: An AWS Serverless Specification template describing your function.
Resources:
  LambdaIaCDemo:
    Type: AWS::Serverless::Function
    Properties:
      CodeUri: .
      Description: ''
      MemorySize: 128
      Timeout: 3
      Handler: lambda_function.lambda_handler
      Runtime: python3.11
      Architectures:
        - x86_64
      EventInvokeConfig:
        MaximumEventAgeInSeconds: 21600
        MaximumRetryAttempts: 2
      EphemeralStorage:
        Size: 512
      RuntimeManagementConfig:
        UpdateRuntimeOn: Auto
      SnapStart:
        ApplyOn: None
      PackageType: Zip
      Policies:
        - Statement:
            - Effect: Allow
              Action:
                - logs:CreateLogGroup
              Resource: arn:aws:logs:us-east-1:594035263019:*
            - Effect: Allow
              Action:
                - logs:CreateLogStream
                - logs:PutLogEvents
              Resource:
                - arn:aws:logs:us-east-1:594035263019:log-group:/aws/lambda/LambdaIaCDemo:*
        - DynamoDBCrudPolicy:
            TableName: !Ref LambdaIaCTable
      Events:
        LambdaIaCQueue:
          Type: SQS
          Properties:
            Queue: !GetAtt LambdaIaCQueue.Arn
            BatchSize: 1
      Environment:
        Variables:
          LAMBDAIACTABLE_TABLE_NAME: !Ref LambdaIaCTable
          LAMBDAIACTABLE_TABLE_ARN: !GetAtt LambdaIaCTable.Arn
  LambdaIaCQueue:
    Type: AWS::SQS::Queue
    Properties:
      MessageRetentionPeriod: 345600
  LambdaIaCTable:
    Type: AWS::DynamoDB::Table
    Properties:
      AttributeDefinitions:
        - AttributeName: id
          AttributeType: S
      BillingMode: PAY_PER_REQUEST
      KeySchema:
        - AttributeName: id
          KeyType: HASH
      StreamSpecification:
        StreamViewType: NEW_AND_OLD_IMAGES
```

## Déployer votre application sans serveur en utilisant AWS SAM (facultatif)
<a name="foundation-iac-deploy"></a>

Si vous souhaitez utiliser AWS SAM pour déployer une application sans serveur à l’aide du modèle que vous venez de créer dans Infrastructure Composer, vous devez d’abord installer l’CLI d’AWS SAM. Pour ce faire, suivez les instructions de la section [Installation de la CLI AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html).

Avant de déployer votre application, vous devez également mettre à jour le code de fonction enregistré par Infrastructure Composer avec votre modèle. Pour le moment, le fichier `lambda_function.py` enregistré par Infrastructure Composer ne contient que le code de base « Hello world » fourni par Lambda lors de la création de la fonction. 

Pour mettre à jour votre code de fonction, copiez le code suivant et collez-le dans le fichier `lambda_function.py` qu’Infrastructure Composer a enregistré sur votre machine de compilation locale. Vous avez spécifié le répertoire dans lequel Infrastructure Composer doit enregistrer ce fichier lorsque vous avez activé le mode de synchronisation locale.

Ce code accepte une paire clé-valeur dans un message provenant de la file d’attente Amazon SQS que vous avez créée dans Infrastructure Composer. Si la clé et la valeur sont des chaînes, le code les utilise ensuite pour écrire un élément dans la table DynamoDB définie dans votre modèle.

### Mise à jour du code de la fonction Python
<a name="foundation-iac-updated-code"></a>

```
import boto3
import os
import json

# define the DynamoDB table that Lambda will connect to
tablename = os.environ['LAMBDAIACTABLE_TABLE_NAME']

# create the DynamoDB resource
dynamo = boto3.client('dynamodb')

def lambda_handler(event, context):
    # get the message out of the SQS event
    message = event['Records'][0]['body']
    data = json.loads(message)
    # write event data to DDB table
    if check_message_format(data):
        key = next(iter(data))
        value = data[key]
        dynamo.put_item(
            TableName=tablename,
            Item={
                'id': {'S': key},
                'Value': {'S': value}
            }
        )
    else:
        raise ValueError("Input data not in the correct format")

# check that the event object contains a single key value  
# pair that can be written to the database
def check_message_format(message):
    if len(message) != 1:
        return False
        
    key, value = next(iter(message.items()))
    
    if not (isinstance(key, str) and isinstance(value, str)):
        return False

    else:
        return True
```

**Pour déployer votre application sans serveur**

Pour déployer votre application à l’aide d’AWS SAM CLI, procédez comme suit. Pour que votre fonction soit correctement construite et déployée, la version 3.11 de Python doit être installée sur votre machine de compilation et sur votre `PATH`.

1. Exécutez la commande suivante depuis le répertoire dans lequel Infrastructure Composer a enregistré vos fichiers `template.yaml` et `lambda_function.py`.

   ```
   sam build
   ```

   Cette commande rassemble les artefacts de compilation pour votre application et les place dans le format et l’emplacement appropriés pour les déployer.

1. Pour déployer votre application et créer les ressources Lambda, Amazon SQS et DynamoDB spécifiées dans votre modèle AWS SAM, exécutez la commande suivante.

   ```
   sam deploy --guided
   ```

   L’utilisation du drapeau `--guided` signifie qu’AWS SAM affiche des invites pour vous guider tout au long du processus de déploiement. Pour ce déploiement, acceptez les options par défaut en appuyant sur Entrée.

Au cours du processus de déploiement, AWS SAM crée les ressources suivantes dans votre Compte AWS :
+ Une [pile](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-whatis-concepts.html#cfn-concepts-stacks) CloudFormation nommée `sam-app`
+ Une fonction Lambda avec le format de nom `sam-app-LambdaIaCDemo-99VXPpYQVv1M`
+ Une file d’attente Amazon SQS au format de nom `sam-app-LambdaIaCQueue-xL87VeKsGiIo`
+ Une table DynamoDB au format de nom `sam-app-LambdaIaCTable-CN0S66C0VLNV`

AWS SAM crée également les rôles et politiques IAM nécessaires pour que votre fonction Lambda puisse lire les messages de la file d’attente Amazon SQS et effectuer des opérations CRUD sur la table DynamoDB.

## Testing de votre application déployée (facultatif)
<a name="foundation-iac-test"></a>

Pour vérifier que votre application sans serveur s’est déployée correctement, envoyez un message à votre file d’attente Amazon SQS contenant une paire clé-valeur et vérifiez que Lambda écrit un élément dans votre table DynamoDB en utilisant ces valeurs.

**Tester votre application sans serveur**

1. Ouvrez la page [Files d’attente](https://console.aws.amazon.com/sqs/v2/home#/queues) de la console Amazon SQS et sélectionnez la file d’attente créée par AWS SAM depuis votre modèle. Le nom est au format `sam-app-LambdaIaCQueue-xL87VeKsGiIo`.

1. Choisissez **Envoyer et recevoir des messages**, puis collez le code JSON suivant dans le champ **Corps du message**, dans la section **Envoyer un message**.

   ```
   {
       "myKey": "myValue"
   }
   ```

1. Choisissez **Send Message** (Envoyer un message).

   L’envoi de votre message à la file d’attente amène Lambda à invoquer votre fonction par le biais du mappage de la source d’événement défini dans votre modèle AWS SAM. Pour confirmer que Lambda a invoqué votre fonction comme prévu, indiquez qu’un élément a été ajouté à votre table DynamoDB.

1. Ouvrez la page [Tables](https://console.aws.amazon.com/dynamodbv2#tables) de la console DynamoDB et choisissez votre table. Le nom est au format `sam-app-LambdaIaCTable-CN0S66C0VLNV`.

1. Choisissez **Explorer les éléments de la table**. Dans le volet **Items returned** (Éléments retournés), vous devriez voir un élément avec l’**id** `myKey` et la **Valeur** `myValue`.