This page defines the API specifications required to configure SDK for using UnifID and its integrated ID vendors. You can integrate and use multiple ID vendors in a one-time configuration.
InMobiUserDataTypes
to capture the hashed PII data.InMobiUserDataModel
.InMobiUnifiedIdService.reset()
before InMobiUnifiedIdService.push(userDataModel)
.InMobiUnifiedIdService.push(null)
. Call this API for every session.It is recommended to pre-initialize the InMobi SDK before initializing the mediation SDK, but it is not mandatory. This ensures seamless integration as UnifID APIs are enabled before monetization begins. This step doesn't affect the mediation stack.
IMUnifiedIdService
is a new class and it consists of the following APIs.
API |
Syntax |
Description |
Push |
|
You should use this API to submit the hashed PII data to the InMobi Id Service. Every time you call this API, the SDK requests InMobi ID Service. |
Push | InMobiUnifiedIdService.push(null); |
You should use this API to pass the MAID (Mobile Ad ID) to the InMobi ID Service. Every time you call this API, the SDK requests InMobi ID Service. You should call this API at the beginning of every app session. |
Fetch |
|
You should use this to get the UnifiedIDs. If the UnfIiedIDs expire, the InMobi Id service receives the call to refresh the IDs passed to you. |
Reset |
|
You should use this API to clear all the UnifIDs and signatures stored locally in the SDK. |
Publisher Provided ID | setPublisherProvidedUnifiedID <key-value> - <parners> |
You should use this API to pass Universal IDs obtained from your direct relationship with ID vendors. See the full list in the ’IM SDK’ section. |
IMUserDataTypes
class holds the different variants of user data that you pass. First, you should create an instance IMUserDataTypes
and set the corresponding values for the IMUserDataModel
instance. The system passes the instance IMUserDataModel
to fetch the function.
Property |
Type |
Purpose |
md5 |
String |
To provide hashed data using md5 hashing algorithm. |
sha1 | String | To provide hashed data using SHA1 hashing algorithm. |
sha256 |
String |
To provide hashed data using SHA256 hashing algorithm. |
Property |
Type |
Purpose |
phoneNumber |
IMUserDataTypes |
To provide a phone number in different variants (md5, sha1, and so on). |
emailId |
IMUserDataTypes |
To provide email id in different variants (md5, sha1, and so on.) |
Extras |
Dictionary |
To provide any extra information. |
You must note some data types, such as email ID, are a prerequisite for some Identity partners.
SDK calls the “onFetchCompleted” function to notify you about successfully submitting the hashed PII data to the InMobi ID Service. It also shares the list of Universal IDs in the form of a dictionary. SDK doesn't return expired Universal IDs and calls this function only on the Main Thread.
Function |
Syntax |
onFetchCompleted |
onFetchCompleted(response: Dictionary?, error: Error?) |
If you set an error object, the SDK calls this function to notify you about the error while submitting the hashed PII data to the InMobi Id Service.
You should use this function to pass the universal IDs obtained through your direct partnership with different ID partners (e.g. LiveRamp, ID5, etc.), upstream to demand partners, or to other ad exchanges. It helps you to monetize your inventory across the ecosystem. Essentially, it is an existing API within the SDK that enables you to pass universal IDs to InMobi. When both universal IDs and the SDK UnifID service are present, the SDK UnifID service takes higher precedence.
Function |
Syntax |
setPublisherProvidedUnifiedId |
setPublisherProvidedUnifiedId(ids: Dictionary) |
Here is the list of supported ID Partners. In the "key" value, the publisher needs to adhere to the naming convention (all lowercase).
ID Partners | Key Value |
LiveRamp | liveramp.com |
ID5 | id5-sync.com |
BritePool | britepool.com |
The Trade Desk (UID2) | uidapi.com |
LiveIntent | liveintent.com |
PubCommon | pubcid.org |
Nextroll | nextroll.com |
Parrable | parrable.com |
TapAd | tapad.com |
ZeoTap | zeotap.com |
Criteo | criteo.com |
UIDTTD | adserver.org |
Net | netid.de |
NeustarFabrick | neustar.biz |
Halo | audigent.com |
Lotame Panorama | crwdcntrl.net |
Merkle | merkleinc.com |
Quantcast | quantcast.com |
IntentIQ | intentiq.com |
DMD | hcn.health |
IDx | dx.lat |
Verizon Media Connect | verizonmedia.com |
Media Wallah Open Link | mediawallahscript.com |
NovatiqSnowflake | novatiq.com |
DeepIntent | deepintent.com |
Admixer | admixer.net |
Amx | amxrtb.com |
Epsilon | pubcid.org |
To create an ad request, the SDK uses the getUids API internally.
Function |
Syntax |
getUids |
getUids() -> Dictionary? |
If you set an error object, the SDK calls this function to notify you about the error while submitting the hashed PII data to the InMobi Id Service.
By installing this SDK update, you agree that your Children Privacy Compliance setting remains accurate or that you will update that setting, whenever there is a change in your app's audience. You may update the app's Children Privacy Compliance settings at https://publisher.inmobi.com/my-inventory/app-and-placements.