Sample code for 30+ languages & platforms
Lianja

Google Search Console API - List

See more Google Search Console Examples

Lists the user's Search Console sites.

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

// This example uses a previously obtained access token having permission for the 
// Google Search Console scope.

// In this example, Get a Google Search Console OAuth2 Access Token, the access
// token was saved to a JSON file.  This example fetches the access token from the file..
loJsonToken = createobject("CkJsonObject")
llSuccess = loJsonToken.LoadFile("qa_data/tokens/googleSearchConsole.json")
if (loJsonToken.HasMember("access_token") = .F.) then
    ? "No access token found."
    release loJsonToken
    return
endif

loHttp = createobject("CkHttp")
loHttp.AuthToken = loJsonToken.StringOf("access_token")

lcResponseStr = loHttp.QuickGetStr("https://www.googleapis.com/webmasters/v3/sites")
if (loHttp.LastMethodSuccess = .F.) then
    ? loHttp.LastErrorText
    release loJsonToken
    release loHttp
    return
endif

lnStatusCode = loHttp.LastStatus
? "Response Status Code: " + str(lnStatusCode)

// Sample response:

// {
//  "siteEntry": [
//   {
//    "siteUrl": "https://www.example.com/",
//    "permissionLevel": "siteUnverifiedUser"
//   },
//   {
//    "siteUrl": "http://www.chilkatsoft.com/",
//    "permissionLevel": "siteOwner"
//   }
//  ]
// }

? lcResponseStr

// Use this online tool to generate parsing code from sample JSON: 
// Generate Parsing Code from JSON

loJson = createobject("CkJsonObject")

llSuccess = loJson.Load(lcResponseStr)

i = 0
lnCount_i = loJson.SizeOfArray("siteEntry")
do while i < lnCount_i
    loJson.I = i
    lcSiteUrl = loJson.StringOf("siteEntry[i].siteUrl")
    ? "siteUrl: " + lcSiteUrl
    lcPermissionLevel = loJson.StringOf("siteEntry[i].permissionLevel")
    ? "permissionLevel: " + lcPermissionLevel
    i = i + 1
enddo


release loJsonToken
release loHttp
release loJson