Partner
Partner endpoints for creating end-user accounts on behalf of your customers. The caller must hold the partner role.
Table of Content:
Create user
Create a new end-user account. The request and response shapes are documented below.
- Allowed roles: the
rolesfield accepts only["user"]. Any other role value returns400. - Authorization: caller must hold the
partnerrole. - Auto-verification: partner-created users are automatically marked as verified. They bypass identity verification entirely — no document upload, selfie, or compliance screening is required.
The notify flag works the same way — omit it (or set false) to receive API key pair credentials in the response, or set true to send an invite email and receive only {userID, email}.
Endpoint: https://apis.threatwinds.com/api/auth/v2/partners/user
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| string | Yes | End-user email address | |
| fullName | string | Yes | Display name |
| alias | string | No | Short handle (lowercase alphanumeric, ≤ 20 chars) |
| roles | array | Yes | Must be exactly ["user"] |
| notify | bool | No | Send invite email; if false, key pair returns in response |
curl -X 'POST' \
'https://apis.threatwinds.com/api/auth/v2/partners/user' \
-H 'Authorization: Bearer <YOUR_BEARER_TOKEN>' \
-H 'Content-Type: application/json' \
-d '{
"email": "customer@example.com",
"fullName": "Customer Name",
"alias": "customer",
"roles": ["user"],
"notify": true
}'
Returns
HTTP 202. Response shape:
| Field | Type | Description |
|---|---|---|
| userID | string (UUID) | The created user’s identifier |
| string | Email address | |
| apiKey | string (opt) | Key pair, present when notify is false |
| apiSecret | string (opt) | Secret for the key pair |
| keyID | string (opt) | Key pair identifier |
| expireAt | integer (opt) | Key expiry (Unix seconds) |