SSO Payload

The user and company JSON schema shared by both SSO flows — required fields, recommended fields, and the full parameter reference for Component Auth and Get Token.

Both the Component Auth and Get Token flows describe the user and their company using the same JSON schema — this page documents it for both.

Example

{
  "name": "John Doe",
  "firstName": "John",
  "lastName": "Doe",
  "email": "[email protected]",
  "externalId": "123456",
  "isActive": true,
  "language": "en-US",
  "accountData": [
    {
      "type": 0,
      "name": "Acme Corporation",
      "mobilePhone": "+1 334-123-4567",
      "email": "[email protected]",
      "alpha3Code": "USA",
      "externalId": "7890",
      "isActiveCompany": true,
      "identifier": [
        { "value": "123-45-6789", "type": "SSN" }
      ],
      "companyIndustry": "Oilseed and Grain Combination Farming",
      "annualRevenue": "500,000",
      "numberOfBusinessLocations": "1",
      "numberOfEmployees": "20",
      "address": {
        "street": "13785 Research Blvd",
        "streetNumber": "Suite 150",
        "city": "Montgomery",
        "state": "AL",
        "zip": "10000",
        "addressType": "1",
        "countryIsoCode": 840
      },
      "phones": [
        { "countryCode": 840, "cityOrAreaCode": 334, "localNumber": 1234567, "phoneTypeName": "1" }
      ]
    }
  ]
}
📘

What's Actually Required

Business Health needs externalId or email (at least one of the two) to identify the user — that's the only hard requirement. Everything else is optional at the API level.

That said, we strongly recommend also providing isActive, name, accountData.name, and accountData.externalId — without them, Business Health has very little to work with when creating or displaying the user's record, and results may not look the way you expect.

One default worth knowing: if isActive is omitted, it defaults to false, and the user is created (or updated) as inactive.

Parameters

NameTypeRequirementDescription
nameStringRecommendedFull name of the user.
firstNameStringOptionalFirst name of the user.
lastNameStringOptionalLast name of the user.
emailStringOne of email / externalId requiredEmail address of the user.
externalIdStringOne of email / externalId requiredUnique identifier of the user in your platform.
isActiveBooleanRecommendedWhether the user is active in your platform and should be active in Business Health. Defaults to false if omitted.
languageStringOptionalThe user's locale code. Expected format: en-US.
accountDataArrayOptionalCompanies or other legal entities related to the user. May also contain related addresses and phone numbers.
accountData.typeIntegerOptionalType of the user's company. Recommended value: 0.
accountData.nameStringRecommendedName of the user's company.
accountData.mobilePhoneStringOptionalCell phone number of the user's company.
accountData.emailStringOptionalEmail address of the user's company.
accountData.alpha3CodeStringOptionalThree-letter country code of the user's company.
accountData.externalIdStringRecommendedUnique identifier of the user's company in your platform.
accountData.isActiveCompanyBooleanOptionalRelevant if the user has multiple companies. true if this company is the one currently selected in your platform, and its data should be shown in the widgets; false otherwise.
accountData.identifierArrayOptionalParameters that uniquely identify the user's company.
accountData.identifier.valueStringOptionalValue of the identifying parameter — for example, an SSN.
accountData.identifier.typeStringOptionalType of the identifying parameter: SSN (Social Security Number), EIN (Employer Identification Number), or ITIN (tax processing number for individuals not eligible for an SSN). Contact UPTIQ if you need other identifier types configured, including for countries outside the U.S.
accountData.companyIndustryStringOptionalThe company's industry, per the North American Industry Classification System (NAICS) — numeric code or title, any aggregation level. Contact UPTIQ if you need other industry classifications, including for countries outside the U.S.
accountData.annualRevenueStringOptionalCompany's annual revenue.
accountData.numberOfBusinessLocationsStringOptionalNumber of the company's locations.
accountData.numberOfEmployeesStringOptionalNumber of the company's employees.
accountData.addressObjectOptionalCompany's address.
accountData.address.streetStringOptionalBuilding number and street name.
accountData.address.streetNumberStringOptionalApartment or suite number.
accountData.address.cityStringOptionalCity where the company is registered.
accountData.address.stateStringOptionalState where the company is registered.
accountData.address.zipStringOptionalZip or postal code.
accountData.address.addressTypeStringOptional1 – Business, 2 – Home, 3 – Other, 4 – Bill Payee.
accountData.address.countryIsoCodeIntegerOptionalNumeric country code per ISO 3166.
accountData.phonesArrayOptionalCompany's phone number(s).
accountData.phones.countryCodeIntegerOptionalNumeric country code per ISO 3166.
accountData.phones.cityOrAreaCodeIntegerOptionalCity or area code.
accountData.phones.localNumberIntegerOptionalThe phone number itself.
accountData.phones.phoneTypeNameStringOptional1 – Business, 2 – Car, 3 – Home, 4 – Mobile, 5 – Pager, 6 – TDD, 7 – Other, 8 – Fax.

Did this page help you?