Reference API Roblox

Engine API

Website

Related

Reference API Roblox

AdService

The service responsible for in-experience advertising.

This class is not creatable. Instances of this class cannot be created with Instance.new.
This class is a service. It is a singleton that may be acquired with GetService.
Tags: [NotCreatable, Service]

Member index 41

HistoryMember
655CreateAdRewardFromDevProductId(devProductId: int64): AdReward
712GetAdAvailabilityNowAsync(adFormat: AdFormat): Dictionary
712GetAdAvailabilityNowForUniverseAsync(adFormat: AdFormat, universeId: int64, isUniversalAppDM: bool): Dictionary
565GetAdTeleportInfo(): Tuple
712GetCampaignEligibilityAsync(campaignId: string, player: Player = Player): Dictionary
580GetReportAdInfo(): Array
719GetUniversalAppAdsEligibility(): Dictionary
657HandleWhyThisAdClicked(advertiserName: string, payerName: string): null
612HideEudsaDisclosure(): null
732IsAdLoaded(adFormat: AdFormat): bool
657OnDemandVideoCompleteFromUI(result: ShowAdResult, encryptedAdTrackingData: string, encryptionMetadata: string, rewardDetails: string): null
681RegisterAdOpportunityAsync(instance: Instance, placementId: int64?): null
716RegisterDisclosureButton(disclosureButton: GuiButton, adIntegrationPlacementId: string): null
736RegisterImpressionSource(instance: Instance, adIntegrationPlacementId: string): null
573ReturnToPublisherExperience(adTeleportMethod: AdTeleportMethod): null
627SetAdGuiInteractivityHandlerInitialized(): null
675ShowRewardedVideoAdAsync(player: Player, reward: AdReward, placementId: int64?): ShowAdResult
692ShowRewardedVideoAdAtClientAsync(universeId: int64): ShowAdResult
573ShowVideoAd(): null
692SubmitAdNotification(universeId: int64, isShowAdSuccessful: bool, earnedReward: bool, rewardProductName: string, rewardProductImageAssetId: int64): null
681UnregisterAdOpportunity(instance: Instance): null
547AdTeleportEnded()
547AdTeleportInitiated()
674RewardedVideoAdEnded()
674RewardedVideoAdStarted()
617ShowDynamicEudsaDisclosure(advertiserName: string, payerName: string)
655ShowReportAdPopup(adInfo: Dictionary)
462VideoAdClosed(adShown: bool)
627adGuiRegisterUI(adGui: Instance)
712OnImmersiveBrandedAdDisclosureButtonActivated(data: Dictionary): null
657onDemandVideoPlayInUI(data: Dictionary): VideoFrame
inherited from Instance
553Archivable: bool
670Capabilities: SecurityCapabilities
723IsInSandbox: bool
553Name: string
553Parent: Instance
702PredictionMode: PredictionMode
670Sandboxed: bool
680UniqueId: UniqueId
576AddTag(tag: string): null
573ClearAllChildren(): null
462Clone(): Instance
573Destroy(): null
486FindFirstAncestor(name: string): Instance
486FindFirstAncestorOfClass(className: string): Instance
486FindFirstAncestorWhichIsA(className: string): Instance
486FindFirstChild(name: string, recursive: bool = false): Instance
486FindFirstChildOfClass(className: string): Instance
486FindFirstChildWhichIsA(className: string, recursive: bool = false): Instance
486FindFirstDescendant(name: string): Instance
563GetActor(): Actor
486GetAttribute(attribute: string): Variant
462GetAttributeChangedSignal(attribute: string): RBXScriptSignal
631GetAttributes(): Dictionary
648GetChildren(): Instances
462GetDebugId(scopeLength: int = 4): string
707GetDescendants(): Instances
486GetFullName(): string
706GetStyled(name: string, selector: string?): Variant
657GetStyledPropertyChangedSignal(property: string): RBXScriptSignal
576GetTags(): Array
576HasTag(tag: string): bool
486IsAncestorOf(descendant: Instance): bool
486IsDescendantOf(ancestor: Instance): bool
664IsPropertyModified(property: string): bool
698QueryDescendants(selector: string): Instances
573Remove(): null
576RemoveTag(tag: string): null
664ResetPropertyToDefault(property: string): null
573SetAttribute(attribute: string, value: Variant): null
462WaitForChild(childName: string, timeOut: double): Instance
648children(): Instances
553clone(): Instance
573destroy(): null
553findFirstChild(name: string, recursive: bool = false): Instance
648getChildren(): Instances
553isDescendantOf(ancestor: Instance): bool
573remove(): null
462AncestryChanged(child: Instance, parent: Instance)
462AttributeChanged(attribute: string)
462ChildAdded(child: Instance)
462ChildRemoved(child: Instance)
462DescendantAdded(descendant: Instance)
462DescendantRemoving(descendant: Instance)
500Destroying()
657StyledPropertiesChanged()
553childAdded(child: Instance)
inherited from Object
647ClassName: string
647className: string
647GetPropertyChangedSignal(property: string): RBXScriptSignal
647IsA(className: string): bool
650isA(className: string): bool
647Changed(property: string)

