Users

> Auto-generated from the OpenAPI spec. Method names shown are the manifest > (canonical) names; per-language casing is applied by each SDK.

Record handle: ref(id) → a lazy handle to one User (get/update/delete, field values, related records). See record handles.

bulkUpdate

PUT /user

Bulk update users

Parameter In Required Description
body body yes Array of User records to be updated

Returns: User · Cost: 1 API call.

create

POST /user

Create a user

Parameter In Required Description
body body yes User to be created

Returns: User · Cost: 1 API call.

createUserInvitation

POST /user/invitation

Send a user invitation — Sends an email invitation to join the system. Requires role (admin, user, supervisor, guest, or client) and optional team/category assignments. Generates a unique registration link valid until accepted or revoked.

Parameter In Required Description
body body yes

Returns: Invitation · Cost: 1 API call.

createUserRate

POST /user/{userId}/rate

Create a user pay rate

Parameter In Required Description
userId path yes ID of user
body body yes

Returns: UserRate · Cost: 1 API call.

createUserRemote

POST /user/remote/{remoteId}/{remoteApplication}

Upsert record by remote ID (create or update) — Upsert by remote ID: updates the existing user if a mapping is found (200), otherwise creates a new one and stores the mapping (201).

Parameter In Required Description
remoteId path yes Remote ID of record to be synchronized
remoteApplication path yes Name of remote application
body body yes Record data

Returns: User · Cost: 1 API call.

delete

DELETE /user/{userId}

Delete a user

Parameter In Required Description
userId path yes ID of user

Returns: any · Cost: 1 API call.

deleteUserInvitation

DELETE /user/invitation/{invitationId}

Revoke a user invitation

Parameter In Required Description
invitationId path yes ID of Invitation

Returns: any · Cost: 1 API call.

deleteUserRate

DELETE /user/{userId}/rate/{rateId}

Delete a user pay rate

Parameter In Required Description
userId path yes ID of user
rateId path yes ID of rate

Returns: any · Cost: 1 API call.

get

GET /user/{userId}

Get a user by ID

Parameter In Required Description
userId path yes ID of user

Returns: User · Cost: 1 API call.

getUserInvitation

GET /user/invitation/{invitationId}

Get a user invitation by ID

Parameter In Required Description
invitationId path yes ID of Invitation

Returns: Invitation · Cost: 1 API call.

getUserRate

GET /user/{userId}/rate/{rateId}

Get a user pay rate by ID

Parameter In Required Description
userId path yes ID of user
rateId path yes ID of rate

Returns: UserRate · Cost: 1 API call.

getUserRemote

GET /user/remote/{remoteId}/{remoteApplication}

Get a user by remote ID — Retrieves a user by its external remote ID and application name, using the integration_pair mapping table. Returns 404 if no mapping exists.

Parameter In Required Description
remoteId path yes Remote ID of record to be synchronized
remoteApplication path yes Name of remote application

Returns: User · Cost: 1 API call.

listUserInvitation

GET /user/invitation

List user invitations

Parameter In Required Description
filter query no Filter expression to narrow results. Format: field operator value. Multiple conditions are joined with ; or & (AND) or | (OR). Conditions can be grouped with parentheses. Supported operators: = (equals; also matches NULL when value is empty), != (not equals), >, >=, <, <=, ~ (LIKE, use % as wildcard; empty value matches NULL/empty), !~ (NOT LIKE), ... (IN set, comma-separated: statusId...1,2,3). OR across values for one field: status=(active|pending). Examples: filter=name=Acme, filter=created>=2024-01-01;assigneeId=, filter=name~%smith%;statusId...1,2,3, filter=(status=active|status=pending)&spaceId=5.
offset query no Zero-based index of the first record to return. Use together with limit for pagination. Example: offset=20&limit=10 returns records 21–30.
limit query no Maximum number of records to return. Use together with offset for pagination.
order query no Sort order for results. Comma-separated list of field;DIRECTION pairs. Direction is ASC or DESC (default DESC when omitted). Example: order=name;ASC or order=id;ASC,name;DESC.

Returns: list<Invitation> · Cost: 1 API call per page (lazy paginator).

listUserInvitationHash

GET /user/invitation/hash

Get a user invitation by its hash token — Public endpoint — retrieves invitation details by hash token without authentication, allowing an invitee to view the invitation before accepting. Returns 404 if already accepted.

Parameter In Required Description
hash query yes Invitation hash

Returns: Invitation · Cost: 1 API call.

listUserRate

GET /user/{userId}/rate

List user pay rates

Parameter In Required Description
userId path yes ID of user
filter query no Filter expression to narrow results. Format: field operator value. Multiple conditions are joined with ; or & (AND) or | (OR). Conditions can be grouped with parentheses. Supported operators: = (equals; also matches NULL when value is empty), != (not equals), >, >=, <, <=, ~ (LIKE, use % as wildcard; empty value matches NULL/empty), !~ (NOT LIKE), ... (IN set, comma-separated: statusId...1,2,3). OR across values for one field: status=(active|pending). Examples: filter=name=Acme, filter=created>=2024-01-01;assigneeId=, filter=name~%smith%;statusId...1,2,3, filter=(status=active|status=pending)&spaceId=5.
offset query no Zero-based index of the first record to return. Use together with limit for pagination. Example: offset=20&limit=10 returns records 21–30.
limit query no Maximum number of records to return. Use together with offset for pagination.
order query no Sort order for results. Comma-separated list of field;DIRECTION pairs. Direction is ASC or DESC (default DESC when omitted). Example: order=name;ASC or order=id;ASC,name;DESC.

Returns: list<UserRate> · Cost: 1 API call per page (lazy paginator).

list

GET /user

Search users

Parameter In Required Description
filter query no Filter expression to narrow results. Format: field operator value. Multiple conditions are joined with ; or & (AND) or | (OR). Conditions can be grouped with parentheses. Supported operators: = (equals; also matches NULL when value is empty), != (not equals), >, >=, <, <=, ~ (LIKE, use % as wildcard; empty value matches NULL/empty), !~ (NOT LIKE), ... (IN set, comma-separated: statusId...1,2,3). OR across values for one field: status=(active|pending). Examples: filter=name=Acme, filter=created>=2024-01-01;assigneeId=, filter=name~%smith%;statusId...1,2,3, filter=(status=active|status=pending)&spaceId=5.
offset query no Zero-based index of the first record to return. Use together with limit for pagination. Example: offset=20&limit=10 returns records 21–30.
limit query no Maximum number of records to return. Use together with offset for pagination.
order query no Sort order for results. Comma-separated list of field;DIRECTION pairs. Direction is ASC or DESC (default DESC when omitted). Example: order=name;ASC or order=id;ASC,name;DESC.

Returns: list<User> · Cost: 1 API call per page (lazy paginator).

update

PUT /user/{userId}

Update a user

Parameter In Required Description
userId path yes ID of user
body body yes User record to be updated

Returns: User · Cost: 1 API call.

updateUserRate

PUT /user/{userId}/rate/{rateId}

Update a user pay rate

Parameter In Required Description
userId path yes ID of user
rateId path yes ID of rate
body body yes

Returns: UserRate · Cost: 1 API call.