C# UWP/WinRT GMail: Get User's GMail Profile

Back to Index

Gets the current user's Gmail profile.

Documentation: https://developers.google.com/gmail/api/v1/reference/users/getProfile


Chilkat.Rest rest = new Chilkat.Rest();
bool success;

//   Provide a previously obtained OAuth2 access token.
Chilkat.OAuth2 oauth2 = new Chilkat.OAuth2();
oauth2.AccessToken = "OAUTH2_ACCESS_TOKEN";
rest.SetAuthOAuth2(oauth2);

success = await rest.ConnectAsync("www.googleapis.com",443,true,true);
if (success != true) {
    Debug.WriteLine(rest.LastErrorText);
    return;
}

rest.AddPathParam("userId","matt@chilkat.io");

Chilkat.StringBuilder sbJson = new Chilkat.StringBuilder();
success = await rest.FullRequestNoBodySbAsync("GET","/gmail/v1/users/userId/profile",sbJson);
if (success != true) {
    Debug.WriteLine(rest.LastErrorText);
    return;
}

if (rest.ResponseStatusCode != 200) {
    Debug.WriteLine("Received error response code: " + Convert.ToString(rest.ResponseStatusCode));
    Debug.WriteLine("Response body:");
    Debug.WriteLine(sbJson.GetAsString());
    return;
}

Chilkat.JsonObject json = new Chilkat.JsonObject();
json.LoadSb(sbJson);

//  The following code parses the JSON response.
//  A sample JSON response is shown below the sample code.
string emailAddress;
int messagesTotal;
int threadsTotal;
string historyId;

emailAddress = json.StringOf("emailAddress");
messagesTotal = json.IntOf("messagesTotal");
threadsTotal = json.IntOf("threadsTotal");
historyId = json.StringOf("historyId");

Debug.WriteLine("Example Completed.");

Sample JSON Response Body

{
  "emailAddress": "matt@chilkat.io",
  "messagesTotal": 3,
  "threadsTotal": 3,
  "historyId": "1257"
}