Sample code for 30+ languages & platforms
Unicode C++

SendGrid Send Email with Additional BCC Recipient

See more SendGrid Examples

Sends an email to a recipient, but also with an additional BCC recipient.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkHttpW.h>
#include <CkJsonObjectW.h>
#include <CkHttpResponseW.h>

void ChilkatSample(void)
    {
    bool success = false;

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

    CkHttpW http;

    //  The following JSON is sent in the request body.

    //  {
    //    "personalizations": [
    //      {
    //        "to": [
    //          {
    //            "email": "recipient@example.com"
    //          }
    //        ]
    //        "bcc": [
    //          {
    //            "email": "recipient2@example2.com"
    //          }
    //        ]
    //      }
    //    ],
    //    "from": {
    //      "email": "sendeexampexample@example.com"
    //    },
    //    "subject": "Hello, World!",
    //    "content": [
    //      {
    //        "type": "text/plain",
    //        "value": "Heya!"
    //      }
    //    ]
    //  }

    CkJsonObjectW json;
    json.UpdateString(L"personalizations[0].to[0].email",L"recipient@example.com");
    json.UpdateString(L"personalizations[0].bcc[0].email",L"recipient2@example2.com");
    json.UpdateString(L"from.email",L"sendeexampexample@example.com");
    json.UpdateString(L"subject",L"Hello, World!");
    json.UpdateString(L"content[0].type",L"text/plain");
    json.UpdateString(L"content[0].value",L"Heya!");

    //  Adds the "Authorization: Bearer YOUR_API_KEY" header.
    http.put_AuthToken(L"YOUR_API_KEY");

    CkHttpResponseW resp;
    success = http.HttpJson(L"POST",L"https://api.sendgrid.com/v3/mail/send",json,L"application/json",resp);
    if (success == false) {
        wprintf(L"%s\n",http.lastErrorText());
        return;
    }

    if (http.get_LastMethodSuccess() != true) {
        wprintf(L"%s\n",http.lastErrorText());
    }
    else {
        wprintf(L"response status code: %d\n",resp.get_StatusCode());
        //  Display the response.
        //  If successful, the response code is 202 and the response body string is empty.
        //  (The response body string may also be empty for error response codes.)
        wprintf(L"%s\n",resp.bodyStr());
    }
    }