Layanan untuk mencari video YouTube, mengambil komentar, transcript, serta scraping ulasan Google Maps
API ini menyediakan akses ke data YouTube dan Google Maps dengan sistem caching untuk efisiensi.
Mencari video di YouTube berdasarkan kata kunci.
| Parameter | Type | Default | Description |
|---|---|---|---|
| q required | string | - | Kata kunci pencarian |
| limit | integer | 20 | Jumlah hasil maksimal (1-50) |
Mengambil transcript video. Data di-cache setelah pengambilan pertama dan tidak diambil ulang.
| Parameter | Type | Default | Description |
|---|---|---|---|
| id required | string | - | ID video YouTube |
| language | string | - | Kode bahasa (en, id, dll) - opsional |
| format | string | json | Format output: "json" atau "text" |
| include_timestamps | boolean | true | Sertakan timestamp (format text) |
Mengambil metadata video seperti judul, deskripsi, views, likes, dll.
| Field | Description |
|---|---|
| title | Judul video |
| description | Deskripsi video |
| channel_id | ID channel |
| channel_title | Nama channel |
| published_at | Tanggal publikasi |
| duration | Durasi (readable) |
| view_count | Jumlah views |
| like_count | Jumlah likes |
| comment_count | Jumlah komentar |
| tags | Tags video (array) |
| privacy_status | Status privasi |
| made_for_kids | Konten anak-anak |
Mencari tempat menggunakan Google Places API resmi.
| Parameter | Type | Default | Description |
|---|---|---|---|
| q required | string | - | Kata kunci (restaurant, cafe, museum, dll) |
| location | string | - | Lokasi: "lat,lng" atau nama kota |
| radius | integer | 5000 | Radius dalam meter (max 50000) |
| place_type | string | - | Tipe tempat (restaurant, cafe, museum, dll) |
| min_price | integer | - | Harga minimal (0-4) |
| max_price | integer | - | Harga maksimal (0-4) |
| open_now | boolean | false | Hanya yang buka sekarang |
| format | string | json | Format output: json atau text |
/opt/youtubeapi/config/places_api_keys.txt
Scrape ulasan dari Google Maps menggunakan Node.js scraper dengan 3 mode operasi.
| Parameter | Type | Default | Description |
|---|---|---|---|
| url required | string | - | URL lengkap Google Maps place (dengan data=) |
| mode | string | new |
Mode operasi:
archive - Ambil dari arsip saja new - Incremental, stop saat duplikat all - Ambil semua, gabung, simpan unik |
| limit | integer | 200 | Jumlah maksimal ulasan (50, 100, 200, 500, -1 untuk semua) |
| sort_type | string | newest | Urutan: relevant, newest, highest_rating, lowest_rating |
| pages | integer | 5 | Jumlah halaman per fetch (โ10 reviews per halaman) |
| max_pages | integer | 20 | Maksimal halaman total (hanya untuk mode 'all') |
| format | string | json | Format output: json atau text |
๐พ Cache permanen: Data tidak pernah kadaluarsa dan selalu tersimpan di HDD.
data={
"success": true,
"mode": "new",
"url": "https://www.google.com/maps/place/...",
"sort_type": "newest",
"limit": 50,
"total_old_reviews": 10,
"total_new_reviews": 5,
"total_available": 15,
"total_shown": 15,
"reviews": [...],
"source": "new_merged",
"pages_scraped": 2,
"duplicate_found": true,
"message": "Added 5 new reviews, total 15 (showing 15)"
}
| Field | Type | Description |
|---|---|---|
| mode | string | Mode yang digunakan (archive/new/all) |
| limit | integer | Limit yang diminta |
| total_old_reviews | integer | Jumlah ulasan yang sudah ada di cache |
| total_new_reviews | integer | Jumlah ulasan baru yang ditemukan |
| total_available | integer | Total ulasan yang tersedia |
| total_shown | integer | Jumlah ulasan yang ditampilkan (sesuai limit) |
| reviews | array | Daftar ulasan |
| source | string | Sumber data (cache/new_merged/all_merged) |
| pages_scraped | integer | Jumlah halaman yang di-scrape |
| duplicate_found | boolean | Apakah ditemukan duplikat |
Endpoint untuk menerima upload data tempat dari ekstensi Mozilla.
| Field | Type | Description |
|---|---|---|
| meta | object | Metadata upload (keyword, kota, jumlah_hasil) |
| rows | array | Daftar tempat yang diupload |
| rows[].place_id required | string | ID unik tempat dari Google Maps |
| rows[].place_name | string | Nama tempat |
| rows[].place_review | string | Jumlah ulasan |
| rows[].place_rating | string | Rating tempat |
| rows[].place_url | string | URL Google Maps |
| rows[].place_picurl | string | URL gambar |
| rows[].keyword | string | Keyword pencarian |
| rows[].kota | string | Nama kota |
{
"success": true,
"message": "Upload completed: 50 saved, 0 errors",
"data": {
"total": 50,
"success_count": 50,
"error_count": 0,
"results": [...],
"meta": {
"keyword": "tempat wisata",
"kota": "Surakarta",
"jumlah_hasil": 50
}
}
}
| # | Place ID | Nama | Rating | Ulasan | Kota | Status | Aksi |
|---|---|---|---|---|---|---|---|
| Loading... | |||||||
Loading stats...
๐ฌ Comments API YouTube
Mengambil komentar dari video YouTube dengan deteksi duplikat otomatis dan cache.
Parameters
Example Request