Total Akun
-
Akun Siap cURL
-
Total Sisa Kredit
-
Video Dibuat
-
Buat Video AI Baru (Veo 2 • Abra 10s)
15 Kuota / VideoTarik & Lepas gambar di sini, atau Klik untuk Telusuri
Mendukung JPG, PNG, WEBP (Otomatis dikonversi ke Base64)
Status & Live Output
> Sistem siap. Tentukan prompt dan tekan tombol Generate...
Riwayat & Galeri Video AI
Daftar semua video hasil render Google Flow AI dari seluruh akun dengan preview langsung.
Manajemen Akun & Sesi Cookie
Status kuota kredit, project ID, dan cookie Google Labs tiap akun.
SIAP GENERATE (cURL)
Sudah ada cURL & token otentikasi lengkap. Siap membuat video secara otomatis!
PERLU UPDATE cURL
Hanya ada cookie biasa (hanya bisa cek kuota). Perlu paste cURL untuk render video.
EXPIRED / BELUM ADA
Cookie sudah mati atau akun belum memiliki data sesi.
| ID Akun | Password | Project ID | Sisa Kredit | Status & Umur Sesi | Aksi |
|---|
Input / Perbarui Cookie Google Flow
Mendukung Paste cURL / Cookie StringTempelkan Cookie Header atau Perintah cURL (bash) dari Network tab flow.google.com. Sistem otomatis mengekstrak Cookie, Token Otentikasi, dan Project ID.
TikTok Studio Auto Uploader
Otomasi posting video dengan Caption, Centang AI, Keranjang Kuning (Affiliate), dan Jadwal Posting.
Tambah Antrean Upload TikTok
| ID / Akun | Caption & Video | Produk / AI | Status | Aksi |
|---|---|---|---|---|
| Memuat data antrean TikTok... | ||||
Belum ada video draf di akun TikTok ini.
Video yang disimpan dengan tombol "Save draft" akan muncul di sini dan dapat dipublish kapan saja.
Mengambil daftar draf dari TikTok Studio...
Dokumentasi REST API Lengkap
Gunakan endpoint REST API ini untuk integrasi aplikasi Cancut, bot worker, atau sistem eksternal.
/api/tiktok/videos/create
Menerima data video dari aplikasi **Cancut**, mengantrekannya ke MySQL tiktok_queue, dan memicu bot Playwright untuk login ke TikTok Studio, mengunggah video, mengetik caption, mencentang label AI, menautkan produk keranjang kuning, dan mempublikasikannya.
Contoh Request JSON dari Cancut:
// POST https://flow.inovasikreatif.dev/api/tiktok/videos/create
{
"account_id": "default", // ID akun TikTok target
"video_path": "/home/inovasikreatif/google-labs-bot/downloads/video_cancut.mp4", // atau gunakan "video_url"
"caption": "Review barang unik terlaris hari ini! #fyp #racuntiktok #viral",
"product_name": "Earphone Bluetooth TWS Super Bass", // Keranjang kuning
"ai_label": true, // Centang Konten Buatan AI
"schedule_time": "2026-09-07 19:30:00" // Opsional: Jadwal posting
}
// Response Sukses:
{
"success": true,
"message": "Video berhasil didaftarkan ke antrean posting TikTok untuk akun 'default'!",
"data": {
"id": 1,
"account_id": "default",
"video_path": "/home/inovasikreatif/google-labs-bot/downloads/video_cancut.mp4",
"caption": "Review barang unik terlaris hari ini! #fyp #racuntiktok #viral",
"ai_label": 1,
"product_name": "Earphone Bluetooth TWS Super Bass",
"status": "pending"
}
}
/api/tiktok/products
Mengambil seluruh daftar produk etalase / keranjang kuning milik akun TikTok yang sedang login untuk ditampilkan pada dropdown menu aplikasi **Cancut**.
Contoh Request & Response:
// GET https://flow.inovasikreatif.dev/api/tiktok/products?account_id=default
{
"success": true,
"account_id": "default",
"count": 2,
"products": [
{
"id": "prod_101",
"title": "Earphone Bluetooth TWS Super Bass",
"price": "Rp 79.000",
"image_url": "https://p16-oec-va.ibyteimg.com/..."
},
{
"id": "prod_102",
"title": "Tripod Tongsis Bluetooth 3 in 1",
"price": "Rp 45.000",
"image_url": "https://p16-oec-va.ibyteimg.com/..."
}
]
}
/api/accounts/needs-update
Mengambil seluruh daftar akun yang belum memiliki cookie, expired, atau butuh data cURL baru dari database flow_accounts.
Contoh Request & Response:
// GET https://flow.inovasikreatif.dev/api/accounts/needs-update
{
"success": true,
"totalNeedsUpdate": 17,
"totalAccounts": 19,
"activeAccounts": 2,
"accounts": [
{
"id": "akun_002",
"email": "akunaffiliateshopee002@gmail.com",
"password": "PasswordAkun002",
"status": "BELUM_ADA_COOKIE",
"projectId": "b9477791-b2ee-4e2d-adfd-81a6df7e7e68",
"remainingCredits": "Belum dicek",
"reason": "Belum ada data cookie/cURL"
}
]
}
/api/accounts/next-to-update
Mengembalikan 1 akun berikutnya yang perlu diperbarui cookies/cURL-nya. Cocok untuk bot atau UI yang melakukan update sekuensial satu per satu.
Contoh Response:
// GET https://flow.inovasikreatif.dev/api/accounts/next-to-update
{
"success": true,
"hasPending": true,
"account": {
"id": "akun_002",
"email": "akunaffiliateshopee002@gmail.com",
"password": "PasswordAkun002",
"status": "BELUM_ADA_COOKIE",
"projectId": "b9477791-b2ee-4e2d-adfd-81a6df7e7e68",
"remainingCredits": "Belum dicek"
}
}
/api/update-account
Menyimpan atau memperbarui data autentikasi akun langsung ke tabel MySQL flow_accounts. Otomatis mengekstrak cookies, token at, f.sid, projectId dan langsung mengecek kuota live.
Format Request (Bisa kirim teks cURL lengkap & password):
// POST https://flow.inovasikreatif.dev/api/update-account
// Alias endpoint: /api/set-cookies atau /api/save-curl
{
"accountId": "akun_002", // Bisa ID atau Email akun
"password": "PasswordAkun002", // Opsional
"curl": "curl 'https://flow.google.com/_/PlayboqFxUi/data/batchexecute?rpcids=maseQ&f.sid=...' -H 'cookie: SID=...; HSID=...;' --data-raw '...'"
}
// Response Sukses:
{
"success": true,
"message": "Cookie & cURL untuk akun_002 (akunaffiliateshopee002@gmail.com) berhasil disimpan ke Database & diverifikasi!",
"accountId": "akun_002",
"email": "akunaffiliateshopee002@gmail.com",
"status": "AKTIF",
"remainingCredits": 1025,
"projectId": "b9477791-b2ee-4e2d-adfd-81a6df7e7e68"
}
/api/generate-image
Membuat gambar AI berkualitas tinggi dari teks (*Text-to-Image*) atau memodifikasi multi foto referensi (*Image-to-Image*, hingga 4 foto referensi) menggunakan model **Nano Banana 2** dengan pilihan rasio 9:16 (Portrait), 16:9 (Landscape), atau 1:1 (Kotak).
Contoh Request JSON (Mendukung Multi Foto Referensi):
// POST https://flow.inovasikreatif.dev/api/generate-image
{
"prompt": "Wanita korea cantik sedang bermain golf di lapangan rumput hijau, foto realistis 8k",
"aspectRatio": "PORTRAIT", // "PORTRAIT" (9:16), "LANDSCAPE" (16:9), atau "SQUARE" (1:1)
"imagesBase64": [
"data:image/jpeg;base64,/9j/4AAQ...", // Foto referensi 1
"data:image/jpeg;base64,/9j/4AAQ..." // Foto referensi 2 (bisa 1 s/d 4 foto)
],
"accountId": "auto" // "auto" untuk auto-failover ke akun bersisa kredit
}
// Response:
{
"success": true,
"batchId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"mediaId": "8b926821-d264-44cb-9a27-efcf749f2137",
"imageMediaId": "8b926821-d264-44cb-9a27-efcf749f2137",
"accountId": "akun_001",
"email": "akunaffiliateshopee001@gmail.com",
"projectId": "f4e708fc-a271-4c84-aa9f-a696c690cea2",
"prompt": "Wanita korea cantik sedang bermain golf...",
"aspectRatio": "9:16",
"model": "NARWHAL",
"streamUrl": "https://flow.inovasikreatif.dev/api/video-stream/8b926821-d264-44cb-9a27-efcf749f2137",
"imageUrl": "https://flow.inovasikreatif.dev/api/video-stream/8b926821-d264-44cb-9a27-efcf749f2137",
"downloadUrl": "https://flow.inovasikreatif.dev/api/video-stream/8b926821-d264-44cb-9a27-efcf749f2137",
"isReady": true,
"status": "MEDIA_GENERATION_STATUS_SUCCESSFUL",
"message": "Gambar AI (Nano Banana 2) berhasil dibuat!"
}
/api/upload-and-generate
Menerima gambar Base64, mendaftarkan gambar ke canvas Google Flow (maseQ), dan memicu pembuatan video AI 10 detik Portrait (MZZa6b) dengan proteksi failover otomatis multi-akun.
Contoh Request JSON (Dari Cancut / Client):
// POST https://flow.inovasikreatif.dev/api/upload-and-generate
{
"accountId": "auto", // Gunakan "auto" untuk auto-failover ke akun bersisa kredit
"imageBase64": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQ...",
"prompt": "Cinematic slow zoom-in product advertisement shot, luxury golden hour lighting",
"aspectRatio": "PORTRAIT",
"duration": "10s"
}
// Response:
{
"success": true,
"batchId": "6df0bf7e-07df-4be2-be66-e8d128f7fbdf",
"mediaId": "7c4f8462-5951-4ce9-a49a-f88e88907a85",
"videoMediaId": "7c4f8462-5951-4ce9-a49a-f88e88907a85",
"accountId": "akun_001",
"remainingCredits": 1010,
"status": "SCHEDULED"
}
/api/check-status
Mengecek apakah render video sudah selesai dan mengambil URL signed CDN MP4 dari Google.
// POST https://flow.inovasikreatif.dev/api/check-status
{
"mediaId": "7c4f8462-5951-4ce9-a49a-f88e88907a85",
"accountId": "akun_001"
}
// Response Saat Selesai:
{
"success": true,
"status": "MEDIA_GENERATION_STATUS_SUCCESSFUL",
"isReady": true,
"videoUrl": "https://flow-content.google/video/7c4f8462-5951-4ce9-a49a-f88e88907a85?Expires=...&KeyName=...&Signature=...",
"remainingCredits": 1010
}
/api/download-video
Mengunduh file MP4 dari CDN Google ke folder /downloads/video_xxx.mp4 di server dan mengembalikan link download lokal.
// POST https://flow.inovasikreatif.dev/api/download-video
{
"mediaId": "7c4f8462-5951-4ce9-a49a-f88e88907a85",
"accountId": "akun_001"
}
// Response:
{
"success": true,
"fileName": "video_7c4f8462-5951-4ce9-a49a-f88e88907a85.mp4",
"fileSizeMB": "3.88",
"downloadUrl": "/downloads/video_7c4f8462-5951-4ce9-a49a-f88e88907a85.mp4"
}
/api/accounts
Mengambil daftar seluruh akun dari database flow_accounts (bisa menggunakan parameter ?status=active atau ?status=needs_update).
curl -X GET "https://flow.inovasikreatif.dev/api/accounts"
/api/verify-account
Memvalidasi cookie akun dan menarik saldo kredit asli remainingCredits langsung dari Google Boq.
// POST https://flow.inovasikreatif.dev/api/verify-account
{
"accountId": "akun_001"
}
/api/add-account
Menambahkan akun Google baru ke database flow_accounts.
// POST https://flow.inovasikreatif.dev/api/add-account
{
"email": "akunaffiliateshopee033@gmail.com",
"projectId": "b9477791-b2ee-4e2d-adfd-81a6df7e7e68",
"rawInput": "curl '...' -H 'cookie: ...'"
}
/api/delete-account/:id
Menghapus akun dari database MySQL flow_accounts.
curl -X DELETE "https://flow.inovasikreatif.dev/api/delete-account/akun_033"
/api/history
Mengambil daftar seluruh riwayat video yang tersimpan di database flow_history.
curl -X GET "https://flow.inovasikreatif.dev/api/history"