Repo1 ScrapGMap Repository API

Status API Places Get Review Report

Distributed Google Maps Review Repository dan Mining Service.

Status: Production Ready
URL: https://scrapgmap.niteni.web.id

Arsitektur Sistem

Internet
    │
    ▼
Load Balancer SSL
    │
    ▼
scrapgmap.niteni.web.id
    │
    ▼
Apache Reverse Proxy
    │
    ▼
NodeJS ScrapGMap
    │
    ├── Mining Google Maps
    ├── Upload Collector
    ├── JSON Repository
    └── API Service

Konsep Distributed Mining

ScrapGMap mendukung dua mode:

Laptop
    │
    ▼
Mining Review
    │
    ▼
Upload JSON
    │
    ▼

VPS
    │
    ▼
Mining Review
    │
    ▼
Upload JSON
    │
    ▼

Repository Utama
scrapgmap.niteni.web.id

Struktur Penyimpanan

data/

└── PLACE_ID/

    ├── metadata.json

    ├── newest/
    │   ├── latest.json
    │   ├── 20260611_0528_00_srv10.json
    │   └── 20260611_0507_30_vps01.json

    ├── relevant/

    ├── highest_rating/

    └── lowest_rating/

Sort Type

Parameter Keterangan
newest Ulasan terbaru
relevant Ulasan paling relevan
highest_rating Rating tertinggi
lowest_rating Rating terendah

API Endpoint

GET /api/status
curl https://scrapgmap.niteni.web.id/api/status

GET /api/places
curl https://scrapgmap.niteni.web.id/api/places

GET /api/place/{placeid}
curl https://scrapgmap.niteni.web.id/api/place/0x2e7a8cf009a7d697_0xdd34334744dc3cb

GET /api/place/{placeid}/history/{sorttype}
curl https://scrapgmap.niteni.web.id/api/place/PLACE_ID/history/newest

GET /api/place/{placeid}/latest/{sorttype}
curl https://scrapgmap.niteni.web.id/api/place/PLACE_ID/latest/newest

GET /api/place/{placeid}/file/{sorttype}/{filename}
curl https://scrapgmap.niteni.web.id/api/place/PLACE_ID/file/newest/20260611_0528_00_srv10.json

Mining Review

POST /api/mine
curl -X POST \
https://scrapgmap.niteni.web.id/api/mine \
-H "Content-Type: application/json" \
-d '{
"url":"GOOGLE_MAPS_URL",
"pages":100,
"sort_type":"newest"
}'

Response

{
  "success": true,
  "place_id": "0x2e7a8cf009a7d697_0xdd34334744dc3cb",
  "sort_type": "newest",
  "worker_id": "srv10",
  "review_count": 1000,
  "file": "20260611_0528_00_srv10.json"
}

Upload Hasil Mining

POST /api/upload
curl \
-X POST \
-F "place_id=0x2e7a8cf009a7d697_0xdd34334744dc3cb" \
-F "sort_type=newest" \
-F "worker_id=vps01" \
-F "file=@review.json" \
https://scrapgmap.niteni.web.id/api/upload

Response

{
  "success": true,
  "place_id": "0x2e7a8cf009a7d697_0xdd34334744dc3cb",
  "sort_type": "newest",
  "worker_id": "vps01",
  "file": "20260611_0507_30_vps01.json"
}

Penamaan File

YYYYMMDD_HHMMSS_WORKERID.json
Contoh:
20260611_0528_00_srv10.json
20260611_0507_30_vps01.json
20260611_0912_15_laptop01.json

Worker ID

Setiap node mining dapat memiliki identitas unik:

srv10
vps01
vps02
laptop01
laptop02
windows01
Sehingga histori sumber data dapat dilacak.

Roadmap


Generated by Niteni Research Center