curl --request POST \
--url https://api.example.com/api/projects/{projectId}/documents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Sample document",
"type": "f",
"contentType": "<string>",
"content": "<unknown>",
"testEvent": "<string>",
"parent": "<string>",
"duplicate": false,
"meta": {},
"source": "<string>"
}
'import requests
url = "https://api.example.com/api/projects/{projectId}/documents"
payload = {
"name": "Sample document",
"type": "f",
"contentType": "<string>",
"content": "<unknown>",
"testEvent": "<string>",
"parent": "<string>",
"duplicate": False,
"meta": {},
"source": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Sample document',
type: 'f',
contentType: '<string>',
content: '<unknown>',
testEvent: '<string>',
parent: '<string>',
duplicate: false,
meta: {},
source: '<string>'
})
};
fetch('https://api.example.com/api/projects/{projectId}/documents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/projects/{projectId}/documents",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Sample document',
'type' => 'f',
'contentType' => '<string>',
'content' => '<unknown>',
'testEvent' => '<string>',
'parent' => '<string>',
'duplicate' => false,
'meta' => [
],
'source' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/projects/{projectId}/documents"
payload := strings.NewReader("{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/projects/{projectId}/documents")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/projects/{projectId}/documents")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"path": "<string>",
"name": "<string>",
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"meta": {},
"contentType": "<string>",
"size": 123,
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publishedId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publishedAt": "<string>",
"publishedBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"published": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"content": "<unknown>",
"documentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"createdAt": "<string>",
"versions": [
"<unknown>"
],
"releases": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
]
},
"versions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"content": "<unknown>",
"documentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"createdAt": "<string>",
"versions": [
"<unknown>"
],
"releases": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
]
}
],
"changeRequests": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"status": "<string>",
"createdAt": "<string>"
}
],
"view": {
"description": "<string>",
"permissions": {}
},
"updatedAt": "<string>",
"deletedAt": "<string>"
}Create a document
Create a new document or directory within a project.
curl --request POST \
--url https://api.example.com/api/projects/{projectId}/documents \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "Sample document",
"type": "f",
"contentType": "<string>",
"content": "<unknown>",
"testEvent": "<string>",
"parent": "<string>",
"duplicate": false,
"meta": {},
"source": "<string>"
}
'import requests
url = "https://api.example.com/api/projects/{projectId}/documents"
payload = {
"name": "Sample document",
"type": "f",
"contentType": "<string>",
"content": "<unknown>",
"testEvent": "<string>",
"parent": "<string>",
"duplicate": False,
"meta": {},
"source": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: 'Sample document',
type: 'f',
contentType: '<string>',
content: '<unknown>',
testEvent: '<string>',
parent: '<string>',
duplicate: false,
meta: {},
source: '<string>'
})
};
fetch('https://api.example.com/api/projects/{projectId}/documents', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/projects/{projectId}/documents",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => 'Sample document',
'type' => 'f',
'contentType' => '<string>',
'content' => '<unknown>',
'testEvent' => '<string>',
'parent' => '<string>',
'duplicate' => false,
'meta' => [
],
'source' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/projects/{projectId}/documents"
payload := strings.NewReader("{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/projects/{projectId}/documents")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/projects/{projectId}/documents")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"Sample document\",\n \"type\": \"f\",\n \"contentType\": \"<string>\",\n \"content\": \"<unknown>\",\n \"testEvent\": \"<string>\",\n \"parent\": \"<string>\",\n \"duplicate\": false,\n \"meta\": {},\n \"source\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"key": "<string>",
"path": "<string>",
"name": "<string>",
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"meta": {},
"contentType": "<string>",
"size": 123,
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publishedId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"publishedAt": "<string>",
"publishedBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"published": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"content": "<unknown>",
"documentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"createdAt": "<string>",
"versions": [
"<unknown>"
],
"releases": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
]
},
"versions": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"parentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "<string>",
"content": "<unknown>",
"documentId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"createdBy": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"email": "jsmith@example.com",
"firstName": "<string>",
"lastName": "<string>"
},
"createdAt": "<string>",
"versions": [
"<unknown>"
],
"releases": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version": "<string>"
}
]
}
],
"changeRequests": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"status": "<string>",
"createdAt": "<string>"
}
],
"view": {
"description": "<string>",
"permissions": {}
},
"updatedAt": "<string>",
"deletedAt": "<string>"
}Authorizations
Personal access token is obtained through your profile
Path Parameters
Project unique identifier
Body
Document name
"Sample document"
Document type (file or directory)
f, d, e Content MIME type for files
Initial document content
Default test event context
Parent directory key path
Allow duplicate names
Document metadata
Show child attributes
Show child attributes
Source document key to copy content from
Response
Newly created document
Newly created document
Document unique identifier
Materialized lowercase path based on the name
Materialized path based on the name
Document name
Document type (file, directory, or external file)
f, d, e Project ID
Document metadata
Show child attributes
Show child attributes
Content MIME type
Document size in bytes
Parent document ID
Currently published version ID
Publication timestamp
User who published the document
Show child attributes
Show child attributes
Published version details
Show child attributes
Show child attributes
Document versions
Show child attributes
Show child attributes
Pending change requests
Show child attributes
Show child attributes
Document view configuration
Show child attributes
Show child attributes
Last update timestamp
Deletion timestamp if soft deleted
Was this page helpful?