Xbase++
Xbase++
OneNote - Create Section
See more OneNote Examples
Creates a new notebook section in Microsoft OneNoteChilkat Xbase++ Downloads
LOCAL nSuccess
LOCAL oHttp
LOCAL oJson
LOCAL oResp
LOCAL oSbResponseBody
LOCAL oJResp
LOCAL nRespStatusCode
LOCAL cOdata_context
LOCAL cId
LOCAL cSelf
LOCAL cCreatedDateTime
LOCAL cDisplayName
LOCAL cLastModifiedDateTime
LOCAL nIsDefault
LOCAL cPagesUrl
LOCAL cCreatedByUserId
LOCAL cCreatedByUserDisplayName
LOCAL cLastModifiedByUserId
LOCAL cLastModifiedByUserDisplayName
nSuccess := 0
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
oHttp := CreateObject("Chilkat.Http")
// Implements the following CURL command:
// curl -X POST https://graph.microsoft.com/v1.0/me/onenote/notebooks/{notebook_id}/sections \
// -H 'authorization: Bearer ACCESS_TOKEN'
// -H "Content-type: application/json" \
// -d '{
// "displayName": "Section name"
// }'
// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code
// Use this online tool to generate code from sample JSON:
// Generate Code to Create JSON
// The following JSON is sent in the request body.
// {
// "displayName": "Ddd"
// }
// Create a new section named "Ddd"
oJson := CreateObject("Chilkat.JsonObject")
oJson:UpdateString("displayName", "Ddd")
oHttp:SetRequestHeader("Content-type", "application/json")
// Adds the "Authorization: Bearer ACCESS_TOKEN" header.
oHttp:AuthToken := "ACCESS_TOKEN"
oHttp:SetUrlVar("notebook_id", "0-3A33FCEB9B74CC15!20344")
oResp := CreateObject("Chilkat.HttpResponse")
nSuccess := oHttp:HttpJson("POST", "https://graph.microsoft.com/v1.0/me/onenote/notebooks/{$notebook_id}/sections", oJson, "application/json", oResp)
IF (nSuccess == 0)
? oHttp:LastErrorText
oHttp:destroy()
oJson:destroy()
oResp:destroy()
RETURN
ENDIF
oSbResponseBody := CreateObject("Chilkat.StringBuilder")
oResp:GetBodySb(oSbResponseBody)
oJResp := CreateObject("Chilkat.JsonObject")
oJResp:LoadSb(oSbResponseBody)
oJResp:EmitCompact := 0
? "Response Body:"
? oJResp:Emit()
nRespStatusCode := oResp:StatusCode
? "Response Status Code = " + Str(nRespStatusCode)
IF (nRespStatusCode >= 400)
? "Response Header:"
? oResp:Header
? "Failed."
oHttp:destroy()
oJson:destroy()
oResp:destroy()
oSbResponseBody:destroy()
oJResp:destroy()
RETURN
ENDIF
// 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/notebooks('0-3A33FCEB9B74CC15%2120344')/sections/$entity",
// "id": "0-3A33FCEB9B74CC15!20350",
// "self": "https://graph.microsoft.com/v1.0/users/admin@chilkat.io/onenote/sections/0-3A33FCEB9B74CC15!20350",
// "createdDateTime": "2020-10-22T23:22:30.673Z",
// "displayName": "Ddd",
// "lastModifiedDateTime": "2020-10-22T23:22:30.803Z",
// "isDefault": false,
// "pagesUrl": "https://graph.microsoft.com/v1.0/users/admin@chilkat.io/onenote/sections/0-3A33FCEB9B74CC15!20350/pages",
// "createdBy": {
// "user": {
// "id": "3A33FCEB9B74CC15",
// "displayName": "Matt Smith"
// }
// },
// "lastModifiedBy": {
// "user": {
// "id": "3A33FCEB9B74CC15",
// "displayName": "Matt Smith"
// }
// }
// }
// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON
cOdata_context := oJResp:StringOf('"@odata.context"')
cId := oJResp:StringOf("id")
cSelf := oJResp:StringOf("self")
cCreatedDateTime := oJResp:StringOf("createdDateTime")
cDisplayName := oJResp:StringOf("displayName")
cLastModifiedDateTime := oJResp:StringOf("lastModifiedDateTime")
nIsDefault := oJResp:BoolOf("isDefault")
cPagesUrl := oJResp:StringOf("pagesUrl")
cCreatedByUserId := oJResp:StringOf("createdBy.user.id")
cCreatedByUserDisplayName := oJResp:StringOf("createdBy.user.displayName")
cLastModifiedByUserId := oJResp:StringOf("lastModifiedBy.user.id")
cLastModifiedByUserDisplayName := oJResp:StringOf("lastModifiedBy.user.displayName")
oHttp:destroy()
oJson:destroy()
oResp:destroy()
oSbResponseBody:destroy()
oJResp:destroy()