Skip to content

Search users ​

Returns a page of users. Filter by service provider, location, name, email, username, or active status.

POST /fieldservicegateway/usermanagement/v3/user/search

Request ​

FieldTypeRequiredDescription
pagination.pagenumberyesPage number, starting at 1
pagination.limitnumberyesPage size, 1–100
filters.serviceProviderNumberstringnoUsers for this service provider
filters.serviceProviderLocationNumberstringnoUsers for this location
filters.activeIndicatorbooleannotrue for active users, false for inactive. Omit to return both
filters.emailstringnoExact email match, ignoring case
filters.usernamestringnoExact username match, ignoring case
filters.namestringnoOne word matches first name. Two words match first name, then last name

Example ​

json
{
  "filters": {
    "serviceProviderNumber": "10001",
    "activeIndicator": true
  },
  "pagination": {
    "page": 1,
    "limit": 20
  }
}

cURL ​

bash
curl --request POST 'https://[BASE_URL]/fieldservicegateway/usermanagement/v3/user/search' \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: {{x-api-key}}' \
  --header 'Authorization: {{Authorization}}' \
  --header 'Asurion-correlationid: correlation-id' \
  --header 'Asurion-enduser: end-user' \
  --header 'Asurion-sourcesystem: source-system' \
  --header 'Asurion-serviceprovider: company-id' \
  --header 'Asurion-client: default' \
  --data '{
    "filters": {
      "serviceProviderNumber": "10001",
      "activeIndicator": true
    },
    "pagination": {
      "page": 1,
      "limit": 20
    }
  }'

Response ​

200 OK

json
{
  "success": true,
  "message": "Successfully retrieved 1 users",
  "data": {
    "users": [
      {
        "userNumber": 1001,
        "username": "user@example.com",
        "email": "user@example.com",
        "firstName": "Ada",
        "middleName": "",
        "lastName": "Lovelace",
        "phone": "5550100",
        "profilePictureUrl": "",
        "asurionEmpId": "",
        "userRegisteredDate": "2026-10-16T00:00:00.000Z",
        "activeIndicator": true,
        "createdBy": "system",
        "createdDatetime": "2026-10-16T00:00:00.000Z",
        "updatedBy": "system",
        "updatedDatetime": "2026-10-16T00:00:00.000Z",
        "serviceProvider": {
          "serviceProviderName": "Example Provider",
          "serviceProviderNumber": "10001"
        },
        "serviceProviderLocation": {
          "serviceProviderLocationName": "Example Location",
          "serviceProviderLocationNumber": "20001"
        },
        "authenticationType": "PASSWORD"
      }
    ],
    "pagination": {
      "currentPage": 1,
      "pageSize": 20,
      "totalRecords": 1,
      "totalPages": 1,
      "hasNextPage": false,
      "hasPreviousPage": false
    }
  }
}

authenticationType is OIDC for Asurion and uBreakiFix email domains, and PASSWORD otherwise. Missing text fields come back as an empty string.

Errors ​

StatusCodeWhen
400VALIDATION_ERRORpagination is missing, or limit is outside 1–100
500INTERNAL_ERRORSomething unexpected failed