Rokt Documentation
  • Documentation
  • User Guide
  • SDK
  • API
  • Third-Party Integrations
  • Help

›Integrating the SDK

Getting Started

  • Introduction

Web SDK

  • Overview
  • Architecture
  • Integrating the Web SDK
  • Integration Examples

    • Confirmation Page Integration
    • Preparative Iframe
    • Page Identifier
    • Single Page Applications
    • Brand Conversion Integration
    • In Transaction/Cart Integration
    • Event-based Integration
    • Sandbox Integration
  • Integration Best Practices
  • Attributes
  • Security
  • Mobile In-App Web Pages
  • API

    • Rokt
    • Attributes
    • CartItem
    • Configuration
    • Placement
    • Subscriber
    • TriggerPageChangeOptions
    • Unsubscriber

iOS SDK

  • Overview
  • Version
  • Integrating the SDK

    • Integrating and Initializing the SDK
    • Launching an Overlay Placement
    • Launching an Embedded Placement
    • Recording a Brand Conversion
    • Sandbox Integration
  • Attributes
  • Security

Android SDK

  • Overview
  • Version
  • Integrating the SDK

    • Integrating and Initializing the SDK
    • Launching an Overlay Placement
    • Launching an Embedded Placement
    • Recording a Brand Conversion
    • Sandbox Integration
  • Attributes
  • Security

React Native SDK

  • Overview
  • Version
  • Integrating the SDK

    • Integrating and Initializing the SDK
    • Launching an Overlay Placement
    • Launching an Embedded Placement
    • Recording a Brand Conversion
    • Sandbox Integration

    Attributes

    • Core Attributes
    • Vertical Attributes
  • Security
Edit

Sandbox Integration

With a sandbox integration, you can pass a configuration flag to test against a sandbox environment. A sandbox environment is part of the Rokt production environment however it does not charge advertisers or generate revenue. It follows a normal offers, bidding, and matching process against your production configuration. As a result it can be used for acceptance testing before deploying to production.

The integration follows exactly the same steps as in previous examples, with an additional rokt.testsession attribute required to be passed to the execute function.

Overlay Placement Example

To run an overlay placement in the sandbox environment, the list of attributes passed to Rokt needs to be updated to include "rokt.testsession": "true". This can be done by updating the code from Step 5 of Launching an Overlay Placement to the following:

Kotlin

import com.rokt.roktsdk.Rokt
 
class ConfirmationActivity : Activity() {   
    override fun onCreate(savedInstanceState: Bundle?) {       
        super.onCreate(savedInstanceState)       
        ...    
 
        // Include any appropriate consumer attributes       
        val attributes = hashMapOf(               
                Pair("email", "j.smith@example.com"),
                Pair("rokt.testsession", "true"),
                Pair("firstname", "Jenny"),
                Pair("lastname", "Smith"),
                Pair("mobile", "(323) 867-5309"),
                Pair("postcode", "90210"),
                Pair("country", "US"))
 
        Rokt.execute("RoktExperience",               
            attributes,               
            object : Rokt.RoktCallback {                   
                override fun onUnload(reason: Rokt.UnloadReasons) {                               
                }                   
                override fun onLoad() {                            
                }                   
                override fun onShouldHideLoadingIndicator() {                          
                }                   
                override fun onShouldShowLoadingIndicator() {                       
                }               
            }       
        )  
        ...
    }    

Java

import com.rokt.roktsdk.Rokt;
 
class ConfirmationActivity : Activity() {   
    override fun onCreate(savedInstanceState: Bundle?) {       
        super.onCreate(savedInstanceState)       
        ...     
 
        Map<String,String> attributes = new HashMap<String, String>();
 
        attributes.put("email", "j.smith@example.com");
        attributes.put("rokt.testsession", "true");
        attributes.put("firstname", "Jenny");
        attributes.put("lastname", "Smith");
        attributes.put("mobile", "(323) 867-5309");
        attributes.put("postcode", "90210");
        attributes.put("country", "US");
 
        Rokt.INSTANCE.execute("RoktExperience",               
            attributes,               
            new Rokt.RoktCallback() {
                @Override
                public void onLoad() {
                }
                @Override
                public void onUnload(Rokt.UnloadReasons unloadReasons) {
                }
                @Override
                public void onShouldHideLoadingIndicator() {
                }
                @Override
                public void onShouldShowLoadingIndicator() {
                }
            }      
        )  
        ...
    }
}

Embedded Placement Example

To run an embedded placement in the sandbox environment, the list of attributes passed to Rokt needs to be updated to include "rokt.testsession": "true". This can be done by updating the code from Step 6 of Launching an Embedded Placement to the following:

Kotlin

import com.rokt.roktsdk.Widget
import com.rokt.roktsdk.Rokt
  
class ConfirmationActivity : Activity() {  
 
