Models Reference

Descriptive reference of the main models used across SDK modules.

Table of Contents

  1. Push
  2. Device
  3. Customer
  4. Inbox
  5. InApp
  6. LiveActivity
  7. Topic

Push

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx

Represents a push notification received from the Indigitall platform. Used as the message field inside InboxNotifications and delivered via the OnPushSuccessType callback.

PropertyTypeRequiredDescription
titlestringNoTitle of the push notification displayed to the user
bodystringNoMain text body of the push notification
imagestringNoURL of the image to display in the notification
datastringNoCustom payload string to pass arbitrary data to the app
securedDatastringNoDecrypted secured payload attached to the notification
actionPushActionNoAction to execute when the user taps the notification
buttons[PushButton]NoTuple of action buttons displayed in the expanded notification

Related models

PushAction — Defines the action executed when a push notification or button is tapped.

PropertyTypeDescription
urlstring | nullURL to open
appstring | nullDeep-link or activity class name to open
marketstring | nullMarket URL or package name to open
sharestring | nullText content to share
callstring | nullPhone number to dial
noActionstring | nullMarker for no-action behaviour
clickedButtonnumber | nullIndex of the button clicked (-1 if notification body was tapped)

PushButton — An action button shown in the expanded notification.

PropertyTypeDescription
labelstringText label displayed on the button
actionPushActionAction executed when the button is tapped

Device

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx

Represents the registered device in the Indigitall platform. Returned on SDK initialisation and device enable/disable callbacks via OnDeviceSuccessType.

PropertyTypeRequiredDescription
enablebooleanYesWhether the device is currently enabled for push delivery
deviceIdstringYesUnique Indigitall device identifier
pushTokenstringYesPlatform push token (FCM / APNs)
platformstringYesPlatform identifier (e.g. android, ios)
productNamestringYesSDK product name (e.g. reactnative)
productVersionstringYesSDK product version (e.g. 2.19.0)
osNamestringYesOperating system name
osVersionstringYesOperating system version
deviceBrandstringYesDevice manufacturer brand
deviceModelstringYesDevice hardware model
operatorstringYesMobile carrier / operator name
deviceTypestringYesForm factor type (e.g. phone, tablet)
appVersionstringYesHost application version
localestringYesDevice locale (e.g. en_US)
timeZonestringYesDevice time zone identifier (e.g. Europe/Madrid)
timeOffsetstringYesUTC offset of the device time zone
externalApps[ExternalApps]YesTuple of external applications registered on the device

Related models

ExternalApps — Represents an external app linked to the device.

PropertyTypeDescription
idnumberInternal identifier of the external application
namestringDisplay name of the external application
codestringCode identifier of the external application

LADevice is a variant of Device used exclusively for Live Activity sessions. It has the same fields as Device except it omits pushToken and externalApps.


Customer

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx · Class: Customer (src/Customer.tsx)

Represents the customer (end user) profile in the Indigitall platform. Returned via OnCustomerSuccessType.

PropertyTypeRequiredDescription
idstringYesInternal Indigitall customer identifier
customerIdstringYesExternal customer identifier provided by the app
applicationIdstringYesIndigitall application identifier
createdAtstringYesISO 8601 timestamp of customer profile creation
updatedAtstringYesISO 8601 timestamp of the last profile update


Inbox

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx · Class: Inbox (src/Inbox.tsx)

Represents the paginated inbox returned by the Indigitall platform. Delivered via OnInboxSuccessType.

PropertyTypeRequiredDescription
lastAccessstringYesISO 8601 timestamp of the last inbox access
notifications[InboxNotifications]YesTuple of all notifications in the current page
newNotifications[InboxNotifications] | nullNoNotifications received since the last access
countnumberYesTotal number of notifications across all pages
pagesizenumberYesNumber of notifications per page
numPagenumberYesCurrent page index (zero-based)

Related models

InboxNotifications — A single notification entry inside the inbox.

PropertyTypeDescription
idstringUnique identifier of the inbox notification record
externalIdstringExternal identifier associated with the notification
sentAtstringISO 8601 timestamp of when the notification was sent
statusstringCurrent status of the notification (e.g. read, unread)
sendingIdnumberIdentifier of the sending campaign instance
campaignnumberIdentifier of the campaign this notification belongs to
messagePushThe push notification content (see Push)
readbooleanWhether the notification has been read by the user
categoryInboxCategoryCategory to which this notification belongs

