Skip to main content
Use GetUserStatus to check a player’s current account linking status. This tells you whether they’ve started earning, and whether they’ve completed account linking to enable withdrawals.
ZBDUtilities.Instance.GetUserStatus(callback =>
{
  if (callback.success)
  {
    Debug.Log("Status: " + callback.data.status);

    if (callback.data.status == ZBDConstants.ZBD_LINKED_STATUS)
    {
      // Player has completed account linking — eligible to withdraw
    }
  }
  else
  {
    Debug.LogError("GetUserStatus failed: " + callback.message);
  }
});

Status values

StatusWhat it means
unlinkedPlayer has not yet started earning. They haven’t tapped the rewards entry point or been through onboarding.
linkedPlayer has started earning (clicked Start Earning) but has not yet linked a cashout account.
zbdlinkedPlayer has completed account linking and is eligible to earn and withdraw.

Response object

public class ZBDUserStatusResponse
{
  public bool success { get; set; }
  public string message { get; set; }
  public ZBDUserStatus data { get; set; }
}

public class ZBDUserStatus
{
  public string status { get; set; }        // See status values above
  public string rewardsUserId { get; set; } // Player's SDK identifier — use this when calling server-side APIs
  public string zbdUserId { get; set; }     // Player's account identifier (set when zbdlinked)
}
rewardsUserId is the identifier you use when calling ZBD server-side APIs for this player — for example, when sending rewards or adjusting withdrawal limits from your backend. Store it against your own player ID as early as possible. See LTV-Based Rewards for why early ID mapping matters.