# Envoyer des soumissions vers une feuille de calcul Google Sheets

> Formspree Docs · Utiliser le CLI · 14 juillet 2023

Ajouter l'action **Google Sheets** dans le fichier `formspree.json` produit le même effet qu'ajouter le plugin Google Sheets dans le tableau de bord Formspree.

## Obtenir vos identifiants

Pour utiliser le plugin Google Sheets via le CLI, vous devez créer un compte de service dans la console Google Cloud.

### 1\. Créer un projet

Rendez-vous sur la [console Google Cloud](https://console.cloud.google.com) en vous assurant d'être connecté au bon compte Google. En haut à droite, vous verrez une liste de projets.

  
![mceclip0.png](/images/zendesk/20ae06b8574ab09d.png)

Si vous avez déjà un projet, cliquez sur le menu déroulant contenant son nom, par exemple _Formspree Test Account_. Si vous n'avez pas de projet, l'affichage sera différent. Cliquer sur le menu déroulant fera apparaître une fenêtre modale avec l'option _New Projects_.  
  
![mceclip1.png](/images/zendesk/b1ba54d504b7c56f.png)

Donnez un nom à votre projet et créez-le.

  
![mceclip2.png](/images/zendesk/499671dac6e1fab7.png)

### 2\. Créer un compte de service

Accédez à l'option de compte de service en la cherchant dans la barre de recherche ou dans le menu latéral. Si vous avez plusieurs projets, vous devez spécifier celui que vous souhaitez utiliser.

Cliquez sur **Create Service Account**.

![mceclip3.png](/images/zendesk/1a64a681d70abb18.png)

Ajoutez un nom et une description pour le service, puis cliquez sur **Done**.  
  
![mceclip4.png](/images/zendesk/ead9adf89fba5ab5.png)

Vous devriez voir le compte listé dans le tableau de bord. Vous aurez besoin de l'adresse e-mail du compte indiquée dans le tableau pour le fichier `formspree.json`.

## ![mceclip5.png](/images/zendesk/bf15ef4d16106432.png)

### 3\. Obtenir votre clé privée

Dans le tableau de bord des comptes de service, cliquez sur la colonne **Actions** de la ligne du compte créé. Cliquez ensuite sur **Create Key**, sélectionnez l'option **JSON**, puis cliquez sur **Create**.  
  
![mceclip6.png](/images/zendesk/e6e5556e0c0d4fe5.png)  
  

Un fichier à télécharger sera généré, contenant la clé privée et d'autres données du compte de service. Conservez ces informations en lieu sûr. Vous en aurez besoin à l'étape de configuration de formspree.json.

### 4\. Activer les API Drive et Spreadsheet

Pour créer une feuille de calcul, Formspree nécessite l'utilisation des API Google Drive et Sheets avec vos identifiants. Vous devez donc activer ces deux API dans la console Google Cloud.

Sélectionnez votre projet et accédez à [https://console.cloud.google.com.](https://console.cloud.google.com) Recherchez **Google Drive API** dans la barre de recherche. Cliquez sur **Enable** sur la page résultante pour activer l'API.  
  
Répétez cette étape en cherchant **Google Sheets API**.  
![mceclip0.png](/images/zendesk/59935ef1cfded160.png)

## Configuration formspree.json

| Clé | Type | Description |
| --- | --- | --- |
| `app` |  String | Doit être `googlesheets` |
| `privateKey` |  String | Les données `private_key` contenues dans le fichier JSON généré à l'étape [**Obtenir votre clé privée**](#h_01EVS55S2WNW8S6SM40QFGMZQG). |
| `serviceAccount` |  String | L'adresse e-mail du compte de service reçue à l'étape **Créer un compte de service**. Vous la trouverez dans le fichier JSON sous la clé `client_email`, ou dans le tableau de bord des comptes de service. |
| `type` |  String | Doit être `sendToSpreadsheet` |
| `sendInvitationTo` |  String | Optionnel. L'adresse e-mail avec laquelle la feuille de calcul créée par Formspree sera partagée. Un e-mail d'invitation lui sera envoyé. Par défaut : l'e-mail cible de votre formulaire, ou à défaut l'e-mail de votre compte. Si aucun n'existe, une erreur s'affichera dans la console. |

**Exemple**

```javascript
{
  "forms": {
    "support": {
      "name": "Clients Spreadsheet",
      "actions": [
        {
          "app": "googlesheets",
          "privateKey": "$GOOGLE_SHEETS_KEY",
          "serviceAccount": "formspree-test-service-account@formspree-test-account.iam.gserviceaccount.com",
          "type": "sendToSpreadsheet",
          "sendInvitationTo": "other@email.com"
        }
      ]
    }
  }
}
```

## Règles de validation

Aucune règle de validation n'est configurée implicitement.
