Sample code for 30+ languages & platforms
C++

OneNote - Get Page Metadata

See more OneNote Examples

Access a page's metadata by page identifier.

Chilkat C++ Downloads

C++
#include <CkHttp.h>
#include <CkStringBuilder.h>
#include <CkJsonObject.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.

    CkHttp http;

    //  Implements the following CURL command:

    //  curl -X GET https://graph.microsoft.com/v1.0/me/onenote/pages/{id} \
    //    -H 'authorization: Bearer ACCESS_TOKEN'

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

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

    http.SetUrlVar("page_id","0-d2298668edd74dccac7f821fa378bf64!41-3A33FCEB9B74CC15!20350");

    CkStringBuilder sbResponseBody;
    success = http.QuickGetSb("https://graph.microsoft.com/v1.0/me/onenote/pages/{$page_id}",sbResponseBody);
    if (success == false) {
        std::cout << http.lastErrorText() << "\r\n";
        return;
    }

    CkJsonObject jResp;
    jResp.LoadSb(sbResponseBody);
    jResp.put_EmitCompact(false);

    std::cout << "Response Body:" << "\r\n";
    std::cout << jResp.emit() << "\r\n";

    int respStatusCode = http.get_LastStatus();
    std::cout << "Response Status Code = " << respStatusCode << "\r\n";
    if (respStatusCode >= 400) {
        std::cout << "Response Header:" << "\r\n";
        std::cout << http.lastHeader() << "\r\n";
        std::cout << "Failed." << "\r\n";
        return;
    }

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

    //  {
    //    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('admin%40chilkat.io')/onenote/pages/$entity",
    //    "id": "0-d2298668edd74dccac7f821fa378bf64!41-3A33FCEB9B74CC15!20350",
    //    "self": "https://graph.microsoft.com/v1.0/users/admin@chilkat.io/onenote/pages/0-d2298668edd74dccac7f821fa378bf64!41-3A33FCEB9B74CC15!20350",
    //    "createdDateTime": "2020-10-23T12:00:44Z",
    //    "title": "A page with rendered images and an attached file",
    //    "createdByAppId": "WLID-00000000441C9990",
    //    "contentUrl": "https://graph.microsoft.com/v1.0/users/admin@chilkat.io/onenote/pages/0-d2298668edd74dccac7f821fa378bf64!41-3A33FCEB9B74CC15!20350/content",
    //    "lastModifiedDateTime": "2020-10-23T17:00:45.9018633Z",
    //    "links": {
    //      "oneNoteClientUrl": {
    //        "href": "onenote:https://d.docs.live.net/3a33fceb9b74cc15/Documents/Testing%20Notebook/Ddd.one#A%20page%20with%20rendered%20images%20and%20an%20attached%20file&section-id=40f1bd0c-f32c-4f6a-8cc8-d0fc782f7064&page-id=2a8949ff-753a-45df-9a4c-f82743a7ebed&end"
    //      },
    //      "oneNoteWebUrl": {
    //        "href": "https://onedrive.live.com/redir.aspx?cid=3a33fceb9b74cc15&page=edit&resid=3A33FCEB9B74CC15!20344&parId=3A33FCEB9B74CC15!187&wd=target%28Ddd.one%7C40f1bd0c-f32c-4f6a-8cc8-d0fc782f7064%2FA%20page%20with%20rendered%20images%20and%20an%20attached%20file%7C2a8949ff-753a-45df-9a4c-f82743a7ebed%2F%29"
    //      }
    //    },
    //    "parentSection@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('admin%40chilkat.io')/onenote/pages('0-d2298668edd74dccac7f821fa378bf64%2141-3A33FCEB9B74CC15%2120350')/parentSection/$entity",
    //    "parentSection": {
    //      "id": "0-3A33FCEB9B74CC15!20350",
    //      "displayName": "Ddd",
    //      "self": "https://graph.microsoft.com/v1.0/users/admin@chilkat.io/onenote/sections/0-3A33FCEB9B74CC15!20350"
    //    }
    //  }

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

    //  Chilkat functions returning "const char *" return a pointer to temporary internal memory owned and managed by Chilkat.
    //  See this example explaining how this memory should be used: const char * functions.

    const char *odata_context = jResp.stringOf("\"@odata.context\"");
    const char *id = jResp.stringOf("id");
    const char *self = jResp.stringOf("self");
    const char *createdDateTime = jResp.stringOf("createdDateTime");
    const char *title = jResp.stringOf("title");
    const char *createdByAppId = jResp.stringOf("createdByAppId");
    const char *contentUrl = jResp.stringOf("contentUrl");
    const char *lastModifiedDateTime = jResp.stringOf("lastModifiedDateTime");
    const char *linksOneNoteClientUrlHref = jResp.stringOf("links.oneNoteClientUrl.href");
    const char *linksOneNoteWebUrlHref = jResp.stringOf("links.oneNoteWebUrl.href");
    const char *parentSectionodata_context = jResp.stringOf("\"parentSection@odata.context\"");
    const char *parentSectionId = jResp.stringOf("parentSection.id");
    const char *parentSectionDisplayName = jResp.stringOf("parentSection.displayName");
    const char *parentSectionSelf = jResp.stringOf("parentSection.self");
    }