API-Referenz
Überblick
Die SNSTracker-API ermöglicht es dir, Monitoring-Feeds und -Kanäle programmatisch zu verwalten. Du kannst Feeds (Videos, Posts usw.) und Kanäle (Accounts, Profile) erstellen, sie aktualisieren, um die neuesten Daten zu erhalten, und Echtzeit-Benachrichtigungen über Webhooks empfangen.
Authentifizierung
Alle API-Anfragen erfordern eine Authentifizierung per API-Schlüssel. Füge deinen API-Schlüssel im Header X-API-Key ein.
So erhältst du deinen API-Schlüssel:
- Melde dich bei SNSTracker an
- Gehe zu Einstellungen → API Keys
- Erstelle einen neuen API-Schlüssel oder verwende einen bestehenden
- Kopiere den API-Schlüssel (du siehst ihn nur einmal bei der Erstellung)
API-Endpunkte
1. Feeds erstellen
Erstelle Monitoring-Feeds, indem du Feed-URLs (Videos, Posts usw.) übermittelst.
POST /api/v1/feedsAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"urls": [
"https://www.tiktok.com/@user/video/1234567890",
"https://www.instagram.com/p/ABC123/"
],
"collectionId": "coll_abc123xyz"
}Parameter:
urls(erforderlich): Array der zu überwachenden Feed-URLs. Maximal 200 URLs pro Anfrage.collectionId(optional): Collection-ID, zu der Feeds hinzugefügt werden. Falls nicht angegeben, wird die Standard-Collection deines Teams verwendet.
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": 2,
"failed": 0,
"total": 2,
"results": [
{
"index": 0,
"url": "https://www.tiktok.com/@user/video/1234567890",
"platform": "tiktok",
"feedId": "feed_abc123xyz",
"success": true
},
{
"index": 1,
"url": "https://www.instagram.com/p/ABC123/",
"platform": "instagram",
"feedId": "feed_def456uvw",
"success": true
}
],
"errors": [],
"message": "Feeds created successfully. Data will be updated shortly."
}
}Antwortfelder:
success: Anzahl der erfolgreich erstellten Feedsfailed: Anzahl der fehlgeschlagenen Feed-Erstellungentotal: Gesamtzahl der angegebenen URLsresults: Array der Ergebnisse je URLindex: Nullbasierter Index im Request-Arrayurl: Die validierte und standardisierte URLplatform: Erkannte Plattform (tiktok, instagram, youtube usw.)feedId: Eindeutige Kennung des erstellten Feedssuccess: Ob der Feed erfolgreich erstellt wurdeskipped: (optional) Ob der Feed übersprungen wurde, weil er bereits existiertresumed: (optional) Ob ein gestoppter Feed fortgesetzt wurdeerror: (optional) Fehlermeldung, falls die Erstellung fehlgeschlagen ist
errors: Array der Fehler für fehlgeschlagene URLs
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/feeds \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"urls": [
"https://www.tiktok.com/@user/video/1234567890"
]
}'2. Feeds aktualisieren
Aktualisiere bestehende Feeds, um die neuesten Daten sofort zu erhalten. Nur Feeds mit dem Status "Pending" oder "Tracked" können aktualisiert werden.
POST /api/v1/feeds/refreshAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"feedIds": ["feed_abc123xyz", "feed_def456uvw"]
}Parameter:
feedIds(erforderlich): Array der zu aktualisierenden Feed-IDs
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"feedIds": ["feed_abc123xyz", "feed_def456uvw"],
"total": 2,
"message": "Successfully refreshed 2 feed(s)"
}
}Antwortfelder:
success: Ob die Aktualisierung erfolgreich warfeedIds: Array der aktualisierten Feed-IDstotal: Anzahl der aktualisierten Feedsmessage: Erfolgsmeldung
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/feeds/refresh \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"feedIds": ["feed_abc123xyz"]
}'3. Kanäle erstellen
Erstelle Monitoring-Kanäle, indem du Kanal-URLs (Account-Profile usw.) übermittelst.
Channel pricing note: Xiaohongshu channel tasks are priced separately from the default channel task price and currently cost 10 credits per successful request.
POST /api/v1/channelsAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"urls": [
"https://www.tiktok.com/@username",
"https://www.instagram.com/username/"
],
"collectionId": "coll_abc123xyz"
}Parameter:
urls(erforderlich): Array der zu überwachenden Kanal-URLs. Maximal 5 URLs pro Anfrage.collectionId(optional): Collection-ID, zu der Kanäle hinzugefügt werden. Falls nicht angegeben, wird die Standard-Collection deines Teams verwendet.
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": 2,
"failed": 0,
"total": 2,
"results": [
{
"index": 0,
"url": "https://www.tiktok.com/@username",
"platform": "tiktok",
"channelId": "channel_abc123xyz",
"success": true
},
{
"index": 1,
"url": "https://www.instagram.com/username/",
"platform": "instagram",
"channelId": "channel_def456uvw",
"success": true
}
],
"errors": [],
"message": "Channels created successfully. Data will be updated shortly."
}
}Antwortfelder:
success: Anzahl der erfolgreich erstellten Kanälefailed: Anzahl der fehlgeschlagenen Kanal-Erstellungentotal: Gesamtzahl der angegebenen URLsresults: Array der Ergebnisse je URLindex: Nullbasierter Index im Request-Arrayurl: Die validierte und standardisierte URLplatform: Erkannte Plattform (tiktok, instagram, youtube usw.)channelId: Eindeutige Kennung des erstellten Kanalssuccess: Ob der Kanal erfolgreich erstellt wurdeskipped: (optional) Ob der Kanal übersprungen wurde, weil er bereits existiertresumed: (optional) Ob ein gestoppter Kanal fortgesetzt wurdeerror: (optional) Fehlermeldung, falls die Erstellung fehlgeschlagen ist
errors: Array der Fehler für fehlgeschlagene URLs
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/channels \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"urls": [
"https://www.tiktok.com/@username"
]
}'4. Kanäle aktualisieren
Aktualisiere bestehende Kanäle, um die neuesten Daten sofort zu erhalten. Nur Kanäle mit dem Status "Pending" oder "Tracked" können aktualisiert werden.
Channel pricing note: Xiaohongshu channel tasks are priced separately from the default channel task price and currently cost 10 credits per successful request.
POST /api/v1/channels/refreshAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"channelIds": ["channel_abc123xyz", "channel_def456uvw"]
}Parameter:
channelIds(erforderlich): Array der zu aktualisierenden Kanal-IDs
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"channelIds": ["channel_abc123xyz", "channel_def456uvw"],
"total": 2,
"message": "Successfully refreshed 2 channel(s)"
}
}Antwortfelder:
success: Ob die Aktualisierung erfolgreich warchannelIds: Array der aktualisierten Kanal-IDstotal: Anzahl der aktualisierten Kanälemessage: Erfolgsmeldung
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/channels/refresh \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"channelIds": ["channel_abc123xyz"]
}'5. Feed synchronisieren
Synchronisiere Feed-Daten direkt aus dem Scrapy-Service. Dieser Endpunkt ruft die neuesten Feed-Daten sofort ab und verbraucht Credits nach erfolgreicher Synchronisierung. Alle Mitglieder und API-Schlüssel eines Teams teilen ein Limit über alle Sync-Endpunkte hinweg. Das gemeinsame Limit beträgt 1 für Starter oder ohne gültiges Abonnement, 5 für Standard und 10 für Premium.
⚠️ Wichtiger Hinweis: Dieser Sync-Endpunkt ist standalone und integriert sich NICHT in die Webplattform. Sync-Operationen werden:
- KEINE Feed-Datensätze im Web-Dashboard erstellen oder aktualisieren
- NICHT in deiner Feeds-Liste oder in Collections erscheinen
- KEINE Webhooks oder Benachrichtigungen auslösen
- NUR die abgerufenen Daten direkt in der API-Antwort zurückgeben
Dieser Endpunkt ist für einmalige Datenabfragen per API vorgesehen. Um persistente Monitoring-Feeds zu erstellen, die in der Webplattform erscheinen, verwende stattdessen den Endpunkt Create Feeds.
POST /api/v1/feeds/syncAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"url": "https://www.tiktok.com/@user/video/1234567890"
}Parameter:
url(erforderlich): Feed-URL, die synchronisiert werden soll. Muss eine gültige, nicht leere Zeichenkette sein.
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"url": "https://www.tiktok.com/@user/video/1234567890",
"feedInfo": {
"feed_id": "1234567890",
"platform": 1,
"platform_name": "tiktok",
"url": "https://www.tiktok.com/@user/video/1234567890",
"views": 1000000,
"likes": 200000,
"comments": 1000,
"shares": 2000,
"bookmarks": 200,
"engagement": 512000,
"description": "Video description",
"hashtags": ["tag1", "tag2"],
"publish_at": 1234567890
}
}
}Antwortfelder:
success: Ob die Synchronisierung erfolgreich warurl: Die synchronisierte Feed-URLfeedInfo: Vollständige Feed-Informationen einschließlich Metriken, Beschreibung, Hashtags usw.
Fehlerantworten:
429 Too Many Requests: Das gemeinsame Team-Limit ist erreicht. Die Anfrage wird nicht eingereiht.400 Bad Request: Unzureichende Credits oder ungültige URL
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/feeds/sync \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"url": "https://www.tiktok.com/@user/video/1234567890"
}'6. Kanal synchronisieren
Synchronisiere Kanal-Daten direkt aus dem Scrapy-Service. Dieser Endpunkt ruft die neuesten Kanal-Daten sofort ab und verbraucht Credits nach erfolgreicher Synchronisierung. Alle Mitglieder und API-Schlüssel eines Teams teilen ein Limit über alle Sync-Endpunkte hinweg. Das gemeinsame Limit beträgt 1 für Starter oder ohne gültiges Abonnement, 5 für Standard und 10 für Premium.
Channel pricing note: Xiaohongshu channel tasks are priced separately from the default channel task price and currently cost 10 credits per successful request.
⚠️ Wichtiger Hinweis: Dieser Sync-Endpunkt ist standalone und integriert sich NICHT in die Webplattform. Sync-Operationen werden:
- KEINE Kanal-Datensätze im Web-Dashboard erstellen oder aktualisieren
- NICHT in deiner Kanäle-Liste oder in Collections erscheinen
- KEINE Webhooks oder Benachrichtigungen auslösen
- NUR die abgerufenen Daten direkt in der API-Antwort zurückgeben
Dieser Endpunkt ist für einmalige Datenabfragen per API vorgesehen. Um persistente Monitoring-Kanäle zu erstellen, die in der Webplattform erscheinen, verwende stattdessen den Endpunkt Create Channels.
POST /api/v1/channels/syncAnfrage
Header:
X-API-Key: Dein API-Schlüssel (erforderlich)Content-Type:application/json
Request Body:
{
"url": "https://www.tiktok.com/@username"
}Parameter:
url(erforderlich): Kanal-URL, die synchronisiert werden soll. Muss eine gültige, nicht leere Zeichenkette sein.
Antwort
Erfolgsantwort (200):
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"url": "https://www.tiktok.com/@username",
"channelInfo": {
"id": "1234567890",
"platform": 1,
"platform_name": "tiktok",
"username": "username",
"nickname": "User Name",
"description": "Channel description",
"followers": 1000000,
"followings": 2000,
"likes": 200000000,
"total_count": 1000,
"track_count": 1000,
"status": 1
}
}
}Antwortfelder:
success: Ob die Synchronisierung erfolgreich warurl: Die synchronisierte Kanal-URLchannelInfo: Vollständige Kanal-Informationen einschließlich Metriken, Beschreibung usw.
Fehlerantworten:
429 Too Many Requests: Das gemeinsame Team-Limit ist erreicht. Die Anfrage wird nicht eingereiht.400 Bad Request: Unzureichende Credits oder ungültige URL
Beispielanfrage
curl -X POST https://snstracker.com/api/v1/channels/sync \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{
"url": "https://www.tiktok.com/@username"
}'7. Kanalinhalte synchronisieren
Gibt eine Seite zurück, bei Instagram und Reels höchstens 12 Einträge pro Anfrage, ohne automatisches Weiterblättern. instagram umfasst Bilder, Videos und Karussells; reels liefert Reels-Videos.
POST /api/v1/channels/feeds/sync
X-API-Key: your-api-key
Content-Type: application/jsonRequest and pagination
{
"platform": "instagram",
"channel_name": "instagram"
}countist eine optionale positive Ganzzahl für die gewünschte Anzahl von Einträgen auf dieser Seite, ohne Standardwert. Die Grenzen hängen von der Plattform ab: Instagram und Reels liefern höchstens 12 Einträge pro Anfrage, möglicherweise weniger. Ohne Angabe gilt die Standardseitengröße der Plattform.- Für die erste Seite
cursorweglassen. Danachnext_cursorunverändert alscursorsenden undplatformsowiechannel_namebeibehalten. Am Ende:has_more=false,next_cursor=null.
{
"platform": "instagram",
"channel_name": "instagram",
"cursor": "previous-next-cursor"
}Jede erfolgreich abgerufene Seite kostet 10 Credits, auch leere Seiten. Nur fehlgeschlagene Anfragen sind kostenlos; vor der Anfrage sind mindestens 10 Credits nötig. Das Teamlimit wird mit den anderen Sync-APIs geteilt. Es werden keine Dashboard-Einträge erstellt.
Response example (placeholder cursor) — reels, lunacut.edit, count=1
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"platform": "reels",
"channel_name": "lunacut.edit",
"channel_url": "https://www.instagram.com/lunacut.edit/",
"requested_count": 1,
"returned_count": 1,
"has_more": true,
"next_cursor": "cursor-from-response",
"items": [
{
"feed_id": "4009169989985582972",
"platform": 5,
"platform_name": "reels",
"type": "video",
"url": "https://www.instagram.com/reel/Dejbt1JPz98/",
"author_username": "lunacut.edit",
"publish_at": 1792150387,
"duration": 70.077,
"view_count": 310475
}
]
}
}platform and channel_name are required. channel_name is the username, not the display name; leading @ is accepted and dots are preserved. requested_count is null when count is omitted; returned_count equals items.length. Unknown metrics/timestamps are null. Posts may lack timestamps and carousel details. items uses the existing feed fields, including video_url, image_urls and cover_url; the example shows only selected fields. publish_at is Unix seconds and duration is seconds. Upstream order is preserved, without a most-popular sorting option; deduplicate across pages by feed_id. Empty pages can still have a next cursor; a carousel counts as one post.
Die Verfügbarkeit von Aufrufen (view_count), Likes (like_count), Speicherungen (bookmark_count) und Kommentaren (comment_count) in items hängt von der Plattform und ihrer Kanallisten-Antwort ab. Nicht alle Kennzahlen sind verfügbar. Fehlende Werte werden als null zurückgegeben, was nicht null Aufrufe oder Interaktionen bedeutet.
Um fehlende Kennzahlen nachzuschlagen, rufen Sie POST /api/v1/feeds/sync separat auf und übergeben die url des Eintrags als url im Anfragekörper. Die Detailabfrage wird nach den Regeln dieses Endpunkts separat berechnet. Das Ergebnis hängt weiterhin von den verfügbaren Plattformdaten ab; nicht alle fehlenden Werte lassen sich zwingend abrufen.
HTTP: 400 invalid input/cursor or insufficient initial credits; 401 invalid API key; 403 disabled team or inaccessible channel; 402 insufficient credits at settlement; 429 team concurrency limit (Retry-After: 1); 502 upstream/invalid page; 503 service unavailable; 504 timeout.
8. Zusätzliche Profilinformationen abrufen
POST /api/v1/channels/about/syncNur Instagram und Reels. Wie bei /api/v1/channels/sync ist url erforderlich: https://www.instagram.com/lunacut.edit/ oder https://www.instagram.com/lunacut.edit/reels/. platform, count und cursor sind nicht erforderlich. Beiträge und andere Plattformen werden nicht unterstützt.
curl -X POST https://snstracker.com/api/v1/channels/about/sync \
-H "X-API-Key: your-api-key-here" \
-H "Content-Type: application/json" \
-d '{"url":"https://www.instagram.com/lunacut.edit/"}'Jede erfolgreiche Anfrage kostet 80 Credits, auch bei null-Feldern. Fehler werden nicht berechnet; vorher sind mindestens 80 Credits nötig. Gemeinsames Teamlimit mit allen synchronen APIs: Starter/kein aktives Abo 1, Standard 5, Premium 10. Keine Dashboard-Einträge oder Webhooks.
Beispielantwort; verfügbare Felder hängen von den öffentlichen Kontoinformationen ab.
{
"code": 0,
"message": "ok",
"data": {
"success": true,
"url": "https://www.instagram.com/lunacut.edit/",
"channelAbout": {
"platform": 6,
"platform_name": "instagram",
"username": "lunacut.edit",
"channel_url": "https://www.instagram.com/lunacut.edit/",
"country": "Brazil",
"country_visible": true,
"date_joined": "2020-05",
"date_joined_text": "May 2020"
}
}
}country: öffentliches Land/Region, nur bei country_visible=true, keine Echtzeit-IP-Ortung. country_visible: Sichtbarkeit, unbekannt ist null. date_joined: Beitrittsmonat (YYYY-MM), bei fehlendem/unbekanntem Format null. date_joined_text: ursprünglicher Datumstext oder null. Keine Bio, Followerzahl oder früheren Benutzernamen.
400 / 401 / 402 / 403 / 429 (Retry-After: 1) / 502 / 503 / 504.
Webhook-Integration
SNSTracker unterstützt Webhooks, um Echtzeit-Benachrichtigungen zu erhalten, wenn überwachte Inhalte deine konfigurierten Schwellenwerte erreichen. Du kannst Webhooks so konfigurieren, dass du Benachrichtigungen erhältst über:
- Feed-Updates: Wenn Views oder Engagement (Likes + Kommentare + Shares) um deinen Schwellenwert steigen
- Kanal-Updates: Wenn Follower, Followings oder Likes um deinen Schwellenwert steigen
Webhooks einrichten
- Webhook-Ziele konfigurieren in den Collection-Einstellungen
- Benachrichtigungen aktivieren in der Collection-Konfiguration
- Schwellenwerte festlegen für die Metriken, die du überwachen möchtest
Detaillierte Anweisungen zur Webhook-Konfiguration findest du im Webhook Configuration Guide.
Fehlerantworten
Alle Endpunkte können die folgenden Fehlerantworten zurückgeben:
401 Unauthorized - Fehlender API-Schlüssel
{
"code": -1,
"message": "X-API-Key header is required"
}401 Unauthorized - Ungültiger API-Schlüssel
{
"code": -1,
"message": "Invalid API key"
}400 Bad Request - Ungültige Eingabe
{
"code": -1,
"message": "Invalid request: urls must be an array"
}400 Bad Request - Zu viele URLs (Feeds erstellen)
{
"code": -1,
"message": "Maximum 200 URLs allowed per request"
}400 Bad Request - Zu viele URLs (Kanäle erstellen)
{
"code": -1,
"message": "Maximum 200 URLs allowed per request"
}400 Bad Request - Unzureichende Credits
{
"code": -1,
"message": "Insufficient credits. Required: 10, Available: 5"
}429 Too Many Requests - Gleichzeitige Team-Synchronisierung
{
"code": -1,
"message": "Maximum concurrent sync requests (1) reached for this team. Currently active: 1. Wait for a request to complete, or contact official support to increase the limit."
}403 Forbidden - Ungültige Collection
{
"code": -1,
"message": "Collection not found or does not belong to your team"
}404 Not Found
{
"code": -1,
"message": "No feeds found"
}oder
{
"code": -1,
"message": "No channels found"
}Verwendungsbeispiele
Python-Beispiel – Feeds erstellen
import requests
url = "https://snstracker.com/api/v1/feeds"
headers = {
"X-API-Key": "your-api-key-here",
"Content-Type": "application/json"
}
data = {
"urls": [
"https://www.tiktok.com/@user/video/1234567890",
"https://www.instagram.com/p/ABC123/"
]
}
response = requests.post(url, json=data, headers=headers)
result = response.json()
if result["code"] == 0:
print(f"Successfully created {result['data']['success']} feeds")
for feed in result["data"]["results"]:
print(f" - {feed['url']}: {feed['feedId']}")
else:
print(f"Error: {result['message']}")JavaScript-Beispiel – Feeds aktualisieren
const response = await fetch('https://snstracker.com/api/v1/feeds/refresh', {
method: 'POST',
headers: {
'X-API-Key': 'your-api-key-here',
'Content-Type': 'application/json',
},
body: JSON.stringify({
feedIds: ['feed_abc123xyz', 'feed_def456uvw'],
}),
});
const result = await response.json();
if (result.code === 0) {
console.log(`Successfully refreshed ${result.data.total} feeds`);
result.data.feedIds.forEach((feedId) => {
console.log(` - ${feedId}`);
});
} else {
console.error(`Error: ${result.message}`);
}Wichtige Hinweise
-
URL-Validierung: Alle URLs werden vor der Erstellung automatisch validiert. Ungültige URLs werden abgelehnt.
-
Doppelte Einträge: Wenn ein Element mit derselben URL bereits in der Collection existiert:
- Wenn es aktiv ist, wird es übersprungen (markiert mit
skipped: true) - Wenn es gestoppt ist, wird es fortgesetzt (markiert mit
resumed: true)
- Wenn es aktiv ist, wird es übersprungen (markiert mit
-
Datenerfassung: Nach erfolgreicher Erstellung werden Elemente zur Datenerfassung in eine Warteschlange gestellt. Daten sind kurz nach der Erstellung verfügbar.
-
Refresh-Status: Nur Elemente mit dem Status "Pending" oder "Tracked" können aktualisiert werden. Elemente mit anderen Status werden herausgefiltert.
-
Credits: Stelle sicher, dass du genügend Credits hast, bevor du Anfragen stellst. Sync-Operationen verbrauchen Credits sofort nach erfolgreichem Datenabruf. Xiaohongshu channel tasks are priced separately and currently cost 10 credits per successful request.
/api/v1/channels/feeds/sync: Jede erfolgreich abgerufene Seite kostet 10 Credits, auch leere Seiten. Nur fehlgeschlagene Anfragen sind kostenlos; vor der Anfrage sind mindestens 10 Credits nötig. Das Teamlimit wird mit den anderen Sync-APIs geteilt. Es werden keine Dashboard-Einträge erstellt./api/v1/channels/about/sync: Jede erfolgreiche Anfrage kostet 80 Credits, auch beinull-Feldern. Fehler werden nicht berechnet; vorher sind mindestens 80 Credits nötig. Gemeinsames Teamlimit mit allen synchronen APIs: Starter/kein aktives Abo 1, Standard 5, Premium 10. Keine Dashboard-Einträge oder Webhooks. -
Gleichzeitige Team-Synchronisierung (
/api/v1/feeds/sync+/api/v1/channels/sync+/api/v1/channels/feeds/sync+/api/v1/channels/about/sync): Alle Mitglieder und API-Schlüssel eines Teams teilen ein Limit über alle Sync-Endpunkte hinweg. Das gemeinsame Limit beträgt 1 für Starter oder ohne gültiges Abonnement, 5 für Standard und 10 für Premium. Das Limit folgt dem aktuell gültigen Abonnement; eine vom offiziellen Support festgelegte Teameinstellung hat Vorrang. Für ein höheres Team-Limit kontaktiere den offiziellen Support. -
Sync vs. Create: Die Sync-Endpunkte (
/api/v1/feeds/syncund/api/v1/channels/sync+/api/v1/channels/feeds/sync+/api/v1/channels/about/sync) sind standalone und integrieren sich NICHT in die Webplattform. Sie geben die Daten nur in der API-Antwort zurück und erstellen keine Datensätze im Dashboard. Um persistente Monitoring-Elemente zu erstellen, die in der Webplattform erscheinen, verwende stattdessen die Create-Endpunkte (/api/v1/feedsund/api/v1/channels). -
Wiederholen: Warte bei 429 auf das Ende einer laufenden Anfrage und wiederhole mit zunehmenden Abständen unter Beachtung von
Retry-After. Bei 503 später erneut versuchen. -
Unterstützte Plattformen: TikTok, Instagram, YouTube und andere große Social-Media-Plattformen.
Fehlerbehebung
Problem: "X-API-Key header is required"
Lösung: Stelle sicher, dass du den X-API-Key-Header in deiner Anfrage mitsendest.
Problem: "Invalid API key"
Lösung: Überprüfe, ob dein API-Schlüssel korrekt ist. Du kannst einen neuen in den Einstellungen → API Keys erstellen.
Problem: "Maximum URLs allowed per request"
Lösung: Teile deine URLs auf mehrere Anfragen auf. Feeds erlauben bis zu 200 URLs, Kanäle bis zu 5 URLs pro Anfrage.
Problem: "No collection found"
Lösung: Erstelle zuerst eine Collection im Dashboard oder gib eine bestehende Collection-ID an.
Problem: "Insufficient credits"
Lösung: Kaufe mehr Credits oder prüfe deinen Abotarif.
Problem: "No refreshable items found"
Lösung: Nur Elemente mit dem Status "Pending" oder "Tracked" können aktualisiert werden. Prüfe den Status deiner Elemente.
Problem: Einige URLs bestehen die Validierung nicht
Lösung: Prüfe das errors-Array in der Antwort auf spezifische Fehlermeldungen. Stelle sicher, dass die URLs von unterstützten Plattformen stammen und öffentlich zugänglich sind.