/*** * * SaaSquatch Type Definitions * * This file was automatically generated. DO NOT edit it by hand, instead edit the related JSON Schema file. * * Generated on 2026-03-20T21:11:42.771Z * ***/ /*** * UserCreatedClassicDisabled.schema.json * Generated on 2026-03-20T21:11:43.802Z * This file was automatically generated. DO NOT edit it by hand, instead edit the related JSON Schema file. ***/ /** * The user's unique identifier */ export type UserId = string /** * The user's unique account identifier */ export type AccountId = string /** * The user's email address */ export type Email = (string | null) /** * The user's first name */ export type FirstName = (string | null) /** * The user's last name */ export type LastName = (string | null) /** * The URL to an image of this user */ export type ImageUrl = (string | null) /** * The IP address of this user when they were first seen by SaaSquatch */ export type FirstSeenIP = (string | null) /** * The IP address of this user when they were most recently seen by SaaSquatch */ export type LastSeenIP = (string | null) /** * A timestamp of the date this user was created */ export type DateCreated = number /** * This user's unique locale */ export type Locale = (string | null) /** * The user's country code */ export type CountryCode = (string | null) /** * The primary referral code associated with the programId key * * This interface was referenced by `ReferralCodes`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9-]{1,64}$". */ export type ReferralCode = string /** * True if this user can be referred in a program by other users */ export type Referable = boolean /** * Any codes used to refer this user */ export type ReferredByCodes = string[] /** * The anonymous cookie user identifier associated with this user if applicable (see anonymous users) */ export type AnonymousCookieUserId = (string | null) /** * The date the referral was blocked */ export type DateBlocked = (string | null) /** * Any segments this user belongs to */ export type UserSegments = string[] /** * If the program's primary link is a vanity link then this will be the unencoded link, if not it is the UNKNOWN engagement medium and UNKOWN share medium link */ export type CleanLinkForGivenProgram = string /** * Share link associated with the DIRECT share medium */ export type DirectShareLink = string /** * Sent whenever a new user is created in SaaSquatch program where the classic program is disabled. */ export interface UserCreatedWebhookSchema { id: UserId accountId: AccountId email?: Email firstName?: FirstName lastName?: LastName imageUrl?: ImageUrl firstSeenIP?: FirstSeenIP lastSeenIP?: LastSeenIP dateCreated: DateCreated locale?: Locale countryCode?: CountryCode referralCodes?: ReferralCodes referable: Referable referredByCodes?: ReferredByCodes cookieId?: AnonymousCookieUserId dateBlocked?: DateBlocked customFields?: CustomFields segments?: UserSegments programShareLinks?: ProgramShareLinks } /** * A map of programs to referral codes. */ export interface ReferralCodes { [k: string]: ReferralCode } /** * Any custom fields set for this user */ export interface CustomFields { /** * This interface was referenced by `CustomFields`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9_]{1,64}$". */ [k: string]: (string | boolean | number | null) } /** * Links this user can share to make referrals */ export interface ProgramShareLinks { [k: string]: ProgramShareLink } /** * The primary share links available for this program * * This interface was referenced by `ProgramShareLinks`'s JSON-Schema definition * via the `patternProperty` "^[a-zA-Z0-9-]{1,64}$". */ export interface ProgramShareLink { cleanShareLink: CleanLinkForGivenProgram MOBILE: MobileShareLinks EMAIL: EmailShareLinks UNKNOWN: ShareLinks } /** * Share links tracked with the MOBILE engagement medium */ export interface MobileShareLinks { DIRECT: DirectShareLink } /** * Share links tracked with the EMAIL engagement medium */ export interface EmailShareLinks { DIRECT: DirectShareLink } /** * Share links tracked with the UNKNOWN engagement medium */ export interface ShareLinks { DIRECT: DirectShareLink }