Skip to Content

SDK Icon Automation Events

The Roblox SDK can feed Icon Automation from two game-side sources.

Declarative schedules

Use client:registerSchedule(...) for deterministic recurring events. The SDK canonicalizes the schedule and sends a content hash. RoControl stores the latest accepted schedule for the API key’s universe and computes occurrences in the backend.

Live reported events

Use client:reportEvent(...) for admin-triggered, player-triggered, or otherwise non-deterministic events. The SDK uses MemoryStore single-flight so only one Roblox server reports an occurrence, and RoControl also enforces durable idempotency by occurrence id.

Resolution

Icon Automation resolves candidates from:

  • dashboard/manual countdowns,
  • SDK schedules,
  • SDK reported events.

The resolver chooses one winner by priority, then by most recent start time. RoControl writes a new icon only when the winning overlay changes.

Asset and moderation visibility

SDK events can include iconAssetId as 123 or rbxassetid://123. RoControl normalizes the id, resolves the Roblox thumbnail/image, caches the result, and records moderation status on the Icon Automation state. Rejected or invalid assets are surfaced in the dashboard instead of being retried silently.