Toplu İçe Aktarım
Toplu içe aktarım, tek bir yüklemede birçok gönderi göndermene izin verir. Backend CSV'yi parse eder, satır bazında doğrular ve satırın tarihinden — geçersizse now'dan — başlayarak sabit aralıklarla yerleştirilmiş gönderiler oluşturur.
Endpoint
POST /api/v1/bulk-posts- Auth + çalışma alanı + aktif abonelik zorunlu, ayrıca
posts.bulk_uploadplan özelliği. - Multipart form-data yükleme, alan adı
mediaCsv. - Multer config: bellek içi depolama, 10 MB maks dosya boyutu, yalnızca CSV mime tipi.
Body alanları:
accounts— dağıtım yapılacak kanal ID'leri dizisi.mediaCsv— CSV dosyası.interval— ardışık gönderiler arası dakikalar (>= 1).
CSV formatı
bulk_template.csv'den alınan beklenen sütun sırası:
Text, Year, Month, Day, Hour (0-23), Minutes, Image URL, Link- Text — açıklama gövdesi. Tırnaklı string'ler desteklenir; gömülü virgüller backslash ile escape edilir, gömülü tırnaklar için
"". - Year / Month / Day / Hour / Minutes — zamanlama bileşenleri. Month
1–12, Day1–31(takvim-farkındalı doğrulama ile), Hour0–23, Minutes0–59. - Image URL — bir medya varlığına public URL (veya yalnızca metin gönderiler için boş).
- Link — gönderiye eklenen opsiyonel URL.
İlk satır, ilk sütunu "text" kelimesini içeriyorsa (büyük/küçük harf duyarsız) header olarak ele alınır.
Doğrulama davranışı
- Geçersiz yapılı satırlar sessizce atlanır. Endpoint yalnızca hiç geçerli satır kalmadığında bir hata döner.
- Parse edilen tarih geçersizse (örn. 30 Şubat) veya geçmişteyse, Sosyabot
now'dan başlar ve sonraki gönderileriintervaldakikalarla yerleştirir. - Mevcut build'de dry-run modu yoktur.
Şablon indirme
GET /api/v1/bulk-posts/templateKanonik bulk_template.csv'yi attachment olarak döner. Başlangıç noktası olarak kullan.
Frontend UI
Yükleme formu /app/bulk-posts'tadır: kanalları seç, aralığı ayarla, bir CSV bırak. Gönderme multipart payload'ı /api/v1/bulk-posts'a gönderir.
Tırnak önemlidir
Açıklamalarınız virgül veya yeni satır içeriyorsa, çift tırnak içine alın ve iç tırnakları çiftleyerek (" → "") escape edin. Parser tırnak dengesi konusunda katıdır.