Search query syntax

When searching for users, you can create a search query based on the SCIM protocol.

Structure

Specify search criteria using the search query parameter of the GET /users request.

Each criteria should be an expression in the following form: [SEARCH_FIELD] [OPERATOR] [SEARCH_VALUE]

For example, this expression searches for a user named John name.first_name eq "John", and the API request: https://api.transmitsecurity.io/cis/v1/users?search=name.first_name%20eq%20%22John%22.

You can combine search expressions using and/or operators and grouping with brackets, such as: (status eq "Pending") and (name.first_name sw "John") and (created_at le "2022-08-22")

Note

Make sure to URL-encode the search query expression

Searchable fields

You can search for users using any of the following fields:

  • external_account_id - (string) user's unique app-level identifier in your system
  • external_user_id - (string) user's unique tenant-level identifier in your system
  • email - (string) user's primary email address
  • phone_number - (string) user's primary phone number
  • secondary_emails - (array of strings) user's secondary email addresses
  • secondary_phone_numbers - (array of strings) user's secondary phone numbers
  • last_auth - (date) date the user last authenticated
  • created_at - (number) date user record was created
  • updated_at - (number) date user record was updated
  • status - (string) user's status
  • birthday - (date) user's birthday as YYYY-MM-DD
  • name.first_name - (string) user's first name
  • name.middle_name - (string) user's middle name
  • name.last_name - (string) user's last name
  • custom_app_data.* - any nested custom_app_data fields

Supported operators

Search expressions may include any of the following operators:

  • eq - equal
  • ge - greater equal
  • gt - greater than
  • le - less equal
  • lt - less than
  • ne - not equal
  • pr - present
  • sw - starts with
  • and - and
  • or - or