Get Snap Profile Data

Requesting user data fetches below information

  • Bitmoji Avatar attached to the logged in profile

  • Display Name

  • External ID which is unique and specific to this app scope

SnapchatKitManager.RequestUserData(OnRequestUserDataComplete);

Make sure you enable the required scopes to get the above information in settings.

Get the details of the user data in the callback

private  void  OnRequestUserDataComplete(SnapchatUserInfo  info,  string  error)  
{  
    string  message  =  "";  

    if  (string.IsNullOrEmpty  (error))  
    {  
        message  =  "Display  Name  :  "  +  info.DisplayName;  
        message  +=  "  "  +  "Avatar  URL  :  "  +  info.BitmojiAvatar;  
        message  +=  "  "  +  "External  ID  :  "  +  info.ExternalIdentifier;  
    }  
    else  
    {  
        message  =  error;  
    }  
    Debug.Log(message);  
}

Example

using VoxelBusters.SnapchatKit;
using VoxelBusters.SnapchatKit.Common.Utility;

private void RequestUserData()
{
    if(SnapchatKitManager.IsLoggedIn())
    {
        SnapchatKitManager.RequestUserData(OnRequestUserDataComplete);
    }
    else
    {
        // Finsish login and come back to request user data
    }
}

private  void  OnRequestUserDataComplete(SnapchatUserInfo  info,  string  error)  
{  
    string  message  =  "";  

    if  (string.IsNullOrEmpty  (error))  
    {  
        message  =  "Display  Name  :  "  +  info.DisplayName;  
        message  +=  "  "  +  "Avatar  URL  :  "  +  info.BitmojiAvatar;  
        message  +=  "  "  +  "External  ID  :  "  +  info.ExternalIdentifier;  
        
        DownloadTexture  _newDownload  =  new  DownloadTexture(new  URL(info.BitmojiAvatar),  true,  true);  
        _newDownload.OnCompletion  =  (Texture2D  _texture,  string  _error)=>{  
  
            Debug.Log(string.Format("[DownloadAvatar]  Texture  download  completed.  Error=  {0}.",  _error.GetPrintableString()));  
            //Access downloaded texture from _texture here.
        };  

        // Start the request
        _newDownload.StartRequest();
    }  
    else  
    {  
        message  =  error;  
    }  
    Debug.Log(message);  
}

Last updated