Skip to main content

Documentation Index

Fetch the complete documentation index at: https://www.1password.dev/llms.txt

Use this file to discover all available pages before exploring further.

Retrieve a list of users in a 1Password account. Use query parameters to filter by users state (active or suspended).
MethodEndpoint URL
GET<base_url>/v1beta1/accounts/<account_id>/users

Make a request

Request headers

Include the following headers:
  • Authorization: Bearer <YOUR_ACCESS_TOKEN>
  • User-Agent: <CompanyOrProductName>/<version>

Path parameters

NameTypeRequiredDescription
account_idstringYesThe unique identifier of the 1Password account.

Query parameters

NameTypeRequiredDescription
filterstringNoFilter users by state. Supported values:
  • user.isActive()
  • user.isSuspended()
Omit or leave empty to return both. Invalid values result in an InvalidArgument error.
max_page_sizeintegerNoThe maximum number of user records to return per page, up to 1000. The default setting is 25 if no maximum page size is specified.

Example requests

Retrieve a list of all users in a 1Password account, with a query parameter to specify a maximum of 100 records per page:
curl --request GET \
  --url "https://api.1password.com/v1beta1/accounts/<account_id>/users?max_page_size=100"  \
	--header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
	--header "User-Agent: <CompanyOrProductName>/<version>"
Retrieve a list of all suspended users in a 1Password account, with a maximum of 100 user records returned per page:
curl --request GET \
  --url "https://api.1password.com/v1beta1/accounts/<account_id>/users?filter=user.isSuspended()&max_page_size=100" \
	--header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
	--header "User-Agent: <CompanyOrProductName>/<version>"
Fetch the next page of user records in the list using the next_page_token returned from a previous request. Include the token in the page_token query parameter:
curl --request GET \
  --url "https://api.1password.com/v1beta1/accounts/<account_id>/users?page_token=CAIQAg" \
	--header "Authorization: Bearer <YOUR_ACCESS_TOKEN>" \
	--header "User-Agent: <CompanyOrProductName>/<version>"

Receive a response

A successful response returns 200 OK with a list of users (ListUsersResponse object) in the specified 1Password account matching your query parameters (if any exist), along with a next_page_token if there are more pages of results to fetch.

Example response

{
  "results": [
    {
      "id": "IR7VJHJ36JHINBFAD7V2T5MP3E",
      "email": "wendy_appleseed@agilebits.com",
      "display_name": "Wendy Appleseed",
      "state": "ACTIVE",
      "create_time": "2024-01-15T10:30:00Z",
      "path": "accounts/ACCOUNT123/users/IR7VJHJ36JHINBFAD7V2T5MP3E"
    },
    {
      "id": "56YE2TYN2VFYRLNSHKPW5NVT5E",
      "email": "riley_smith@example.com",
      "display_name": "Riley Smith",
      "state": "SUSPENDED",
      "create_time": "2024-03-20T09:15:00Z",
      "path": "accounts/ACCOUNT123/users/56YE2TYN2VFYRLNSHKPW5NVT5E"
    }
  ],
  "next_page_token": "CAIQAg"
}

Response schemas

ListUsersResponse object

FieldTypeDescription
resultsArray of User objectsList of users returned for this page.
next_page_tokenstringBase64-encoded opaque token for fetching the next page of results, if available. The returned token can be used with the page_token query parameter.
User object
FieldTypeDescription
idstringUser UUID.
emailstringUser email address.
display_namestringUser display name.
statestringUser state. Possible values: STATE_UNSPECIFIED, ACTIVE, SUSPENDED.
create_timestringDate and time when the user was created. Uses the RFC 3339 standard .
pathstringResource path for the user. Format: accounts/<account_id>/users/<user_id>.