কীভাবে শুরু করব?
- 1সাইন আপ করে ড্যাশবোর্ডে লগ ইন করুন।
- 2Connect খুলে একটি API কী তৈরি করুন। পুরো কী শুধু একবার দেখানো হয়, তাই নিরাপদ জায়গায় কপি করে রাখুন।
- 3যেসব রিকোয়েস্টে কী লাগে, প্রতিটির Authorization হেডারে কী পাঠান।
- 4কী কাজ করছে কিনা দেখতে /account কল করুন, তারপর /orders দিয়ে অর্ডার দিন।
অথেন্টিকেশন কীভাবে কাজ করে?
নিজের অ্যাকাউন্টের রিকোয়েস্টে (account, orders, proxy-user) API কী লাগে। Authorization হেডারে Bearer টোকেন হিসেবে পাঠান। দাম, দেশ আর কোট সবার জন্য খোলা, কী লাগে না।
আমরা শুধু কী-র একটি হ্যাশ রাখি। হারিয়ে গেলে ড্যাশবোর্ডে নতুন কী বানান, পুরনো কী সাথে সাথে কাজ করা বন্ধ করবে। কী ব্রাউজারের কোড আর পাবলিক রিপোজিটরিতে রাখবেন না।
Authorization: Bearer rpk_your_api_key
বেস URL ও ফরম্যাট
- বেস URL
- https://royalproxy.online/api/v1
- রিকোয়েস্ট ও রেসপন্সের বডি
- application/json
- টাকা
- USD সংখ্যা, যেমন 807.90
- সময়
- ISO 8601 (UTC)
রেট লিমিট আছে কি?
প্রতিটি API কী মিনিটে সর্বোচ্চ 60টি রিকোয়েস্ট পাঠাতে পারে। পাবলিক এন্ডপয়েন্টে প্রতি IP মিনিটে 60টি রিকোয়েস্ট চলে। সীমা পেরোলে HTTP 429 আসে, তাই এক মিনিট অপেক্ষা করে আবার চেষ্টা করুন।
এরর দেখতে কেমন?
ত্রুটিতে HTTP স্ট্যাটাস কোড আর একটি JSON বডি আসে, যাতে ছোট একটি কোড আর বার্তা থাকে।
{
"error": {
"code": "insufficient_balance",
"message": "Your balance is too low for this order. Top up in the dashboard."
}
}| HTTP | code | অর্থ |
|---|---|---|
| bad_requestHTTP 400কোনো মান নেই বা এই প্রোডাক্টে অনুমোদিত নয়। | কোনো মান নেই বা এই প্রোডাক্টে অনুমোদিত নয়। | |
| unauthorizedHTTP 401API কী নেই বা বৈধ নয়। | API কী নেই বা বৈধ নয়। | |
| insufficient_balanceHTTP 402ব্যালান্স অর্ডারের মোটের চেয়ে কম। কোনো টাকা কাটা হয়নি। | ব্যালান্স অর্ডারের মোটের চেয়ে কম। কোনো টাকা কাটা হয়নি। | |
| not_foundHTTP 404আপনার অ্যাকাউন্টে এই id-র কোনো অর্ডার নেই। | আপনার অ্যাকাউন্টে এই id-র কোনো অর্ডার নেই। | |
| rate_limitedHTTP 429এক মিনিটে অনেক বেশি রিকোয়েস্ট। | এক মিনিটে অনেক বেশি রিকোয়েস্ট। | |
| server_errorHTTP 500রিকোয়েস্টটি সম্পন্ন করা যায়নি। কোনো টাকা কাটা হয়নি। | রিকোয়েস্টটি সম্পন্ন করা যায়নি। কোনো টাকা কাটা হয়নি। |
এন্ডপয়েন্ট
অ্যাকাউন্টের তথ্য নিন
GET/api/v1/accountAPI কী
আপনার ব্যালান্স, প্রক্সি হোস্ট, পোর্ট, ইউজারনেম ও পাসওয়ার্ড এবং অনুমোদিত IP ফেরত দেয়।
curl https://royalproxy.online/api/v1/account \ -H "Authorization: Bearer rpk_your_api_key"
{
"username": "royal_user",
"balance_usd": 1300,
"proxy": {
"host": "gate.royalproxy.online",
"http_port": 6100,
"socks5_port": 6200,
"username": "rpexample1",
"password": "your_password"
},
"allowed_ips": [
"203.0.113.10"
]
}প্রোডাক্ট ও দামের তালিকা
GET/api/v1/productsকী লাগে না
প্রতিটি প্রোডাক্ট তার সীমা, দামের ধাপ ও ছাড়সহ ফেরত দেয়। দাম দামের পেজের একই টেবিল থেকে আসে।
curl https://royalproxy.online/api/v1/products
{
"currency": "USD",
"prices_as_of": "2026-10-31",
"products": [
{
"id": "unlimited",
"unit": "day",
"quantity": {
"meaning": "days",
"min": 1,
"max": 365
},
"...": "..."
},
{
"id": "residential",
"unit": "gb",
"...": "..."
}
]
}দেশ ও শহরের তালিকা
GET/api/v1/countriesকী লাগে না
একটি প্রোডাক্টের জন্য পাওয়া দেশগুলো ফেরত দেয়, সাথে প্রক্সি ইউজারনেমে বসানো যায় এমন শহরের মান।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
productঐচ্ছিক | string | unlimited, residential, isp বা datacenter। ডিফল্ট residential। |
curl "https://royalproxy.online/api/v1/countries?product=datacenter"
{
"product": "datacenter",
"countries": [
{
"code": "us",
"name": "United States",
"region": "americas",
"datacenter": true,
"cities": [
{
"name": "New York",
"value": "new_york"
},
{
"name": "Los Angeles",
"value": "los_angeles"
}
]
}
]
}দামের কোট নিন
POST/api/v1/quoteকী লাগে না
কোনো টাকা না কেটে একটি অর্ডারের মোট হিসাব করে। অর্ডার দেওয়ার মতোই একই বডি ব্যবহার করুন।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
productআবশ্যিক | string | unlimited, residential, isp বা datacenter। |
quantityআবশ্যিক | integer | unlimited-এর জন্য দিন (1~365), residential-এর জন্য GB (5~5,000), isp (1~1,000) বা datacenter (5~5,000)-এর জন্য IP সংখ্যা। |
concurrencyঐচ্ছিক | integer | শুধু unlimited: 200, 500, 1000 বা 2000। |
bandwidthঐচ্ছিক | integer | শুধু unlimited, Mbps-এ: 100, 200, 500 বা 1000। |
monthsঐচ্ছিক | integer | শুধু isp ও datacenter: 1, 3, 6 বা 12। |
countryঐচ্ছিক | string | শুধু isp ও datacenter: দুই অক্ষরের দেশের কোড, যেমন jp। /countries দেখুন। |
curl -X POST https://royalproxy.online/api/v1/quote \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"product": "unlimited",
"quantity": 30,
"unit_price_usd": 8.97,
"unit": "day",
"total_usd": 269.1
}অর্ডার দিন
POST/api/v1/ordersAPI কী
আপনার ব্যালান্স থেকে মোট টাকা কেটে অর্ডার তৈরি করে। নতুন অর্ডার pending (চালু হচ্ছে) অবস্থায় শুরু হয় এবং তৈরি হলে active হয়। কোনো অর্ডার চালু করা না গেলে সেটি refunded হয় এবং পুরো টাকা ব্যালান্সে ফিরে আসে। ব্যালান্স কম থাকলে 402 ফেরত দেয়।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
productআবশ্যিক | string | unlimited, residential, isp বা datacenter। |
quantityআবশ্যিক | integer | unlimited-এর জন্য দিন (1~365), residential-এর জন্য GB (5~5,000), isp (1~1,000) বা datacenter (5~5,000)-এর জন্য IP সংখ্যা। |
concurrencyঐচ্ছিক | integer | শুধু unlimited: 200, 500, 1000 বা 2000। |
bandwidthঐচ্ছিক | integer | শুধু unlimited, Mbps-এ: 100, 200, 500 বা 1000। |
monthsঐচ্ছিক | integer | শুধু isp ও datacenter: 1, 3, 6 বা 12। |
countryঐচ্ছিক | string | শুধু isp ও datacenter: দুই অক্ষরের দেশের কোড, যেমন jp। /countries দেখুন। |
curl -X POST https://royalproxy.online/api/v1/orders \
-H "Authorization: Bearer rpk_your_api_key" \
-H "Content-Type: application/json" \
-d '{"product":"unlimited","quantity":30,"concurrency":1000,"bandwidth":200}'{
"order": {
"id": "RP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.97,
"total_usd": 269.1,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
},
"balance_usd": 1030.9
}আপনার অর্ডারের তালিকা
GET/api/v1/ordersAPI কী
আপনার সর্বশেষ 100টি অর্ডার ফেরত দেয়, নতুনগুলো আগে।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
statusঐচ্ছিক | string | pending, active বা refunded। সব পেতে এটি বাদ দিন। |
curl "https://royalproxy.online/api/v1/orders?status=pending" \ -H "Authorization: Bearer rpk_your_api_key"
{
"orders": [
{
"id": "RP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.97,
"total_usd": 269.1,
"status": "pending",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:12:44.120Z"
}
]
}একটি অর্ডার দেখুন
GET/api/v1/orders/{id}API কী
id দিয়ে একটি অর্ডার ফেরত দেয়, যেমন সেটি active কিনা দেখতে।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
idআবশ্যিক | string | অর্ডারের id, যেমন RP-7KQ2M-X4HTD। |
curl https://royalproxy.online/api/v1/orders/RP-7KQ2M-X4HTD \ -H "Authorization: Bearer rpk_your_api_key"
{
"order": {
"id": "RP-7KQ2M-X4HTD",
"product": "unlimited",
"quantity": 30,
"months": null,
"concurrency": 1000,
"bandwidth_mbps": 200,
"country": null,
"unit_price_usd": 8.97,
"total_usd": 269.1,
"status": "active",
"created_at": "2026-10-31T09:12:44.120Z",
"updated_at": "2026-10-31T09:40:02.511Z"
}
}প্রক্সি ইউজারনেম তৈরি করুন
GET/api/v1/proxy-userAPI কী
আপনার অপশনসহ একটি প্রক্সি ইউজারনেম আর তৈরি HTTP ও SOCKS5 প্রক্সি URL ফেরত দেয়। session না দিলে প্রতি রিকোয়েস্টে IP বদলায়।
| ফিল্ড | ধরন | অর্থ |
|---|---|---|
productঐচ্ছিক | string | unlimited, residential, isp বা datacenter। ডিফল্ট unlimited। |
countryঐচ্ছিক | string | দুই অক্ষরের দেশের কোড, যেমন jp। |
cityঐচ্ছিক | string | /countries থেকে শহরের মান, যেমন tokyo। country লাগবে। |
sessionঐচ্ছিক | string | যেকোনো 1~32টি অক্ষর বা সংখ্যা। একই session-এর রিকোয়েস্ট একই IP রাখে। |
ttlঐচ্ছিক | integer | সেশনের IP কত মিনিট থাকবে, 1~60। ডিফল্ট 30। |
curl "https://royalproxy.online/api/v1/proxy-user?product=residential&country=jp&city=tokyo&session=job42&ttl=30" \ -H "Authorization: Bearer rpk_your_api_key"
{
"username": "rpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30",
"password": "your_password",
"http": "http://rpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.royalproxy.online:6100",
"socks5": "socks5h://rpexample1-zone-res-cc-jp-city-tokyo-sid-job42-ttl-30:your_password@gate.royalproxy.online:6200"
}পূর্ণ উদাহরণ
এই উদাহরণগুলো দাম দেখে, ব্যালান্স থেকে অর্ডার দেয় এবং জাপানের একটি IP দিয়ে সংযোগ করে।
import requests
API = "https://royalproxy.online/api/v1"
HEAD = {"Authorization": "Bearer rpk_your_api_key"}
# 1) Check the price first
plan = {"product": "residential", "quantity": 100}
print(requests.post(f"{API}/quote", json=plan).json())
# 2) Order from your balance
r = requests.post(f"{API}/orders", json=plan, headers=HEAD)
order = r.json()["order"]
print(order["id"], order["status"])
# 3) Get a username for Japanese IPs
u = requests.get(f"{API}/proxy-user", headers=HEAD,
params={"product": "residential", "country": "jp"}).json()
proxies = {"http": u["http"], "https": u["http"]}
print(requests.get("https://ipinfo.io/json", proxies=proxies, timeout=30).json())const API = "https://royalproxy.online/api/v1";
const HEAD = { Authorization: "Bearer rpk_your_api_key", "Content-Type": "application/json" };
// Check the balance
const acc = await fetch(`${API}/account`, { headers: HEAD }).then((r) => r.json());
console.log(acc.balance_usd);
// Order 7 days of unlimited
const res = await fetch(`${API}/orders`, {
method: "POST",
headers: HEAD,
body: JSON.stringify({ product: "unlimited", quantity: 7, concurrency: 500, bandwidth: 100 }),
});
if (res.status === 402) console.log("Top up first");
else console.log((await res.json()).order.id);API দিয়ে দেওয়া অর্ডার ড্যাশবোর্ডের অর্ডারের মতোই এবং History-তে দেখা যায়। rpk_your_api_key-এর জায়গায় আপনার নিজের কী দিন।