InboxCategory — Category associated with an inbox notification.

PropertyTypeDescription
idnumberInternal identifier of the category
codestring | nullCode identifier of the category
namestring | nullDisplay name of the category

MessageCount — Summary counters for inbox messages. Returned via OnInboxMessageCountSuccessType.

PropertyTypeDescription
clicknumberNumber of clicked notifications
sentnumberNumber of sent notifications
deletednumberNumber of deleted notifications
lastAccessnumberUnix timestamp of the last inbox access
countnumberTotal number of notifications in the inbox

InApp

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx · Class: InApp (src/InApp.tsx)

Represents an in-app message retrieved from the Indigitall platform. Delivered via OnInAppOnSuccessType.

PropertyTypeRequiredDescription
inAppIdstringYesUnique identifier of the in-app message
lastVersionIdstringYesIdentifier of the latest version of this in-app message
showOncestringNoFlag indicating whether the in-app should only be shown once
numberOfShowsstringNoMaximum number of times the in-app may be shown
creationDatestringYesISO 8601 timestamp of when the in-app was created
expiredDatestringNoISO 8601 timestamp after which the in-app should no longer be shown
propertiesInAppPropertiesYesDisplay and interaction properties of the in-app
renewalTimestringNoDuration after which the in-app can be shown again
schemaInAppSchemaYesSchema defining the code and dimensions of the in-app
versionnumberYesVersion number of this in-app message

Related models

InAppSchema — Defines the template and dimensions of the in-app.

PropertyTypeDescription
codestringTemplate code identifying the in-app schema
widthnumberWidth of the in-app container in pixels
heightnumberHeight of the in-app container in pixels

InAppProperties — Display and interaction properties for the in-app.

PropertyTypeDescription
contentUrlstringURL of the HTML content to render inside the in-app
showTimestringDuration (in seconds) the in-app remains visible
layoutInAppLayoutLayout styling options
actionInAppActionDefault action when the in-app content is tapped

InAppLayout — Styling options for the in-app container.

PropertyTypeDescription
borderRadiusstringCSS border-radius value for the container

InAppAction — Action triggered when the in-app content is tapped.

PropertyTypeDescription
urlstringURL to open on tap

LiveActivity

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx · Class: LiveActivity (src/LiveActivity.tsx)

Represents a Live Activity session registered in the Indigitall platform (iOS only). Returned via OnEnabledLASuccessType.

PropertyTypeRequiredDescription
liveActivityIdstringYesUnique Indigitall identifier for the Live Activity
createdAtstringYesISO 8601 timestamp of when the Live Activity was registered
updatedAtstringYesISO 8601 timestamp of the last update
applicationIdnumberYesIndigitall application identifier
liveActivityExternalIdstringYesExternal identifier for the Live Activity provided by the app
statusstringYesCurrent status of the Live Activity (e.g. active, dismissed)
androidTopicIdstringNoAssociated Android topic ID (used for cross-platform campaigns)

Related models

LADevice — Variant of Device used during Live Activity sessions. Contains all Device fields except pushToken and externalApps. Returned via OnLADeviceSuccessType.

PushToStartToken — Token used to start a Live Activity via push (iOS 17.2+).

PropertyTypeDescription
tokenstringThe push-to-start token string
iosAttributesTypestring | nulliOS attributes type associated with the Live Activity
liveActivityExternalIdstring | nullExternal identifier of the associated Live Activity

Topic

Package: indigitall-react-native-plugin · File: src/models/modelType.tsx

Represents a segmentation topic in the Indigitall platform. Used to group devices for targeted push and Live Activity campaigns. Returned via OnTopicSuccessType.

PropertyTypeRequiredDescription
codestringYesUnique code identifier for the topic
namestringYesHuman-readable display name of the topic
parentCodestringNoCode of the parent topic, enabling hierarchical topic structures
visiblebooleanYesWhether the topic is visible and available for subscription in the app UI
subscribedbooleanYesWhether the current device is subscribed to this topic