Complete reference for Ozibus APIs, SDKs, and integration guides
Ozibus OTP-as-a-Service (OaaS) is a scalable, secure, and high-availability RESTful API infrastructure that enables businesses to deliver and verify One-Time Passwords (OTPs) via SMS and Email channels. Designed for seamless integration across platforms and industries, it supports secure user onboarding, two-factor authentication (2FA), transaction confirmations, and identity validation workflows.
Authentication & Security
All API requests to the Ozibus OaaS platform must be authenticated using a secure API key issued per merchant account.
Header Example:
'Merchant-Id': 'MCH-3600023', 'API-Key': 'sk_D7oW5tvG0r0ugArCJ8QY', 'Content-Type': 'application/json', 'Authorization': 'Bearer '
All communications are encrypted via TLS 1.2+ and adhere to industry-standard security protocols, including input sanitization, abuse prevention, OTP expiry enforcement, and IP/domain whitelisting.
Base URL
https://api.ozibus.com/v1
Core Endpoints
1. Send OTP
Initiates OTP generation and delivery to a user via the specified channel.
Endpoint: POST /send
Request Payload:
//sms channel
{
"to": "+61000876123",
"channel":"sms"
}
//mail channel
{
"to": "joedoe@mail.com",
"channel":"mail"
}
Sample Success Response:
{
"response_code": 0,
"response_message": "OTP has been successfully sent"
}
2. Verify OTP
Validates the OTP entered by the user against the session identifier.
Endpoint: POST /verify
Request Payload:
//sms channel
{
"to": "+61000876123",
"otp":"620132"
}
//mail channel
{
"to": "joedoe@mail.com",
"otp":"620132"
}
Sample Success Response:
{
"response_code": 0,
"response_message": "OTP verification successful"
}
Failure Example:
{
"response_code": 20,
"response_message": "Request could not be processed"
}
3. Resend OTP
Triggers a resend of the OTP for an active session.
Endpoint: POST /resend_otp
Request Payload:
//sms channel
{
"to": "+61000876123",
"channel":"sms"
}
//mail channel
{
"to": "joedoe@mail.com",
"channel":"mail"
}
Sample Response:
{
"response_code": 0,
"response_message": "OTP has been successfully sent"
}
Platform Capabilities and Highlights
Ozibus OaaS is built on a robust delivery infrastructure, leveraging geo-intelligent routing, real-time monitoring systems, and automated failover mechanisms to guarantee reliable and high-speed OTP dispatch globally.
Key capabilities include:
Integration Recommendations
Compliance & Regulatory Standards
Ozibus adheres to global compliance standards, including:
Request to /v1/get_otp
| Name | Description | Required |
|---|---|---|
| Authorization | Bearer YOUR_API_KEY | Yes |
| API-Key | YOUR_API_KEY | Yes |
| Merchant-Id | YOUR_MERCHANT_ID | Yes |
| Content-Type | application/json | Yes |
| Parameter | Type | Description | Required |
|---|---|---|---|
| to | string | Recipient phone number in E.164 format | Yes |
| channel | string | Yes |
curl --location 'https://api.ozibus.com.au/v1/get_otp' \
--header 'Merchant-Id: MCH-3635900003' \
--header 'API-Key: sk_D7oW5txr0ugArCJ8QY' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE3NDIwMzAxMjUsImV4cCI6MTc0MjExNjUyNSwiaXNzIjoiaHR0cHM6Ly9tZXNzYWdpbmcuY29tLmF1LyIsImRhdGEiOnsibWVyY2hhbnRfaWQiOiIiLCJtZXJjaGFudF9uYW1lIjoiIiwibWVyY2hhbnRfZW1haWwiOiIiLCJtZXJjaGFudF9waG9uZSI6IiIsIm1lcmNoYW50X2FkZHJlc3MiOiIiLCJlbnZpcm9ubWVudCI6IiJ9fQ.z-2fDUkL1bokTTKB5LER4fIYp6kXTdqiBUlzaMYsrBw' \
--header 'Cookie: PHPSESSID=ccukefi169dmq3nl3vo6g6ndc7' \
--data-raw '{
"to": "jdoe@mail.com",
"channel":"mail"
}'
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.ozibus.com.au/v1/get_otp',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"to": "jdoe@mail.com",
"channel":"mail"
}',
CURLOPT_HTTPHEADER => array(
'Merchant-Id: MCH-3635000423',
'API-Key: sk_D7oW5tvG0RbalrCJ8QY',
'Content-Type: application/json',
'Authorization: Bearer '
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;<?php
$client = new Client();
$headers = [
'Merchant-Id' => 'MCH-363500023',
'API-Key' => 'sk_D7oW5tvQ98Wafxr0ugArCJ8QY',
'Content-Type' => 'application/json',
'Authorization' => 'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..z-2fDUkL1bokTTKB5LER4fIYp6kXTdqiBUlzaMYsrBw',
'Cookie' => 'PHPSESSID=ccukefi169dmq3nl3vo6g6ndc7'
];
$body = '{
"to": "jdoe@mail.com",
"channel": "mail"
}';
$request = new Request('POST', 'https://api.ozibus.com.au/v1/get_otp', $headers, $body);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();const axios = require('axios');
let data = JSON.stringify({
"to": "jdoe@mail.com",
"channel": "mail"
});
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.ozibus.com.au/v1/get_otp',
headers: {
'Merchant-Id': 'MCH-363500023',
'API-Key': 'sk_D7oW5tvG0RbaugArCJ8QY',
'Content-Type': 'application/json',
'Authorization': 'Bearer '
},
data : data
};
axios.request(config)
.then((response) => {
console.log(JSON.stringify(response.data));
})
.catch((error) => {
console.log(error);
});
import http.client
import json
conn = http.client.HTTPSConnection("api.ozibus.com.au")
payload = json.dumps({
"to": "jdoe@mail.com",
"channel": "mail"
})
headers = {
'Merchant-Id': 'MCH-3600023',
'API-Key': 'sk_D7oW5tvG0r0ugArCJ8QY',
'Content-Type': 'application/json',
'Authorization': 'Bearer '
}
conn.request("POST", "/v1/get_otp", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))Join thousands of developers using Ozibus APIs to power their applications.
Get Started for Free