For AI agents: markdown of this page — /docs-content-en/timeline-logs/notes/delete.md documentation index — /llms.txt

Delete note

DELETE /v1/timeline-logs/:id/note

Deletes the note attached to a timeline item. Parameters are passed in the query string, not in the request body.

Parameters

Parameter Type Required Default Description
Parameterid (path) Typenumber Requiredyes Default— DescriptionTimeline item ID. Log entries: GET /v1/timeline-logs, activities when itemType is 2: GET /v1/activities
ParameterentityTypeId (query) Typenumber Requiredyes Default— DescriptionType of the parent CRM entity. See Entity types
ParameterentityId (query) Typenumber Requiredyes Default— DescriptionID of the parent record. For where to get the ID for each type, see Entity types
ParameteritemType (query) Typenumber Requiredno Default1 Description1 — history entry, 2 — activity

Examples

curl — personal key

Terminal
curl -X DELETE "https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth application

Terminal
curl -X DELETE "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

javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100',
  {
    method: 'DELETE',
    headers: { 'X-Api-Key': 'YOUR_API_KEY' },
  },
)

const { success, data } = await res.json()
if (success) console.log('Note deleted')

JavaScript — OAuth application

javascript
const res = await fetch(
  'https://vibecode.bitrix24.com/v1/timeline-logs/5012/note?entityTypeId=2&entityId=100',
  {
    method: 'DELETE',
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
    },
  },
)

const { success, data } = await res.json()

Response fields

Field Type Description
Fieldsuccess Typeboolean DescriptionAlways true on success
Fielddata.deleted Typeboolean DescriptionAlways true — operation confirmation

Response example

HTTP 200:

JSON
{
  "success": true,
  "data": { "deleted": true }
}

Error response example

400 — parameters passed in the body instead of the query:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Required query: entityTypeId, entityId (positive ints). Optional: itemType (default 1)"
  }
}

Errors

HTTP Code Description
HTTP400 CodeINVALID_PARAMS DescriptionParameters are missing, passed incorrectly, or a body was sent instead of the query
HTTP422 CodeBITRIX_ERROR DescriptionBitrix24 rejected the request
HTTP403 CodeSCOPE_DENIED DescriptionThe API key does not have the crm scope
HTTP403 CodeWRITE_BLOCKED_READONLY_KEY DescriptionThe key is read-only — see access rights
HTTP401 CodeTOKEN_MISSING DescriptionThe API key has no configured tokens

Full list of common API errors — Errors.

Known specifics

Do not confuse with DELETE /v1/timeline-logs/:id. That endpoint deletes the entire log entry and takes no parameters at all. This one deletes only the item's note and requires entityTypeId + entityId.

The response does not tell whether the note existed. Deleting an already-deleted note again, or deleting by a nonexistent id, also returns 200 and { "deleted": true }. To check whether a note exists, read it via GET /v1/timeline-logs/:id/note: it returns 404 when there is none.

Any key with the crm scope in read-write mode can delete a note, regardless of who created it. DELETE /v1/timeline-logs/:id works differently: only the OAuth key that created the log entry can delete it.

See also