intercom-client
Version:
Official Node bindings to the Intercom API
129 lines (128 loc) • 4.44 kB
TypeScript
/**
* This file was auto-generated by Fern from our API Definition.
*/
import * as Intercom from "../../../index";
/**
* Visitors are useful for representing anonymous people that have not yet been identified. They usually represent website visitors. Visitors are not visible in Intercom platform. The Visitors resource provides methods to fetch, update, convert and delete.
*/
export interface Visitor {
/** Value is 'visitor' */
type?: string;
/** The Intercom defined id representing the Visitor. */
id?: string;
/** Automatically generated identifier for the Visitor. */
user_id?: string;
/** Identifies if this visitor is anonymous. */
anonymous?: boolean;
/** The email of the visitor. */
email?: string;
/** The phone number of the visitor. */
phone?: string;
/** The name of the visitor. */
name?: string;
/** The pseudonym of the visitor. */
pseudonym?: string;
avatar?: Visitor.Avatar;
/** The id of the app the visitor is associated with. */
app_id?: string;
companies?: Visitor.Companies;
location_data?: Visitor.LocationData;
/** The time the Lead last recorded making a request. */
las_request_at?: number;
/** The time the Visitor was added to Intercom. */
created_at?: number;
/** The time the Visitor was added to Intercom. */
remote_created_at?: number;
/** The time the Visitor signed up for your product. */
signed_up_at?: number;
/** The last time the Visitor was updated. */
updated_at?: number;
/** The number of sessions the Visitor has had. */
session_count?: number;
social_profiles?: Visitor.SocialProfiles;
/** The id of the admin that owns the Visitor. */
owner_id?: string;
/** Whether the Visitor is unsubscribed from emails. */
unsubscribed_from_emails?: boolean;
/** Identifies if this visitor has marked an email as spam. */
marked_email_as_spam?: boolean;
/** Identifies if this visitor has had a hard bounce. */
has_hard_bounced?: boolean;
tags?: Visitor.Tags;
segments?: Visitor.Segments;
/** The custom attributes you have set on the Visitor. */
custom_attributes?: Record<string, string>;
/** The referer of the visitor. */
referrer?: string;
/** The utm_campaign of the visitor. */
utm_campaign?: string;
/** The utm_content of the visitor. */
utm_content?: string;
/** The utm_medium of the visitor. */
utm_medium?: string;
/** The utm_source of the visitor. */
utm_source?: string;
/** The utm_term of the visitor. */
utm_term?: string;
/** Identifies if this visitor has do not track enabled. */
do_not_track?: boolean;
}
export declare namespace Visitor {
interface Avatar {
/** */
type?: string;
/** This object represents the avatar associated with the visitor. */
image_url?: string;
}
interface Companies {
/** The type of the object */
type?: "company.list";
companies?: Intercom.unstable.Company[];
}
interface LocationData {
/** */
type?: string;
/** The city name of the visitor. */
city_name?: string;
/** The continent code of the visitor. */
continent_code?: string;
/** The country code of the visitor. */
country_code?: string;
/** The country name of the visitor. */
country_name?: string;
/** The postal code of the visitor. */
postal_code?: string;
/** The region name of the visitor. */
region_name?: string;
/** The timezone of the visitor. */
timezone?: string;
}
interface SocialProfiles {
/** The type of the object */
type?: "social_profile.list";
social_profiles?: string[];
}
interface Tags {
/** The type of the object */
type?: "tag.list";
tags?: Tags.Tags.Item[];
}
namespace Tags {
type Tags = Tags.Item[];
namespace Tags {
interface Item {
/** The type of the object */
type?: "tag";
/** The id of the tag. */
id?: string;
/** The name of the tag. */
name?: string;
}
}
}
interface Segments {
/** The type of the object */
type?: "segment.list";
segments?: string[];
}
}