Sub-Accounts
Create a Subaccount
Provision an isolated Vobiz subaccount with its own auth credentials for multi-tenant SaaS apps, white-label resellers, or departmental resource separation.
POST
Create a sub-account
Authentication required:
X-Auth-ID- Your account Auth IDX-Auth-Token- Your account Auth TokenContent-Type: application/json
Parameters
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | A human-readable name for the subaccount. The only required field. |
email | string | Conditional | Email address for the subaccount. Required when kyc_mode is customer_use (the KYC link and reminders are sent here). Optional otherwise. |
phone | string | No | Phone number associated with the subaccount. |
description | string | No | Description of the sub-account purpose or usage. |
rate_limit | integer | No | API rate limit for this sub-account (requests per time period). Defaults to 1000 when omitted. |
permissions | object | No | Permissions object defining what the sub-account can access. Contains boolean fields like calls and cdr. When omitted, the sub-account inherits the parent’s default access. |
password | string | No | Login password for the sub-account console. The API credentials (auth_id / auth_token) are generated regardless and are what you use for REST/telephony calls. |
enabled | boolean | No | Whether the subaccount is active and enabled for use. Defaults to true. |
kyc_mode | string | No | personal_use (default) inherits the parent’s KYC; customer_use requires the sub-account to complete its own KYC. customer_use requires email. |
business_type | string | No | Legal constitution of the customer: individual, proprietorship, private_limited, llp, partnership, public_limited, trust, society, huf, or government. Drives which KYC documents are required — see the document matrix. |
Authenticate as the parent. Send your parent main account’s
X-Auth-ID / X-Auth-Token; the {auth_id} in the path is your parent (MA_…) account. The sub-account does not have credentials until this call returns them.Creating a sub-account with
kyc_mode: "customer_use" returns it with kyc_calls_blocked: true — the sub-account cannot place calls until it completes KYC. If you omit email while setting customer_use, the request fails with 400. See Sub-Account KYC for the full create → KYC → unblock recipe.Request
Response Example
Success Response (201 Created)
business_type and required documents
For a customer_use sub-account, business_type sets which KYC documents the sub-account must clear before kyc_calls_blocked flips to false:
business_type | Typical documents to verify |
|---|---|
individual, proprietorship, huf | PAN + Aadhaar (via DigiLocker) |
private_limited, public_limited, llp, partnership | PAN + GST and/or CIN |
trust, society, government | PAN + supporting registration (CIN/GST as applicable) |
business_type at creation or later via Update. See Sub-Account KYC for the per-document endpoints.
Common errors
| Status | Cause |
|---|---|
400 | kyc_mode: "customer_use" set without an email. |
401 | Missing or wrong X-Auth-ID / X-Auth-Token, or the path uses the wrong casing (/accounts/, plural and lowercase). |
404 | The {auth_id} in the path is not a main account you own. |
Authorizations
Your Vobiz account Auth ID
Your Vobiz account Auth Token
Path Parameters
Your account Auth ID
Example:
"MA_XXXXXX"
Body
application/json
Human-readable name for the sub-account.
Required when kyc_mode is customer_use.
Login password for the sub-account.
personal_use inherits parent KYC. customer_use requires
the sub-account to complete its own KYC and requires email.
Available options:
personal_use, customer_use Legal constitution of the customer. Drives which KYC documents are required.
Available options:
individual, proprietorship, private_limited, llp, partnership, public_limited, trust, society, huf, government