curl --request POST \
--url https://api.assembly.com/v1/notes \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"title": "Onboarding call summary",
"content": "Discussed the rollout timeline and next steps."
}
'import requests
url = "https://api.assembly.com/v1/notes"
payload = {
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"title": "Onboarding call summary",
"content": "Discussed the rollout timeline and next steps."
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
entityId: 'f47ac10b-58cc-4372-a567-0e02b2c3d479',
entityType: 'client',
title: 'Onboarding call summary',
content: 'Discussed the rollout timeline and next steps.'
})
};
fetch('https://api.assembly.com/v1/notes', 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.assembly.com/v1/notes",
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([
'entityId' => 'f47ac10b-58cc-4372-a567-0e02b2c3d479',
'entityType' => 'client',
'title' => 'Onboarding call summary',
'content' => 'Discussed the rollout timeline and next steps.'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$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.assembly.com/v1/notes"
payload := strings.NewReader("{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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.assembly.com/v1/notes")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.assembly.com/v1/notes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}"
response = http.request(request)
puts response.read_body{
"content": "Discussed the rollout timeline and next steps.",
"createdAt": "<string>",
"creatorId": "7b1c5d9e-2f34-4a8b-9c0d-1e2f3a4b5c6d",
"data": "<string>",
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"id": "<string>",
"identityId": "<string>",
"object": "<string>",
"portalId": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"previousAttributes": {},
"ref": "<string>",
"title": "Onboarding call summary",
"updatedAt": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}Create a note
Creates an internal note attached to a client or company. Requires title, entityId, and entityType; content is optional. Only internal users with sufficient privileges can create notes.
curl --request POST \
--url https://api.assembly.com/v1/notes \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"title": "Onboarding call summary",
"content": "Discussed the rollout timeline and next steps."
}
'import requests
url = "https://api.assembly.com/v1/notes"
payload = {
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"title": "Onboarding call summary",
"content": "Discussed the rollout timeline and next steps."
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
entityId: 'f47ac10b-58cc-4372-a567-0e02b2c3d479',
entityType: 'client',
title: 'Onboarding call summary',
content: 'Discussed the rollout timeline and next steps.'
})
};
fetch('https://api.assembly.com/v1/notes', 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.assembly.com/v1/notes",
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([
'entityId' => 'f47ac10b-58cc-4372-a567-0e02b2c3d479',
'entityType' => 'client',
'title' => 'Onboarding call summary',
'content' => 'Discussed the rollout timeline and next steps.'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"X-API-KEY: <api-key>"
],
]);
$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.assembly.com/v1/notes"
payload := strings.NewReader("{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("X-API-KEY", "<api-key>")
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.assembly.com/v1/notes")
.header("X-API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.assembly.com/v1/notes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["X-API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"entityId\": \"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\n \"entityType\": \"client\",\n \"title\": \"Onboarding call summary\",\n \"content\": \"Discussed the rollout timeline and next steps.\"\n}"
response = http.request(request)
puts response.read_body{
"content": "Discussed the rollout timeline and next steps.",
"createdAt": "<string>",
"creatorId": "7b1c5d9e-2f34-4a8b-9c0d-1e2f3a4b5c6d",
"data": "<string>",
"entityId": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"entityType": "client",
"id": "<string>",
"identityId": "<string>",
"object": "<string>",
"portalId": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
"previousAttributes": {},
"ref": "<string>",
"title": "Onboarding call summary",
"updatedAt": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}{
"code": "<string>",
"data": "<unknown>",
"message": "<string>"
}Authorizations
Body
Note to create
ForeignKeyId is the ID of the client or company to attach the note to.
"f47ac10b-58cc-4372-a567-0e02b2c3d479"
ForeignKeyType is the kind of entity to attach the note to.
client, company "client"
Title is the short heading of the note.
"Onboarding call summary"
Content is the body of the note. Optional; a note may have a title only.
"Discussed the rollout timeline and next steps."
Response
OK
Content is the body of the note.
"Discussed the rollout timeline and next steps."
CreatorId is the ID of the internal user who created the note. TODO(@foley): Let's remove this and use CreatedBy from Model, we'll need to do some backward compatibility work for the platform API.
"7b1c5d9e-2f34-4a8b-9c0d-1e2f3a4b5c6d"
ForeignKeyId is the ID of the client or company the note is attached to.
"f47ac10b-58cc-4372-a567-0e02b2c3d479"
ForeignKeyType is the kind of entity the note is attached to.
client, company "client"
PortalID is the workspace the note belongs to.
"a1b2c3d4-5678-90ab-cdef-1234567890ab"
Title is the short heading of the note.
"Onboarding call summary"