Removed member index 4

HistoryMember
657GetAdAvailability(adFormat: AdFormat): Variant
657AdAvailabilityChanged(adFormat: AdFormat, adAvailabilityResult: Variant)
688PortalPrompt(destinationId: int64, portal: Instance, requiresNoButton: bool)
655ShowStaticEudsaDisclosure()

Description

AdService is responsible for in-experience advertising. This includes rewarded video and ad integrations.

History 74

Members 41

AdTeleportEnded

Parameters (0)
No parameters.

History 1

AdTeleportInitiated

Parameters (0)
No parameters.

History 1

CreateAdRewardFromDevProductId

Parameters (1)
devProductIdint64
Returns (1)
AdReward

Constructs an AdReward that wraps the given developer product so it can be passed to ShowRewardedVideoAdAsync. When the user watches the entire rewarded video ad, the developer product identified by devProductId is granted through the ProcessReceipt callback with a ProductPurchaseChannel of ProductPurchaseChannel.AdReward.

History 1

GetAdAvailabilityNowAsync

Parameters (1)
adFormatAdFormat
Returns (1)
Dictionary

This method may only be called from a Script with RunContext.Client.

Note that you should call this method as close as possible to the moment you plan to show the ad. For example, if you have a "Watch video ad to get a reward" button in a shop menu, only call this method when the user opens the shop menu. This approach improves performance by preventing ads from unnecessarily being held in memory, and it benefits CPM (cost-per-thousand impressions) and earnings by optimizing the ad fill rate.

This function yields. It will block the calling thread until completion.

History 2

Tags: [Yields]

GetAdAvailabilityNowForUniverseAsync

Parameters (3)
adFormatAdFormat
universeIdint64
isUniversalAppDMbool
Returns (1)
Dictionary
This function yields. It will block the calling thread until completion.

History 2

Tags: [Yields]

GetAdTeleportInfo

Parameters (0)
No parameters.
Returns (1)
Tuple

History 1

GetCampaignEligibilityAsync

Parameters (2)Default
campaignIdstring
playerPlayerPlayer
Returns (1)
Dictionary

GetCampaignEligibilityAsync checks whether a Player is eligible to be shown a specific ad integration campaign, returning a dictionary that looks like { IsEligible: boolean }.

Call this method and confirm that result.IsEligible is true before you display any of the campaign's ad integration assets or register their disclosure buttons with RegisterDisclosureButton. All ad integration assets should remain hidden until the Player is confirmed eligible.

When called from the client, the player argument defaults to the LocalPlayer. When called from the server, player is required. The call raises an error if the supplied campaignId exceeds the maximum allowed length.

This function yields. It will block the calling thread until completion.

History 1

Tags: [Yields]

GetReportAdInfo

Parameters (0)
No parameters.
Returns (1)
Array

History 1

GetUniversalAppAdsEligibility

Parameters (0)
No parameters.
Returns (1)
Dictionary

History 1

HandleWhyThisAdClicked

Parameters (2)
advertiserNamestring
payerNamestring
Returns (1)
null

History 1

HideEudsaDisclosure

Parameters (0)
No parameters.
Returns (1)
null

History 1

IsAdLoaded

Parameters (1)
adFormatAdFormat
Returns (1)
bool

History 1

OnDemandVideoCompleteFromUI

Parameters (4)
resultShowAdResult
encryptedAdTrackingDatastring
rewardDetailsstring
Returns (1)
null

History 1

OnImmersiveBrandedAdDisclosureButtonActivated

Parameters (1)
dataDictionary
Returns (1)
null

History 1

Tags: [NoYield]

RegisterAdOpportunityAsync

Parameters (2)
instanceInstance
placementIdint64?
Returns (1)
null

This method may only be called from a Script with RunContext.Client.

