Warum Airtable mit Social Media verbinden
Airtable ist wohl das beste verfugbare Redaktionsplan-Tool. Es hat Ansichten, Filter, verknupfte Datensatze, Farbcodierung und genau die richtige Menge an Struktur. Die meisten Marketing-Teams planen ihren Content bereits dort. Das Problem ist die letzte Meile: Sobald ein Post in Airtable genehmigt ist, muss jemand immer noch einen Scheduler offnen, die Beschriftung einfugen, das Video hochladen, die Plattformen auswahlen und auf Veroffentlichen klicken. Fur jeden einzelnen Post.
Die Social-Media-API von Upload-Post uberbruckt diese Lucke. Sie akzeptiert eine Video-URL, eine Beschriftung und eine Liste von Plattformen und veroffentlicht dann mit einem einzigen Request auf allen. Kombiniert mit Airtables eingebauter Scripting-Erweiterung oder Automations konnen Sie von "Genehmigt" in Ihrer Basis zu "Live auf 10 Plattformen" gelangen, ohne Ihren Browser zu verlassen.
Ihre Airtable-Basis einrichten
Beginnen Sie mit einer Tabelle namens "Inhaltskalender" (oder was auch immer zu Ihrem Workflow passt). Hier ist die empfohlene Spaltenstruktur:
| Spalte | Feldtyp | Zweck |
|---|---|---|
| Video-URL. | URL | Öffentlicher Link zur Videodatei (Google Drive, Dropbox, S3 usw.) |
| Bildunterschrift | Long text. | Post-Beschriftung / Titel für alle Plattformen |
| Plattformen | Multiple Selection | tiktok, instagram, youtube, linkedin, facebook, x, threads, pinterest |
| Geplantes Datum | Datum (mit Uhrzeit) | Wann der Post live gehen soll (leer lassen für sofort) |
| Status | Einfachauswahl | Entwurf / Bereit / Genehmigt / Veröffentlicht / Fehlgeschlagen |
| Job-ID | Einzeiliger Text | Von der API nach dem Upload zurückgegeben (zur Nachverfolgung) |
Das Status-Feld ist der Haupttreiber. Ihr Team andert es auf "Genehmigt", wenn ein Post fertig ist, und die Automatisierung ubernimmt von dort. Nutzen Sie den Social-Media-Feiertagskalender, um Content rund um wichtige Termine zu planen.
Veröffentlichen Sie aus Airtable mit der Scripting-Erweiterung
Airtable wird mit einer Scripting-Erweiterung geliefert, die JavaScript direkt in Ihrer Basis ausfuhrt. Keine externen Tools notig. Offnen Sie Ihre Basis, klicken Sie auf Erweiterungen, fugen Sie "Scripting" hinzu und fugen Sie folgenden Code ein:
// Airtable Scripting Extension
let table = base.getTable('Inhaltskalender');
let query = await table.selectRecordsAsync();
let record = query.records.find(r => r.getCellValue('Status')?.name === 'Ready');
if (!record) {
output.text('No records with Status = Ready');
} else {
let formData = new FormData();
formData.append('video_url', record.getCellValue('Video-URL.'));
formData.append('title', record.getCellValue('Bildunterschrift'));
formData.append('user', 'mybrand');
formData.append('platform[]', 'tiktok');
formData.append('platform[]', 'instagram');
let response = await fetch('https://api.upload-post.com/api/upload', {
method: 'POST',
headers: { 'Authorization': 'Apikey your-api-key-here' },
body: formData
});
let result = await response.json();
await table.updateRecordAsync(record, {
'Status': { name: 'Veröffentlicht' },
'Job-ID': result.job_id
});
output.text('Published! Job ID: ' + result.job_id);
} Dieses Skript findet den ersten Datensatz mit Status "Ready", sendet die Video-URL und Beschriftung an die Social Media Posting API und aktualisiert dann den Datensatz mit der zuruckgegebenen Job-ID. Sie konnen es manuell ausfuhren, wann immer Sie mochten, oder es in eine Automation einbinden (nachster Abschnitt).
Fur Multi-Plattform-Veroffentlichung lesen Sie das Platforms-Feld dynamisch, anstatt es fest zu codieren. Sehen Sie unsere Anleitung zum Posten auf mehreren Plattformen gleichzeitig. fur alle verfugbaren Plattformwerte.
Draw with Airtable Automations
Manuelle Skripte sind nutzlich, aber echte Airtable Social-Media-Automatisierung bedeutet vollig automatisches Veroffentlichen. Airtable Automations ermoglichen es Ihnen, ein Skript auszulosen, wann immer ein Datensatz bestimmte Bedingungen erfullt. So richten Sie es ein:
- Gehen Sie zu Automatisierungen in Ihrer Airtable-Datenbank
- Erstellen Sie eine neue Automation
- Trigger: "Wenn Datensatz Bedingungen erfüllt" mit Status = "Genehmigt"
- Aktion: "Skript ausführen"
- Im Skript verwenden Sie
input.config(), um die Datensatz-ID vom Trigger zu erhalten
// Airtable Automation Script
let inputConfig = input.config();
let table = base.getTable('Inhaltskalender');
let record = await table.selectRecordAsync(inputConfig.recordId);
let platforms = record.getCellValue('Plattformen');
let formData = new FormData();
formData.append('video_url', record.getCellValue('Video-URL.'));
formData.append('title', record.getCellValue('Bildunterschrift'));
formData.append('user', 'mybrand');
for (let p of platforms) {
formData.append('platform[]', p.name.toLowerCase());
}
let response = await fetch('https://api.upload-post.com/api/upload', {
method: 'POST',
headers: { 'Authorization': 'Apikey your-api-key-here' },
body: formData
});
let result = await response.json();
await table.updateRecordAsync(record.id, {
'Status': { name: 'Veröffentlicht' },
'Job-ID': result.job_id
}); Jetzt wird die Automation immer dann ausgelost, wenn jemand den Status eines Datensatzes auf "Approved" andert, die Upload-Post API aufgerufen und der Datensatz aktualisiert. Dies erstellt einen Content-Freigabe-Workflow: Ihr Team erstellt Entwurfe in Airtable, ein Manager genehmigt, und der Post geht automatisch live. Keine manuellen Schritte, keine Scheduler, kein Kopieren und Einfugen.
Posts aus Airtable planen.
Wenn Sie zu einem bestimmten Datum und einer bestimmten Uhrzeit statt sofort veroffentlichen mochten, lesen Sie das Feld Scheduled Date und ubergeben Sie es als scheduled_date an die API. So verwandeln Sie Airtable in ein vollwertiges Social-Media-Planungstool.
// Add scheduling support
let scheduledDate = record.getCellValue('Geplantes Datum');
if (scheduledDate) {
formData.append('scheduled_date', new Date(scheduledDate).toISOString());
formData.append('timezone', 'America/New_York');
}
// Or use the queue for automatic optimal timing
formData.append('add_to_queue', 'true');
Der Parameter add_to_queue=true weist Upload-Post an, den nachsten verfugbaren Zeitslot zu wahlen, sodass Ihre Posts zeitlich verteilt werden, anstatt alle gleichzeitig live zu gehen. Lesen Sie mehr uber Planungsoptionen in unserer Planungsanleitung. Sie konnen auch unsere speziellen Anleitungen zum Planen von TikTok-Posts und zum Automatisieren von Instagram-Posts lesen.
n8n als Brucke fur komplexe Arbeitsabläufe verwenden
Fur Teams, die mehr Logik zwischen Airtable und der Veroffentlichung benotigen (Freigaben uber Slack, KI-generierte Beschriftungen, Wasserzeichen-Entfernung), ist n8n das richtige Tool. n8n kann Ihre Airtable-Basis auf neue oder aktualisierte Datensatze uberwachen, sie durch beliebig viele Schritte verarbeiten und dann die Upload-Post API aufrufen.
Wir haben eine fertige Vorlage, die genau das tut:
- Google Drive zu Instagram, TikTok und YouTube mit KI-Beschreibungen und Airtable-Tracking
- Videos aus Google Sheets planen und automatisch auf Instagram, LinkedIn und TikTok posten
Durchsuchen Sie die vollstandige n8n-Vorlagenbibliothek fur weitere Arbeitsabläufe. Wenn Sie visuelle Builder bevorzugen, funktionieren unsere Make.com- und Zapier-Integrationen ebenfalls mit Airtable als Trigger.
Einen ganzen Redaktionsplan im Batch veroffentlichen
Anstatt einen Datensatz nach dem anderen zu veroffentlichen, konnen Sie durch jeden Datensatz mit Status "Ready" iterieren und alle in einem einzigen Skriptdurchlauf veroffentlichen. Das ist nutzlich fur wochentliche Batch-Uploads oder wenn Sie einen Ruckstau abarbeiten mussen.
// Batch publish all Ready records
let table = base.getTable('Inhaltskalender');
let query = await table.selectRecordsAsync();
let readyRecords = query.records.filter(
r => r.getCellValue('Status')?.name === 'Ready'
);
output.text('Found ' + readyRecords.length + ' records to publish');
for (let record of readyRecords) {
let platforms = record.getCellValue('Plattformen');
let formData = new FormData();
formData.append('video_url', record.getCellValue('Video-URL.'));
formData.append('title', record.getCellValue('Bildunterschrift'));
formData.append('user', 'mybrand');
for (let p of platforms) {
formData.append('platform[]', p.name.toLowerCase());
}
let scheduledDate = record.getCellValue('Geplantes Datum');
if (scheduledDate) {
formData.append('scheduled_date', new Date(scheduledDate).toISOString());
}
try {
let response = await fetch('https://api.upload-post.com/api/upload', {
method: 'POST',
headers: { 'Authorization': 'Apikey your-api-key-here' },
body: formData
});
let result = await response.json();
await table.updateRecordAsync(record, {
'Status': { name: 'Veröffentlicht' },
'Job-ID': result.job_id
});
output.text('Published: ' + record.getCellValue('Bildunterschrift'));
} catch (err) {
await table.updateRecordAsync(record, {
'Status': { name: 'Fehlgeschlagen' }
});
output.text('Failed: ' + record.getCellValue('Bildunterschrift'));
}
} Fur grosse Volumina siehe unsere Anleitung zum Bulk Upload of Videos to Social Media. Wenn Sie Python fur Batch-Operationen bevorzugen, behandelt die Python-Automatisierungsanleitung den Aufbau eines Skripts, das aus der Airtable REST API liest.
Upload-Status zurück in Airtable verfolgen
Nach dem Einreichen eines Uploads kann die Verarbeitung und Verteilung des Videos an jede Plattform einige Sekunden dauern. Sie konnen den Status-Endpunkt abfragen und das Ergebnis zuruck in Ihren Airtable-Datensatz schreiben:
// Check upload status and update Airtable
let table = base.getTable('Inhaltskalender');
let query = await table.selectRecordsAsync();
let pendingRecords = query.records.filter(
r => r.getCellValue('Status')?.name === 'Veröffentlicht'
&& r.getCellValue('Job-ID')
);
for (let record of pendingRecords) {
let jobId = record.getCellValue('Job-ID');
let response = await fetch(
'https://api.upload-post.com/api/uploadposts/status?job_id=' + jobId,
{ headers: { 'Authorization': 'Apikey your-api-key-here' } }
);
let status = await response.json();
if (status.status === 'completed') {
await table.updateRecordAsync(record, {
'Status': { name: 'Live' }
});
} else if (status.status === 'failed') {
await table.updateRecordAsync(record, {
'Status': { name: 'Fehlgeschlagen' }
});
}
} Fuhren Sie dies als separate Scripting-Erweiterungsschaltflache aus oder richten Sie es als zeitgesteuerte Automation ein (z.B. alle 10 Minuten), um Ihre Airtable-Basis mit den tatsachlichen Post-Status synchron zu halten. So erhalten Sie eine vollstandige Audit-Trail, ohne das Dashboard jeder Plattform einzeln zu prufen.
Plattformspezifische Tipps
Beim Verbinden Ihres Airtable-Redaktionsplans mit Social Media hat jede Plattform ihre eigenen Besonderheiten:
- TikTok: Fugen Sie Hashtags in die Beschriftung ein. Die API ubernimmt TikToks Upload-Ablauf automatisch, einschliesslich der Offenlegungseinstellungen.
- Instagram: Funktioniert fur Reels (Video) und Foto-Karussells. Verwenden Sie
/api/upload_photosfur Bild-Posts. - YouTube: Fugen Sie
youtube_descriptionfur eine langere Beschreibung getrennt von der Hauptbeschriftung hinzu. - LinkedIn: Professioneller Ton ist wichtig. Erwagen Sie eine separate Spalte "LinkedIn-Beschreibung" in Airtable.
Vergleichen Sie diesen Ansatz mit traditionellen Tools wie Hootsuite: Sie erhalten volle Kontrolle, keine plattformspezifischen Limits und alles bleibt in Airtable, wo Ihr Team bereits arbeitet.
Häufig gestellte Fragen
Funktioniert das mit dem kostenlosen Airtable-Plan?
Ja. Die Scripting-Erweiterung und Automations sind beide im kostenlosen Airtable-Plan verfugbar. Der kostenlose Plan begrenzt Sie auf 100 Automations-Laufe pro Monat, was fur kleine Teams ausreicht. Kostenpflichtige Airtable-Plane erhohen dieses Limit deutlich.
Kann ich Videos direkt in Airtable anhängen statt URLs zu verwenden?
Die Scripting-Erweiterung kann Anhangsfelder lesen, aber es ist einfacher, eine URL-Spalte zu verwenden, die auf eine cloud-gehostete Datei zeigt (Google Drive, Dropbox, S3). Die Upload-Post API akzeptiert sowohl direkte Datei-Uploads als auch URLs, aber URLs sind einfacher in Airtable-Skripten zu handhaben.
Wie viele Datensätze kann ich in einem Batch verarbeiten?
Es gibt kein hartes Limit von der Upload-Post-Seite. Airtable Scripting-Erweiterungen haben jedoch ein 30-Sekunden-Timeout fur kostenlose Plane. Fur grosse Batches (50+ Datensatze) erwagen Sie die Verwendung von n8n oder des Python-Ansatz, um Datensatze ausserhalb von Airtables Timeout-Beschrankungen zu verarbeiten.
Kann ich Google Sheets statt Airtable verwenden?
Absolut. Wenn Sie Tabellen bevorzugen, folgen Sie unserer Google Sheets Veröffentlichungsanleitung. Sie verwendet dieselbe Upload-Post API mit n8n oder Make.com als Brucke. Die Konzepte sind identisch, nur die Datenquelle andert sich.
Was ist mit Fotos und Karussells?
Fur Bild-Posts (Einzelfotos oder Karussells) verwenden Sie den Endpunkt /api/upload_photos anstelle von /api/upload. Fugen Sie eine separate Spalte in Airtable fur Bild-URLs hinzu. Die Skriptlogik ist dieselbe, andern Sie nur den Endpunkt und verwenden Sie photos[] anstelle von video_url.