For AI agents: markdown of this page — /docs-content-en/entities/deals/products-delete.md documentation index — /llms.txt

Delete a product from a deal

DELETE /v1/deals/:id/products/:rowId

Deletes a single product row from a deal by row ID. A deleted row cannot be restored via the API — add a new one if needed.

Parameters

Parameter Type Required Description
id (path) number yes Deal ID
rowId (path) number yes Product row ID (from the add or list response)

rowId is the product row ID, not the productId from the product catalog.

Examples

curl — personal key

Terminal
curl -X DELETE "https://vibecode.bitrix24.com/v1/deals/741/products/1465" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth application

Terminal
curl -X DELETE "https://vibecode.bitrix24.com/v1/deals/741/products/1465" \
  -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/deals/741/products/1465', {
  method: 'DELETE',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

if (res.status === 204) {
  console.log('Product removed from deal')
}

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/deals/741/products/1465', {
  method: 'DELETE',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

if (res.status === 204) {
  console.log('Deleted')
}

Response

On successful deletion an HTTP status 204 No Content with an empty body is returned — success is checked by the status.

Response example

HTTP/1.1 204 No Content

Error response example

404 — deal not found:

JSON
{
  "success": false,
  "error": {
    "code": "ENTITY_NOT_FOUND",
    "message": "Item not found"
  }
}

Errors

HTTP Code Description
404 ENTITY_NOT_FOUND Deal or product row not found
403 SCOPE_DENIED API key lacks the crm scope
401 TOKEN_MISSING API key has no configured tokens

Full list of common API errors — Errors.

See also