Registers a GuiButton for ad opportunity tracking. Once registered, the system periodically checks whether the button is visible and unobstructed (the topmost input-sinking element at its center point). These visibility transitions are reported as ad opportunity impressions and used to measure the rate at which users are presented with, and choose to watch, rewarded video ads.

The instance must be a GuiButton that is a descendant of a ScreenGui under PlayerGui. If the instance is moved out of a valid hierarchy at runtime, tracking pauses automatically and resumes when it returns to a valid ancestor. Call UnregisterAdOpportunity to stop tracking the instance.

This function yields. It will block the calling thread until completion.

History 1

Tags: [Yields]

RegisterDisclosureButton

Parameters (2)
disclosureButtonGuiButton
adIntegrationPlacementIdstring
Returns (1)
null

This method may only be called from a Script with RunContext.Client.

RegisterDisclosureButton marks a button in your experience as an ad disclosure for an ad integration. When a user clicks it, they can see who is paying for the ad. See ad integrations for guidance on what the disclosures should look like and when they should be visible.

Note: you must verify that the LocalPlayer is eligible to see the associated ad integration campaign by calling GetCampaignEligibilityAsync and verifying that result.IsEligible is true before attempting to register a disclosure button for it. If you do not wait, or the LocalPlayer is not eligible to see the associated campaign, then RegisterDisclosureButton will raise an error.

History 2

RegisterImpressionSource

Parameters (2)
instanceInstance
adIntegrationPlacementIdstring
Returns (1)
null

History 1

ReturnToPublisherExperience

Parameters (1)
adTeleportMethodAdTeleportMethod
Returns (1)
null

History 2

RewardedVideoAdEnded

Parameters (0)
No parameters.

History 1

RewardedVideoAdStarted

Parameters (0)
No parameters.

History 1

SetAdGuiInteractivityHandlerInitialized

Parameters (0)
No parameters.
Returns (1)
null

History 1

ShowDynamicEudsaDisclosure

Parameters (2)
advertiserNamestring
payerNamestring

History 1

ShowReportAdPopup

Parameters (1)
adInfoDictionary

History 1

ShowRewardedVideoAdAsync

Parameters (3)
playerPlayer
rewardAdReward
placementIdint64?
Returns (1)
ShowAdResult

Warning: Rewarded Video ads must be user opt-in and clearly disclosed. For details, review our eligibility requirements and advertising standards.

This method may only be called from a Script with RunContext.Server.

Note: before calling this method, you must first verify that the specified user has a rewarded video ad available to show by calling GetAdAvailabilityNowAsync. If the client does not have an available ad, then ShowRewardedVideoAdAsync will return ShowAdResult.AdNotReady.

This function yields. It will block the calling thread until completion.

History 2

Tags: [Yields]

ShowRewardedVideoAdAtClientAsync

Parameters (1)
universeIdint64
Returns (1)
ShowAdResult
This function yields. It will block the calling thread until completion.

History 1

Tags: [Yields]

ShowVideoAd

Parameters (0)
No parameters.
Returns (1)
null

Show mobile video advertisements.

This function is deprecated. It exists only for backward compatibility, and should not be used for new work.

History 6

Tags: [Deprecated]

SubmitAdNotification

Parameters (5)
universeIdint64
isShowAdSuccessfulbool
earnedRewardbool
rewardProductNamestring
rewardProductImageAssetIdint64
Returns (1)
null

History 1

UnregisterAdOpportunity

Parameters (1)
instanceInstance
Returns (1)
null

Removes instance from the ad opportunity tracker so that it no longer counts toward the rewarded video ad opportunity reporting started by RegisterAdOpportunityAsync(). Call it once an instance should no longer be treated as an ad opportunity, such as when its associated UI is closed or removed.

If the supplied instance is not currently being tracked, this method has no effect.

History 1

VideoAdClosed

Parameters (1)
adShownbool

Fires when an AdService video closes.

This event is deprecated. It exists only for backward compatibility, and should not be used for new work.

History 6

Tags: [Deprecated]

adGuiRegisterUI

Parameters (1)
adGuiInstance

History 1

onDemandVideoPlayInUI

Parameters (1)
dataDictionary
Returns (1)
VideoFrame

History 1

Removed members 4

AdAvailabilityChanged

Parameters (2)
adFormatAdFormat
adAvailabilityResultVariant

History 2

GetAdAvailability

Parameters (1)
adFormatAdFormat
Returns (1)
Variant

History 2

PortalPrompt

Parameters (3)
destinationIdint64
portalInstance
requiresNoButtonbool

History 3

ShowStaticEudsaDisclosure

Parameters (0)
No parameters.

History 2

Settings