Skip to main content

Overview

Onboarding tools manage user profiles and patient information required for consultations.

get_user_profile

Get the current user’s Arlo Health profile and patient information.

Parameters

None required.

Returns

{
  "accountId": "acc_abc123",
  "status": "ONBOARDED",
  "billingMode": "PAY_AS_YOU_GO",
  "paymentStatus": "ACTIVE",
  "onboardingComplete": true,
  "patients": [
    {
      "patientId": "pat_xyz789",
      "firstName": "John",
      "lastName": "Doe",
      "birthDate": { "year": 1990, "month": 3, "day": 15 },
      "gender": "Male",
      "province": "ON",
      "isDefault": true,
      "medications": [],
      "conditions": [],
      "allergies": []
    }
  ]
}
FieldDescription
accountIdThe user’s account ID
statusONBOARDED, REGISTERED, etc.
billingModeNONE, PAY_AS_YOU_GO, SUBSCRIPTION
paymentStatusPENDING, ACTIVE, etc.
onboardingCompleteWhether minimal onboarding is done
patientsArray of patient profiles (self or dependents)

Patient Fields

FieldDescription
patientIdUnique patient identifier
firstName, lastNamePatient’s name
birthDateObject with year, month, day
genderFemale, Male, or Other
provinceCanadian province code
isDefaultWhether this is the primary patient
medicationsList of current medications
conditionsList of medical conditions
allergiesList of allergies

update_patient_info

Update patient information for onboarding or profile changes.

Required Fields for Onboarding

ParameterTypeDescription
firstNamestringPatient’s first name
lastNamestringPatient’s last name
birthDateobject{ year, month, day }
genderstringFemale, Male, or Other
countrystringCA or US
provincestringProvince/state code

Completing Onboarding

ParameterTypeDescription
acceptTermsbooleanSet to true to complete onboarding
When acceptTerms=true and all required fields are present, the account status changes to ONBOARDED.

Optional Fields

ParameterTypeDescription
patientIdstringPatient ID to update (defaults to primary)
phonestringPhone number
emailstringEmail address
addressstringStreet address
citystringCity
zipstringPostal code
healthNumberstringProvincial health card number

Medical History Fields

These arrays replace existing values (not append):
ParameterTypeDescription
medicationsarray[{ title, description }]
conditionsarray[{ title, description }]
allergiesarray[{ title, severity }]

Example: Complete Onboarding

{
  "firstName": "John",
  "lastName": "Doe",
  "birthDate": { "year": 1990, "month": 3, "day": 15 },
  "gender": "Male",
  "country": "CA",
  "province": "ON",
  "acceptTerms": true
}

Example: Update Medical History

{
  "medications": [
    { "title": "Metformin", "description": "500mg twice daily" },
    { "title": "Lisinopril", "description": "10mg daily" }
  ],
  "conditions": [
    { "title": "Type 2 Diabetes", "description": "Diagnosed 2020" },
    { "title": "Hypertension", "description": "Well controlled" }
  ],
  "allergies": [
    { "title": "Penicillin", "severity": "severe" },
    { "title": "Sulfa drugs", "severity": "moderate" }
  ]
}

Province Codes

Canada: ON, BC, AB, SK, MB, QC, NB, NS, PE, NL, YT, NT, NU US: AL, AK, AZ, AR, CA, CO, CT, DE, FL, GA, HI, ID, IL, IN, IA, KS, KY, LA, ME, MD, MA, MI, MN, MS, MO, MT, NE, NV, NH, NJ, NM, NY, NC, ND, OH, OK, OR, PA, RI, SC, SD, TN, TX, UT, VT, VA, WA, WV, WI, WY, DC

validate_beta_code

Validate a beta access code for Arlo Health.
Arlo Health is in private beta. New users must validate a beta code before completing onboarding. Contact +1 (647) 494-0944 or keaton@arlohealth.ai for beta access.

Parameters

ParameterTypeRequiredDescription
betaCodestringYesThe beta access code to validate

Returns

On success:
{
  "valid": true,
  "message": "Beta code validated successfully"
}
On failure:
{
  "valid": false,
  "error": "Invalid beta code",
  "contact": "+1 (647) 494-0944 or keaton@arlohealth.ai"
}

Usage

Call validate_beta_code before update_patient_info for new users:
const validation = await validateBetaCode({ betaCode: "BETA123" });
if (!validation.valid) {
  // Prompt user to contact support for a valid code
  return;
}

// Proceed with onboarding
await updatePatientInfo({
  firstName: "John",
  // ...
  acceptTerms: true
});