Model Reference

Descriptive reference of the main models used across SDK modules.


Table of Contents

  1. INPush
  2. INDevice
  3. INInApp
  4. INTopic
  5. INInbox
  6. INInboxCounters
  7. INCustomer
  8. INLiveActivity

INPush

File: push/src/models/INPush.h

Represents a push notification received or sent through the Indigitall platform.

PropertyTypeDescription
pushIdlongIndigitall internal identifier for the push notification
appKeyNSString *Public application identifier in Indigitall
titleNSString *Title of the push notification
bodyNSString *Body/content of the push notification
imageNSString *URL of the image attached to the notification
gifNSString *URL of the GIF attached to the notification
dataNSString *Extra information added from the Indigitall panel
actionINPushAction *Action executed when the user interacts with the notification
buttonsNSArray<INPushButton *> *Array of action buttons available in the notification
securedDataNSString *Encrypted/secured additional data
sendingIdNSString *Sending identifier
campaignIdNSString *Campaign identifier
contentStateNSDictionary *Content state as JSON (used for Live Activities)
clickedButtonintIndex of the button or notification tapped by the user
journeyStateIdintJourney state identifier
sendEventAckBOOLWhether the ACK event should be sent
applicationIdintApplication identifier
jsonPushNSDictionary *Full JSON representation of the push
eventAtNSString *Date/time of the event

Related models

INPushAction — Action associated with the push. Extends INCoreAction.

PropertyTypeDescription
typeActionTypeAction type: app, url, webview, call, market, share, noAction, wallet
destroyBOOLWhether the action is destructive
urlNSString *URL value for url type actions
webviewNSString *URL value for webview type actions
callNSString *Phone number for call type actions
marketNSString *App Store link for market type actions
shareNSString *Message to share for share type actions
walletNSString *Pass URL for wallet type actions
topicsNSArray *Topics the user will be subscribed to on action

INPushButton — Action button within a push notification.

PropertyTypeDescription
labelNSString *Button display text
actionINPushAction *Action triggered when the button is tapped
topicsNSArray *Topics associated with the button

INDevice

File: push/src/models/INDevice.h
Extends: INCoreDevice

Represents the user's device registered in the Indigitall platform. Extends INCoreDevice with iOS-specific push token support.

Properties from INCoreDevice

PropertyTypeDescription
deviceIDNSString *Unique Indigitall device identifier
externalCodeNSString *External code assigned to the device
platformNSString *Platform (e.g. iOS)
osNameNSString *Operating system name
osVersionNSString *Operating system version
deviceBrandNSString *Device brand
deviceModelNSString *Device model
deviceTypeNSString *Device type (mobile or tablet)
appVersionNSString *Current application version
sdkVersionNSString *SDK version
localeNSString *Device preferred language
timeZoneNSString *Current time zone
timeOffsetlongTime offset in hours
carrierNSString *Mobile network carrier
enabledNSNumber *Whether push notifications are enabled
configEnabledBOOLEnabled configuration state
externalApplicationsNSArray<INCoreExternalApp *> *Linked external applications
productNameNSString *Third-party product name (integrations)
productVersionNSString *Third-party product version

Own properties of INDevice

PropertyTypeDescription
pushTokenNSString *Device APNs push notification token

INInApp

File: inApp/src/models/INInApp.h

Represents an In-App message from the Indigitall platform.

PropertyTypeDescription
inAppIdintUnique In-App identifier
inAppWidthintIn-App width in points
inAppHeightintIn-App height in points
lastVersionIdintLast version identifier
codeNSString *In-App code identifier
nameNSString *In-App name
profileNSString *Associated profile (nullable)
propertiesINInAppProperties *Visual and behavioral properties of the In-App
showOnceintHow many times it will be shown (0 = unlimited)
expiredDateNSString *Expiration date
creationDateNSString *Creation date
cacheTtldoubleCache time-to-live in seconds
inAppShowINInAppShow *Display state of the In-App
customDataNSDictionary *Additional custom data
versionintObject version
inAppVersionintIn-App version
filtersINInAppFilters *Segmentation filters for the In-App

Related models

INInAppProperties — Visual and display properties.

PropertyTypeDescription
InAppContentUrlNSURL *URL of the In-App content
numberOfShowsintMaximum number of times to display
numberOfClicksintNumber of clicks registered
dismissForeverBOOLWhether it is permanently dismissed after closing
layoutINInAppLayout *Layout configuration
actionINInAppAction *Action triggered on interaction
showTimeintTime the In-App is displayed (in seconds)

INInAppShow — Display history for the In-App.

PropertyTypeDescription
timesShowedintNumber of times the In-App has been shown
timesClickedintNumber of times the In-App has been clicked
wasDismissedBOOLWhether the In-App was dismissed by the user

INInAppFilters — Segmentation and targeting filters.

