White Label Sosyal Medya Yönetimi Ajanslar ve SaaS ekipleri için
Her müşteriye sizin logonuz, sizin metniniz ve sizin temanızla hazırlanmış bir bağlantı sayfasının linkini gönderin. Müşteri TikTok, Instagram, YouTube veya LinkedIn hesabını bir kez bağlar. Sonrasında onun adına API, n8n veya Make ile paylaşım yapar ve gönderi planlarsınız.
Ücretsiz başlarsınız, kredi kartı gerekmez. White label, Professional plandan itibaren dahildir.
import { UploadPost } from 'upload-post';
const api = new UploadPost('YOUR_API_KEY');
// Her müşteri için bir profil
const client = 'client-harbor';
await api.createUser(client);
// Markalı bağlantı linki, 48 saat geçerli
const { access_url } = await api.generateJwt(client, {
logoImage: 'https://ajansiniz.com/logo.png',
connectTitle: 'Hesaplarınızı bağlayın',
redirectUrl: 'https://ajansiniz.com/tamam',
platforms: ['instagram', 'tiktok', 'linkedin']
});
// access_url linkini müşterinize gönderin Gerçek ekran görüntüleri
Müşterileriniz Ne Görür
Bu, müşterinizin açtığı gerçek bağlantı sayfası; örnek bir markayla hazırlandı. Northwind Studio uydurma bir ajans, "Harbor Demo Cafe" de uydurma bir müşteri. Sayfa, düzen ve seçenekler ise gerçek.
platforms ile altı ağa indirilmiş liste.
connect_theme: "dark" ile. Zorunlu tema açık/koyu düğmesini gizler, böylece her müşteri sizin seçiminizi görür.
ui_labels ile yeniden yazılmış metinler: üst etiket, bölüm başlıkları, gizlilik metni ve tüm Connect düğmeleri artık ajansın istediğini söylüyor.
platforms verilmezse müşteri tüm ağları görür; daha az kullanılanlar "Show 9 more networks" düğmesinin arkasındadır. Görüntüyü aldığımız gün Reddit kullanılamaz görünüyordu.
Müşteri bu sayfada neler yapabilir
- TikTok, Instagram, YouTube, LinkedIn ve diğer OAuth ağlarını, ağın kendi giriş ekranında bağlar; şifresi ne size ne de Upload-Post’a ulaşır. Bluesky, Telegram, Discord ve birkaç ağ ise bunun yerine uygulama şifresi, bot token’ı veya webhook kullanır.
- Paylaşım yapacağınız Facebook Sayfasını, LinkedIn şirket sayfasını veya Google Business konumunu seçer.
- Erişim süresi dolan bir hesabı yeniden bağlar ya da istediği an bir hesabın bağlantısını keser.
- Açık bırakırsanız planlanan gönderilerin takvimine bakar. Salt okunur seçenekte yapabileceği tek şey budur.
- Sizin adlandırdığınız düğmeyle sitenize geri döner.
Link tek bir profile bağlıdır. Müşteri yalnızca kendi hesaplarını görebilir ve değiştirebilir; diğer müşterilerinizi ya da API anahtarınızı asla göremez.
Bir Ajans İçin Nasıl Çalışır
Yeni bir müşteriden ilk planlanmış gönderisine beş adım. Her adım panelden de API’den de yapılabilir.
- 1
Her müşteri için bir profil oluşturun
Panelde Manage Users bölümüne gidip bir profil ekleyin ya da
client-harborgibi bir kullanıcı adıylaPOST /api/uploadposts/usersçağırın. Bir profil her ağdan bir hesap tutar. - 2
Markalı bağlantı linkini oluşturun
Profilin yanındaki Share’e tıklayın; logonuzu, başlığı, açıklamayı, dili, yönlendirme URL’sini, düğme metnini ve ağları doldurun. Ya da aynı alanları
POST /api/uploadposts/users/generate-jwtuç noktasına gönderin. Karşılığında 48 saat geçerli biraccess_urlalırsınız. - 3
Linki müşterinize gönderin
E-postayla, sohbetten ya da kendi müşteri kabul (onboarding) akışınızın içinden. Müşterinin Upload-Post hesabına ihtiyacı yoktur ve panelinizi hiç görmez.
- 4
Müşteri hesaplarını bağlar
TikTok, Instagram, YouTube veya LinkedIn’de oturum açar ve erişimi onaylar. Token’lar şifreli saklanır ve sizin yerinize yenilenir. Bir webhook tanımladıysanız, bağlantı gerçekleştiği anda bir
social_account_connectedolayı alırsınız. - 5
Onun adına paylaşın ve planlayın
user=client-harborile paylaşın, planlamak içinscheduled_dateekleyin. Bunu panelden, kendi kodunuzdan, n8n şablonlarından, bir Make senaryosundan ya da MCP sunucusu üzerinden bir yapay zeka asistanıyla yapın. Her müşterinin rakamlarını analiz uç noktasından çekin.
Tüm Markalama Seçenekleri
Hepsi generate-jwt çağrısının alanlarıdır ve müşterinin profiline kaydedilir. Son sütun, seçeneği panelden de ayarlayıp ayarlayamayacağınızı gösterir.
| Seçenek | Parametre | Ne işe yarar | Örnek | Panel |
|---|---|---|---|---|
| Logo | logo_image | Logonuzu sayfanın en üstünde gösterir. Herkese açık herhangi bir http(s) görsel URL’si olabilir. | "https://ajansiniz.com/logo.png" | Evet |
| Sayfa başlığı | connect_title | Varsayılan ana başlığın (İngilizcede "Connect your social accounts") yerine geçer. | "Hesaplarınızı Northwind Studio’ya bağlayın" | Evet |
| Açıklama | connect_description | Başlığın altındaki metin satırının yerine geçer. | "Sizin için yöneteceğimiz kanalları bağlayın." | Evet |
| Gösterilen ağlar | platforms | Yalnızca listelediğiniz ağlar görünür. Boş bırakırsanız müşteri tüm ağları görür. | ["instagram", "tiktok", "linkedin"] | Evet |
| Yönlendirme URL’si | redirect_url | Müşteri işini bitirdiğinde geri dönüş düğmesinin onu götüreceği adres. | "https://ajansiniz.com/onboarding/tamam" | Evet |
| Geri dönüş düğmesi metni | redirect_button_text | Bu geri dönüş düğmesinin üzerindeki yazı. | "Northwind Studio’ya dön" | Evet |
| Dil | language | İngilizce, İspanyolca, Almanca, Fransızca, Portekizce, Lehçe veya Türkçeyi zorunlu kılar. Verilmezse sayfa tarayıcının dilini izler, desteklenmiyorsa İngilizceye döner. | "tr" | Evet |
| Sayfadaki her metin | ui_labels | Sayfanın tek tek metinlerini anahtarlarıyla yeniden yazar: düğmeler, bölüm başlıkları, gizlilik metni. En fazla 100 anahtar, her biri 300 karakter. | {"connect.card.connect": "Hesabı bağla"} | Yalnızca API |
| Tema | connect_theme | Açık veya koyu temayı zorunlu kılar ve tema düğmesini gizler. "auto" seçimi ziyaretçiye bırakır. | "dark" | Yalnızca API |
| Takvim sekmesi | show_calendar | O profil için planlanan gönderilerin yer aldığı takvim sekmesini gösterir veya gizler. Varsayılan olarak açıktır. | false | Evet |
| Salt okunur takvim | readonly_calendar | Müşteri yalnızca takvimi görür. Gönderileri düzenleyemez, silemez, hesap bağlayıp bağlantı kesemez. | true | Evet |
Tüm seçenekler tek istekte
curl -X POST https://api.upload-post.com/api/uploadposts/users/generate-jwt \
-H "Authorization: ApiKey YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"username": "client-harbor",
"logo_image": "https://ajansiniz.com/logo.png",
"connect_title": "Hesaplarınızı Northwind Studio’ya bağlayın",
"connect_description": "Sizin için yöneteceğimiz kanalları bağlayın.",
"platforms": ["instagram", "tiktok", "linkedin"],
"redirect_url": "https://ajansiniz.com/onboarding/tamam",
"redirect_button_text": "Northwind Studio’ya dön",
"language": "tr",
"connect_theme": "light",
"ui_labels": { "connect.card.connect": "Hesabı bağla" },
"show_calendar": false
}' Bilmekte fayda var
- Her link oluşturduğunuzda markalamanın tamamını gönderin. Logo, başlık, açıklama, düğme metni, yönlendirme URL’si, ağlar ve dil, göndermediğinizde profilden silinir.
-
ui_labels,connect_themeve iki takvim ayarı yalnızca onları gönderdiğinizde değişir. Etiketleri sıfırlamak içinnullveya{}gönderin. - Etiketler, sayfa hangi dilde gösteriliyorsa o dildeki metnin yerine geçer. Etiketleriniz Türkçe, müşterinin tarayıcısı Fransızcaysa sayfanın geri kalanı Fransızca kalır; bu yüzden
languagedeğerini de ayarlayın. - Etiket anahtarları ve parametrelerin tam listesi User Profiles API dokümantasyonunda.
White Label Olmayan Kısımlar
Bunu bir müşteriden duymaktansa burada okumanız daha iyi. Akışın şu bölümlerinde hâlâ Upload-Post ya da ilgili sosyal ağ görünür.
Adres
Barındırılan sayfa app.upload-post.com/connect adresindedir. Özel alan adı veya CNAME seçeneği yoktur. Kendi alan adınız gerekiyorsa Connect API ile kendi sayfanızı kurun; OAuth geri dönüşü yine de kısa bir an için app.upload-post.com üzerinden geçer.
Ağların izin ekranları
Müşteri oturum açtığında TikTok, Meta, Google, LinkedIn ve diğerleri, kendilerinde kayıtlı uygulamayla, yani Upload-Post’un onaylı uygulamasıyla kendi ekranlarını gösterir. Onların uygulama incelemelerinden muaf olmanızın nedeni de budur.
Gizlilik kutusu
Sayfada her zaman kısa bir "Verileriniz nasıl kullanılır" notu bulunur; Upload-Post gizlilik politikasına ve [email protected] adresine bağlantı verir. Varsayılan olarak veri işleyen olarak Upload-Post’un arkasındaki şirket TONVI TECH SL’nin adını anar. Metni ui_labels ile yeniden yazabilirsiniz, ama kutu ve bu bağlantılar kalır.
Renkler, sekme başlığı ve paneliniz
Marka rengi değil, açık veya koyu tema seçersiniz: düğmeler Upload-Post’un çivit mavisinde kalır. Tarayıcı sekmesinin başlığı ve simgesi Upload-Post’a aittir. Ekibinizin giriş yaptığı panel de yeniden markalanmış bir uygulama değil, Upload-Post’tur.
Entegrasyonları Neden Kendiniz Yazmayasınız?
Doğrudan entegrasyon; Meta ve TikTok ile uygulama incelemeleri, token yenileme mantığı ve geriye uyumsuz API değişiklikleri demektir, üstelik her ağ için ayrı ayrı. Tek API ile tüm ağlar tek uç noktanın arkasında olur, bağlantı sayfası da cabası.
Ajanslar
Her müşteri için bir profil, bağlantı linkinde sizin markanız, paylaşım ve planlama tek yerden
SaaS platformları
Her ağ için ayrı entegrasyon yazmadan ürününüze sosyal medya paylaşımı ekleyin
İçerik araçları
Kullanıcılarınız ürettiklerini doğrudan kendi sosyal hesaplarında paylaşsın
Arkadaki API Çağrıları
Bunu bir SaaS ürününe veya ajans aracına gömecek geliştiriciler için. Kurulacak OAuth akışı da yönetilecek platform kimlik bilgisi de yok.
Her Müşteri veya Kullanıcı İçin Bir Profil Oluşturun
Profil, bir müşterinin (ya da uygulamanızdaki bir kullanıcının) sosyal hesaplarını tutan kaptır. Kullanıcı adı olarak kendi dahili kimliğinizi kullanın, eşleştirme böylece çok kolay olur.
curl -X POST https://api.upload-post.com/api/uploadposts/users \
-H "Authorization: ApiKey YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username": "your-internal-user-id-123"}' Markalı Bağlantı URL’sini Oluşturun
Markalama burada devreye girer: logo, başlık, yönlendirme URL’si, ağlar ve yukarıdaki tablodaki diğer seçenekler. Yanıtta 48 saat geçerli access_url bulunur.
curl -X POST https://api.upload-post.com/api/uploadposts/users/generate-jwt \
-H "Authorization: ApiKey YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"username": "your-internal-user-id-123",
"redirect_url": "https://yourapp.com/social-connected",
"logo_image": "https://yourapp.com/logo.png",
"platforms": ["tiktok", "instagram", "youtube"]
}' Müşteri Hesaplarını Bağlar
Müşteriyi veya kullanıcıyı access_url adresine gönderin. TikTok, Instagram ve YouTube gibi OAuth ağlarında kimlik doğrulamayı doğrudan ağın kendisiyle yapar; Upload-Post şifresini hiç görmez ve oluşan token’lar şifreli saklanır.
Upload-Post’un Sizin Yerinize Hallettikleri
OAuth 2.0 akışları
Token yenileme
Şifreli depolama
Onun Adına Paylaşın veya Planlayın
Herhangi bir yükleme isteğinde profilin kullanıcı adını user olarak verin. Hemen değil de daha sonra yayınlamak için scheduled_date ekleyin.
curl -X POST https://api.upload-post.com/api/upload \
-H "Authorization: ApiKey YOUR_API_KEY" \
-F "user=your-internal-user-id-123" \
-F "video=@/path/to/video.mp4" \
-F "title=Yeni sonbahar menüsü" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "scheduled_date=2026-10-02T09:00:00Z" Tek API Anahtarı, Her Müşteriye Bir Profil
Tüm müşterileriniz tek bir hesap ve tek bir API anahtarı altında durur; her biri kendi sosyal hesaplarıyla kendi profilindedir.
Profiller nasıl çalışır
Her profil her ağdan bir hesap bağlar. Kaç profil alacağınızı planınız belirler; profil sayısı sosyal hesap sayısına bir üst sınır değildir: Professional planda aynı anda 25 TikTok, 25 Instagram ve 25 LinkedIn hesabı bağlı olabilir.
- Ayrı kimlik bilgileri: her müşterinin sosyal medya token’ları yalnızca kendi profiline aittir
- Müşteri başına webhook: bağlantı ve yükleme olayları için her profile ayrı bir URL verin
- Tek fatura: tek bir abonelik tüm müşterilerinizi kapsar
Örnek kurulum
| Plan | Dahil profil | Aylık ödeme | Yıllık ödeme |
|---|---|---|---|
| Professional | 25 | $50/ay | $33/ay ($400/yıl) |
| Advanced | 75 | $147/ay | $118/ay ($1.411/yıl) |
| Business | 225, sonrası ek profil başına $1/ay | $438/ay | $350/ay ($4.205/yıl) |
Eylül 2026 itibarıyla USD fiyatlar. Euro fiyatları ile Professional ve Advanced için ek profil paketleri, her zaman güncel kaynak olan fiyatlandırma bölümünde.
White Label Sosyal Medya Entegrasyonunu Kimler Kullanır?
SaaS platformları
İçerik yönetim sistemleri, pazarlama otomasyonu platformları ve iş yazılımları.
Pazarlama ajansları
Dijital pazarlama ajansları ve sosyal medya yönetim şirketleri.
İçerik platformları
Blog platformları, video barındırma siteleri ve içerik üretim araçları.
Eğitim platformları
Öğrenme yönetim sistemleri ve eğitim içeriği platformları.
E-ticaret platformları
Online pazaryerleri ve e-ticaret çözümleri.
Video platformları
Video barındırma platformları ve yayın servisleri.
Teknik Özellikler ve Uyumluluk
Platform desteği
Artı Google Business, Slack, Mastodon ve WordPress dahil 11 platform daha. 22 platformun tamamını görün
Güvenlik özellikleri
Sosyal medya token’ları depolanırken şifrelenir.
OAuth ağlarında müşteriler ağın kendi ekranında oturum açar. Şifreleri ne sizden ne de Upload-Post’tan geçer.
Her bağlantı linki yalnızca tek bir profili açar ve 48 saat sonra geçerliliğini yitirir.
Müşteri Kabul Sürecine Kendi Markanızı Koyun
Bir profil oluşturun, Share’e tıklayın, linki gönderin. İlk markalı bağlantı sayfanız birkaç dakikada hazır.
Ücretsiz başlarsınız, kredi kartı gerekmez. White label Professional plandan itibaren.
White Label Sosyal Medya Yönetimi: Sık Sorulan Sorular
Ajansların ve SaaS ekiplerinin ilk markalı bağlantı linkini göndermeden önce sorduğu sorular
Müşterilerimin Upload-Post hesabı olması gerekiyor mu?
Hayır. Bağlantı linki yalnızca o müşteri profiline ait bir token taşır. Müşteriniz linki açar, her sosyal ağda kendi oturumunu açar ve işi biter. Link 48 saat geçerlidir; süre dolunca yenisini oluşturursunuz.
Bağlantı sayfasını kendi alan adımda kullanabilir miyim?
Barındırılan sayfada hayır: her zaman app.upload-post.com/connect adresindedir ve özel alan adı seçeneği yoktur. Adres sizin için önemliyse Connect API ile sayfayı kendi sitenizde kurabilirsiniz. O durumda bile sosyal ağ, müşteriyi kısa bir an için app.upload-post.com üzerinden geri gönderir, çünkü her platformda kayıtlı OAuth geri dönüş adresi (callback) budur.
White label hangi planlarda var?
Professional, Advanced ve Business planlarında. Free ve Basic planlarda yoktur. Professional 25, Advanced 75, Business 225 profille gelir; Business planında her ek profil ayda 1 $’dır. Satış görüşmesi gerekmez: planı fiyatlandırma sayfasından kendiniz seçersiniz.
Bir profile kaç müşteri hesabı sığar?
Bir profil her ağdan bir hesap tutar; yani tek bir profil, Instagram, TikTok, LinkedIn ve YouTube hesapları bağlı bir müşteri olabilir. 25 profil, toplamda 25 hesap değil, her ağda 25’e kadar hesap demektir. İki Instagram hesabı olan bir müşteri için iki profil gerekir.
Her link oluşturduğumda markalamayı yeniden göndermem gerekiyor mu?
Logo, başlık, açıklama, düğme metni, yönlendirme URL’si, ağlar ve dil için evet. generate-jwt’ye yapılan her çağrı tam olarak gönderdiğiniz değerleri kaydeder; göndermediğiniz alan o profilde temizlenir. ui_labels, connect_theme, show_calendar ve readonly_calendar farklı çalışır: yalnızca onları gönderdiğinizde değişirler.
Müşterilerim planlanan gönderileri görebilir mi?
Evet. Takvim sekmesi varsayılan olarak açıktır ve o profil için planlanan gönderileri gösterir. readonly_calendar’ı açarsanız link, salt görüntüleme amaçlı bir içerik takvimine dönüşür: müşteri bakabilir ama düzenleyemez, silemez, bağlantıları değiştiremez. Takvimi doğrudan açmak için müşteriyi aynı token ile /connect/calendar adresine gönderin.
Bağlantı sayfası hangi dilleri destekliyor?
İngilizce, İspanyolca, Almanca, Fransızca, Portekizce, Lehçe ve Türkçe. language parametresiyle her profil için bir dil belirleyebilir ya da sayfanın tarayıcı dilini izlemesine izin verebilirsiniz. Bunların dışında kalan her ifade için ui_labels ile metni kendiniz yazabilirsiniz.
Bir müşterinin hesabını bağladığını nasıl anlarım?
Webhook’larla. Upload-Post; social_account_connected, social_account_disconnected, social_account_reauth_required ve upload_completed olaylarını gönderir. Her profilin kendi webhook URL’si olabilir, böylece her müşteri sisteminizde farklı bir uç noktaya bildirim yapabilir.
Müşteri bazında analiz verisi alabilir miyim?
Evet. Analiz uç noktası profilin kullanıcı adını alır; böylece rakamları her seferinde tek bir müşteri için çeker ve üzerine kendi raporlarınızı kurarsınız.
SDK sunuyor musunuz?
Python (pip install upload-post) ve JavaScript/Node (npm install upload-post) için resmi SDK’lar var. Geri kalan her şey API anahtarıyla çalışan düz bir REST API’dir; HTTP isteği gönderebilen her dil veya kodsuz araç işinizi görür.
Kurulum ne kadar sürer?
Kod yazmadan: Manage Users bölümünde bir profil oluşturun, Share’e tıklayın, markanızın bilgilerini doldurun ve linki gönderin. API ile iki çağrı yeter: biri profili oluşturmak, biri linki üretmek için. Bunlara paylaşım için zaten kullandığınız yükleme çağrıları eklenir.
Nasıl destek alırım?
Her uç nokta için kod örnekli dokümantasyon ve [email protected] adresinden e-posta desteği. Advanced ve Business planlarında öncelikli destek vardır.
Daha fazla ayrıntı: User Profiles API, Connect API, Webhook’lar ve SDK’lar.