Users Endpoints
FreshSource: MainWP Users API
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /users | List users (filter by clients, groups, websites, roles) |
| POST | /users/create | Create user (username, email, password, role, name fields) |
| PUT/PATCH | /users/{id_or_domain}/{user_id}/edit | Modify user profile |
| DELETE | /users/{id_or_domain}/{user_id}/delete | Remove user |
| PUT/PATCH | /users/update-admin-password | Change admin passwords across sites |
| POST | /users/import | Bulk import via CSV |
CSV Import Format
10 columns per row:
| Column | Description |
|---|---|
| username | WordPress username |
| User email | |
| first_name | First name |
| last_name | Last name |
| user_url | Website URL |
| password | User password |
| send_password | Send notification |
| role | WordPress role |
| select_sites | Target site IDs |
| select_groups | Target group IDs |
Use has_header parameter to control header row skipping.
Example: Create User
bash
curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username": "newuser", "email": "user@example.com", "password": "securepass", "role": "editor", "select_sites": [1, 2]}' \
"https://your-dashboard.com/wp-json/mainwp/v2/users/create"