सामग्री पर जाएँ
iRoamly Shop

API दस्तावेज़

iRoamly Shop API का संदर्भ: प्रमाणीकरण, प्लान, खरीद और डिलीवरी, रिन्यूअल और उपयोग।

अवलोकन

बुनियादी जानकारी

सर्वर पर भेजी जाने वाली जानकारी की सुरक्षा सुनिश्चित करने के लिए, निम्नलिखित सुरक्षा तंत्र अपनाए गए हैं:

  1. 1.सभी इंटरफ़ेस HTTPS secure सुरक्षित कनेक्शन पर डेटा भेजते हैं।
  2. 2.आपको दी गई AuthKey, जिसका इस्तेमाल API प्रमाणीकरण के लिए होता है (अधिकतम लंबाई: 32 अक्षर)।
  3. 3.आपको दी गई AuthSecret, जिसका इस्तेमाल अनुरोध का हैश बनाने के लिए होता है (अधिकतम लंबाई: 50 अक्षर)।
  4. 4.अनुरोध प्रमाणीकरण के लिए SHA-256 हैश का इस्तेमाल करते हैं।
अवलोकन

इंटरफ़ेस मानक

बेस पाथ:https://api.iroamly.shop/
अनुरोध प्रोटोकॉल:HTTPS
अनुरोध मेथड:GET / POST
डेटा ट्रांसफ़र फ़ॉर्मैट:application/json

अनुरोध हेडर पैरामीटर:

AuthKey: ग्राहक प्रमाणीकरण कुंजी, प्रकार स्ट्रिंग (String)

Certification: String, जिसमें AuthKey+AuthSecret को इसी क्रम में जोड़कर बनाया गया SHA-256 हैश होता है।

/common/getPlanItem के लिए AuthKey या Certification हेडर की ज़रूरत नहीं है।

API एंडपॉइंट

रीजनल प्लान सूची प्राप्त करें

अनुरोध URL:https://api.iroamly.shop/common/getPlanItem
अनुरोध मेथड:GET

किसी AuthKey या Certification हेडर की ज़रूरत नहीं है।

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
regionISO2 कोड, देश के नाम (केस-इनसेंसिटिव), या मानकीकृत फ़ॉर्मैट (जैसे, united-states) स्वीकार करता है।String

रिस्पॉन्स फ़ॉर्मैट:

सफलता: HTTP 200। प्लान data.list में लौटाए जाते हैं।

हमेशा HTTP 200 लौटाता है। जब कोई डेटा उपलब्ध नहीं होता, तो data.list एक खाली array होता है और msg Success होता है।

रिस्पॉन्स फ़ील्ड का विवरण:

फ़ील्डविवरणप्रकार
planप्लान का नाम (क्षेत्र, प्रकार, डेटा सीमा और अवधि सहित)।String
productCodeखरीद या क्वेरी के लिए प्लान की यूनिक ID।String
dataडेटा सीमा (जैसे, 10GB, Unlimited, 500MB)।String
typeप्लान का प्रकार (जैसे, Total, Daily, Unlimited)।String
plan_typeप्लान की श्रेणी (जैसे, default)।String
package_typeपैकेज का प्रकार (जैसे, Data Only)।String
durationदिनों में वैधता अवधि (जैसे, 10)।String
speedनेटवर्क स्पीड (जैसे, 4G / 5G)।String
operatorसपोर्टेड ऑपरेटर (जैसे, T-Mobile/AT&T)।String
regionक्षेत्र का आधिकारिक नाम (जैसे, United States)।String
region_indexमानकीकृत क्षेत्र पहचानकर्ता (हाइफ़न के साथ लोअरकेस, जैसे, united-states)।String
creditप्लान की कीमत, क्रेडिट में (अमेरिकी डॉलर में नहीं)।Float
remarkअतिरिक्त नोट (जैसे, स्पीड थ्रॉटलिंग के नियम)।String
created_atप्लान बनाए जाने का टाइमस्टैम्प (ISO 8601 फ़ॉर्मैट)।String
अनुरोध का उदाहरण
"https://api.iroamly.shop/common/getPlanItem?region=US"
उदाहरण रिटर्न
{
  "code": 0,
  "data": {
    list:[
     {
       "plan": "United States-eSIM-10GB-10 Days-Total",
       "productCode": "iRoamly-unite-584535",
       "data": "10GB",
       "type": "Total",
       "package_type": "Data Only",
       "duration": "10",
       "speed": "4G / 5G",
       "operator": "T-Mobile/AT&T",
       "region": "United States",
       "region_index": "united-states",
       "credit": 6.43,
       "remark": "After accumulating 10GB, the speed will be reduced to 128 Kbps",
       "created_at": "2025-05-16T04:02:31Z"
     }
    ]
  }
}
API एंडपॉइंट

