List site users
const url = 'https://example.com/wp-json/wp2/site-manager/v1/sites/1/users?page=1&per_page=20';const options = {method: 'GET', headers: {'X-WP-Nonce': '<X-WP-Nonce>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://example.com/wp-json/wp2/site-manager/v1/sites/1/users?page=1&per_page=20' \ --header 'X-WP-Nonce: <X-WP-Nonce>'Users attached to this blog (WP_User_Query with blog_id), with their first role on the site.
Requires permission to manage the blog. Query `page` (default 1) and `per_page` (default 20, max 100).
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Site ID in the current network (WP_Site->blog_id).
Query Parameters
Section titled “Query Parameters”Page number. PHP: max(1, page ?: 1).
Users per page. PHP: max(1, min(100, per_page ?: 20)).
Responses
Section titled “Responses”Page of site users (items, total, page, per_page).
object
Users of this blog (WP_User_Query with blog_id), one page.
object
WordPress user ID (WP_User->ID).
Login (WP_User->user_login), not display_name.
Account email (WP_User->user_email).
User’s first role on this site ($user->roles[0]); empty string if none.
Total users on the site (WP_User_Query->get_total()), not the length of items.
Page number after clamp (max(1, page)).
Page size after clamp (max(1, min(100, per_page))).
Example
{ "items": [ { "user_id": 14, "login": "editor.ivan", "email": "editor@example.com", "role": "editor" } ], "total": 3, "page": 1, "per_page": 20}Not authenticated. DualRest: rest_forbidden (status 401) when there is no cookie session. Cookie + X-WP-Nonce or Application Password.
object
Machine-readable error or event code.
Message text (log, PIN, or password reset).
Extra WP_Error or license payload.
object
Examplegenerated
{ "code": "example", "message": "example", "data": {}}No permission on this blog (forbidden) or invalid REST nonce.
object
Machine-readable error or event code.
Message text (log, PIN, or password reset).
Extra WP_Error or license payload.
object
Examplegenerated
{ "code": "example", "message": "example", "data": {}}Site_not_in_network — site is not in the current network.
object
Machine-readable error or event code.
Message text (log, PIN, or password reset).
Extra WP_Error or license payload.
object
Examplegenerated
{ "code": "example", "message": "example", "data": {}}