Build faster with the SDS API
Production‑grade endpoints for PAN, wallet, and identity workflows. Clean JSON, predictable latency, and clear errors. Integrate in minutes—scale to millions.
curl -X GET \
https://api.sanjanadigitalservice.com/v1/wallet/balance \
-H "Authorization: Bearer <YOUR_API_KEY>" \
-H "Accept: application/json"
Why developers choose SDS API
Low Latency
Global edge + caching. Typical P95 under 75ms with burst protection.
Secure by Design
JWT/OAuth2, IP allow‑lists, HMAC request signing, and audit logs.
Predictable Errors
Error codes with remediation tips: rate_limited, invalid_scope, etc.
Great DX
Beautiful docs, SDKs, Postman collection, and example apps.
Scales Effortlessly
Horizontally scalable workers (BullMQ) + per‑user cache controls.
Observability
Structured logs, traces, metrics, and per‑key rate dashboards.
Popular endpoints
Use your Bearer API key. All responses are JSON. Versioned under /v1.
/wallet/balance
Get current wallet balance for the authenticated account.
GET /v1/wallet/balance
200 OK
{ "balance": 15420.55, "currency": "INR", "updatedAt": "2025-09-21T06:15:00Z" }
/pan/validate
Validate a PAN with checksum and status.
POST /v1/pan/validate
Body: { "pan": "ABCDE1234F" }
200 OK
{ "pan": "ABCDE1234F", "valid": true, "name": "RAHUL S", "status": "active" }
/wallet/passbook
Paginated ledger with filters for date/type.
GET /v1/wallet/passbook?page=1&pageSize=25&type=credit
200 OK
{ "items": [ { "id":"txn_1", "type":"credit", "amount": 500 } ], "next": null }
Quickstart
- Generate an API Key in your SDS Dashboard.
- Send a request with
Authorization: Bearer <KEY>. - Pin your base URL:
https://api.sanjanadigitalservice.com/v1. - Use idempotency keys for POST:
Idempotency-Key: uuidv4.
Authentication
We support Bearer, OAuth2 client‑credentials, and HMAC SHA‑256 signing.
// HMAC (pseudo)
const signature = HMAC_SHA256(secret, method + path + body + timestamp)
fetch(path, { headers: { 'X-Signature': signature, 'X-Timestamp': timestamp } })
Idempotency
Safely retry POST without duplication by sending the same key within 24h.
POST /v1/wallet/recharge
Idempotency-Key: 34f3a2ec-9b3c-4c03-a3e0-2a4bf
{ "amount": 1000, "method": "upi" }
Errors
Clear errors help you fix fast.
429 Too Many Requests
{ "status": false, "reason": "rate_limited", "recommendWaitMs": 44000 }