For AI agents: markdown of this page — /docs-content-en/timeline-logs/notes/get.md documentation index — /llms.txt
Get note
GET /v1/timeline-logs/:id/note
Returns the note attached to a single timeline item. If there is no note — 404 NOTE_NOT_FOUND.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
id (path) |
number | yes | — | ID of the log entry (or another timeline item) |
entityTypeId (query) |
number | yes | — | Type of the parent CRM entity |
entityId (query) |
number | yes | — | ID of the parent record |
itemType (query) |
number | no | 1 |
1 — history entry, 2 — activity |
Examples
curl — personal key
curl "https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl "https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const res = await fetch(
'https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100',
{ headers: { 'X-Api-Key': 'YOUR_API_KEY' } },
)
const { success, data } = await res.json()
console.log(data.text)
JavaScript — OAuth application
const res = await fetch(
'https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100',
{
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
},
)
const { success, data } = await res.json()
Response fields
| Field | Type | Description |
|---|---|---|
text |
string | Note text |
createdBy |
number | ID of the user who created the note. User data by ID: GET /v1/users/:id |
createdAt |
datetime | Creation date, ISO 8601 in the Bitrix24 account timezone |
updatedBy |
number | ID of the user who last updated the note |
updatedAt |
datetime | Last update date |
Response example
{
"success": true,
"data": {
"text": "The client usually replies within 2 days.",
"createdBy": 1,
"createdAt": "2026-04-27T10:05:00+00:00",
"updatedBy": 1,
"updatedAt": "2026-04-27T10:05:00+00:00"
}
}
Error response example
404 — the item has no note:
{
"success": false,
"error": {
"code": "NOTE_NOT_FOUND",
"message": "No note attached to this timeline item"
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| 400 | INVALID_PARAMS |
entityTypeId / entityId are missing or invalid, or itemType is not 1 or 2 |
| 404 | NOTE_NOT_FOUND |
The timeline item exists, but has no attached note |
| 404 | ENTITY_NOT_FOUND |
No timeline item with this id exists |
| 403 | SCOPE_DENIED |
The API key does not have the crm scope |
| 401 | TOKEN_MISSING |
The API key has no configured tokens |
Full list of common API errors — Errors.
Known specifics
itemType is needed in every request, even for reads. A note is identified not by a single itemId, but by a quadruple of parent coordinates: entityTypeId + entityId + itemType + itemId. If itemType is omitted, Vibecode substitutes 1 (a timeline history entry) — which is what you need in most cases.
Distinguishing "no note" from "item not found". The endpoint returns 404 NOTE_NOT_FOUND both when "the item has no note" and when "no item with this id exists". To check whether the timeline item itself exists — use GET /v1/timeline-logs/:id.
See also
- Save note — create or update
- Delete note — parameters are passed in the query
- Get log entry — the parent item for a note