Manajemen Media Sosial White Label untuk Agensi dan SaaS
Kirim tautan ke halaman koneksi dengan logo, teks, dan tema Anda ke setiap klien. Mereka cukup sekali menghubungkan TikTok, Instagram, YouTube, atau LinkedIn. Setelah itu, Anda yang memposting dan menjadwalkan konten untuk mereka lewat API, n8n, atau Make.
Mulai gratis, tanpa kartu kredit. White label tersedia mulai paket Professional.
import { UploadPost } from 'upload-post';
const api = new UploadPost('YOUR_API_KEY');
// Satu profil per klien
const client = 'client-harbor';
await api.createUser(client);
// Tautan koneksi ber-branding, berlaku 48 jam
const { access_url } = await api.generateJwt(client, {
logoImage: 'https://youragency.com/logo.png',
connectTitle: 'Hubungkan akun Anda',
redirectUrl: 'https://youragency.com/done',
platforms: ['instagram', 'tiktok', 'linkedin']
});
// Kirim access_url ke klien Anda Screenshot asli
Yang Dilihat Klien Anda
Inilah halaman koneksi yang benar-benar dibuka klien Anda, ditampilkan dengan merek contoh. Northwind Studio adalah agensi fiktif dan "Harbor Demo Cafe" klien fiktif; halaman, tata letak, dan opsinya asli.
platforms.
connect_theme: "dark". Tema yang dipaksa menyembunyikan tombol terang/gelap, jadi setiap klien melihat pilihan Anda.
ui_labels: eyebrow, judul bagian, teks privasi, dan setiap tombol Connect kini berbunyi sesuai keinginan agensi.
platforms, klien melihat semua jaringan, dan yang jarang dipakai ada di balik tombol "Show 9 more networks". Reddit tampil sebagai tidak tersedia pada hari screenshot ini diambil.
Yang bisa dilakukan klien di halaman itu
- Menghubungkan TikTok, Instagram, YouTube, LinkedIn, dan jaringan OAuth lainnya di layar login milik jaringan itu sendiri, sehingga kata sandinya tidak pernah sampai ke Anda maupun Upload-Post. Bluesky, Telegram, Discord, dan beberapa lainnya memakai app password, token bot, atau webhook.
- Memilih Halaman Facebook, halaman perusahaan LinkedIn, atau lokasi Google Business yang akan Anda gunakan untuk posting.
- Menghubungkan ulang akun yang aksesnya kedaluwarsa, atau memutus akun kapan saja.
- Melihat kalender posting terjadwal, jika Anda membiarkannya aktif. Dengan opsi hanya-baca, hanya itu yang bisa mereka lakukan.
- Kembali ke situs Anda lewat tombol yang labelnya Anda tentukan.
Tautan ini terikat ke satu profil. Klien hanya bisa melihat dan mengubah akun miliknya sendiri, tidak pernah klien Anda yang lain atau API key Anda.
Cara Kerjanya untuk Agensi
Lima langkah dari klien baru sampai posting terjadwal pertamanya. Setiap langkah bisa dilakukan dari dashboard atau lewat API.
- 1
Buat satu profil per klien
Di dashboard, buka Manage Users dan tambahkan profil, atau panggil
POST /api/uploadposts/usersdengan username seperticlient-harbor. Satu profil menampung satu akun per jaringan. - 2
Buat tautan koneksi dengan branding Anda
Klik Share di samping profil, lalu isi logo, judul, deskripsi, bahasa, URL redirect, teks tombol, dan jaringan. Atau kirim field yang sama ke
POST /api/uploadposts/users/generate-jwt. Anda akan menerimaaccess_urlyang berlaku 48 jam. - 3
Kirim ke klien Anda
Lewat email, chat, atau di dalam alur onboarding Anda sendiri. Klien tidak perlu akun Upload-Post dan tidak pernah melihat dashboard Anda.
- 4
Klien menghubungkan akunnya
Mereka login di TikTok, Instagram, YouTube, atau LinkedIn dan menyetujui akses. Token disimpan terenkripsi dan diperbarui otomatis untuk Anda. Jika Anda memasang webhook, Anda menerima event
social_account_connectedsaat itu juga. - 5
Posting dan jadwalkan untuk mereka
Posting dengan
user=client-harbordan tambahkanscheduled_dateuntuk menjadwalkannya. Lakukan dari dashboard, dari kode Anda, dari template n8n, skenario Make, atau asisten AI lewat server MCP. Ambil angka per klien dari endpoint analytics.
Semua Opsi Branding
Semuanya adalah field dari panggilan generate-jwt dan disimpan di profil klien. Kolom terakhir menunjukkan apakah opsi itu juga bisa diatur dari dashboard.
| Opsi | Parameter | Fungsinya | Contoh | Dashboard |
|---|---|---|---|---|
| Logo | logo_image | Menampilkan logo Anda di bagian atas halaman. Bisa URL gambar http(s) publik apa pun. | "https://youragency.com/logo.png" | Ya |
| Judul halaman | connect_title | Mengganti judul utama, yang secara default berbunyi "Connect your social accounts". | "Hubungkan akun Anda ke Northwind Studio" | Ya |
| Deskripsi | connect_description | Mengganti baris teks di bawah judul. | "Tautkan kanal yang akan kami kelola untuk Anda." | Ya |
| Jaringan yang tampil | platforms | Hanya jaringan yang Anda cantumkan yang muncul. Jika tidak diisi, klien melihat semua jaringan. | ["instagram", "tiktok", "linkedin"] | Ya |
| URL redirect | redirect_url | Tujuan tombol kembali saat klien sudah selesai. | "https://youragency.com/onboarding/done" | Ya |
| Teks tombol kembali | redirect_button_text | Label tombol kembali tersebut. | "Kembali ke Northwind Studio" | Ya |
| Bahasa | language | Memaksa bahasa Inggris, Spanyol, Jerman, Prancis, Portugis, Polandia, atau Turki. Tanpa parameter ini, halaman mengikuti bahasa browser dan kembali ke bahasa Inggris jika bahasanya tidak tersedia. | "en" | Ya |
| Teks apa pun di halaman | ui_labels | Menulis ulang teks tertentu di halaman berdasarkan key-nya: tombol, judul bagian, teks privasi. Maksimal 100 key, masing-masing 300 karakter. | {"connect.card.connect": "Hubungkan akun"} | Hanya API |
| Tema | connect_theme | Memaksa tema terang atau gelap dan menyembunyikan tombol ganti tema. "auto" mengembalikan pilihan ke pengunjung. | "dark" | Hanya API |
| Tab kalender | show_calendar | Menampilkan atau menyembunyikan tab kalender berisi posting yang dijadwalkan untuk profil itu. Aktif secara default. | false | Ya |
| Kalender hanya-baca | readonly_calendar | Klien hanya bisa melihat kalender. Mereka tidak bisa mengedit atau menghapus posting, juga tidak bisa menghubungkan atau memutus akun. | true | Ya |
Semua opsi dalam satu request
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://youragency.com/logo.png",
"connect_title": "Hubungkan akun Anda ke Northwind Studio",
"connect_description": "Tautkan kanal yang akan kami kelola untuk Anda.",
"platforms": ["instagram", "tiktok", "linkedin"],
"redirect_url": "https://youragency.com/onboarding/done",
"redirect_button_text": "Kembali ke Northwind Studio",
"language": "en",
"connect_theme": "light",
"ui_labels": { "connect.card.connect": "Hubungkan akun" },
"show_calendar": false
}' Perlu diketahui
- Kirim branding lengkap setiap kali membuat tautan. Logo, judul, deskripsi, teks tombol, URL redirect, jaringan, dan bahasa akan dikosongkan di profil jika tidak Anda kirim.
-
ui_labels,connect_theme, dan dua pengaturan kalender hanya berubah jika Anda mengirimnya. Kirimnullatau{}untuk mereset label. - Label mengganti teks dalam bahasa apa pun yang sedang tampil di halaman. Jika label Anda berbahasa Indonesia dan browser klien berbahasa Prancis, sisa halaman tetap berbahasa Prancis, jadi atur juga
language. - Daftar key label dan referensi parameter lengkap ada di dokumentasi User Profiles API.
Yang Tidak Ikut White Label
Lebih baik Anda membacanya di sini daripada tahu dari klien. Bagian alur berikut tetap menampilkan Upload-Post atau jaringan sosialnya.
Alamatnya
Halaman yang di-hosting kami ada di app.upload-post.com/connect. Tidak ada opsi domain kustom atau CNAME. Jika Anda butuh domain sendiri, buat halaman sendiri dengan Connect API; callback OAuth tetap lewat app.upload-post.com sebentar.
Layar persetujuan jaringan sosial
Saat klien login, TikTok, Meta, Google, LinkedIn, dan lainnya menampilkan layar mereka sendiri dengan aplikasi yang terdaftar di sana, yaitu aplikasi Upload-Post yang sudah disetujui. Karena itu pula Anda tidak perlu melewati proses review aplikasi mereka.
Kotak privasi
Catatan singkat "How your data is used" selalu ada di halaman, dengan tautan ke kebijakan privasi Upload-Post dan [email protected]. Secara default, catatan itu menyebut TONVI TECH SL, perusahaan di balik Upload-Post, sebagai pemroses data. Anda bisa menulis ulang kalimatnya dengan ui_labels, tetapi kotak dan tautan itu tetap ada.
Warna, judul tab, dan dashboard Anda
Anda memilih terang atau gelap, bukan warna merek: tombol tetap memakai warna indigo Upload-Post. Judul dan ikon tab browser milik Upload-Post. Dashboard tempat tim Anda login adalah Upload-Post, bukan aplikasi yang diganti mereknya.
Kenapa Tidak Membangun Integrasinya Sendiri?
Integrasi langsung berarti review aplikasi dengan Meta dan TikTok, logika refresh token, dan perubahan API yang merusak, untuk setiap jaringan. Dengan satu API, Anda mendapat semua jaringan di balik satu endpoint plus halaman koneksi di atasnya.
Agensi
Satu profil per klien, merek Anda di tautan koneksi, posting dan jadwal dari satu tempat
Platform SaaS
Tambahkan fitur posting ke media sosial di produk Anda tanpa membangun satu integrasi per jaringan
Tool Konten
Biarkan pengguna membagikan hasil karyanya langsung ke akun media sosial mereka sendiri
Panggilan API di Baliknya
Untuk developer yang menanamkan fitur ini di SaaS atau tool agensi. Tidak ada alur OAuth yang perlu dibangun dan tidak ada kredensial platform yang perlu dikelola.
Buat Profil untuk Setiap Klien atau Pengguna
Profil adalah wadah akun media sosial milik satu klien (atau satu pengguna aplikasi Anda). Pakai ID internal Anda sendiri sebagai username agar pemetaannya kembali mudah.
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"}' Buat URL Koneksi dengan Branding Anda
Di sinilah branding dimasukkan: logo, judul, URL redirect, jaringan, dan opsi lain di tabel di atas. Respons berisi access_url yang berlaku 48 jam.
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"]
}' Klien Menghubungkan Akunnya
Arahkan klien atau pengguna ke access_url. Di jaringan OAuth seperti TikTok, Instagram, dan YouTube, mereka login langsung di jaringan itu, sehingga Upload-Post tidak pernah melihat kata sandinya, dan token yang dihasilkan disimpan terenkripsi.
Yang Diurus Upload-Post untuk Anda
Alur OAuth 2.0
Refresh Token
Penyimpanan Terenkripsi
Posting atau Jadwalkan atas Nama Mereka
Sertakan username profil sebagai user di request upload mana pun. Tambahkan scheduled_date untuk memposting nanti, bukan sekarang.
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=Menu baru bulan ini" \
-F "platform[]=tiktok" \
-F "platform[]=instagram" \
-F "scheduled_date=2026-10-02T09:00:00Z" Satu API Key, Satu Profil per Klien
Semua klien Anda berada di bawah satu akun dan satu API key, masing-masing di profilnya sendiri dengan akun media sosialnya sendiri.
Cara kerja profil
Setiap profil menghubungkan satu akun per jaringan. Paket Anda menentukan jumlah profil, dan profil bukan batas jumlah akun media sosial: di paket Professional Anda bisa menghubungkan 25 akun TikTok, 25 akun Instagram, dan 25 akun LinkedIn sekaligus.
- Kredensial terpisah: token media sosial setiap klien hanya milik profilnya
- Webhook per klien: beri setiap profil URL sendiri untuk event koneksi dan upload
- Satu tagihan: satu langganan mencakup semua klien
Contoh susunan
| Paket | Profil termasuk | Tagihan bulanan | Tagihan tahunan |
|---|---|---|---|
| Professional | 25 | $50/bulan | $33/bulan ($400/tahun) |
| Advanced | 75 | $147/bulan | $118/bulan ($1.411/tahun) |
| Business | 225, lalu $1/bulan per profil tambahan | $438/bulan | $350/bulan ($4.205/tahun) |
Harga dalam USD per September 2026. Harga dalam euro dan paket profil tambahan untuk Professional dan Advanced ada di bagian harga, yang selalu menjadi sumber terbaru.
Siapa yang Memakai Integrasi Media Sosial White Label?
Platform SaaS
Sistem manajemen konten, platform otomatisasi marketing, dan software bisnis.
Agensi Marketing
Agensi digital marketing dan perusahaan pengelola media sosial.
Platform Konten
Platform blog, situs hosting video, dan tool pembuatan konten.
Platform Edukasi
Learning management system (LMS) dan platform konten edukasi.
Platform E-commerce
Marketplace online dan solusi e-commerce.
Platform Video
Platform hosting video dan layanan streaming.
Spesifikasi Teknis & Kepatuhan
Dukungan Platform
Plus 11 lainnya, termasuk Google Business, Slack, Mastodon, dan WordPress. Lihat semua 22 platform
Fitur Keamanan
Token media sosial dienkripsi saat disimpan.
Di jaringan OAuth, klien login di layar milik jaringan itu sendiri. Kata sandinya tidak pernah melewati Anda maupun Upload-Post.
Setiap tautan koneksi hanya membuka satu profil dan kedaluwarsa setelah 48 jam.
Pasang Merek Anda di Onboarding Klien
Buat profil, klik Share, kirim tautannya. Halaman koneksi pertama dengan merek Anda siap dalam beberapa menit.
Mulai gratis, tanpa kartu kredit. White label tersedia mulai paket Professional.
Manajemen Media Sosial White Label: FAQ
Pertanyaan yang sering diajukan agensi dan tim SaaS sebelum mengirim tautan koneksi ber-branding pertama mereka
Apakah klien saya perlu akun Upload-Post?
Tidak. Tautan koneksi membawa token khusus untuk satu profil klien itu. Klien membukanya, login di tiap media sosial, dan selesai. Tautan berlaku 48 jam; setelah itu Anda membuat tautan baru.
Bisakah halaman koneksi memakai domain saya sendiri?
Untuk halaman yang di-hosting kami, tidak: halaman itu selalu ada di app.upload-post.com/connect dan domain kustom tidak tersedia. Jika alamat itu penting, Connect API memungkinkan Anda membangun halaman sendiri di situs Anda. Meski begitu, jaringan sosial tetap mengarahkan klien sebentar lewat app.upload-post.com, karena itulah callback OAuth yang terdaftar di tiap platform.
Paket mana yang sudah termasuk white label?
Professional, Advanced, dan Business. Free dan Basic tidak termasuk. Professional mendapat 25 profil, Advanced 75, dan Business 225; di Business, tiap profil tambahan dikenai $1 per bulan. Tidak perlu telepon dengan tim sales: Anda cukup memilih paket di halaman harga.
Berapa akun klien yang muat dalam satu profil?
Satu profil menampung satu akun per jaringan, jadi satu profil bisa berupa satu klien dengan Instagram, TikTok, LinkedIn, dan YouTube yang terhubung. 25 profil berarti hingga 25 akun di setiap jaringan, bukan 25 akun secara total. Klien dengan dua akun Instagram butuh dua profil.
Apakah saya harus mengirim branding setiap kali membuat tautan?
Ya, untuk logo, judul, deskripsi, teks tombol, URL redirect, jaringan, dan bahasa. Setiap panggilan ke generate-jwt menyimpan persis apa yang Anda kirim, jadi field yang tidak Anda isi akan dikosongkan di profil itu. ui_labels, connect_theme, show_calendar, dan readonly_calendar berbeda: nilainya hanya berubah jika Anda mengirimnya.
Bisakah klien saya melihat apa saja yang sudah dijadwalkan?
Bisa. Tab kalender aktif secara default dan menampilkan posting yang dijadwalkan untuk profil itu. Aktifkan readonly_calendar dan tautan itu menjadi kalender konten yang hanya bisa dilihat: klien bisa melihat, tetapi tidak bisa mengedit, menghapus, atau mengubah koneksi. Arahkan mereka ke /connect/calendar dengan token yang sama untuk langsung membukanya.
Bahasa apa saja yang didukung halaman koneksi?
Inggris, Spanyol, Jerman, Prancis, Portugis, Polandia, dan Turki. Bahasa Indonesia belum termasuk. Anda bisa memaksa satu bahasa per profil dengan parameter language atau membiarkan halaman mengikuti browser. Untuk teks lain, ui_labels memungkinkan Anda menulis sendiri kalimatnya.
Bagaimana saya tahu kapan klien sudah menghubungkan akun?
Lewat webhook. Upload-Post mengirim event social_account_connected, social_account_disconnected, social_account_reauth_required, dan upload_completed. Setiap profil bisa punya URL webhook sendiri, sehingga tiap klien bisa melapor ke endpoint yang berbeda di sistem Anda.
Bisakah saya menarik data analytics per klien?
Bisa. Endpoint analytics menerima username profil, jadi Anda mendapat angka satu klien sekaligus dan bisa membuat laporan sendiri dari data itu.
Apakah tersedia SDK?
Ada SDK resmi untuk Python (pip install upload-post) dan JavaScript/Node (npm install upload-post). Selebihnya adalah REST API biasa dengan API key, jadi bahasa pemrograman atau tool no-code apa pun yang bisa mengirim request HTTP bisa dipakai.
Berapa lama proses setup-nya?
Tanpa kode: buat profil di Manage Users, klik Share, isi branding Anda, lalu kirim tautannya. Dengan API, cukup dua panggilan, satu untuk membuat profil dan satu untuk membuat tautan, ditambah panggilan upload yang memang Anda perlukan untuk posting.
Dukungan apa yang saya dapat?
Dokumentasi dengan contoh kode untuk setiap endpoint, dan dukungan email di [email protected]. Paket Advanced dan Business mendapat dukungan prioritas.
Detail lebih lanjut: User Profiles API, Connect API, Webhooks, dan SDK.