cloudflare
tcp/443 tcp/80 tcp/8443
Open service 2a06:98c1:3120::3:80 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 301 Moved Permanently
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Length: 0
Connection: close
Location: https://developer-rubrikpulsa-com.pages.dev/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=Z2OqMvoDuXb6cmQIjm%2B5Q8hg17aF1ttt%2FxkwCDaJFhLVbYc%2BVv%2FZvGHxmVyyeFdTdh8hTSaQcUjAwjt5Xa%2FDZTAR7wWN1OQ%2FCCYeRWGcALibF73Bjau8fwrXv3NcHrFRGLx32G9SxnGg1%2BL7tqaR"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc70603b59fb28-SJC
alt-svc: h3=":443"; ma=86400
Open service 2a06:98c1:3120::3:8443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=F4PJygF0rGFbQU1Rej5ifskdmK1EvIqZSL%2B9X%2BmpCMMXFSLOgO0AhKlS78uqdORUxNDhHaHEnXC3tMKOaO8sWYgvIjeDDuVMJW0yJQNn0ZQz7luAuh%2BF8%2FidTPof8AmVOokh4kSbn4tl%2BgcTlDgO"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc7060cf275724-SIN
alt-svc: h3=":8443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 2a06:98c1:3121::3:8443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=jnpLNcYTwI3BreU1WYt5YnzEHA%2FohaCV8hmWEUjgV7cKo1CWEThvbhOF%2FAG%2B%2FPTDagMEoX7j4TnjhkSr1OMj1TlNEyOMsZ1X4x1HStra1jc%2Fjgf3ZCarARyXM0QBUNZXeZBz2i0sulU5Q2eSN7x%2B"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc7060380d35ae-YYZ
alt-svc: h3=":8443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 188.114.97.3:443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=%2BKFgh5rM8vaYollhek5PyVbDaurddeb%2BZx93yM5x3F1bjc6xHo8cCI3A46hEJAnejR1hxeYw8TY33VfJXCHgKyPTqzHm7f0phn9F792umcS76ojc5L7iHBDCtGoJHwhSsXjr"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc70603cc7aaf8-YYZ
alt-svc: h3=":443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 2a06:98c1:3120::3:443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=3O0swZXF5apJePcZu2U5LYBmq8z0%2FWnk0He8dtrwPfH21Yu16LSvkc0Te5q6FenA9pbwdTcv66fG3QlVOggHo59yPXIzbva1z955vs%2FWMxFvTSr3xvzd2vEEPNqpGXDOnTjtmUsm5e862QE6eg%3D%3D"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc70603bb3a223-YYZ
alt-svc: h3=":443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 188.114.97.3:8443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=rvO0UYVCYsflQhAyiBO%2BbkN4sgmGRFuhIqHx%2BL8PBdsKm9gMmJJRu1fFw3eLIQn4abEfyaK1E3j5e9ey5stWOOuElUusSM9x6tL6pUWuDseVIl%2B4Id4%2BNaPNpjZl7DipXWMB"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc706088ec713b-YYZ
alt-svc: h3=":8443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 2a06:98c1:3121::3:443 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 21337
Connection: close
Access-Control-Allow-Origin: *
Cache-Control: public, max-age=0, must-revalidate
ETag: "5b34a0c879d7222112dd45e752706f9f"
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
Vary: accept-encoding
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=gASBfDVbgX43v7IxNkFUM7troVkzHmA1x3eF3KyfDLIsD%2Fno8lM%2FDjTqgHXem4V2PFE8SJSSxKPuMHlJMhBdPz1qeLQ8l6yfmF4zFHDPWb46hWGpwoxvuWfyjQJLAR%2FUtT0pNOoDlazc1z4kL2Rw"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc70603a413f3b-EWR
alt-svc: h3=":443"; ma=86400
Page title: Dokumentasi API RubrikPulsa
<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Dokumentasi API RubrikPulsa</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
pre {
background-color: #1a1a1a;
color: #ffffff;
padding: 1rem;
border-radius: 0.5rem;
overflow-x: auto;
}
code {
font-family: 'Courier New', Courier, monospace;
}
</style>
</head>
<body class="bg-gray-100 font-sans">
<header class="bg-blue-600 text-white py-6">
<div class="container mx-auto px-4">
<h1 class="text-3xl font-bold">Dokumentasi API RubrikPulsa</h1>
<p class="mt-2">Panduan untuk Mengintegrasikan API ke Aplikasi Android (VPS: 149.129.241.211)</p>
</div>
</header>
<nav class="bg-gray-800 text-white py-4 sticky top-0">
<div class="container mx-auto px-4 flex space-x-4">
<a href="#persiapan" class="hover:underline">Persiapan</a>
<a href="#endpoint" class="hover:underline">Endpoint</a>
<a href="#android" class="hover:underline">Integrasi Android</a>
<a href="#keamanan" class="hover:underline">Keamanan</a>
</div>
</nav>
<main class="container mx-auto px-4 py-8">
<section id="persiapan" class="mb-12">
<h2 class="text-2xl font-semibold mb-4">Persiapan Server</h2>
<p>API RubrikPulsa dijalankan di VPS Alibaba Cloud dengan IP publik <code>149.129.241.211</code>. Ikuti langkah berikut untuk menyiapkan server:</p>
<h3 class="text-xl font-semibold mt-6 mb-2">1. Prasyarat</h3>
<ul class="list-disc pl-6">
<li>Python 3.8+</li>
<li>PostgreSQL</li>
<li>Akses SSH ke VPS (<code>ssh user@149.129.241.211</code>)</li>
<li>Alibaba Cloud Console untuk aturan keamanan</li>
</ul>
<h3 class="text-xl font-semibold mt-6 mb-2">2. Instalasi Dependensi</h3>
<p>Masuk ke VPS dan instal dependensi:</p>
<pre><code>ssh user@149.129.241.211
cd /home/user/rubrikpulsa-api
pip3 install fastapi uvicorn python-jose[cryptography] pydantic bcrypt psycopg2-binary python-telegram-bot requests tenacity python-dotenv
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">3. Konfigurasi Lingkungan</h3>
<p>Buat file <code>.env</code> di <code>/home/user/rubrikpulsa-api</code>:</p>
<pre><code>TELEGRAM_BOT_TOKEN=your_bot_token
POSTGRES_DB=rubrikpulsa
POSTGRES_USER=your_user
POSTGRES_PASSWORD=your_password
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
API_SECRET_KEY=your_secret_key
OWNER_USER_ID=your_owner_user_id
DIGIFLAZZ_USERNAME=your_digiflazz_username
DIGIFLAZZ_API_KEY=your_digiflazz_api_key
BANK_ACCOUNT="BCA 1234567890"
WHATSAPP_NUMBER="081111222333"
</code></pre>
<p>Ganti <code>your_*</code> dengan nilai sebenarnya. Buat <code>API_SECRET_KEY</code>:</p>
<pre><code>python3 -c "import secrets; print(secrets.token_hex(32))"
</code></pre>
<h3 class="text-xl font-semibold mt-6 mb-2">4. Siapkan PostgreSQL</h3>
<p>Instal dan konfigurasikan database:</p>
<pre><code>sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo -u postgres psql
CREATE USER your_postgres_user WITH PASSWORD 'your_postgres_password';
CREATE DATABASE rubrikpulsa;
GRANT ALL PRIVILEGES ON DATABASE rubrikpulsa TO your_postgres_user;
\q
psql -U your_postgres_user -d rubrikpulsa
CREATE TABLE agents (
id SERIAL PRIMARY KEY,
phone_number VARCHAR(15) UNIQUE NOT NULL,
telegram_id VARCHAR(50),
email VARCHAR(100) UNIQUE,
name VARCHAR(100) NOT NULL,
address VARCHAR(255),
pin VARCHAR(255) NOT NULL,
password_hash VARCHAR(255),
balance DECIMAL(15,2) DEFAULT 0,
upline_id INTEGER REFERENCES agents(id),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
CREATE TABLE
Open service 188.114.97.3:80 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 301 Moved Permanently
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Length: 0
Connection: close
Location: https://developer-rubrikpulsa-com.pages.dev/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=7ugtthKwQ%2BmGgR5DxZShs389gOg9ZwCX7AiEgzwg8ETXWkqdYGypAj6xiu%2FHW%2F9pgrhvdCvM3ymskcRKhd7WE7LSkggrFt4%2BfXMjtvHU4keI93n2KOwzZXrLSs5vHYVO5g%3D%3D"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc705ffe430cb4-EWR
alt-svc: h3=":443"; ma=86400
Open service 2a06:98c1:3121::3:80 · developer-rubrikpulsa-com.pages.dev
2026-01-12 11:50
HTTP/1.1 301 Moved Permanently
Date: Mon, 12 Jan 2026 11:50:54 GMT
Content-Length: 0
Connection: close
Location: https://developer-rubrikpulsa-com.pages.dev/
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=0IlzOfeTwejeF%2BPcQUNxZmZB3wmdJvGiTHkxJlpOXALLSTKRU1eliAp5ViaUGqe08faFegYW1CGLQrP1eskdadmATKB9XE9beB4Xxupaspn9OIvRqcjzkqREY4tMjpqwKfiYy%2BkAZEuX2qMlQ2ia"}]}
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Server: cloudflare
CF-RAY: 9bcc705ff8068c73-EWR
alt-svc: h3=":443"; ma=86400