Chuyển tới nội dung chính

8. Team & Organization

8.1 List Users

GET /api/v1/users

List organization users.

Query Parameters:

  • page - Page number
  • limit - Items per page
  • role - Filter by role
  • department - Filter by department
  • status - Filter: active, inactive

Response:

{
"data": [
{
"id": "user-123",
"email": "[email protected]",
"fullName": "John Doe",
"role": "admin",
"department": "Sales",
"phone": "+84.9.xxxx.xxxx",
"avatar": "https://...",
"status": "active",
"createdAt": "2026-01-15T10:30:00Z",
"lastLogin": "2026-06-05T14:22:00Z"
}
],
"pagination": { "total": 15, "page": 1, "limit": 50 }
}

8.2 Create User

POST /api/v1/users

Create new team member.

Request Body:

{
"email": "[email protected]",
"fullName": "Jane Smith",
"role": "agent",
"department": "Support",
"phone": "+84.9.yyyy.yyyy"
}

Response: 201

{
"id": "user-126",
"email": "[email protected]",
"fullName": "Jane Smith",
"role": "agent",
"createdAt": "2026-06-05T17:35:00Z",
"invitationSent": true
}

8.3 Update User

PUT /api/v1/users/:id

Update user information.

Request Body:

{
"fullName": "Jane Smith",
"role": "team_lead",
"department": "Sales"
}

Response: 200


8.4 Delete User

DELETE /api/v1/users/:id

Deactivate user.

Response: 204 No Content


8.5 List Teams

GET /api/v1/teams

List teams in organization.

Response:

[
{
"id": "team-001",
"name": "Sales Team",
"description": "Direct sales team",
"memberCount": 5,
"createdAt": "2026-01-15T10:30:00Z"
}
]

8.6 Create Team

POST /api/v1/teams

Create new team.

Request Body:

{
"name": "Enterprise Sales",
"description": "Enterprise customer sales team",
"memberIds": ["user-123", "user-124"]
}

Response: 201