Assume you would like to send the email address of the incident.caller to the other side. incident.caller is a reference and looks like
[display_value:Taylor Vreeland, link:https://dev78307.service-now.com/api/now/v2/table/sys_user/46bac3d6a9fe1981005f299d979b8869]
To extract the user you can use the getTableByLink function
if(!(incident.caller_id instanceof String)){
replica.callerMail = nodeHelper.getTableByLink(incident.caller_id?.link)?.email
}
As a side-note that the user table has much more fields
[
default_perspective:
first_name:Fred
city:
name:Fred Luddy
mobile_phone:
sys_mod_count:10
introduction:
source:
internal_integration_user:false
avatar:
location:[...]
latitude:
photo:
zip:
email:fred.luddy@example.com
sys_updated_on:2020-04-03 20:40:35
sys_id:5137153cc611227c000bbd1bd8cd2005
time_sheet_policy:
state:
vip:false
calendar_integration:1
cost_center:[...]
agent_status:
notification:2
user_password:...
home_phone:
preferred_language:en
country:
sys_created_by:GUEST
building:
sys_created_on:2004-05-02 00:00:00
longitude:
sys_domain:[...]
geolocation_tracked:false
on_schedule:
company:[...]
department:[...]
last_position_update:
last_name:Luddy
locked_out:false
roles:admin, itil
middle_name:
manager:
schedule:
ldap_server:
last_login:
street:
title:Programmer
date_format:
employee_number:
web_service_access_only:false
sys_domain_path:/
time_format:
sys_class_name:sys_user
sys_updated_by:developer.program@snc
password_needs_reset:false
user_name:fred.luddy
failed_attempts:
time_zone:US/Pacific
enable_multifactor_authn:false
phone:
last_login_time:
gender:Male
sys_tags:
active:true].