Create page

Namespace: microsoft.graph

Create a new page in the specified section.

This API is available in the following national cloud deployments.

Global service US Government L4 US Government L5 (DOD) China operated by 21Vianet


Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.

Permission type Least privileged permissions Higher privileged permissions
Delegated (work or school account) Notes.Create Notes.ReadWrite, Notes.ReadWrite.All
Delegated (personal Microsoft account) Notes.Create Notes.ReadWrite
Application Notes.ReadWrite.All Not available.

HTTP request

POST /me/onenote/sections/{id}/pages
POST /users/{id | userPrincipalName}/onenote/sections/{id}/pages
POST /groups/{id}/onenote/sections/{id}/pages
POST /sites/{id}/onenote/sections/{id}/pages

Request headers

Name Type Description
Authorization string Bearer {token}. Required.
Content-Type string text/html or application/xhtml+xml for the HTML content, including for the required "Presentation" part of multipart requests. Multipart requests use the multipart/form-data; boundary=your-boundary content type.

Request body

In the request body, supply the page HTML content.

The body can contain HTML placed directly in the request body, or it can contain a multipart message format as shown in the example. If you're sending binary data, then you must send a multipart request.


If successful, this method returns 201 Created response code and the new page object in the response body.



Here is an example of the request.

Content-type: multipart/form-data; boundary=MyPartBoundary198374

Content-Disposition:form-data; name="Presentation"

<!DOCTYPE html>
    <title>A page with <i>rendered</i> images and an <b>attached</b> file</title>
    <meta name="created" content="2015-07-22T09:00:00-08:00" />
    <p>Here's an image from an online source:</p>
    <img src="https://..." alt="an image on the page" width="500" />
    <p>Here's an image uploaded as binary data:</p>
    <img src="name:imageBlock1" alt="an image on the page" width="300" />
    <p>Here's a file attachment:</p>
    <object data-attachment="FileName.pdf" data="name:fileBlock1" type="application/pdf" />

Content-Disposition:form-data; name="imageBlock1"

... binary image data ...

Content-Disposition:form-data; name="fileBlock1"

... binary file data ...


Here is an example of the response. Note: The response object shown here is truncated for brevity. All of the properties will be returned from an actual call.

HTTP/1.1 200 OK
Content-type: application/json

  "title": "title-value",
  "createdByAppId": "createdByAppId-value",
  "links": {
    "oneNoteClientUrl": {
      "href": "href-value"
    "oneNoteWebUrl": {
      "href": "href-value"
  "contentUrl": "contentUrl-value",
  "lastModifiedDateTime": "2016-10-19T10:37:00Z"