close anchor

Users

To get information on users:

GET /users

Parameters

Param Type Description Optional
id string The UUID of an individual user.
email string The unique e-mail of an individual user.
type string Indicate, by providing a comma-delimited list, the Elebase user type(s) by which to filter users. In order to get base and editor-level users only, for example, include a value of '0,2'.
editor string The UUID of an individual user by whom to filter entries based on their editorial purview (i.e., the privilege granted to editor-level users to edit or delete entries), as defined for the project.

If provided, this endpoint will deliver users including: those in user group(s) this user is in, and those identified with content entries for which this user is granted privilege.
group string Indicate, by providing a comma-delimited list, the UUID of user group(s) by which to filter users. Include a '+' prefix before this list of groups if a user is to be identified with every group declared (the default behavior of this endpoint is to provide users in any of the group(s) included), and prefix an individual group therein with '!' to exclude users linked to it.
enabled boolean Indicate whether or not to filter users by this property. Include a value of either true or false to indicate the users to be provided.
text string Include text by which to filter entries. Input will be parsed for up to ten keywords and treated as a filter, in that only entries with keyword(s) present in the fields below will be included.
fields string Indicate, by providing a comma-delimited list, the field(s) in which to expect text keyword(s) be present. If a field includes localized text, only values in the endpoint transaction locale will be queried. If empty or not provided, each of these valid fields will be included: email, name.first, name.last, organization, text.

If only the email field is indicated, users will be included if the text provided exists therein. This is useful for partial querying, for example by domain: '@elebase.io'. If an exact user by e-mail query is preferred, use the email field instead.
order string Indicate, by providing a comma-delimited list, the field(s) by which to order entries found. Include a '-' prefix if descending order is preferred in a given field ('+' is inferred by default). If empty or not provided, these valid fields will not be explicitly included: date_time.edit, date_time.init, email, id, name.first, name.last, organization.
page integer Identify the page on which to begin delivering entries. If not provided, the default value of 1 will be inferred.
limit integer Indicate a total of up to 100 entries to be delivered. If not provided, the default value of 10 will be inferred.
data string Indicate, by providing a comma-delimited list, the data field(s) to be delivered by this endpoint. If empty or not provided, this endpoint will include by default each of the data field(s) identified with the user object.

The data object provided by this endpoint includes both a total (integer) of entries found, and an index (array) of user object(s).

To post a user:

POST /users

This endpoint provides for inserting a user to an Elebase project, for example via a user join or enrollment page.

Parameters

Provide the input field(s) below as a JSON-encoded data object:

Param Type Description Optional
email string The user's e-mail. This value is unique and exclusive to the user in an Elebase project, and functions as their login identity. If a user identified by e-mail previously existed, but was deleted, that prior user no longer exists for intensive purposes throughout the Elebase project, with the potential exception of note(s) that were posted by, or directly to, that user individually.
pwd string The user's desired password, being 8-72 bytes in length.
name object The personal first and last name of the user.
organization string The institutional name for the user, if provided.
timezone string The user's preferred default time zone. The timezones endpoint provides a list of known Elebase time zones.
locale string The user's preferred default locale. The locales endpoint provides a list of known Elebase locales.
point string The default geographic point location for this user, being a comma-delimited textual value indicating both longitude and latitude, in that order.
type integer The Elebase user type, or privilege level, to be identified with this user, on which further information is provided on the user object documentation page. If not provided, the default value of 0 will be inferred, this being a user with no extra inherent privileges beyond those unique to, and granted by, a project expression, if desired.

The data object provided by this endpoint is the user inserted to the project. If this is not done by an existing user (presently logged in), a 128-byte persistent login token will be included to facilitate logging the user being posted in to the expression on their behalf, too, if desired.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
email_not_provided The user email was not provided.
invalid_email The user email is not valid.
invalid_geo_data_point The point is not a valid geographic location.
invalid_locale The locale provided is not known to the Elebase platform.
invalid_password The desired user password is not valid.
invalid_timezone The timezone provided is not known to the Elebase platform.
invalid_user_type The user type is not valid.
user_exists The user, identified by the email provided, exists and will therefore not be inserted.

If an error is not described on this page, the platform-wide error table provides further information.

To edit user information:

PUT /users

This endpoint provides for editing user information, but does not expect the user to be logged in. This enables developers to identify and enforce their own expectations in terms of this functionality being exposed to users of different privilege levels, based on the unique demands of their individual project(s).

Parameters

Provide the input field(s) below as a JSON-encoded data object:

Param Type Description Optional
id string The UUID of the user for which data is being updated.
name object The personal first and last name of the user.
organization string The institutional name for the user, if provided.
enabled boolean Indicate whether or not the user is to be enabled, for which the default value is true.
bypass_editor boolean Indicate whether or not the user is to be permitted to bypass editorial purview for their own content entries. The default value is false if the user type is below the editor privilege level, indicating the user's content entries will be placed in the pending queue to be viewed, and then published or denied, by an editor instead of by this user.
timezone string The user's preferred default time zone. The /timezones endpoint provides a list of known Elebase time zones.
locale string The user's preferred default locale. The /locales endpoint provides a list of known Elebase locales.
point string The default geographic point location for this user, being a comma-delimited textual value indicating both longitude and latitude, in that order.
text string The biographical or descriptive profile text for this user, provided in the endpoint transaction locale.
type integer The Elebase user type, or privilege level, to be identified with this user, on which further information is provided on the user object documentation page.
groups array The user group(s) in which this user is to exist, being a one-dimensional array in which each value is the UUID of an individual user group.

The user will no longer be identified with groups not included in this transaction. In order to post a user to a group individually (not deleting them from other groups in which they'd previously been included), use the /user/groups endpoint instead.
attributes object The entity-attribute-value data to be identified with this entity.

The data object provided by this endpoint is the user with this information being updated.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
illegal_user_type The user type indicated for this user is not permitted, for example if trying to downgrade the only user in a project identified with owner-level privileges.
invalid_geo_data_point The point is not a valid geographic location.
invalid_locale The locale provided is not known to the Elebase platform.
invalid_timezone The timezone provided is not known to the Elebase platform.
invalid_group_type The groups provided include a group that does not exist or is not a user group.
invalid_user_type The user type indicated for this user does not exist.

If an error is not described on this page, the platform-wide error table provides further information.

To delete a user:

DELETE /users

In order to delete a user, log in either the user in question or a user identified with owner-level privileges. If the user is identified with other entities in the project, this endpoint will detach them (in effect orphaning those entities) or provide an error indicating this (depending on the entity type).

Parameters

Param Type Description
id string The UUID of the user to be deleted.

The data object provided by this endpoint is the deleted user.

Errors

If there is an endpoint transaction failure, or a problem with user input data, an error is provided:

ID/Type Description
user_not_deleted The user was not deleted because no other user identified with owner-level privileges exists in the project.

If an error is not described on this page, the platform-wide error table provides further information.

Register for an Invitation
Thank you!
We'll be in touch.
First Name*
Last Name*
(optional) Business Name
Role*
Email*