---
title: "/api/users/v1/users"
slug: "apiusersv1users"
updated: 2024-10-17T20:32:06Z
published: 2024-10-17T20:32:06Z
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.tulip.co/llms.txt
> Use this file to discover all available pages before exploring further.

# /api/users/v1/users

Get/api/users/v1/users

Retrieves a paginated, filtered, sorted list of users.

Query parameterslimitinteger

The number of items to return in the response.

Minimum0Example1
offsetinteger

The number of items to skip before collecting the result.

Minimum0Example0
searchstring

A matcher for a user's `name/full`, `email/address`, and `badgeId` fields.

filterstring

An OData field filter. Supported fields are:

- `id`
- `badgeId`
- `email/verified`
- `name/full`
- `workspaceRoleAssignments`
(using a lambda function will allow for filtering on the `userRoleId` and `workspaceId`
subfields)
- `globalRoleId`

Note that filtering on roles that apply across all workspaces must be performed through the `globalRoleId` field. All other roles must be filtered using `workspaceRoleAssignments`.

archivedboolean

When set to `false` (the default), only active users are returned. When set to `true`, only deactivated users are returned.

Responses200

A list of available users

<select class='api-response-data' aria-label='Media type'><option value='174d1489-6d3c-4e87-9cf6-3cd1ae0998e8'>application/json</option>
</select>Expand Allobject items Array of object (User)   Example{
  "id": "78M2aGebq5MjhKafN",
  "name": {
    "full": "John Doe"
  },
  "email": {
    "address": "john.doe@tulip.co",
    "verified": true
  },
  "created": {
    "at": "2023-05-06T05:41:08Z",
    "by": {
      "type": "user",
      "id": "Acbu9bbP7jHHDSq8e"
    }
  },
  "lastModified": {
    "at": "2024-01-18T07:11:17Z",
    "by": {
      "type": "user",
      "id": "ieW7gygymmFY253Ew"
    }
  }
}idExampleg56RCoZCtzv7borvp
nameobject 

The user's name.

fullstring    

The user's full name.

avatarUrlstring    

The url which host's a user's profile picture.

languagestring    

ISO-639-1 Language codes supported within the Tulip platform.

Valid values[
  "bg",
  "cs",
  "da",
  "de",
  "el",
  "en",
  "en-GB",
  "es",
  "et",
  "fi",
  "fr",
  "hu",
  "id",
  "it",
  "ja",
  "ko",
  "lt",
  "lv",
  "nb",
  "nl",
  "pl",
  "pt-PT",
  "pt-BR",
  "ro",
  "ru",
  "sk",
  "sl",
  "sv",
  "tr",
  "uk",
  "zh-Hans"
]Exampleen
emailobject 

The user's email address and whether or not it is verified.

addressstring    

The user's email address.

verifiedboolean    

Whether a user's email address has been confirmed.

phoneobject 

The user's phone number and whether or not it is verified.

numberstring    

The user's phone number.

verifiedboolean    

Whether a user's phone number has been confirmed.

badgeIdstring    

A unique string which identifies a user for Player authentication.

invitedatstring  (date-time)    

