Sample code for 30+ languages & platforms
Go

Constant Contact - Get Contact by Email Address

See more Constant Contact Examples

Get the contact details for a given email address.

Chilkat Go Downloads

Go
    success := false

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

    http := chilkat.NewHttp()

    // Implements the following CURL command:

    // curl -X GET \
    //   'https://api.cc.email/v3/contacts?email=new_contact_email&status=all' \
    //   -H 'Accept: application/json' \
    //   -H 'Authorization: Bearer ACCESS_TOKEN' \
    //   -H 'Content-Type: application/json' \
    //   -H 'Postman-Token: 98980ee6-b99f-41a9-9a7a-3b5651d2ea7f' \
    //   -H 'cache-control: no-cache'

    // Use the following online tool to generate HTTP code from a CURL command
    // Convert a cURL Command to HTTP Source Code

    http.SetRequestHeader("Accept","application/json")
    // Adds the "Authorization: Bearer ACCESS_TOKEN" header.
    http.SetAuthToken("ACCESS_TOKEN")
    http.SetRequestHeader("Postman-Token","98980ee6-b99f-41a9-9a7a-3b5651d2ea7f")
    http.SetRequestHeader("Content-Type","application/json")
    http.SetRequestHeader("cache-control","no-cache")

    sbResponseBody := chilkat.NewStringBuilder()
    success = http.QuickGetSb("https://api.cc.email/v3/contacts?email=danipper@example.com&status=all",sbResponseBody)
    if success == false {
        fmt.Println(http.LastErrorText())
        http.DisposeHttp()
        sbResponseBody.DisposeStringBuilder()
        return
    }

    jResp := chilkat.NewJsonObject()
    jResp.LoadSb(sbResponseBody)
    jResp.SetEmitCompact(false)

    fmt.Println("Response Body:")
    fmt.Println(*jResp.Emit())

    respStatusCode := http.LastStatus()
    fmt.Println("Response Status Code = ", respStatusCode)
    if respStatusCode >= 400 {
        fmt.Println("Response Header:")
        fmt.Println(http.LastHeader())
        fmt.Println("Failed.")
        http.DisposeHttp()
        sbResponseBody.DisposeStringBuilder()
        jResp.DisposeJsonObject()
        return
    }

    // Sample JSON response:
    // (Sample code for parsing the JSON response is shown below)

    // {
    //   "contacts": [
    //     {
    //       "contact_id": "8207fa8e-13dd-11eb-8a66-fa163e37306a",
    //       "email_address": {
    //         "address": "danipper@example.com",
    //         "permission_to_send": "implicit",
    //         "created_at": "2020-10-21T20:39:25Z",
    //         "updated_at": "2020-10-21T20:39:25Z",
    //         "opt_in_source": "Account",
    //         "opt_in_date": "2020-10-21T20:39:25Z",
    //         "confirm_status": "off"
    //       },
    //       "first_name": "David",
    //       "last_name": "Nipper",
    //       "job_title": "Musician",
    //       "company_name": "Acme Corp.",
    //       "birthday_month": 11,
    //       "birthday_day": 24,
    //       "anniversary": "2006-11-15",
    //       "create_source": "Account",
    //       "created_at": "2020-10-21T20:39:25Z",
    //       "updated_at": "2020-10-21T20:39:25Z"
    //     }
    //   ]
    // }

    // Sample code for parsing the JSON response...
    // Use the following online tool to generate parsing code from sample JSON:
    // Generate Parsing Code from JSON

    var contact_id *string = new(string)
    var email_addressAddress *string = new(string)
    var email_addressPermission_to_send *string = new(string)
    var email_addressCreated_at *string = new(string)
    var email_addressUpdated_at *string = new(string)
    var email_addressOpt_in_source *string = new(string)
    var email_addressOpt_in_date *string = new(string)
    var email_addressConfirm_status *string = new(string)
    var first_name *string = new(string)
    var last_name *string = new(string)
    var job_title *string = new(string)
    var company_name *string = new(string)
    var birthday_month int
    var birthday_day int
    var anniversary *string = new(string)
    var create_source *string = new(string)
    var created_at *string = new(string)
    var updated_at *string = new(string)

    i := 0
    count_i := jResp.SizeOfArray("contacts")
    for i < count_i {
        jResp.SetI(i)
        contact_id = jResp.StringOf("contacts[i].contact_id")
        email_addressAddress = jResp.StringOf("contacts[i].email_address.address")
        email_addressPermission_to_send = jResp.StringOf("contacts[i].email_address.permission_to_send")
        email_addressCreated_at = jResp.StringOf("contacts[i].email_address.created_at")
        email_addressUpdated_at = jResp.StringOf("contacts[i].email_address.updated_at")
        email_addressOpt_in_source = jResp.StringOf("contacts[i].email_address.opt_in_source")
        email_addressOpt_in_date = jResp.StringOf("contacts[i].email_address.opt_in_date")
        email_addressConfirm_status = jResp.StringOf("contacts[i].email_address.confirm_status")
        first_name = jResp.StringOf("contacts[i].first_name")
        last_name = jResp.StringOf("contacts[i].last_name")
        job_title = jResp.StringOf("contacts[i].job_title")
        company_name = jResp.StringOf("contacts[i].company_name")
        birthday_month = jResp.IntOf("contacts[i].birthday_month")
        birthday_day = jResp.IntOf("contacts[i].birthday_day")
        anniversary = jResp.StringOf("contacts[i].anniversary")
        create_source = jResp.StringOf("contacts[i].create_source")
        created_at = jResp.StringOf("contacts[i].created_at")
        updated_at = jResp.StringOf("contacts[i].updated_at")
        i = i + 1
    }


    http.DisposeHttp()
    sbResponseBody.DisposeStringBuilder()
    jResp.DisposeJsonObject()