Tcl
Tcl
Google Search Console API - List
See more Google Search Console Examples
Lists the user's Search Console sites.Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# 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..
set jsonToken [new_CkJsonObject]
set success [CkJsonObject_LoadFile $jsonToken "qa_data/tokens/googleSearchConsole.json"]
if {[CkJsonObject_HasMember $jsonToken "access_token"] == 0} then {
puts "No access token found."
delete_CkJsonObject $jsonToken
exit
}
set http [new_CkHttp]
CkHttp_put_AuthToken $http [CkJsonObject_stringOf $jsonToken "access_token"]
set responseStr [CkHttp_quickGetStr $http "https://www.googleapis.com/webmasters/v3/sites"]
if {[CkHttp_get_LastMethodSuccess $http] == 0} then {
puts [CkHttp_lastErrorText $http]
delete_CkJsonObject $jsonToken
delete_CkHttp $http
exit
}
set statusCode [CkHttp_get_LastStatus $http]
puts "Response Status Code: $statusCode"
# Sample response:
# {
# "siteEntry": [
# {
# "siteUrl": "https://www.example.com/",
# "permissionLevel": "siteUnverifiedUser"
# },
# {
# "siteUrl": "http://www.chilkatsoft.com/",
# "permissionLevel": "siteOwner"
# }
# ]
# }
puts "$responseStr"
# Use this online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
set json [new_CkJsonObject]
set success [CkJsonObject_Load $json $responseStr]
set i 0
set count_i [CkJsonObject_SizeOfArray $json "siteEntry"]
while {$i < $count_i} {
CkJsonObject_put_I $json $i
set siteUrl [CkJsonObject_stringOf $json "siteEntry[i].siteUrl"]
puts "siteUrl: $siteUrl"
set permissionLevel [CkJsonObject_stringOf $json "siteEntry[i].permissionLevel"]
puts "permissionLevel: $permissionLevel"
set i [expr $i + 1]
}
delete_CkJsonObject $jsonToken
delete_CkHttp $http
delete_CkJsonObject $json