OTIS Data Integration Functions
Create Triage User
Function name: otis-create-triage-user
Purpose: Builds a data packet and leverages ILAO’s Rest API to create a triage user record on ILAO’s website. This executes after we have validated the user’s zip code.
Parameters: Event object that contains base data; empty or missing values are set to null. Base data includes:
referral_source, varies by application
zip_code, user’s provided zip code
user_phone, phone number the user texted from
county, the county associated with the zip code
search, the incoming message texted by the user
flow_id, the phone number the user texted to
last_screen_viewed, set to sms-zip-code
oas_triage_problem
These are hard-coded within the function:
household_size, set to 1
triage_status, set to Started
oas_triage_problem uuid
Note
For eviction, the source is either eviction-spanish or eviction-english
Requires: Authentication with ILAO’s API
Returns: An object containing:
id, which is the uuid associated with the newly created user.
triage_id, which is the internal Drupal ID associated with the entity.
Widget: create_triage_user
Flow: Superbot main flows
SuperbotV2
SuperbotV3
OTIS Update Triage User
Function name: otis-update-triage-user
Purpose: Updates a triage user record on ILAO’s website based on interactions with the SMS intake system.
Parameters: Event object with data to update; UUID of existing triage user.
Requires: Authentication with ILAO’s REST OTIS API
Returns: Updated data packet
Status: Data packet based on event object generates; API integration not built.
Within Eviction SMS applications
This function is called when:
the user declines to proceed to intake
last screen viewed = sms-match-offered
intake_status = Offered
triage status = Program triage completed
when the user chooses to proceed to intake
last screen viewed = sms-match-offered
intake_status = Started
triage status = Program triage completed
intake_organization = UUID of the intake settings associated with the intake
triage_problem = UUID of the determined legal issue from ILAO’s legal issue taxonomy (in eviction, this is the eviction term).
when the user has provided household size information
last screen viewed = sms_household_size
event object contains household total, number of adults, and number of children
after we have collected the date of birth and calculated the user’s age
last_screen_viewed = sms_date_of_birth
event object contains age
after preferred language is set and all demographics data has been collected
last_screen_viwed = sms_demographics
event object contains demographic data
after all income has been collected and we’ve calculated total income and whether the user is over-income
when the user reaches an endpoint (etransferred, bypassed, exited to content)
if the user is diverted, intake status is set to Diverted and last screen viewed is set to sms_legal_issue_selector
if the user is etransferred, intake status is set to etransferred and last_screen_viewed is set to sms-confirmation
if the user in Cook County, last screen viewed is set to cook-county-exit
if the user is given counseling resources instead of intake, last screen viewed is set to sms-counselors-list
if the user has an unsupported legal issue, triage_status is set to Legal Issue and last screen viewed is set to sms-legal-issues
Within General OTIS SMS application
In progress