Sample code for 30+ languages & platforms
Go

Google Search Console API - List

See more Google Search Console Examples

Lists the user's Search Console sites.

Chilkat Go Downloads

Go
    success := false

    // 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..
    jsonToken := chilkat.NewJsonObject()
    success = jsonToken.LoadFile("qa_data/tokens/googleSearchConsole.json")
    if jsonToken.HasMember("access_token") == false {
        fmt.Println("No access token found.")
        jsonToken.DisposeJsonObject()
        return
    }

    http := chilkat.NewHttp()
    http.SetAuthToken(jsonToken.StringOf("access_token"))

    responseStr := http.QuickGetStr("https://www.googleapis.com/webmasters/v3/sites")
    if http.LastMethodSuccess() == false {
        fmt.Println(http.LastErrorText())
        jsonToken.DisposeJsonObject()
        http.DisposeHttp()
        return
    }

    statusCode := http.LastStatus()
    fmt.Println("Response Status Code: ", statusCode)

    // Sample response:

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

    fmt.Println(*responseStr)

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

    json := chilkat.NewJsonObject()

    success = json.Load(*responseStr)

    var siteUrl *string = new(string)
    var permissionLevel *string = new(string)

    i := 0
    count_i := json.SizeOfArray("siteEntry")
    for i < count_i {
        json.SetI(i)
        siteUrl = json.StringOf("siteEntry[i].siteUrl")
        fmt.Println("siteUrl: ", *siteUrl)
        permissionLevel = json.StringOf("siteEntry[i].permissionLevel")
        fmt.Println("permissionLevel: ", *permissionLevel)
        i = i + 1
    }


    jsonToken.DisposeJsonObject()
    http.DisposeHttp()
    json.DisposeJsonObject()