Developers Guide

API Documentation

Build secure, production-ready integrations with the NonVoIP API using Bearer authentication and optional IP whitelisting.

Base Endpoint

https://nonvoip.com/api/v1

Authentication

All endpoints require an API token in the Authorization header as a Bearer token.

Authorization: Bearer YOUR_API_TOKEN
Accept: application/json
Content-Type: application/json

Get API Token

Login to your account and generate API key from Account Page.

Account page supports token generate, regenerate, delete and IP whitelist configuration.

IP Whitelist Behaviour

If API whitelist is enabled in account settings, requests are allowed only from configured IP addresses.

When blocked, API returns 403 with whitelist error message.

Common Response Pattern

{
  "success": true,
  "data": {},
  "message": "..."
}
GET https://nonvoip.com/api/v1/account

Account

Returns authenticated user profile and current balance.

{
  "success": true,
  "account": {
    "name": "John Doe",
    "email": "john@example.com",
    "balance": "120.50"
  }
}
GET https://nonvoip.com/api/v1/products?type=short-term

Products

Fetch available short-term services.

QueryRequiredValue
typeYesshort-term
GET https://nonvoip.com/api/v1/orders?type=short-term&per_page=20

Orders List

QueryRequiredDetails
typeYesshort-term
per_pageNo1 to 100
POST https://nonvoip.com/api/v1/orders

Create Order

Content-Type from collection is multipart/form-data (form-data fields).

BodyRequiredDetails
typeYesshort-term
providerYesgt or qk
nameYesService name from products list
is_premiumNoBoolean
POST https://nonvoip.com/api/v1/orders/reuse-mdn

Reuse Order MDN

BodyRequiredDetails
order_idYesExisting order ID
POST https://nonvoip.com/api/v1/orders/reject

Reject Order

BodyRequiredDetails
order_idYesExisting order ID
GET https://nonvoip.com/api/v1/products?type=long-term

Products

QueryRequiredValue
typeYeslong-term
GET https://nonvoip.com/api/v1/orders?type=long-term&per_page=20

Orders List

QueryRequiredDetails
typeYeslong-term
per_pageNo1 to 100
POST https://nonvoip.com/api/v1/orders

Create Order

BodyRequiredDetails
typeYeslong-term
providerYesgt or qk
nameYesService name from products list
is_premiumNoBoolean
POST https://nonvoip.com/api/v1/orders/connect-mdn

Connect Order/ Online MDN

BodyRequiredDetails
order_idYesExisting order ID
POST https://nonvoip.com/api/v1/orders/reject

Reject Order

BodyRequiredDetails
order_idYesExisting order ID
POST https://nonvoip.com/api/v1/orders/renew

Renew Order

BodyRequiredDetails
order_idYesExisting order ID
GET https://nonvoip.com/api/v1/products?type=unlimited

Products

QueryRequiredValue
typeYesunlimited
GET https://nonvoip.com/api/v1/orders?type=unlimited&per_page=20

Orders List

QueryRequiredDetails
typeYesunlimited
per_pageNo1 to 100
POST https://nonvoip.com/api/v1/orders

Create Order

BodyRequiredDetails
typeYesunlimited
carrierYes1st-point or att
country_codeYesUS, UK, AU
POST https://nonvoip.com/api/v1/orders/reject

Reject Order

BodyRequiredDetails
order_idYesExisting order ID
POST https://nonvoip.com/api/v1/orders/renew

Renew Order

BodyRequiredDetails
order_idYesExisting order ID

SMS Webhook

When a new SMS arrives, NonVoIP can POST SMS data to your webhook URL.

Set your webhook URL from Account Page under SMS Webhook URL.

POST https://your-domain.com/webhooks/nonvoip-sms

Incoming Webhook Request

A request is sent by NonVoIP to your configured URL whenever an SMS is received on your number.

FieldTypeDetails
servicestring|nullService/app name associated with the SMS.
from_numberstring|nullSender phone number.
to_numberstring|nullReceiver number (your rented MDN).
messagestring|nullSMS text content.
otpstring|nullParsed OTP/pin value.
created_atstring|nullSMS created datetime in Y-m-d H:i:s format.

Payload Example

{
  "service": "Facebook",
  "from_number": "32099",
  "to_number": "17282176619",
  "message": "290865 is your Facebook code. Do not share it.",
  "otp": "290865",
  "created_at": "2026-04-18 02:49:38"
}

Recommended Response From Your Server

{
  "success": true
}