PropertyTypeDescription
platformsNSArray *Target platforms
areasNSArray<NSNumber *> *Target geographic areas
audienceNSDictionary *Audience definition
topicsINInAppFiltersTopic *Topic-based filters
externalAppsNSArray<INCoreExternalApp *> *External app filters
deviceCodesNSArray *Specific target device codes
deviceCodesActiveBOOLWhether device code filtering is active
deviceTypesNSArray *Target device types
browserTypesNSArray *Target browser types
activePushDevicesBOOLWhether to target only push-enabled devices

INTopic

File: push/src/models/INTopic.h
Extends: INCoreTopic

Represents a topic (segment/category) that a device can subscribe to within the Indigitall platform.

PropertyTypeDescription
codeNSString *Unique topic code identifier
nameNSString *Visible topic name
parentCodeNSString *Parent topic code (for hierarchies)
visibleBOOLWhether the topic is visible to the user
subscribedBOOLWhether the device is subscribed to this topic
channelINChannelChannel the topic belongs to

INChannel enum

ValueDescription
PUSHPush notification channel
INAPPIn-App message channel
CHATChat channel
CHANNEL_NONENo channel

INInbox

File: inbox/src/INInbox.h

Represents the user's notification inbox (message center).

PropertyTypeDescription
domainInboxNSString *Inbox domain (read-only)
lastAccessNSString *Date/time of last inbox access
notificationsNSArray<INInboxNotification *> *List of notifications in the inbox
countintTotal number of notifications
pageSizeNSNumber *Page size for pagination
pageNSNumber *Current page number
totalPagesfloatTotal number of pages

Related model: INInboxNotification

Individual notification stored in the inbox.

PropertyTypeDescription
idInboxNotificationNSString *Unique notification identifier
externalIdNSString *External notification identifier
sentAtNSString *Date/time the notification was sent
inboxStatusINInboxStatus *Current status of the notification
sendingIdNSNumber *Sending identifier
campaignIdNSNumber *Campaign identifier
messageINInboxPush *Push message content
replacementsNSString *Template replacements
readBooleanWhether the notification has been read
categoryINInboxCategory *Notification category

INInboxMessageStatus enum

ValueDescription
SENTNotification was delivered
CLICKNotification was clicked
DELETEDNotification was deleted

INInboxCounters

File: inbox/src/models/INInboxCounters.h

Represents statistical counters for the user's inbox.

PropertyTypeDescription
clickintNumber of notifications that have been clicked
sentintNumber of notifications sent
deletedintNumber of notifications deleted
unreadINInboxUnread *Unread messages information

Related model: INInboxUnread

File: inbox/src/models/INInboxUnread.h

PropertyTypeDescription
countintNumber of unread messages
lastAccessNSString *Date/time of last access

INCustomer

File: customer/src/models/INCustomer.h

Represents the customer profile linked to a device in the Indigitall platform.

PropertyTypeDescription
_idNSString *Internal database record identifier
customerIdNSString *Customer identifier (external/business-side)
applicationIdNSString *Application identifier
createdAtNSString *Record creation date/time
updatedAtNSString *Last update date/time

INLiveActivity

File: liveActivity/src/models/INLiveActivity.h

Represents a Live Activity registered in the Indigitall platform. Live Activities display real-time information on the iOS Lock Screen and Dynamic Island.

PropertyTypeDescription
liveActivityIdNSString *Unique Live Activity identifier in Indigitall
createdAtNSString *Creation date/time
updatedAtNSString *Last update date/time
applicationIdintApplication identifier
liveActivityExternalIdNSString *External identifier provided by the iOS system
statusNSString *Current Live Activity status
iOSChannelIdNSString *iOS channel identifier (Live Activity push token)

Relationships

INPush
 ├── INPushAction (extends INCoreAction)
 │    └── ActionType {app, url, webview, call, market, share, noAction, wallet}
 └── INPushButton[]
      └── INPushAction

INDevice (extends INCoreDevice)
 └── INCoreExternalApp[]

INInApp
 ├── INInAppProperties
 │    ├── INInAppLayout
 │    └── INInAppAction
 ├── INInAppShow
 └── INInAppFilters
      ├── INInAppFiltersTopic
      └── INCoreExternalApp[]

INTopic (extends INCoreTopic)
 └── INChannel {PUSH, INAPP, CHAT, CHANNEL_NONE}

INInbox
 └── INInboxNotification[]
      ├── INInboxPush
      ├── INInboxStatus {SENT, CLICK, DELETED}
      └── INInboxCategory

INInboxCounters
 └── INInboxUnread

INCustomer

INLiveActivity

SDK Modules

ModelModulePodspec
INPush, INDevice, INTopicpush/indigitall-ios-push.podspec
INInAppinApp/indigitall-ios-inapp.podspec
INInbox, INInboxCountersinbox/indigitall-ios-inbox.podspec
INCustomercustomer/indigitall-ios-customer.podspec
INLiveActivityliveActivity/(liveActivity module)