API v2 is in alpha and may change at any time. Use v1 for production.
GMJ Roaming API

Envelope

Every v1 response uses this wrapper.
status
​string · enum
Enum values:
success
error
code
​integer
message
​string
data
​

Error

status
​string · const
Const value: error
code
​integer
message
​string
error_type
​string

Present on some errors

​object

User

name
​string
email
​string
phone
​string | null
image
​string | null · uri
balance
​number | string

USD

access_code
​string

Your API key.

join_date
​string | null
created_at
​string
updated_at
​string

Package

packageCode
​string
slug
​string
name
​string
is_favorite
​boolean
currencyCode
​string
priceUsd
​string

Your price in USD with 2 decimals. Use this one.

price
​number

Standard accounts: same as priceUsd. Reseller accounts: priceUsd × 10000.

priceIdr
​string

Formatted IDR price

volume
​integer

Data in bytes.

duration
​integer
durationUnit
​string
unusedValidTime
​integer

Days the eSIM can stay uninstalled.

location
​string

Comma-separated country codes.

description
​string
speed
​string
ipExport
​string
fupPolicy
​string | null

Speed after the daily quota

smsStatus
​integer
dataType
​integer

1 total, 2 daily (then throttled), 3 daily (then cut off), 4 daily unlimited.

activeType
​integer

1 starts on install, 2 starts on first connection.

supportTopUpType
​integer

2 or 3 means top-up is supported.

​object[]

NetworkList

​object[]
locationName
​string
locationCode
​string
locationLogo
​string | null
​object[]

TopupPlan

packageCode
​string

Send it as packageCodeTopup.

name
​string
currency_code
​string
priceUsd
​string

Your price in USD.

priceIdr
​string

Formatted IDR

priceRaw
​number

Standard accounts only.

location
​string
volume
​integer
duration
​integer
durationUnit
​string
country
​string
​object[]

CheckoutResult

status
​string · const
Const value: success
code
​integer · const
Const value: 200
message
​string
currency
​string · const
Const value: USD
current_balance
​string

Balance after the purchase.

transaction_id
​string
​object

TopupAccepted

status
​string · const
Const value: success
code
​integer
message
​string
currency
​string · const
Const value: USD
current_balance
​string
transaction_id
​string

The top-up reference. Use it with /check-status-payment.

transaction_status
​string · enum
Enum values:
PROCESSING
Success

Transaction

transaction_id
​string
activity
​string · enum
Enum values:
Esim Purchase
Data Plan Purchase
Balance Topup
status
​string
amount
​number | string
total_amount
​number | string | null
balance
​number | string | null

Your balance after this transaction.

currency
​string · enum

IDR for Balance Topup

Enum values:
USD
IDR
qty_esim
​integer | null
created_at
​string
updated_at
​string

EsimRecord

The stored eSIM record (snake_case columns), returned by lifecycle actions.
iccid
​string
transaction_id
​string
esim_tran_no
​string
order_no
​string
esim_status
​string | null
smdp_status
​string | null
expired_time
​string | null

Esim

esimTranNo
​string
orderNo
​string
transactionId
​string

The purchase reference.

iccid
​string
imsi
​string | null
msisdn
​string | null
ac
​string | null

LPA activation code for manual install.

publicUrl
​string | null
shortUrl
​string | null
qrCodeUrl
​string | null
eid
​string | null
activateTime
​string | null
expiredTime
​string | null
timeRemaining
​string

Display text in Indonesian

totalVolume
​integer | null

Bytes.

totalDuration
​integer | null
durationUnit
​string | null
pin
​string | null
puk
​string | null
apn
​string | null
ipExport
​string | null
smsStatus
​integer | null
smdpStatus
​string | null
activeType
​integer | null
dataType
​integer | null
orderUsage
​integer | null

Used bytes

esimStatus
​string | null
supportTopUpType
​integer | null
sendUser
​
​object[]