TheDocumentation Index
Fetch the complete documentation index at: https://developer.box.com/llms.txt
Use this file to discover all available pages before exploring further.
POST /2.0/notes/convert endpoint converts Markdown content to a
Box Note (.boxnote) and uploads it to a specified folder in one
atomic operation. The note is either fully created or an error is
returned.
Prerequisites
Before you start, make sure you have:- A valid access token with file upload permissions for the target folder.
- The
box-version: 2026.0header included in your request. - The folder ID of the target parent folder in Box.
Request
Headers
| Header | Required | Value |
|---|---|---|
Authorization | Yes | Bearer <ACCESS_TOKEN> |
Content-Type | Yes | application/json |
box-version | Yes | 2026.0 |
Request body
All fields are required.| Field | Type | Constraints | Description |
|---|---|---|---|
content | string | Max 1 MB | The Markdown content to convert into a Box Note. |
content_format | string | Must be "markdown" | The format of the input content. |
parent | object | Must contain id | The destination folder in Box. |
parent.id | string | Valid Box folder ID | The ID of the target parent folder. |
name | string | — | The filename for the resulting .boxnote file. |
Example request
Response
Success (201 Created)
A successful response contains the file type and the Box file ID of
the newly created .boxnote file.
Errors
The API uses standard HTTP error codes. All errors follow the BoxHttpError model.
| HTTP status | Description | Common cause |
|---|---|---|
400 Bad Request | Malformed request body | Missing required fields, invalid content_format, or malformed JSON. |
403 Forbidden | Insufficient permissions | The authenticated user does not have upload permissions for the target folder. |
404 Not Found | Folder not found | The parent.id does not correspond to an existing folder. |
409 Conflict | Name collision | A file with the same name already exists in the target folder. |
422 Unprocessable Entity | Validation failure | The request is syntactically valid but cannot be processed. For example, the user’s storage quota is exceeded. |
5xx Server Error | Internal error | An error occurred during conversion or upload. Retry after a brief delay. |
Conversion warnings, such as unsupported Markdown elements that are
dropped or simplified during conversion, are logged server-side and
are not returned in the API response.
Markdown support
The API converts standard Markdown syntax into Box Notes format. Supported elements include:- Headings (
#,##,###, etc.) - Bold (
**text**) and italic (*text*) - Unordered lists (
-or*) - Ordered lists (
1.,2., etc.) - Links (
[text](url)) - Code blocks (fenced with triple backticks)
- Inline code (backticks)
- Blockquotes (
>) - Horizontal rules (
---)
Code examples
Handling errors
Name conflicts (409)
If a file with the same name already exists in the target folder, the API returns a409 Conflict error. To resolve this:
- Choose a different
namefor the note. - Specify a different
parent.id(target folder). - Delete or rename the existing file before retrying.
Storage quota exceeded (422)
If the user’s storage quota has been reached, the API returns a422 Unprocessable Entity error. Free up space in the Box account
or contact an admin to increase the storage allocation.
Permission errors (403)
Verify that the authenticated user has Editor or Co-Owner access to the target folder. Viewer and Previewer roles do not have upload permissions.Best practices
Keep content within size limits
Keep content within size limits
The maximum
content size is 1 MB. For larger documents,
consider splitting content across multiple notes or trimming
unnecessary sections before conversion.Use meaningful names
Use meaningful names
Choose descriptive note names that make the content easy to find
in Box. Avoid generic names like “Note 1” or “Untitled”.
Handle the conversion time
Handle the conversion time
Conversion can take up to 30 seconds for large or complex
Markdown content. Configure your HTTP client timeout accordingly
and implement retry logic for transient
5xx errors.Retrieve metadata after creation
Retrieve metadata after creation
The create response only includes
type and id. If you need
additional file metadata (timestamps, size, owner), make a
follow-up GET /2.0/files/{file_id} call.