> ## 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

> Verwalten Sie die Social-Media-Konten Ihrer Nutzer aus Airtable heraus

## Überblick

[Airtable](https://www.airtable.com) ist eine vielseitige cloudbasierte Plattform, die die Struktur einer Tabellenkalkulation nahtlos mit den leistungsstarken Funktionen einer Datenbank verbindet.

Durch die Integration der Airtable-Automatisierungsskripte – geschrieben in JavaScript – mit der Ayrshare-API können Sie Ihr Social-Media-Management direkt in Airtable optimieren. Diese Integration ermöglicht es Ihnen, Inhalte zu posten, Performance-Kennzahlen zu analysieren und Kommentare im Namen Ihrer Nutzer zu verwalten – alles von einem zentralen Ort aus.

In diesem Leitfaden führen wir Sie durch die Schritte, um die Integration einzurichten.

## Einrichtung

<Warning>
  Das Ausführen von Airtable-Automatisierungsskripten erfordert einen [kostenpflichtigen](https://airtable.com/pricing) Airtable-Plan.
  Stellen Sie sicher, dass Ihr Airtable-Plan Automatisierungen mit Skripten enthält.
</Warning>

Dieser Leitfaden zeigt Ihnen, wie Sie in Airtable automatisch auf verknüpfte Social-Media-Konten über [Ayrshare](https://www.ayrshare.com) posten.
Sie können auf die sozialen Konten eines einzelnen Unternehmens oder auf die Social-Media-Konten Ihrer verwalteten Kunden posten. Der gesamte untenstehende Code ist auf [GitHub](https://github.com/ayrshare/airtable-post-social-media/blob/main/script.js) verfügbar.

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

## API-Key beschaffen

Holen Sie sich zunächst Ihren API-Key aus dem kostenlosen oder kostenpflichtigen Plan im [Ayrshare-Dashboard](https://www.ayrshare.com). Der Key wird im untenstehenden Skript verwendet.

Wenn Sie den Ayrshare-[Launch-Plan](/multiple-users/business-launch-overview) oder [Business-Plan](https://www.ayrshare.com/business-plan-for-multiple-users/) nutzen und im Namen Ihrer Kunden posten möchten, sammeln Sie alle Profile Keys Ihrer Kunden entweder über die Endpoints /user oder /create-profile oder im Ayrshare-Dashboard.

<Tip>
  Stellen Sie sicher, dass Sie in Ayrshare einige soziale Konten verknüpft haben. Überprüfen Sie dies
  auf der [Ayrshare-Social-Linking-Seite](https://app.ayrshare.com/social-accounts).
</Tip>

## Einen Airtable-Workspace erstellen

Erstellen Sie in [Airtable](https://www.airtable.com) einen neuen Workspace mit den entsprechenden Feldern. Achten Sie darauf, die Spalten wie folgt zu benennen:

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

  <li>
    `Platforms` als Multi Select mit den Typen: facebook, instagram, twitter, linkedin, reddit und
    telegram
  </li>

  <li>`Images` als Attachment</li>
  <li>`Profile Keys` als Single Line Text</li>
  <li>`Status` als Single Line Text.</li>
  <li>`Schedule Date` als Date mit Local Format, Include Time Field und 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-Tabellen-Beispiel" width="1536" height="161" data-path="images/packages-guides/airtable-example.webp" />

Diese Felder werden im Airtable-Automatisierungsskript verwendet, das wir gleich erstellen.

Siehe ein [Live-Airtable-Beispiel](https://airtable.com/shrCWY0oA1ghB42tI/tblpnTEiPwyuViqBo).

<Card horizontal icon="book-open" href="https://airtable.com/shrCWY0oA1ghB42tI/tblpnTEiPwyuViqBo" title="Airtable-Social-Media-Beispiel">
  Sehen Sie sich ein Live-Airtable-Beispiel an
</Card>

## Test-Post-Daten eintragen

Wir benötigen einige Beispieldaten, um den Beitrag zu testen. Hier ist ein Vorschlag:

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

  <li>
    `Platforms`: Wählen Sie ein oder mehrere Netzwerke aus, die Sie verknüpft haben. Achten Sie darauf, den Namen kleinzuschreiben.
  </li>

  <li>
    `Images`: Hängen Sie ein Bild an. Wir empfehlen dieses, das Sie herunterladen und anhängen können:
    [https://img.ayrshare.com/012/gb.jpg](https://img.ayrshare.com/012/gb.jpg)
  </li>

  <li>
    `Profile Keys`: Wenn Sie den Business-Plan oder Launch-Plan verwenden und auf das Profil eines Kunden posten möchten,
    geben Sie dessen Profile Key ein. *Andernfalls lassen Sie das Feld leer.*
  </li>

  <li>
    `Status`: Geben Sie *pending* ein. Das Skript verarbeitet nur Datensätze, die auf pending gesetzt sind. Achten Sie
    darauf, dass `pending` kleingeschrieben ist.
  </li>

  <li>
    `Schedule Date`: Lassen Sie das Feld leer, da wir jetzt nur das sofortige Posten testen. Später können Sie
    ein zukünftiges Datum wählen, um den Beitrag zu planen.
  </li>
</ul>

## Ein Automatisierungsskript mit dem Skript-Editor erstellen

Wir erstellen nun das Airtable-Automatisierungsskript, das Ihre Daten aus der Tabelle liest, einen Beitrag erstellt und ihn über Ayrshare an die sozialen Netzwerke sendet. Sie werden dabei den Airtable-Skript-Editor verwenden.

### Trigger hinzufügen

* Klicken Sie im Workspace auf *Automation* und dann auf *+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="Gehen Sie zum Automation-Bereich von Airtable" width="932" height="144" data-path="images/packages-guides/new automation.webp" />

<ul class="custom-bullets">
  <li>Benennen Sie die Automatisierung.</li>
  <li>Klicken Sie auf *Choose a Trigger*.</li>
  <li>Wählen Sie „When a Record is Created".</li>
  <li>Wählen Sie die Tabelle mit den oben angegebenen Feldern aus.</li>
  <li>Klicken Sie auf „Done".</li>
</ul>

## Aktion hinzufügen

<ul class="custom-bullets">
  <li>Klicken Sie zunächst auf *Add Action*.</li>
  <li>Wählen Sie *Run Script*. Sie gelangen in den Skript-Editor.</li>
</ul>

**Löschen** Sie die Zeile:

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

Und **kopieren und fügen Sie** den folgenden Code in den Skript-Editor ein:

```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
    });
  }
}
```

Dieser Code liest aus Ihrer Tabelle und postet zu Ayrshare. Sie müssen jedoch zuerst Ihren API-Key hinzufügen (den Sie oben beschafft haben).

Ersetzen Sie `Your API Key` durch Ihren echten API-Key.

## Das Skript testen

Drücken Sie im Skript-Editor *>Test*.

Das Skript wird ausgeführt und gibt die Antwort des API-Aufrufs aus. Wenn alles funktioniert hat, sehen Sie eine Erfolgsmeldung, das Feld „pending" in Ihren Datensätzen wechselt auf „success", und Ihr Beitrag erscheint im ausgewählten sozialen Netzwerk.

Sobald Sie einen neuen Datensatz in der Tabelle erstellen, wird das Skript ausgeführt und verarbeitet die ausstehenden Datensätze.

## Airtable-Dokumentation

Wenn Sie weitere Informationen wünschen, sehen Sie sich die [Airtable-Dokumentation](https://www.airtable.com/developers) an.
Dort finden Sie Details zur Verwendung des Airtable-Skript-Editors.

## Video-Tutorial

Hier ist ein tolles Video-Tutorial vom Team von Automate All The Things. Dieses Video zeigt, wie Sie Ayrshare in ein Live-Airtable-Projekt integrieren.

<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>

Weitere [Beispiele für die Integration von Airtable mit Social Media](https://www.ayrshare.com/blog/automatically-post-to-social-media-from-airtable/) finden Sie hier.

## Fragen

Wenn Sie Fragen oder Kommentare haben, wenden Sie sich per [E-Mail](mailto:contact@ayrshare.com) an uns oder <a href="javascript:void(0)" onClick={() => window.Intercom && window.Intercom('show')}>chatten Sie mit uns</a>.
