Bitrix24 Sites API
The Sites API from Bitrix24 — 99 operation(s) for sites.
The Sites API from Bitrix24 — 99 operation(s) for sites.
openapi: 3.0.3
info:
title: Bitrix24 REST BIconnector Sites API
version: 1.0.0
description: 'Bitrix24 REST API provides access to CRM, tasks, drive, chats, telephony, e-commerce, automation, and other modules. Documentation: https://apidocs.bitrix24.com'
contact:
name: Bitrix24 Developer Support
url: https://apidocs.bitrix24.com/support.html
license:
name: MIT
url: https://github.com/bitrix-tools/b24-rest-docs/blob/main/LICENSE
x-logo:
url: https://apidocs.bitrix24.com/_images/bitrix24logo.svg
servers:
- url: https://{portal}.bitrix24.com/rest
description: Your Bitrix24 portal (cloud)
variables:
portal:
default: your-portal
description: Subdomain of your Bitrix24 portal
- url: https://{host}/rest
description: On-Premise Bitrix24 installation
variables:
host:
default: your-bitrix24.example.com
description: Host of your on-premise installation
security:
- AccessToken: []
tags:
- name: Sites
paths:
/landing.block.addcard:
post:
summary: Add Card to Block landing.block.addcard
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.addcard` adds a card to a block in the draft of a page. This method works with cards described in the `cards` key of the block manifest. If the page is already published, changes will be visible to visitors after re-publishing through the interface or using the [landing.landing.publication](../../page/methods/landing-landing-publication.md) method.
operationId: landing_block_addcard
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-add-card.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the editable version of the page.'
selector:
type: string
description: '| Selector of the card from the key `cards` of the block manifest'
content:
type: string
description: '| HTML of the new card.'
preventHistory:
type: boolean
description: '| Do not add the action to the page change history.'
required:
- lid
- block
- selector
- content
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the editable version of the page.'
selector:
type: string
description: '| Selector of the card from the key `cards` of the block manifest'
content:
type: string
description: '| HTML of the new card.'
preventHistory:
type: boolean
description: '| Do not add the action to the page change history.'
required:
- lid
- block
- selector
- content
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.changeAnchor:
post:
summary: Change the Anchor of the Block landing.block.changeAnchor
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.changeAnchor` modifies or removes a custom anchor of a block in the draft of a page. If the page is already published, changes will be visible to visitors after publishing the updates through the interface or using the method [landing.landing.publication](../../page/methods/landing-landing-publication.md).
operationId: landing_block_changeAnchor
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-change-anchor.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the draft of the page.'
data:
type: string
description: '| New anchor of the block without the `#` symbol.'
preventHistory:
type: boolean
description: '| Do not add the change to the page history.'
required:
- lid
- block
- data
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the draft of the page.'
data:
type: string
description: '| New anchor of the block without the `#` symbol.'
preventHistory:
type: boolean
description: '| Do not add the change to the page history.'
required:
- lid
- block
- data
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.changeNodeName:
post:
summary: Change HTML Tag of a Block Element landing.block.changeNodeName
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.changeNodeName` changes the HTML tag of a block element in the draft of a page. If the page is already published, changes will be visible to visitors after re-publishing through the interface or using the method [landing.landing.publication](../../page/methods/landing-landing-publication.md).
operationId: landing_block_changeNodeName
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-change-node-name.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page'
block:
type: integer
description: '| Identifier of the block in the draft of the page'
data:
type: object
description: '| Set of changes for block elements (detailed description) ||'
preventHistory:
type: boolean
description: '| If `true` is passed, the method will not add the action to the page change history'
Value:
type: string
description: '| Description ||'
required:
- lid
- block
- data
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page'
block:
type: integer
description: '| Identifier of the block in the draft of the page'
data:
type: object
description: '| Set of changes for block elements (detailed description) ||'
preventHistory:
type: boolean
description: '| If `true` is passed, the method will not add the action to the page change history'
Value:
type: string
description: '| Description ||'
required:
- lid
- block
- data
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.clonecard:
post:
summary: Clone Card of Block landing.block.clonecard
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.clonecard` creates a copy of a card in the block within the draft of the page. It works with cards described in the `cards` key of the block manifest. If the page is already published, the changes will be visible to visitors after publication through the interface or by using the [landing.landing.publication](../../page/methods/landing-landing-publication.md) method.
operationId: landing_block_clonecard
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-clone-card.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the draft of the page.'
selector:
type: string
description: '| Selector of the card from the cards key of the block manifest.'
preventHistory:
type: boolean
description: '| Do not add the action to the page change history.'
required:
- lid
- block
- selector
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Identifier of the page.'
block:
type: integer
description: '| Identifier of the block in the draft of the page.'
selector:
type: string
description: '| Selector of the card from the cards key of the block manifest.'
preventHistory:
type: boolean
description: '| Do not add the action to the page change history.'
required:
- lid
- block
- selector
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getContentFromRepository:
post:
summary: Get Block Content from Repository landing.block.getContentFromRepository
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.getContentFromRepository` returns the HTML content of a block from the repository.
operationId: landing_block_getContentFromRepository
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-content-from-repository.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: '| The code of the block whose content needs to be retrieved.'
required:
- code
application/x-www-form-urlencoded:
schema:
type: object
properties:
code:
type: string
description: '| The code of the block whose content needs to be retrieved.'
required:
- code
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getbyid:
post:
summary: Get Block by ID landing.block.getbyid
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.getbyid` returns a single block of a page by its identifier.
operationId: landing_block_getbyid
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-by-id.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
block:
type: integer
description: '| Block identifier.'
params:
type: object
description: '| Additional parameters for reading the block (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If set to `true`, the method reads the draft version of the page instead of the published version.
deleted:
type: boolean
description: \| `integer` | If set to `true`, the method searches for blocks marked as deleted.
get_content:
type: boolean
description: \| `integer` | If set to `true`, the `result` additionally returns the fields `content`, `css`, and `js`.
required:
- block
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
block:
type: integer
description: '| Block identifier.'
params:
type: object
description: '| Additional parameters for reading the block (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If set to `true`, the method reads the draft version of the page instead of the published version.
deleted:
type: boolean
description: \| `integer` | If set to `true`, the method searches for blocks marked as deleted.
get_content:
type: boolean
description: \| `integer` | If set to `true`, the `result` additionally returns the fields `content`, `css`, and `js`.
required:
- block
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getcontent:
post:
summary: Get Content of Block landing.block.getcontent
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.getcontent` returns the ready HTML of the block, its resources, manifest, and service properties of the block.
operationId: landing_block_getcontent
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-content.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Page identifier.'
block:
type: integer
description: '| Block identifier.'
editMode:
type: boolean
description: '| Mode for obtaining the version of the block.'
params:
type: object
description: '| Additional parameters (detailed description) ||'
wrapper_show:
type: boolean
description: '| Whether to return the external container of the block `<div class="block-wrapper">` in `result.content`.'
force_unactive:
type: boolean
description: '| Generate HTML even for inactive blocks.'
required:
- lid
- block
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Page identifier.'
block:
type: integer
description: '| Block identifier.'
editMode:
type: boolean
description: '| Mode for obtaining the version of the block.'
params:
type: object
description: '| Additional parameters (detailed description) ||'
wrapper_show:
type: boolean
description: '| Whether to return the external container of the block `<div class="block-wrapper">` in `result.content`.'
force_unactive:
type: boolean
description: '| Generate HTML even for inactive blocks.'
required:
- lid
- block
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getlist:
post:
summary: Get the List of Page Blocks landing.block.getlist
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.getlist` returns a list of blocks for the selected page.
operationId: landing_block_getlist
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-list.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope for landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: \| [`integer[]`](../../../data-types.md) | Identifier of the page or an array of page identifiers.
params:
type: object
description: '| Additional parameters for reading the list (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method reads the draft version of the page instead of the published version.
deleted:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method returns only blocks marked as deleted.
get_content:
type: boolean
description: \| `integer` | If `true` is passed, the method will add the `content`, `css`, and `js` fields to each result element. By default — `false`.
required:
- lid
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope for landings. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: \| [`integer[]`](../../../data-types.md) | Identifier of the page or an array of page identifiers.
params:
type: object
description: '| Additional parameters for reading the list (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method reads the draft version of the page instead of the published version.
deleted:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method returns only blocks marked as deleted.
get_content:
type: boolean
description: \| `integer` | If `true` is passed, the method will add the `content`, `css`, and `js` fields to each result element. By default — `false`.
required:
- lid
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getmanifest:
post:
summary: Get the Manifest of the landing.block.getmanifest Method
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The `landing.block.getmanifest` method returns a prepared manifest of the block placed on the page. It does not return the original file but rather the prepared data for a specific block. For example, localized titles, fields such as `code`, `preview`, `assets`, `timestamp`, and `callbacks`.
operationId: landing_block_getmanifest
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-manifest.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of the landing. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Page identifier.'
block:
type: integer
description: '| Block identifier. The block must belong to the page `lid` in the selected version of the page.'
params:
type: object
description: '| Additional parameters for reading the manifest (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method reads the draft of the page instead of the published version. Default is `false`.
required:
- lid
- block
application/x-www-form-urlencoded:
schema:
type: object
properties:
scope:
type: string
description: '| Internal scope of the landing. It is not related to the REST scope `landing` in the method name.'
lid:
type: integer
description: '| Page identifier.'
block:
type: integer
description: '| Block identifier. The block must belong to the page `lid` in the selected version of the page.'
params:
type: object
description: '| Additional parameters for reading the manifest (detailed description) ||'
edit_mode:
type: boolean
description: \| `integer` | If the value is cast to `true`, the method reads the draft of the page instead of the published version. Default is `false`.
required:
- lid
- block
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixResponse'
4XX:
description: Request error (400, 401, 403)
content:
application/json:
schema:
$ref: '#/components/schemas/BitrixError'
security:
- AccessToken: []
- OAuth2:
- landing
/landing.block.getmanifestfile:
post:
summary: Get the Manifest File of the Block landing.block.getmanifestfile
description: If you are developing integrations for Bitrix24 using AI tools (Codex, Claude Code, Cursor), connect to the [MCP server](../../../../ai-tools/mcp.md) so that the assistant can utilize the official REST documentation. The method `landing.block.getmanifestfile` returns the original manifest of the block from the file repository. Unlike [landing.block.getmanifest](./landing-block-get-manifest.md), this method returns the manifest in its original form — as specified in the `.description.php` file. It does not add any service fields, such as `code`, `preview`, or `timestamp`.
operationId: landing_block_getmanifestfile
tags:
- Sites
externalDocs:
url: https://apidocs.bitrix24.com/api-reference/landing/block/methods/landing-block-get-manifest-file.html
description: Official Documentation
requestBody:
content:
application/json:
schema:
type: object
properties:
code:
type: string
description: '| The code of the block from the file repository.'
required:
- code
application/x-www-form-urlencoded:
schema:
type: object
properties:
code:
type: string
description: '| The code of the block from the file repository.'
required:
- code
responses:
'200':
description: Successful response
content:
# --- truncated at 32 KB (293 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bitrix24/refs/heads/main/openapi/bitrix24-sites-api-openapi.yml