Integrate prosmsotp into your own apps. Integrate the enabled services into your own applications using your wallet balance.
Log in for your API keyPass your personal API key on every request. Find or regenerate it in the developer API area after logging in.
api_key=YOUR_API_KEYVirtual numbers and OTP — base path https://prosmsotp.com.ng/api/v1. Responses are plain text unless noted.
Flow: servers → countries → services (with prices) → get-number
Returns wallet balance as plain text.
https://prosmsotp.com.ng/api/v1/balance?api_key=YOUR_API_KEY
Response: ACCESS_BALANCE:25.40List active number servers (JSON).
https://prosmsotp.com.ng/api/v1/servers?api_key=YOUR_API_KEY
{ "status": "success", "servers": [{ "id": 1, "name": "Server A" }] }Countries for a server (JSON). Requires server_id from servers list.
https://prosmsotp.com.ng/api/v1/countries?api_key=YOUR_API_KEY&server_id=1
{ "status": "success", "countries": [{ "id": 5, "name": "United States", "code": "US", "country_id": "12" }] }Services with prices for a server + country (JSON). Use code when ordering.
https://prosmsotp.com.ng/api/v1/services?api_key=YOUR_API_KEY&server_id=1&country=5
{ "status": "success", "services": [
{ "id": 10, "code": "wa", "name": "WhatsApp", "price": "1.50" }
] }Buy a virtual number. Deducts wallet balance at the listed price.
https://prosmsotp.com.ng/api/v1/get-number?api_key=YOUR_API_KEY&country=COUNTRY_ID&service=SERVICE_CODE
Response: ACCESS_NUMBER:ORDER_ID:+1234567890Poll SMS/OTP for an order.
https://prosmsotp.com.ng/api/v1/status?api_key=YOUR_API_KEY&id=ORDER_ID
Responses: STATUS_WAIT_CODE | STATUS_OK:123456 | STATUS_CANCELCancel (8) or request retry (3) while waiting for SMS.
https://prosmsotp.com.ng/api/v1/set-status?api_key=YOUR_API_KEY&id=ORDER_ID&status=8Plain-text errors: BAD_KEY, BAD_API, BAD_COUNTRY, BAD_SERVICE, NO_BALANCE.
Social boosting — base path https://prosmsotp.com.ng/api/v1/smm. JSON request/response.
Flow: servers → categories → services (with rates) → order
Returns wallet balance (JSON).
https://prosmsotp.com.ng/api/v1/smm/balance?api_key=YOUR_API_KEY
{ "status": "success", "balance": 25.40, "currency": "₦" }List active SMM servers (JSON).
https://prosmsotp.com.ng/api/v1/smm/servers?api_key=YOUR_API_KEY
{ "status": "success", "servers": [{ "id": 1, "name": "Server A" }] }Categories for a server. Requires server_id from servers list.
https://prosmsotp.com.ng/api/v1/smm/categories?api_key=YOUR_API_KEY&server_id=1
{ "status": "success", "categories": [{ "id": 2, "name": "Instagram", "server_id": 1 }] }Services with prices for a server + category. rate is price per 1000 units.
https://prosmsotp.com.ng/api/v1/smm/services?api_key=YOUR_API_KEY&server_id=1&category_id=2
{ "status": "success", "services": [
{ "id": 12, "name": "Followers", "rate": "2.5000", "min": 100, "max": 10000, "refill": false }
] }Place an order. Uses internal service_id from the services list.
https://prosmsotp.com.ng/api/v1/smm/order?api_key=YOUR_API_KEY&service_id=12&link=https://example.com/post&quantity=1000
{ "status": "success", "order": { "id": 1, "price": "5.00", "status": "processing" } }Check order status by internal order id.
https://prosmsotp.com.ng/api/v1/smm/status?api_key=YOUR_API_KEY&order_id=1Cancel a pending/processing order and refund wallet.
https://prosmsotp.com.ng/api/v1/smm/cancel?api_key=YOUR_API_KEY&order_id=1JSON errors: { "status": "error", "message": "..." }
eSIM catalog and purchase — base path https://prosmsotp.com.ng/api/v1/services/esim.
GET https://prosmsotp.com.ng/api/v1/services/esim/packages?api_key=YOUR_API_KEYOptional search and per_page parameters. The response contains the customer selling price, not the provider cost.
POST https://prosmsotp.com.ng/api/v1/services/esim/buyapi_key=YOUR_API_KEY
package_id=123
Rental areas and monthly number rental — base path https://prosmsotp.com.ng/api/v1/services/rentals.
GET https://prosmsotp.com.ng/api/v1/services/rentals/areas?api_key=YOUR_API_KEYPOST https://prosmsotp.com.ng/api/v1/services/rentals/buyapi_key=YOUR_API_KEY
area_code=AREA_CODE
months=1
Months must be between 1 and 12 and must meet the provider area's minimum rental period.
Logs Marketplace catalog and purchases — base path https://prosmsotp.com.ng/api/v1/services/tlogs.
GET https://prosmsotp.com.ng/api/v1/services/tlogs/products?api_key=YOUR_API_KEYPOST https://prosmsotp.com.ng/api/v1/services/tlogs/buyapi_key=YOUR_API_KEY
product_id=123
quantity=1
coupon=OPTIONAL
Your API customer is charged your configured marketplace selling price.
Airtime, data, Cable TV, electricity and exam PIN services — base path https://prosmsotp.com.ng/api/v1/services/vtu.
VTU flow: list catalog → use the returned ID → send the purchase request with your API key.
Lists active airtime networks and data-plan availability.
https://prosmsotp.com.ng/api/v1/services/vtu/networks?api_key=YOUR_API_KEYLists active data plans. Optionally filter with network=NETWORK_ID.
https://prosmsotp.com.ng/api/v1/services/vtu/data-plans?api_key=YOUR_API_KEY&network=1Buy airtime from your API wallet.
network=1
phone=08012345678
amount=500
Returns JSON with order_id, price and provider reference.Buy a data plan using its plan ID.
plan=123
phone=08012345678Lists active Cable TV providers.
https://prosmsotp.com.ng/api/v1/services/vtu/cable-providers?api_key=YOUR_API_KEYLists active Cable TV plans. Optionally filter with provider=PROVIDER_ID.
Verifies a Cable TV smartcard before payment.
provider=1
smartcard=1234567890Pay for a Cable TV plan.
plan=123
smartcard=1234567890
phone=08012345678Lists active electricity discos and their limits/service charges.
Verifies an electricity meter.
disco=1
meter=1234567890
meter_type=prepaidBuy electricity credit/token.
disco=1
meter=1234567890
meter_type=prepaid
amount=5000Lists active examination PIN products.
Purchase examination PINs.
exam=1
quantity=1All VTU purchase endpoints charge the authenticated API user's wallet. Disabled admin VTU modules return 404; insufficient wallet returns 402.
Having trouble integrating? Reach out via our contact page and our team will assist you.