HadronsoftHadronsoft
// api documentation

Developer API Reference

Complete REST API reference for all Hadronsoft communication channels. Authentication, SMS, WhatsApp, RCS, Voice, IVR. Code samples in 8 languages. Postman collection included.

Quick Start

Get your first message sent in under 5 minutes

Authentication

API keys, JWT tokens, and secure access management

MethodEndpointDescription
POST//auth/api-keyGenerate new API key
GET//auth/api-keysList all API keys
DELETE//auth/api-key/{id}Revoke API key
POST//auth/verifyVerify API key validity

Code Example

Node.jsPythonPHPJavaGoC#/.NETRubyPostman
curl -X POST https://api.hadronsoft.com/v1/sms/send \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "to": "+910000000000",
    "message": "Your OTP is 123456",
    "route": "transactional",
    "sender_id": "HDSIND-T"
  }'

Webhooks

Real-time event notifications for all channels

EventDescriptionChannels
sms.sentSMS submitted for delivery
SMS
sms.deliveredSMS delivered to handset
SMS
sms.failedSMS delivery failed
SMS
sms.otp.verifiedOTP verified successfully
SMS
whatsapp.sentWhatsApp message sent
WhatsApp
whatsapp.deliveredWhatsApp message delivered
WhatsApp
whatsapp.readWhatsApp message read
WhatsApp
whatsapp.failedWhatsApp message failed
WhatsApp
rcs.sentRCS message sent
RCS
rcs.deliveredRCS message delivered
RCS
rcs.readRCS message read
RCS
voice.initiatedVoice call initiated
Voice
voice.ringingCall ringing
Voice
voice.answeredCall answered
Voice
voice.completedCall completed
Voice
voice.failedCall failed
Voice
ivr.incomingIncoming IVR call
IVR
ivr.dtmfDTMF input received
IVR
wallet.lowWallet balance low
All
wallet.creditedWallet credited
All

Webhook Handler Example

// Webhook endpoint example (Node.js/Express)
app.post('/webhook/hadronsoft', express.json(), (req, res) => {
  const { event, data } = req.body;

  switch(event) {
    case 'sms.delivered':
      console.log('SMS delivered:', data.message_id);
      break;
    case 'whatsapp.read':
      console.log('WhatsApp read:', data.conversation_id);
      break;
    case 'voice.completed':
      console.log('Call completed:', data.call_id, data.duration);
      break;
  }
  res.status(200).send('OK');
});

SDKs & Libraries

Official and community-maintained libraries for rapid integration

Node.js
npm install @hadronsoft/sdk
Python
pip install hadronsoft-sdk
PHP
composer require hadronsoft/sdk
Java
Maven/Gradle dependency
Go
go get github.com/hadronsoft/go-sdk
C#/.NET
dotnet add package Hadronsoft.SDK
Ruby
gem install hadronsoft
Postman
Import collection from dashboard

Error Codes

Standard HTTP status codes and Hadronsoft-specific error handling

CodeMessageResolution
400Bad Request - Invalid parametersCheck request body and required fields
401Unauthorized - Invalid API keyVerify API key in Authorization header
403Forbidden - Insufficient permissionsCheck API key scopes and plan limits
404Not Found - Resource does not existVerify endpoint URL and resource ID
422Unprocessable Entity - Validation failedReview field validation errors in response
429Too Many Requests - Rate limit exceededImplement exponential backoff
500Internal Server ErrorRetry with exponential backoff, contact support if persists
503Service Unavailable - MaintenanceCheck status page, retry after maintenance window

Rate Limits

Per-second limits by plan tier. Headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset

Plan TierSMSWhatsAppRCSVoiceIVR
Free / Starter100/sec50/sec30/sec10/sec20/sec
Growth500/sec200/sec100/sec50/sec50/sec
Pro1000/sec500/sec200/sec100/sec100/sec
EnterpriseCustomCustomCustomCustomCustom

Ready to Integrate?

Get your API key, import the Postman collection, and send your first message in minutes.

Book a Call