सीधे QR कोड खरीदें

अनुरोध URL:https://api.iroamly.shop/openapi/purchaseqrcode
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
emailQR कोड प्राप्त करने वाला मेलबॉक्स। अगर यह खाली है, तो कोई ईमेल नहीं भेजा जाएगा।String
productListप्रोडक्ट संग्रहObject[]

productList फ़ील्ड:

फ़ील्डविवरणप्रकार
planप्लान का नाम। plan या productCode में से कोई एक दें।String
productCodeप्लान ID (रीजनल प्लान सूची प्राप्त करें से मिला productCode)। productCode या plan में से कोई एक दें।String
quantityमात्राInt
टेस्ट प्लान:iRoamly-Test-10GB

अगला चरण: QR कोड पाने के लिए QR कोड क्वेरी करें (https://api.iroamly.shop/openapi/qrcodeQuery) का इस्तेमाल करें

उदाहरण पैरामीटर
{
  "email": "2m827n32d@gmail.com",
  "productList": [
    {
      "plan": "United States-eSIM-10GB-10 Days-Total",
      "quantity": 2
    },
    {
      "plan": "Albania-10GB-15 Days-Total",
      "quantity": 1
    }
  ]
}
उदाहरण रिटर्न
{
  "code": 1,
  "data": {
    "orderId": "Open-Global-DXDWFBKG578913",
    "redeem_list": [
      {
        "productCode": "",
        "plan": "United States-eSIM-10GB-10 Days-Total",
        "redeemCode": "tjMxpYfvk5dFMQg",
        "status": 0,
        "expire_at": "2026-03-01"
      },
      {
        "productCode": "",
        "plan": "United States-eSIM-10GB-10 Days-Total",
        "redeemCode": "gKPzYhseX1wRmSi",
        "status": 0,
        "expire_at": "2026-03-01"
      },
      {
        "productCode": "",
        "plan": "Albania-10GB-15 Days-Total",
        "redeemCode": "sLSHNkAv2ojbNBG",
        "status": 0,
        "expire_at": "2026-03-01"
      }
    ]
  },
  "msg": "success"
}
API एंडपॉइंट

रिडीम कोड खरीदें

अनुरोध URL:https://api.iroamly.shop/openapi/purchaseCode
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
emailईमेलString
productListप्रोडक्ट संग्रहObject[]

productList फ़ील्ड:

फ़ील्डविवरणप्रकार
planप्लान का नाम। plan या productCode में से कोई एक दें।String
productCodeप्लान ID (रीजनल प्लान सूची प्राप्त करें से मिला productCode)। productCode या plan में से कोई एक दें।String
quantityमात्राInt
टेस्ट प्लान:iRoamly-Test-10GB
उदाहरण पैरामीटर
{
  "email": "2m827n32d@gmail.com",
  "productList": [
    {
      "plan": "United States-eSIM-10GB-10 Days-Total",
      "quantity": 2
    },
    {
      "plan": "Albania-10GB-15 Days-Total",
      "quantity": 1
    }
  ]
}
उदाहरण रिटर्न
{
  "code": 1,
  "msg": "success",
  "orderId": "xxx-xxxx-sd9hn8df333" // Order number, can be used to query redeem code
}
API एंडपॉइंट

रिडीम कोड क्वेरी करें

अनुरोध URL:https://api.iroamly.shop/openapi/codeQuery
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
orderIdऑर्डर नंबरString
उदाहरण पैरामीटर
{
  "orderId": "xxx-xxx-dh239jdu28",
}
उदाहरण रिटर्न
{
  "code": 1,
  "msg": "success",
  "data": [
    {
      "productCode": "m8hed7h2fed",
      "redeemCode": "3cd2m3f23f3f3",
      "expire_at": "2024-06-30", // Expiry date
      "plan": "United States-eSIM-10GB-10 Days-Total",
      "status": 0
    },
    {
      "productCode": "v2jf28dj2w",
      "redeemCode": "d923j29ef2323",
      "expire_at": "2024-06-30",
      "plan": "Albania-10GB-15 Days-Total",
      "status": 2
    }
  ]
}
API एंडपॉइंट

QR कोड में कन्वर्ट करें

(नोट: कन्वर्ज़न के बाद QR कोड निर्दिष्ट ईमेल पते पर भेजे जाते हैं। बड़े बैच को प्रोसेस होने में ज़्यादा समय लग सकता है।)

अनुरोध URL:https://api.iroamly.shop/openapi/redeemQRcode
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
emailईमेलString
codeListरिडीम कोड का संग्रहObject[]

productList फ़ील्ड:

फ़ील्डविवरणप्रकार
redeemCodeरिडीम कोडString
उदाहरण पैरामीटर
{
  "email": "2m827n32d@gmail.com",
  "codeList": [
    {
      "redeemCode": "m8hed7h2fed",
    },
    {
      "redeemCode": "cn88beg9edj",
    }
  ]
}
उदाहरण रिटर्न
{
  "code": 1,
  "msg": "success",
}
API एंडपॉइंट

QR कोड क्वेरी करें

अनुरोध URL:https://api.iroamly.shop/openapi/qrcodeQuery
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
redeemCodeरिडीम कोडString

रिस्पॉन्स फ़ील्ड का विवरण:

फ़ील्डविवरणप्रकार
redeemCodeरिडीम कोडString
qrcodeQR कोड इमेज URLString
statusरिडीम कोड की स्थिति (रिडीम कोड स्थिति परिभाषाएँ देखें)Int
qrcode_contentQR कोड की सामग्री (LPA एक्टिवेशन स्ट्रिंग, जैसे, LPA:1$…)String
iscouldrenewalक्या eSIM रिन्यू किया जा सकता है: 1 - रिन्यू किया जा सकता है 0 - रिन्यू नहीं किया जा सकताInt
उदाहरण पैरामीटर
{
  "redeemCode": "m8hed7h2fed",
}
उदाहरण रिटर्न
{
  "code": 1,
  "msg": "success",
  "redeemCode": "m8hed7h2fed",
  "qrcode": "https://dsfjigewafe/qrcode.jpg"
}
API एंडपॉइंट

रिन्यूअल प्लान की स्थिति प्राप्त करें

अनुरोध URL:https://api.iroamly.shop/openapi/getRenewPlanStatus
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
redeemCodeरिडीम कोडString

रिस्पॉन्स फ़ील्ड का विवरण:

रिस्पॉन्स का शीर्ष-स्तरीय code बताता है कि रिडीम कोड रिन्यू किया जा सकता है या नहीं: 0 - रिन्यूअल संभव, -1 - रिन्यूअल संभव नहीं। रिन्यूअल विकल्प data.renewList में दिए गए हैं:

फ़ील्डविवरणप्रकार
renewtypeरिन्यूअल का प्रकार: 0 - मौजूदा प्लान की समय-सीमा समाप्त होने पर सक्रिय करें 1 - तुरंत सक्रिय करें (बचा हुआ डेटा हट जाता है) 2 - निर्दिष्ट समय पर सक्रिय करेंInt
starttimeवैकल्पिक सक्रियण अवधि की शुरुआत: सबसे पहला सक्रियण समय जिसे आप चुन सकते हैं (रिन्यूअल प्रकार 2)।String
endtimeवैकल्पिक सक्रियण अवधि का अंत: सबसे आख़िरी सक्रियण समय जिसे आप चुन सकते हैं (रिन्यूअल प्रकार 2)।String
उदाहरण पैरामीटर
{
  "redeemCode": "3cd2m3f23f3f3",
}
उदाहरण रिटर्न
{
  "code": 0,
  "data": {
    "renewList": [
      {
        "renewtype": 1,
        "starttime": "0001-01-01T00:00:00Z",
        "endtime": "0001-01-01T00:00:00Z"
      },
      {
        "renewtype": 2,
        "starttime": "2025-08-04 06:13:08",
        "endtime": "2025-09-20 14:23:51"
      }
    ],
    "lasttime": "0001-01-01T00:00:00Z"
  },
  "msg": "Success"
}
API एंडपॉइंट

रिन्यूअल कोड

(नोट: रिन्यू करते समय, चुने गए प्लान का रिन्यूअल ग्रुप मूल प्लान के रिन्यूअल ग्रुप से मेल खाना चाहिए।)

अनुरोध URL:https://api.iroamly.shop/openapi/renewcode
अनुरोध मेथड:POST

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
redeemCodeवह कोड जिसे रिन्यू करना हैString
planरिन्यूअल प्लानString
renewtypeरिन्यूअल का प्रकार: 0 - मौजूदा प्लान की समय-सीमा समाप्त होने पर सक्रिय करें 1 - तुरंत सक्रिय करें (बचा हुआ डेटा हट जाता है) 2 - निर्दिष्ट समय पर सक्रिय करेंInt
renewtimeप्रभावी तारीख और समय (आवश्यक)। फ़ॉर्मैट: YYYY-MM-DDTHH:mm:ssZString
उदाहरण पैरामीटर
{
  redeemCode: "DEF456UVW",
  plan: "basic_yearly",
  renewtype: 0,
  renewtime: "2024-12-31T23:59:59Z"
}
उदाहरण रिटर्न
{
  code: 1,
  data: {
    orderId: "Open-Global-DXDWFBKG578913",
    plan: "United States-eSIM-10GB-10 Days-Total",
    redeemCode: "tjMxpYfvk5dFMQg",
    status: 0,
    expire_at: "2026-03-01"
  },
  msg: "success"
}
API एंडपॉइंट

प्लान के आँकड़े प्राप्त करें

अनुरोध URL:https://api.iroamly.shop/openapi/getnetworkflow
अनुरोध मेथड:GET

अनुरोध पैरामीटर:

पैरामीटरविवरणप्रकार
redeemCodeक्वेरी करने के लिए रिडीम कोड।String

रिस्पॉन्स फ़ील्ड का विवरण:

पैरामीटरविवरणप्रकार
status0 - निष्क्रिय 1 - सक्रिय 2 - समाप्त 9 - अमान्यInt
flow_useबिलिंग चक्र में इस्तेमाल किया गया डेटा (MB में)String
flow_totalबिलिंग चक्र में कुल डेटा (MB में, या unlimited)String
start_dataप्लान शुरू होने का समयString
end_dataप्लान समाप्त होने का समयString
installDeviceइंस्टॉल किया गया डिवाइसString
installCountइंस्टॉलेशन की संख्याString
installTimeइंस्टॉलेशन का समयString
मान्य उदाहरण
{
  code: 1,
  status: 0,
  flow_use: "300",
  flow_total: "1024",
  start_data: "2025-10-25T15:04:05Z07:00",
  end_data: "2025-11-25T15:04:05Z07:00",
  installDevice: "iPhone 15",
  installCount: "1",
  installTime: "2025-10-25T15:04:05Z06:00"
}
अमान्य उदाहरण
{
  code: -1,
  msg: "error message"
}
परिभाषाएँ

रिस्पॉन्स स्टेटस कोड परिभाषाएँ

कोडविवरण
1सफल
2अनुरोध पैरामीटर का प्रमाणीकरण विफल रहा
3पैरामीटर आवश्यकता के अनुसार नहीं दिए गए
4प्रोडक्ट कोड मौजूद नहीं है
5अपर्याप्त क्रेडिट
6रिडीम कोड मौजूद नहीं है
7रिडीम कोड पहले ही रिडीम हो चुका है या मौजूद नहीं है
-1अनुरोध विफल रहा

सफलता पर code 1 होता है, सिवाय /common/getPlanItem और /openapi/getRenewPlanStatus के, जो सफलता पर code 0 लौटाते हैं।

परिभाषाएँ

रिडीम कोड स्थिति परिभाषाएँ

स्थितिविवरण
0रिडीम नहीं हुआ
1रिडीम हो रहा है
2रिडीम हो गया
3रिडेम्पशन विफल रहा
कोड संदर्भ

रिडीम कोड खरीदें (Python)

python
import requests
import json
import hashlib

# URL for the request
url = "https://api.iroamly.shop/openapi/purchaseCode"

# Provided AuthKey and AuthSecret, remember to replace them with real values
auth_key = "YOUR_AUTH_KEY_HERE"
auth_secret = "YOUR_AUTH_SECRET_HERE" 


# Calculating Certification
combined = auth_key + auth_secret
certification = hashlib.sha256(combined.encode()).hexdigest()

# Header parameters for the request
headers = {
    "Content-Type": "application/json",
    "AuthKey": auth_key,
    "Certification": certification
}

# Example data for the request body
data = {
    "email": "2m827n32d@gmail.com",
    "productList": [
        {
            "productCode": "m8hed7h2fed2398dsnh",
            "quantity": 2
        },
        {
            "productCode": "cn88beg9edjdfj2sj0a",
            "quantity": 1
        }
    ]
}

# Sending POST request
response = requests.post(url, headers=headers, data=json.dumps(data))

# Printing the response content
print(response.text)

# Example of response
{
    "code":1,
    "msg":"success",
    "orderId":"xxx-xxxx-sd9hn8df333"
}
कोड संदर्भ

रिडीम कोड क्वेरी करें (Python)

python
import requests
import json
import hashlib

# URL for the request
url = "https://api.iroamly.shop/openapi/codeQuery"

# Provided AuthKey and AuthSecret, remember to replace them with real values
auth_key = "YOUR_AUTH_KEY_HERE"
auth_secret = "YOUR_AUTH_SECRET_HERE" 


# Calculating Certification
combined = auth_key + auth_secret
certification = hashlib.sha256(combined.encode()).hexdigest()

# Header parameters for the request
headers = {
    "Content-Type": "application/json",
    "AuthKey": auth_key,
    "Certification": certification
}

# Example data for the request body
data = {
    "orderId":"xxx-xxx-dh239jdu28"
}

# Sending POST request
response = requests.post(url, headers=headers, data=json.dumps(data))

# Printing the response content
print(response.text)

# Example of response
{
 "code":1,
 "data":
    [
     {"productCode":"m8hed7h2fed2398dsnh","redeemCode":"nDb4TDCn6vMhbQv","status":0,"expire_at":"2024-07-04"},
     {"productCode":"m8hed7h2fed2398dsnh","redeemCode":"oA7AWAmo76BwoGj","status":0,"expire_at":"2024-07-04"},
     {"productCode":"cn88beg9edjdfj2sj0a","redeemCode":"XRdDeSxBVNbvCpU","status":0,"expire_at":"2024-07-04"}
    ],
 "msg":"success"
}
कोड संदर्भ

QR कोड में कन्वर्ट करें (Python)

python
import requests
import json
import hashlib

# URL for the request
url = "https://api.iroamly.shop/openapi/redeemQRcode"

# Provided AuthKey and AuthSecret, remember to replace them with real values
auth_key = "YOUR_AUTH_KEY_HERE"
auth_secret = "YOUR_AUTH_SECRET_HERE" 


# Calculating Certification
combined = auth_key + auth_secret
certification = hashlib.sha256(combined.encode()).hexdigest()

# Header parameters for the request
headers = {
    "Content-Type": "application/json",
    "AuthKey": auth_key,
    "Certification": certification
}

# Example data for the request body
data = {
    "email": "2m827n32d@gmail.com",
    "codeList": [
        {
            "redeemCode": "nDb4TDCn6vMhbQv",
        },
        {
            "redeemCode": "XRdDeSxBVNbvCpU",
        }
    ]
}

# Sending POST request
response = requests.post(url, headers=headers, data=json.dumps(data))

# Printing the response content
print(response.text)

# Example of response
{"code":1,"msg":"success"}
कोड संदर्भ

QR कोड क्वेरी करें (Python)

python
import requests
import json
import hashlib

# URL for the request
url = "https://api.iroamly.shop/openapi/qrcodeQuery"

# Provided AuthKey and AuthSecret, remember to replace them with real values
auth_key = "YOUR_AUTH_KEY_HERE"
auth_secret = "YOUR_AUTH_SECRET_HERE" 


# Calculating Certification
combined = auth_key + auth_secret
certification = hashlib.sha256(combined.encode()).hexdigest()

# Header parameters for the request
headers = {
    "Content-Type": "application/json",
    "AuthKey": auth_key,
    "Certification": certification
}

# Example data for the request body
data = {
    "redeemCode":"XRdDeSxBVNbvCpU"
}

# Sending POST request
response = requests.post(url, headers=headers, data=json.dumps(data))

# Printing the response content
print(response.text)

# Example of response
{
 "code":1,
 "qrcode":"https:/code.tokyoesim.com/20231220/1703048857317.65625d0a779f4598d55d77bda43ecd80.png",
 "msg":"success",
 "redeemCode":"XRdDeSxBVNbvCpU"
}