Upsight logo Back to top

Content Unit Types


Announcements are messages delivered to players in your app. Use the Upsight Dashboard to set up an announcement. No additional code is required.

Internal Cross-Promotions

Internal Cross-Promotions are customizable promotions for your own apps. See Help Center overview for more information. No additional code is required.

More Games Widget

Upsight’s More Games Widget displays specific apps that you decide to promote. Use the Upsight Dashboard to determine which apps are being displayed in your More Games Widget. No additional code is required for a basic More Game Widget.

Opt-In Data Collection

Opt-In Data Collection is an in-app promotion that gives players the option to provide you with valuable information like their email address, name, or age. Use the Upsight Dashboard to display an Opt-In Data Collection Content Unit in the same way that other Content Units are displayed. No additional code is required.


Rewards are items you define that are given to your users using the Upsight infrastructure. Any content unit can contain a reward for your user. See Help Center overview for more information.

After a content unit with a reward is displayed, the SDK sends the request:unlockedReward message to your delegate passing a reward object to your application. The PHReward object passed through this method has the following helpful properties:

  • name - The name of your reward as configured through the dashboard.
  • quantity - An integer representing the quantity associated with the reward.
  • receipt - A unique identifier that is used to detect duplicate reward unlocks. Your app should ensure that each receipt is only unlocked once.

Your delegate message unlocking the reward might look like this:

- (void)request:(PHPublisherContentRequest *)request unlockedReward:(PHReward *)reward
    if([ isEqualToString:@"yourRewardName"])
        // Your code to unlock the reward goes here...

Virtual Goods Promotion

A Virtual Goods Promotion is a full-display promotion used to increase in-app purchases.

If the Upsight servers are made aware that a given user has already purchased a non-consumable In-App Purchase item, it will not show Virtual Goods Promotion Content Units for that item to that user. This is to avoid showing the user a promotion for an item that they have already purchased.

You can use the Virtual Goods Promotion Content Unit to trigger In-App Purchase requests in your app. You must implement the following delegate method to get notified when In-App Purchase requests are triggered by VGPs:

- (void)request:(PHPublisherContentRequest *)request makePurchase:(PHPurchase *)purchase;

The PHPurchase object passed through this method contains the following properties:

  • productIdentifier - The product identifier for your purchase. This is a unique string used for Store Kit requests.
  • quantity - An integer representing the quantity associated with the purchase.
  • receipt - A unique identifier.

You are responsible for making an SKProductRequest as well as creating a SKPayment object and adding it to a payment queue to initiate the purchase, for complete information see In-App Purchase Programming Guide.

Note In earlier versions of Upsight, you had to call - [PHPurchase reportResolution:] to dismiss the Virtual Goods Promotion content unit. You no longer have to do this.