Bounce Docs
  • Overview
    • ๐Ÿ‘‹Welcome to Bounce
  • Product Guides
    • ๐Ÿท๏ธLink - Authentic Phygitals
      • ๐Ÿ”ขLink Tag variants
    • ๐ŸŒFlex - Fan Experiences
      • ๐Ÿ”ŒSupported Platform
    • ๐Ÿ”ŽTrack - Metaverse Analytics
  • ๐Ÿ› ๏ธIntegration Guides
    • ๐Ÿ‘‹Integration Overview
    • ๐Ÿ“ฑWeb Portal
      • โน๏ธExperience Blocks
    • ๐Ÿ”—APIs & SDKs
      • Web notifications & forwarding
      • REST API
        • โ„น๏ธAPI Overview
        • ๐Ÿท๏ธLink API
        • ๐ŸŒFlex API
        • ๐ŸคPartner API
      • Bounce SDK
        • ๐ŸŒJavaScript (Web & RN)
        • ๐Ÿ‘พUnity (iOS & Android)
        • ๐Ÿค–Roblox
    • ๐Ÿ“ƒOn-chain Interface
    • ๐Ÿ›’E-commerce plugins
    • ๐Ÿค–Platform-specific guides
  • Partner Info
    • ๐ŸงพPlans & Pricing
    • ๐Ÿ“Brand Guidelines
    • โ”Help & Support
Powered by GitBook
On this page
  • Overview
  • Bounce Exclusives in Roblox
  • Installation
  • Installation
  • Usage & API
  • require
  • init
  • Schemas
  • getUnlockables
  • getUnlockablesFromPayload
  • track

Was this helpful?

  1. Integration Guides
  2. APIs & SDKs
  3. Bounce SDK

Roblox

Create exclusive items, exclusive spaces, and track conversion and engagement in Roblox

PreviousUnity (iOS & Android)NextOn-chain Interface

Last updated 1 year ago

Was this helpful?

Try out the Bounce for Roblox Login to Claim flow for

Overview

The Bounce SDK for Roblox lets you easily create exclusive Roblox experiences and track user engagement from within your Roblox place.

With the Bounce SDK you can:

โœ… Create exclusive items in your place that are claimable via Bounce Link tags, claim codes and QRs.

โœ… Claim exclusive Limiteds via Bounce Link, tied to Roblox accounts and usable across places.

โœ… Designate exclusive in-place spaces only accessible by specific users (verified product holders, users who have completed engagement campaign requirements, etc)

โœ… Track engagement within your Roblox place with custom events for claims, spaces and more.

Bounce Exclusives in Roblox

Roblox exclusives can be granted to users via two different delivery flows:

๐Ÿ”— Claim via Roblox Login (OAuth) that directly grants exclusives to a user's Roblox Id.

๐Ÿ”— In-game deeplinks that are verified via the Bounce server.

Login to Claim Flow

In the login claim flow, Roblox users can authenticate themselves by logging in with their Roblox account on either the Bounce website, an embedded Bounce portal, or a 3rd party site. This allows Bounce to securely link any exclusive (UGC item, Limited, private map area, etc) to a Roblox user. These exclusives are activated when a user enters the target Roblox place.

The Login to Claim flow enables the following:

  • Exclusives tied directly to Roblox user's id.

  • Easily link engagement across digital platforms. For example:

    • A campaign where a user links their Roblox and Discord accounts, and receives Roblox items based on Discord roles, or Discord roles based on Roblox inventory.

  • Deeper analytics of user engagement across platforms for more complete user profiles.

Roblox Place Deeplinks

Benefits of the deeplink flow are:

  • Quick and direct access to a Roblox place, no additional sign-in necessary.

Installation

Installation

The Bounce SDK is a ModuleScript. Please contact the Bounce team at dev@letsbounce.gg for access.

Add the BounceSDK ModuleScript to Roblox Studio. The BounceSDK should be accessed via server-side scripts ONLY, so we recommend placing it within your ServerScriptService.

