> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Airtable

> Gérez les comptes de réseaux sociaux de vos utilisateurs depuis Airtable

## Aperçu

[Airtable](https://www.airtable.com) est une plateforme polyvalente basée sur le cloud qui mêle harmonieusement la structure d'un tableur aux capacités robustes d'une base de données.

En intégrant les scripts d'automatisation d'Airtable — écrits en JavaScript — avec l'API d'Ayrshare, vous pouvez rationaliser la gestion de vos réseaux sociaux directement dans Airtable. Cette intégration vous permet de publier du contenu, d'analyser les métriques de performance et de gérer les commentaires au nom de vos utilisateurs, le tout depuis un emplacement centralisé.

Dans ce guide, nous vous guiderons à travers les étapes pour configurer l'intégration.

## Configuration

<Warning>
  L'exécution des scripts d'automatisation Airtable nécessite un plan Airtable [payant](https://airtable.com/pricing).
  Veuillez vous assurer que votre plan Airtable inclut les automatisations avec scripts.
</Warning>

Ce guide vous montre comment publier automatiquement sur les comptes de réseaux sociaux liés dans Airtable via [Ayrshare](https://www.ayrshare.com).
Vous pouvez publier sur les comptes sociaux d'une seule entreprise ou sur les comptes de réseaux sociaux de vos clients gérés. Tout le code ci-dessous se trouve sur [GitHub](https://github.com/ayrshare/airtable-post-social-media/blob/main/script.js).

<Card horizontal icon="github" href="https://github.com/ayrshare/airtable-post-social-media/blob/main/script.js" title="GitHub : Airtable Post Social Media" />

## Récupérer votre API Key

Commencez par obtenir votre API Key du plan gratuit ou payant dans le [tableau de bord Ayrshare](https://www.ayrshare.com). La clé sera utilisée dans le script ci-dessous.

Si vous êtes sur le [Launch Plan](/multiple-users/business-launch-overview) ou le [Business Plan](https://www.ayrshare.com/business-plan-for-multiple-users/) d'Ayrshare et souhaitez publier au nom de vos clients, récupérez toutes les Profile Keys de vos clients soit via les points de terminaison /user ou /create-profile, soit dans le tableau de bord Ayrshare.

<Tip>
  Assurez-vous d'avoir lié quelques comptes sociaux dans Ayrshare. Veuillez vérifier dans la [page de liaison
  sociale Ayrshare](https://app.ayrshare.com/social-accounts).
</Tip>

## Créer un workspace Airtable

Dans [Airtable](https://www.airtable.com), créez un nouveau workspace avec les champs. Veuillez vous assurer de nommer les colonnes de cellules comme ci-dessous :

<ul class="custom-bullets">
  <li>`Post` en Long Text</li>

  <li>
    `Platforms` en Multi Select avec les types : facebook, instagram, twitter, linkedin, reddit et
    telegram
  </li>

  <li>`Images` en Attachment</li>
  <li>`Profile Keys` en Single Line Text</li>
  <li>`Status` en Single Line Text.</li>
  <li>`Schedule Date` en Date avec Local Format, Include Time Field et Time Format 24 Hours</li>
</ul>

<img class="center" src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/airtable-example.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=ac8b91e08f67f7c2432ddfbbf7e65aa0" alt="Airtable Table Example" width="1536" height="161" data-path="images/packages-guides/airtable-example.webp" />

Ces champs seront utilisés dans le script d'automatisation Airtable que nous allons construire.

Consultez un [exemple Airtable en direct](https://airtable.com/shrCWY0oA1ghB42tI/tblpnTEiPwyuViqBo).

<Card horizontal icon="book-open" href="https://airtable.com/shrCWY0oA1ghB42tI/tblpnTEiPwyuViqBo" title="Exemple Airtable de réseaux sociaux">
  Consultez un exemple Airtable en direct
</Card>

## Saisir des données de test de publication

Nous avons besoin de données d'exemple pour tester la publication. Voici une suggestion :

<ul class="custom-bullets">
  <li>`Post` : saisissez *Happy New Year 2025* </li>

  <li>
    `Platforms` : sélectionnez un ou plusieurs réseaux que vous avez liés. Veuillez vous assurer que le nom est en minuscules.
  </li>

  <li>
    `Images` : joignez une image. Nous aimons celle-ci que vous pouvez télécharger et joindre :
    [https://img.ayrshare.com/012/gb.jpg](https://img.ayrshare.com/012/gb.jpg)
  </li>

  <li>
    `Profile Keys` : si vous êtes sur le Business Plan ou le Launch Plan et souhaitez publier sur le profil d'un client, saisissez
    sa Profile Key. *Sinon, laissez vide.*
  </li>

  <li>
    `Status` : saisissez *pending*. Le script ne récupère que les enregistrements définis sur pending. Veuillez vous
    assurer que `pending` est en minuscules.
  </li>

  <li>
    `Schedule Date` : laissez vide car nous allons simplement tester la publication immédiate pour le moment. Plus tard, vous pourrez
    sélectionner une date future pour planifier la publication.
  </li>
</ul>

## Créer un script d'automatisation avec l'éditeur de script

Nous allons maintenant construire le script d'automatisation Airtable qui lit vos données depuis la table, crée une publication et l'envoie aux réseaux sociaux via Ayrshare. Vous utiliserez l'éditeur de script Airtable.

### Ajouter un déclencheur

* Dans le workspace, cliquez sur *Automation* puis sur *+New automation.*

<img class="center" src="https://mintcdn.com/ayrshare-docs/6mPR4kmwNEz1kMbX/images/packages-guides/new%20automation.webp?fit=max&auto=format&n=6mPR4kmwNEz1kMbX&q=85&s=d2637323e3e540d6e46cf0d45e2f161a" alt="Go to the Automation section of Airtable" width="932" height="144" data-path="images/packages-guides/new automation.webp" />

<ul class="custom-bullets">
  <li>Nommez l'automatisation.</li>
  <li>Cliquez sur *Choose a Trigger*.</li>
  <li>Sélectionnez When a Record is Created.</li>
  <li>Sélectionnez la table avec les champs ci-dessus.</li>
  <li>Cliquez sur Done.</li>
</ul>

## Ajouter une action

<ul class="custom-bullets">
  <li>Commencez par cliquer sur *Add Action*.</li>
  <li>Sélectionnez *Run Script*. Vous serez amené dans l'éditeur de script.</li>
</ul>

**Supprimez** la ligne :

```javascript theme={"system"}
console.log(`Hello, ${base.name}!`);
```

Et **copiez et collez** dans l'éditeur de script le code suivant :

```javascript theme={"system"}
const API_KEY = "Your API Key"; // Get a free key at app.ayrshare.com

console.log(`Starting Post ${base.name}!`);

const sendPost = async (data) => {
  const { post, platforms, imageUrls, profileKeys, scheduleDate, shortenLinks } = data;

  const body = Object.assign(
    {},
    post && { post },
    platforms && { platforms },
    profileKeys && { profileKeys: profileKeys.split(",") },
    Array.isArray(imageUrls) &&
      imageUrls.length > 0 && {
        mediaUrls: imageUrls.map((image) => image.url)
      },
    scheduleDate && { scheduleDate },
    shortenLinks !== undefined && shortenLinks !== null && { shortenLinks }
  );

  console.log("Posting JSON:", JSON.stringify(body, null, 2));

  if (profileKeys) {
    body.profileKeys = profileKeys.split(",");
  }

  const response = await fetch("https://api.ayrshare.com/api/post", {
    method: "POST",
    body: JSON.stringify(body),
    headers: {
      "Content-Type": "application/json",
      Authorization: `Bearer ${API_KEY}`
    }
  }).then((res) => res.json());

  return response;
};

const table = base.getTable("Posts");
const query = await table.selectRecordsAsync();
const filteredRecords = query.records.filter((record) => {
  const status = record.getCellValue("Status");
  return status === "pending";
});

for (let record of filteredRecords) {
  const post = record.getCellValue("Post");
  const images = record.getCellValue("Images");
  const platforms = record.getCellValue("Platforms");
  const profileKeys = record.getCellValue("Profile Keys");
  const scheduleDate = record.getCellValue("Schedule Date");

  const shortenLinks = false;
  const response = await sendPost({
    post,
    platforms: platforms.map((x) => x.name),
    imageUrls: images,
    profileKeys,
    scheduleDate,
    shortenLinks
  });

  console.log(response);

  if (response) {
    let status;
    if (Array.isArray(response)) {
      status = response.map((x) => x.status).every((x) => x === "success") ? "success" : "error";
    } else {
      status = response.status;
    }

    await table.updateRecordAsync(record, {
      Status: status
    });
  }
}
```

Ce code lira votre table et publiera sur Ayrshare. Cependant, vous devez d'abord ajouter votre API Key (récupérée ci-dessus).

Remplacez `Your API Key` par votre véritable API key.

## Tester le script

Dans l'éditeur de script, appuyez sur *>Test*

Le script s'exécutera et affichera la réponse de l'appel API. Si tout a fonctionné, vous verrez un message de succès renvoyé, le champ pending dans vos enregistrements passera à success, et votre publication sur le réseau social sélectionné.

Une fois que vous créez un nouvel enregistrement dans la table, le script s'exécutera et traitera les enregistrements pending.

## Documentation Airtable

Si vous voulez plus d'informations, consultez la [documentation Airtable](https://www.airtable.com/developers).
Elle contient des détails sur l'utilisation de l'éditeur de script Airtable.

## Tutoriel vidéo

Voici un excellent tutoriel vidéo de l'équipe d'Automate All The Things. Cette vidéo vous guide à travers l'intégration d'Ayrshare dans un projet Airtable en direct.

<div class="video-container">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/U_jo6f5hsyY" title="Post To Social Media From Airtable" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" />
</div>

Veuillez consulter d'autres [exemples d'intégration d'Airtable avec les réseaux sociaux](https://www.ayrshare.com/blog/automatically-post-to-social-media-from-airtable/).

## Questions

Si vous avez des questions ou des commentaires, veuillez nous contacter par [e-mail](mailto:contact@ayrshare.com) ou <a href="javascript:void(0)" onClick={() => window.Intercom && window.Intercom('show')}>discuter avec nous</a>.
