Return messages matching the specified query. See https://support.google.com/mail/answer/7190?hl=en for additional information about search operators. This example searches for all emails having the whole word "ADVChina" in the subject.
curl -X GET https://www.googleapis.com/gmail/v1/users/me/messages?q=subject:ADVChina \
--header "Authorization: Bearer GMAIL_TOKEN"
#include <CkRestW.h>
#include <CkStringBuilderW.h>
#include <CkJsonObjectW.h>
void ChilkatSample(void)
{
CkRestW rest;
bool success;
// URL: https://www.googleapis.com/gmail/v1/users/me/messages?q=subject:ADVChina
bool bTls = true;
int port = 443;
bool bAutoReconnect = true;
success = rest.Connect(L"www.googleapis.com",port,bTls,bAutoReconnect);
if (success != true) {
wprintf(L"ConnectFailReason: %d\n",rest.get_ConnectFailReason());
wprintf(L"%s\n",rest.lastErrorText());
return;
}
rest.AddHeader(L"Authorization",L"Bearer GMAIL_TOKEN");
CkStringBuilderW sbResponseBody;
success = rest.FullRequestNoBodySb(L"GET",L"/gmail/v1/users/me/messages?q=subject:ADVChina",sbResponseBody);
if (success != true) {
wprintf(L"%s\n",rest.lastErrorText());
return;
}
int respStatusCode = rest.get_ResponseStatusCode();
if (respStatusCode >= 400) {
wprintf(L"Response Status Code = %d\n",respStatusCode);
wprintf(L"Response Header:\n");
wprintf(L"%s\n",rest.responseHeader());
wprintf(L"Response Body:\n");
wprintf(L"%s\n",sbResponseBody.getAsString());
return;
}
CkJsonObjectW jsonResponse;
jsonResponse.LoadSb(sbResponseBody);
// See the Online Tool for Generating JSON Parse Code
int i;
int count_i;
int resultSizeEstimate = jsonResponse.IntOf(L"resultSizeEstimate");
i = 0;
count_i = jsonResponse.SizeOfArray(L"messages");
while (i < count_i) {
jsonResponse.put_I(i);
const wchar_t *id = jsonResponse.stringOf(L"messages[i].id");
const wchar_t *threadId = jsonResponse.stringOf(L"messages[i].threadId");
i = i + 1;
}
}
{
"messages": [
{
"id": "166e50fed0b9b0cb",
"threadId": "166e50fed0b9b0cb"
},
{
"id": "166c12e5fee013fe",
"threadId": "166c12e5fee013fe"
},
{
"id": "1669cc9a926bb8c1",
"threadId": "1669cc9a926bb8c1"
},
{
"id": "16678c485e7f0a0c",
"threadId": "16678c485e7f0a0c"
}
],
"resultSizeEstimate": 4
}