Get User
This endpoint allows you to retrieve information about specific users and list all users with optional filtering and pagination.
🔹 Endpoint Details
Get Single User
GET /api/v1/users/{id}
List Users
GET /api/v1/users
🔒 Authentication
Header | Required | Description |
---|---|---|
Authorization | Yes | Format: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature |
📝 Request Parameters
Path Parameters (Get Single User)
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
id | string (UUID) | Yes | Unique identifier of the user | 550e8400-e29b-41d4-a716-446655440000 |
Query Parameters (List Users)
Parameter | Type | Required | Description | Default |
---|---|---|---|---|
page | number | No | Page number for pagination | 1 |
limit | number | No | Items per page | 20 |
search | string | No | Search in name or email | - |
organizationId | string | No | Filter by organization ID | - |
userGroupId | string | No | Filter by user group ID | - |
🧩 Request Examples
Get Single User
curl -X GET "https://openapi.onlive.site/api/v1/users/550e8400-e29b-41d4-a716-446655440000" \
-H "Content-Type: application/json" \
-H "Authorization: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature"
List Users with Filtering
curl -X GET "https://openapi.onlive.site/api/v1/users?page=1&limit=10&search=john&userGroupId=123e4567-e89b-12d3-a456-426614174000" \
-H "Content-Type: application/json" \
-H "Authorization: ONLIVESITE Credential:ONLIVEAccessKeyId, Signature=CalculatedSignature"
📤 Response Format
Single User Response (200 OK)
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"role": "creator",
"avatar": "https://example.com/avatars/johndoe.jpg",
"organizationId": "123e4567-e89b-12d3-a456-426614174000",
"userGroupId": "123e4567-e89b-12d3-a456-426614174001",
"fullName": "John Doe",
"createdAt": "2025-05-22T10:30:00Z",
"updatedAt": "2025-05-22T10:30:00Z"
}
List Response (200 OK)
{
"items": [
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"firstName": "John",
"lastName": "Doe",
"email": "[email protected]",
"role": "creator",
"avatar": "https://example.com/avatars/johndoe.jpg",
"organizationId": "123e4567-e89b-12d3-a456-426614174000",
"userGroupId": "123e4567-e89b-12d3-a456-426614174001",
"fullName": "John Doe",
"createdAt": "2025-05-22T10:30:00Z",
"updatedAt": "2025-05-22T10:30:00Z"
}
],
"total": 1,
"page": 1,
"limit": 10,
"pages": 1
}
❌ Error Responses
401 Unauthorized
{
"statusCode": 401,
"message": "Invalid or missing authorization credentials"
}
404 Not Found
{
"statusCode": 404,
"message": "User not found"
}
📘 Notes
- All timestamps are in ISO 8601 format with UTC timezone
- The list endpoint supports pagination through
page
andlimit
parameters - Search is case-insensitive and matches:
- First name
- Last name
- Full name
- Results are sorted by creation date in descending order (newest first)
- The
organizationId
filter is optional; by default, only users in your organization are shown
✅ Common Use Cases
- 🔍 User Lookup: Find specific users by ID
- 📊 Directory: List all users in your organization
- 🔎 Search: Find users by name or email
- 👥 Group Management: List users in a specific group
- 📱 Pagination: Handle large numbers of users efficiently
🔍 Search Tips
-
Partial Matching
- Search "john" matches "John Doe", "Johnny Smith"
- Search "doe" matches "John Doe", "Jane Doe"
- Search "@company" matches all emails from that domain
-
Group Filtering
- Combine with search for targeted results
- Filter by
userGroupId
to see group members - Can be used with pagination
-
Performance
- Use appropriate page sizes (10-50 items)
- Cache frequently accessed user details
- Use specific filters when possible