Usage & API

Before using the BounceSDK for Roblox, you must obtain an API key. Please contact dev@letsbounce.gg for your API key.

require

You must require the BounceSDK within your desired script.

-- NOTE: Depending on your script location, your path to the 
-- BounceSDK module may look different
local BounceSDK = require(script.Parent.BounceSDK)

init

Initialize the BounceSDK with your API key. You MUST initialize before use.

Definition

function BounceSDK.init(apiKey: string)
Parameter
Description
Required

apiKey

Your Roblox BounceSDK API key

YES

Example

-- init BounceSDK
BounceSDK.init("YOUR_API_KEY")

Schemas

Common data types exported from the BounceSDK. Consist of:

  • Unlockable

  • TrackEvent

Definitions

-- Unlockable are for Place specific unlockables 
export type Unlockable = {
	id: string,
	unlockableType: string,
	name: string,
	itemId: string | nil	
}

-- TrackEvents are to track targeted engagement
export type TrackEvent = {
	id: string,
	value: string
}

getUnlockables

Definition

function BounceSDK.getUnlockables(
	player: Player, 
	handleUnlockable: nil | (player: Player, unlockable: Unlockable) -> any
): {Unlockable}

Parameters

Parameter
Description
Required

player

The Player to query

YES

handleUnlockable

A callback function triggered for each unlockable for a specific player.

NO

Return Value

{Unlockable}: An array of Unlockables. Can either use this array or the handleUnlockable utility callback function.

Example

-- callback function to look for specific unlockable
local handleUnlockable = function(player: Player, unlockable: BounceSDK.Unlockable)
	-- Check for specific unlockable item
	if unlockable.name == "Bounce Helmet" then
	-- Set flag that this player is eligible for item
	helmetEligible[player.UserId] = true
	end
end
local unlockables = BounceSDK.getUnlockables(player, handleUnlockable)

getUnlockablesFromPayload

Gets unlockables for a Player using encrypted Bounce Data that the user contains when launching the Roblox Place.

Definition

function BounceSDK.getUnlockablesFromPayload(
	player: Player, 
	handleUnlockable: nil | (player: Player, unlockable: Unlockable) -> any
): {Unlockable}

Parameters

Parameter
Description
Required

player

The Player to query

YES

handleUnlockable

A callback function triggered for each unlockable for a specific player.

NO

Return Value

{Unlockable}: An array of Unlockables. Can either use this array or the handleUnlockable utility callback function.

Example

-- callback function to look for specific unlockable
local handleUnlockable = function(player: Player, unlockable: BounceSDK.Unlockable)
	-- Check for specific unlockable item
	if unlockable.name == "Bounce Helmet" then
	-- Set flag that this player is eligible for item
	helmetEligible[player.UserId] = true
	end
end
local unlockables = BounceSDK.getUnlockablesFromPayload(player, handleUnlockable)

track

Track user engagement using specific track events. For

Definition

function BounceSDK.track(player: Player, event: TrackEvent)

Parameters

Parameter
Description
Required

player

The Player to query

YES

event

The event data to track

YES

Return Value

nil

Example

-- fire track event
BounceSDK.track(player, {["id"] = BOUNCE_HELMET_ID, ["value"] = "1"})

Below is a demo Login to Claim (OAuth) flow. You can !

Bounce Link tags can issue secure deeplinks into Roblox experiences that allow users to claim exclusives. Deeplinks are and exclusives are linked to the current Roblox user's ID.

Gets unlockables for a PlayerId for the current place. Refer to above for BounceSDK specific types.

๐Ÿ› ๏ธ
๐Ÿ”—
๐Ÿค–
unlockables here!
try for yourself on our website
verified through the Bounce SDK
Schemas
Cover
  1. Prompt Roblox login

Cover
  1. Select your Roblox account

Cover
  1. Authorize and connect your Roblox account

Cover
  1. Bounce to Roblox experience!