    private val roktCalllback = object : Rokt.RoktCallback {
        override fun onLoad() {
        }
 
        override fun onShouldShowLoadingIndicator() {
        }
 
        override fun onShouldHideLoadingIndicator() {
        }
 
        override fun onUnload(reason: Rokt.UnloadReasons) {
        }
    }
 
    override fun onCreate(savedInstanceState: Bundle?) {      
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)      
        ...
  
        // Include any appropriate consumer attributes
        val attributes = hashMapOf(
            Pair("email", "j.smith@example.com"),
            Pair("rokt.testsession", "true"),
            Pair("firstname", "Jenny"),
            Pair("lastname", "Smith"),
            Pair("mobile", "(323) 867-5309"),
            Pair("postcode", "90210"),
            Pair("country", "US")
        )
 
        // Widget placeholder mapping the placeholder view with placement location configuration
        val widget = findViewById<Widget>(R.id.roktWidget)
        val placeHolders = hashMapOf(
            Pair("RoktEmbedded1", WeakReference(widget))
        )
 
        Rokt.execute(
            viewName = "RoktExperience",
            attributes = attributes,
            callback = roktCalllback,
            placeholders = placeHolders
        )
        ...
    }
}

Java

import com.rokt.roktsdk.Widget;
import com.rokt.roktsdk.Rokt;
  
class ConfirmationActivity : Activity() {  
 
    private Rokt.RoktCallback roktCallback = new Rokt.RoktCallback() {
        @Override
        public void onLoad() {
        }
 
        @Override
        public void onShouldShowLoadingIndicator() {
        }
 
        @Override
        public void onShouldHideLoadingIndicator() {
        }
 
        @Override
        public void onUnload(@NotNull Rokt.UnloadReasons unloadReasons) {
        }
    };
 
    override fun onCreate(savedInstanceState: Bundle?) {      
        super.onCreate(savedInstanceState)      
        ...    
  
        Map<String, String> attributes = new HashMap<String, String>();
 
        attributes.put("email", "j.smith@example.com");
        attributes.put("rokt.testsession", "true");
        attributes.put("firstname", "Jenny");
        attributes.put("lastname", "Smith");
        attributes.put("mobile", "(323) 867-5309");
        attributes.put("postcode", "90210");
        attributes.put("country", "US");
 
        // Widget placeholder mapping the placeholder view with placement location configuration
        Widget widget = findViewById(R.id.roktWidget);
        Map<String, WeakReference<Widget>> placeHolders = new HashMap<>();
        placeHolders.put("RoktEmbedded1", new WeakReference<>(widget));
 
        Rokt.INSTANCE.execute("RoktExperience",
                attributes,
                roktCallback,
                placeHolders);
        ...
    }
}
← Recording a Brand ConversionAttributes →
RESOURCES
DocumentationUser GuideSDKAPIIntegration PartnersHelp
COMPANY
About UsContact UsCareersEngineering Blog
Rokt Documentation
Copyright © Rokt 2021 - All Rights Reserved