Users & Teams
Manage the users in your Driftwood account — invite team members, deactivate users, and handle password operations.
The User Object
Section titled “The User Object”| Field | Type | Description |
|---|---|---|
id | uuid | Unique identifier |
account_id | uuid | Account this user belongs to |
email | string | Email address |
name | string | Full name |
role | string | User role (e.g., owner, member) |
must_change_password | boolean | Whether user must change password on next login |
deactivated_at | datetime | null | When deactivated, if applicable |
created_at | datetime | Creation timestamp |
updated_at | datetime | Last update timestamp |
List Users
Section titled “List Users”Endpoint: users-list
| Field | Type | Required | Description |
|---|---|---|---|
search | string | No | Search by name or email |
limit | integer | No | Results per page |
offset | integer | No | Pagination offset |
curl -X POST https://api.driftwoodapp.com/api/users-list \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{"limit": 50}'Response:
{ "ok": true, "result": { "users": [ { "id": "u1v2w3x4-...", "email": "jane@company.com", "name": "Jane Smith", "role": "owner", "created_at": "2025-01-15T10:00:00Z" } ], "total": 5 }}Invite User
Section titled “Invite User”Send an invitation to add a new user to your account.
Endpoint: users-invite
| Field | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Email to invite |
name | string | Yes | User’s name |
curl -X POST https://api.driftwoodapp.com/api/users-invite \ -H "Authorization: Bearer YOUR_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "email": "new-member@company.com", "name": "New Team Member" }'Activate / Deactivate User
Section titled “Activate / Deactivate User”Endpoint: users-set-active
| Field | Type | Required | Description |
|---|---|---|---|
user_id | uuid | Yes | User ID |
active | boolean | Yes | true to activate, false to deactivate |
Change Password
Section titled “Change Password”Endpoint: users-change-password (authenticated)
| Field | Type | Required | Description |
|---|---|---|---|
current_password | string | Yes | Current password |
new_password | string | Yes | New password |
Forgot Password
Section titled “Forgot Password”Endpoint: users-forgot-password (public)
| Field | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Account email |
Sends a password reset email. Always returns success to prevent email enumeration.
Reset Password
Section titled “Reset Password”Endpoint: users-reset-password (public)
| Field | Type | Required | Description |
|---|---|---|---|
token | string | Yes | Reset token from email |
new_password | string | Yes | New password |