A date-time string as defined by [RFC 3339 §5.6](https://tools.ietf.org/html/rfc3339#section-5.6).

Example2022-11-21T07:59:10Z
byobject (ActorMetadata) 

Represents a user, api-token, or device.

typestring    Valid values[
  "user",
  "client",
  "api-token",
  "app-exchange-api-token",
  "celosx-api-token",
  "automation",
  "instance-init"
]
idExampleg56RCoZCtzv7borvp

createdatstring  (date-time)    

A date-time string as defined by [RFC 3339 §5.6](https://tools.ietf.org/html/rfc3339#section-5.6).

Example2022-11-21T07:59:10Z
byobject (ActorMetadata) 

Represents a user, api-token, or device.

typestring    Valid values[
  "user",
  "client",
  "api-token",
  "app-exchange-api-token",
  "celosx-api-token",
  "automation",
  "instance-init"
]
idExampleg56RCoZCtzv7borvp

lastModifiedatstring  (date-time)    

A date-time string as defined by [RFC 3339 §5.6](https://tools.ietf.org/html/rfc3339#section-5.6).

Example2022-11-21T07:59:10Z
byobject (ActorMetadata) 

Represents a user, api-token, or device.

typestring    Valid values[
  "user",
  "client",
  "api-token",
  "app-exchange-api-token",
  "celosx-api-token",
  "automation",
  "instance-init"
]
idExampleg56RCoZCtzv7borvp

archivedatstring  (date-time)    

A date-time string as defined by [RFC 3339 §5.6](https://tools.ietf.org/html/rfc3339#section-5.6).

Example2022-11-21T07:59:10Z
byobject (ActorMetadata) 

Represents a user, api-token, or device.

typestring    Valid values[
  "user",
  "client",
  "api-token",
  "app-exchange-api-token",
  "celosx-api-token",
  "automation",
  "instance-init"
]
idExampleg56RCoZCtzv7borvp

OneOfobjectworkspaceRoleAssignments Array of object (WorkspaceRoleAssignment)   object 

One of a a user's member workspaces and its associated role.

workspaceIdstring    ExampleDEFAULT
userRoleIdOneOfstringstringValid values[
  "operator",
  "operator-with-registration",
  "shop-floor-operator",
  "apps-approver-admin",
  "apps-builder-admin",
  "apps-admin",
  "tables-admin",
  "connectors-admin",
  "shop-floor-admin",
  "viewer",
  "viewer-with-player",
  "admin",
  "workspace-owner",
  "owner"
]

objectglobalRoleIdstring    Valid values[
  "owner"
]

countnumber    

The total number of items that matched the list parameters.

Example10
nextPagestring  (url)    

A URL at which the next page of results can be fetched.

prevPagestring  (url)    

A URL at which the previous page of results can be fetched.

errors Array of object (PaginatedItemError)   

A list of errors per item that is omitted from the paginated response, if any.

object Example{
  "errorCode": "generic.internal",
  "message": "Something went wrong.",
  "retryable": false,
  "details": {
    "id": "invalidRecordId"
  }
}errorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

detailsobject idstring    

The ID of the omitted record.

400

An error occurred. The Tulip error codes `generic.customerIdRequired`, `generic.workspaceIdRequired`, `generic.invalidParams`, `http.invalidBodyJson`, `http.invalidHeaders`, `http.multiValueHeader`, `generic.filterParamUnsupportedOperation`, `generic.filterParamUnsupportedField`, `generic.limitParamNonNegativeInt`, `generic.limitParamBounds`, `generic.offsetParamNonNegativeInt`, and `users.invalidFilter` all use the 400 HTTP status code. See the documentation of the response content schema for details on these specific Tulip errors that could result in this status code.

<select class='api-response-data' aria-label='Media type'><option value='3f639c92-be4f-488d-b73c-76b6cc114a67'>application/json</option>
</select>Expand AllOneOfobjecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

detailsobject headerNamestring    

The name of the given HTTP header which had multiple values.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

detailsobject upperBoundinteger    

The maximum allowed value for the limit parameter.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

objecterrorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

401

The request was missing required authentication information.

This error is not automatically retryable.

<select class='api-response-data' aria-label='Media type'><option value='30bd90bf-99e0-434e-8cbf-77d5135c0f0e'>application/json</option>
</select>object errorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

429

Too many requests have been made to this endpoint in a short time period.

This error is not automatically retryable.

<select class='api-response-data' aria-label='Media type'><option value='39063f70-e70a-4233-b362-5a4cc3e5632f'>application/json</option>
</select>Expand Allobject errorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.

detailsobject detailsstring    

Additional details about this endpoint's rate limits.

500

An internal server error occurred. Please contact [support@tulip.co](mailto:support@tulip.co) if the error persists.

This error is not automatically retryable.

<select class='api-response-data' aria-label='Media type'><option value='f7c75a75-6460-4220-a165-3f23c091124e'>application/json</option>
</select>object errorCodestring    

A machine-readable code identifying the type of error.

Pattern^[a-zA-Z0-9.]$
messagestring    

A human-readable description of the error intended for debugging purposes only.

The exact content of this message is not stable.

retryableboolean    

Whether the request can be automatically retried by the client.
