Skip to main content

User Management API

User Management API

Complete guide for managing users through our REST API.

Base URL

https://api.qbitspark.com/v1

List All Users

Get a paginated list of all users in your organization.

Request

GET /users
Authorization: Bearer YOUR_API_KEY

Query Parameters

Parameter Type Default Description
page integer 1 Page number
limit integer 20 Items per page (max 100)
status string all Filter by: active, inactive, pending
role string all Filter by user role

Response Example

{
  "success": true,
  "data": {
    "users": [
      {
        "id": 123,
        "email": "john@qbitspark.com",
        "name": "John Doe",
        "role": "developer",
        "status": "active",
        "created_at": "2024-01-15T10:30:00Z",
        "last_login": "2024-09-22T08:45:00Z"
      }
    ],
    "pagination": {
      "current_page": 1,
      "total_pages": 5,
      "total_users": 87,
      "per_page": 20
    }
  }
}

Create New User

Add a new user to your organization.

Request

POST /users
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

{
  "email": "newuser@qbitspark.com",
  "name": "Jane Smith",
  "role": "developer",
  "send_invite": true
}

Required Fields

  • email - Valid email address
  • name - Full name
  • role - One of: admin, developer, viewer

Optional Fields

  • send_invite - Send email invitation (default: true)
  • department - User's department
  • phone - Contact number

Update User

Modify an existing user's information.

Request

PUT /users/{user_id}
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

{
  "name": "John Smith",
  "role": "admin",
  "status": "active"
}

Delete User

Remove a user from your organization.

Request

DELETE /users/{user_id}
Authorization: Bearer YOUR_API_KEY

Response

{
  "success": true,
  "message": "User deleted successfully",
  "deleted_user_id": 123
}

Error Handling

Common error responses:

400 Bad Request

{
  "success": false,
  "error": "validation_failed",
  "message": "Email already exists",
  "details": {
    "field": "email",
    "code": "DUPLICATE_EMAIL"
  }
}

404 Not Found

{
  "success": false,
  "error": "user_not_found",
  "message": "User with ID 999 does not exist"
}

Code Examples

Python

import requests

headers = {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
}

# Get all users
response = requests.get(
    'https://api.qbitspark.com/v1/users',
    headers=headers
)

users = response.json()
print(f"Total users: {users['data']['pagination']['total_users']}")

JavaScript

const apiKey = 'YOUR_API_KEY';
const baseURL = 'https://api.qbitspark.com/v1';

async function getUsers() {
  try {
    const response = await fetch(`${baseURL}/users`, {
      headers: {
        'Authorization': `Bearer ${apiKey}`,
        'Content-Type': 'application/json'
      }
    });
    
    const data = await response.json();
    return data.data.users;
  } catch (error) {
    console.error('Error fetching users:', error);
  }
}