Bitrix24 CRM API

The CRM API from Bitrix24 — 421 operation(s) for crm.

OpenAPI Specification

bitrix24-crm-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Bitrix24 REST BIconnector CRM 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: CRM
paths:
  /crm.activity.add:
    post:
      summary: Add System Activity crm.activity.add
      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. Development of this method has been halted. Please use [crm.activity.todo.add](../todo/crm-activity-todo-add.md). The method `crm.activity.add` creates a new system activity.
      operationId: crm_activity_add
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/activity-base/crm-activity-add.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                fields:
                  type: array
                  items: {}
                  description: '| An array of values for the activity fields in the following structure:'
                Field:
                  type: string
                  description: '`type` | Description ||'
                OWNER_ID:
                  type: integer
                  description: '| Identifier of the CRM entity ||'
                OWNER_TYPE_ID:
                  type: integer
                  description: '| Identifier of the CRM object type ||'
                TYPE_ID:
                  type: string
                  description: '| Type of the activity. To get available activity types, use the method crm.enum.activitytype.'
                ASSOCIATED_ENTITY_ID:
                  type: integer
                  description: '| Identifier of the entity associated with the activity ||'
                COMMUNICATIONS:
                  type: string
                  description: '| Description of communication ||'
                DEADLINE:
                  type: string
                  format: date-time
                  description: '| Date and time of the activity''s deadline. This field is not set directly; the value is taken from START_TIME for calls and meetings and from END_TIME for tasks ||'
                DESCRIPTION:
                  type: string
                  description: '| Text description of the activity ||'
                DESCRIPTION_TYPE:
                  type: string
                  description: '| Type of description ||'
                DIRECTION:
                  type: string
                  description: '| Direction of the activity: incoming/outgoing. Relevant for calls and emails, not used for meetings ||'
                END_TIME:
                  type: string
                  format: date-time
                  description: '| Time of activity completion | ||'
                FILES:
                  type: string
                  description: '| Files added to the activity ||'
                LOCATION:
                  type: string
                  description: '| Location ||'
                NOTIFY_TYPE:
                  type: string
                  description: '| Type of notification ||'
                ORIGINATOR_ID:
                  type: string
                  description: '| Identifier of the data source, used only for linking to an external source ||'
                ORIGIN_ID:
                  type: string
                  description: '| Identifier of the entity in the data source, used only for linking to an external source ||'
                ORIGIN_VERSION:
                  type: string
                  description: '| Original version, used to protect data from accidental overwriting by an external system. If the data was imported and not modified in the external system, such data can be edited in CRM without fear that the next export will lead to data overwriting ||'
                PRIORITY:
                  type: string
                  description: '| Priority ||'
                PROVIDER_DATA:
                  type: string
                  description: '| Additional provider data ||'
                PROVIDER_GROUP_ID:
                  type: string
                  description: '| Identifier of the provider group ||'
                PROVIDER_ID:
                  type: string
                  description: '| Identifier of the provider ||'
                PROVIDER_TYPE_ID:
                  type: string
                  description: '| Identifier of the provider type, status from the directory ||'
                PROVIDER_PARAMS:
                  type: object
                  description: '| Additional provider parameters ||'
                RESPONSIBLE_ID:
                  type: string
                  description: '| Identifier of the user responsible for the activity ||'
                SETTINGS:
                  type: object
                  description: '| Additional settings ||'
                START_TIME:
                  type: string
                  format: date-time
                  description: '| Time when the activity starts ||'
                STATUS:
                  type: string
                  description: '| Status of the activity ||'
                SUBJECT:
                  type: string
                  description: '| Additional description of the activity ||'
                WEBDAV_ELEMENTS:
                  type: string
                  description: '| Added files. Deprecated, kept for compatibility ||'
                IS_INCOMING_CHANNEL:
                  type: string
                  maxLength: 1
                  description: '| Flag indicating whether the activity was created from an incoming channel (`Y`/`N`) ||'
              required:
              - fields
              - OWNER_ID
              - OWNER_TYPE_ID
              - TYPE_ID
              - COMMUNICATIONS
              - RESPONSIBLE_ID
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                fields:
                  type: array
                  items: {}
                  description: '| An array of values for the activity fields in the following structure:'
                Field:
                  type: string
                  description: '`type` | Description ||'
                OWNER_ID:
                  type: integer
                  description: '| Identifier of the CRM entity ||'
                OWNER_TYPE_ID:
                  type: integer
                  description: '| Identifier of the CRM object type ||'
                TYPE_ID:
                  type: string
                  description: '| Type of the activity. To get available activity types, use the method crm.enum.activitytype.'
                ASSOCIATED_ENTITY_ID:
                  type: integer
                  description: '| Identifier of the entity associated with the activity ||'
                COMMUNICATIONS:
                  type: string
                  description: '| Description of communication ||'
                DEADLINE:
                  type: string
                  format: date-time
                  description: '| Date and time of the activity''s deadline. This field is not set directly; the value is taken from START_TIME for calls and meetings and from END_TIME for tasks ||'
                DESCRIPTION:
                  type: string
                  description: '| Text description of the activity ||'
                DESCRIPTION_TYPE:
                  type: string
                  description: '| Type of description ||'
                DIRECTION:
                  type: string
                  description: '| Direction of the activity: incoming/outgoing. Relevant for calls and emails, not used for meetings ||'
                END_TIME:
                  type: string
                  format: date-time
                  description: '| Time of activity completion | ||'
                FILES:
                  type: string
                  description: '| Files added to the activity ||'
                LOCATION:
                  type: string
                  description: '| Location ||'
                NOTIFY_TYPE:
                  type: string
                  description: '| Type of notification ||'
                ORIGINATOR_ID:
                  type: string
                  description: '| Identifier of the data source, used only for linking to an external source ||'
                ORIGIN_ID:
                  type: string
                  description: '| Identifier of the entity in the data source, used only for linking to an external source ||'
                ORIGIN_VERSION:
                  type: string
                  description: '| Original version, used to protect data from accidental overwriting by an external system. If the data was imported and not modified in the external system, such data can be edited in CRM without fear that the next export will lead to data overwriting ||'
                PRIORITY:
                  type: string
                  description: '| Priority ||'
                PROVIDER_DATA:
                  type: string
                  description: '| Additional provider data ||'
                PROVIDER_GROUP_ID:
                  type: string
                  description: '| Identifier of the provider group ||'
                PROVIDER_ID:
                  type: string
                  description: '| Identifier of the provider ||'
                PROVIDER_TYPE_ID:
                  type: string
                  description: '| Identifier of the provider type, status from the directory ||'
                PROVIDER_PARAMS:
                  type: object
                  description: '| Additional provider parameters ||'
                RESPONSIBLE_ID:
                  type: string
                  description: '| Identifier of the user responsible for the activity ||'
                SETTINGS:
                  type: object
                  description: '| Additional settings ||'
                START_TIME:
                  type: string
                  format: date-time
                  description: '| Time when the activity starts ||'
                STATUS:
                  type: string
                  description: '| Status of the activity ||'
                SUBJECT:
                  type: string
                  description: '| Additional description of the activity ||'
                WEBDAV_ELEMENTS:
                  type: string
                  description: '| Added files. Deprecated, kept for compatibility ||'
                IS_INCOMING_CHANNEL:
                  type: string
                  maxLength: 1
                  description: '| Flag indicating whether the activity was created from an incoming channel (`Y`/`N`) ||'
              required:
              - fields
              - OWNER_ID
              - OWNER_TYPE_ID
              - TYPE_ID
              - COMMUNICATIONS
              - RESPONSIBLE_ID
      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:
        - crm
  /crm.activity.badge.add:
    post:
      summary: Add Badge crm.activity.badge.add
      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 `crm.activity.badge.add` adds a new badge for a configurable activity.
      operationId: crm_activity_badge_add
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/configurable/badges/crm-activity-badge-add.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
                type:
                  type: string
                  description: '| Badge type ||'
              required:
              - code
              - type
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
                type:
                  type: string
                  description: '| Badge type ||'
              required:
              - code
              - type
      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:
        - crm
  /crm.activity.badge.delete:
    post:
      summary: Delete Badge by Code crm.activity.badge.delete
      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 `crm.activity.badge.delete` removes a badge.
      operationId: crm_activity_badge_delete
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/configurable/badges/crm-activity-badge-delete.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
              required:
              - code
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
              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:
        - crm
  /crm.activity.badge.get:
    post:
      summary: Get Badge Information by Code crm.activity.badge.get
      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 `crm.activity.badge.get` will return an array containing [badge fields](./index.md#badge-record-fields).
      operationId: crm_activity_badge_get
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/configurable/badges/crm-activity-badge-get.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
              required:
              - code
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                Field:
                  type: string
                  description: '| Description ||'
                code:
                  type: string
                  description: '| Badge code, for example `missedCall` ||'
              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:
        - crm
  /crm.activity.badge.list:
    post:
      summary: Get the list of badges crm.activity.badge.list
      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 `crm.activity.badge.list` retrieves a list of available badges. It will return an array containing a list of all registered badges. Each element of the array contains [badge fields](./index.md#badge-record-fields).
      operationId: crm_activity_badge_list
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/configurable/badges/crm-activity-badge-list.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
          application/x-www-form-urlencoded:
            schema:
              type: object
      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:
        - crm
  /crm.activity.binding.add:
    post:
      summary: Add a deal binding to a CRM entity crm.activity.binding.add
      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 `crm.activity.binding.add` adds a binding of a deal to a CRM entity. The maximum number of bindings for a single deal is 100 CRM entities.
      operationId: crm_activity_binding_add
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/binding/crm-activity-binding-add.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
                entityTypeId:
                  type: integer
                  description: '| Integer identifier of the CRM object type to which the deal should be bound, for example `2` for a deal ||'
                entityId:
                  type: integer
                  description: '| Integer identifier of the CRM entity to which the deal should be bound, for example `1`  ||'
              required:
              - activityId
              - entityTypeId
              - entityId
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
                entityTypeId:
                  type: integer
                  description: '| Integer identifier of the CRM object type to which the deal should be bound, for example `2` for a deal ||'
                entityId:
                  type: integer
                  description: '| Integer identifier of the CRM entity to which the deal should be bound, for example `1`  ||'
              required:
              - activityId
              - entityTypeId
              - entityId
      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:
        - crm
  /crm.activity.binding.delete:
    post:
      summary: Delete the deal's connection with the CRM entity crm.activity.binding.delete
      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 `crm.activity.binding.delete` removes the connection of a deal with a CRM entity. If the deal is linked to only one entity, this connection cannot be deleted.
      operationId: crm_activity_binding_delete
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/binding/crm-activity-binding-delete.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
                entityTypeId:
                  type: integer
                  description: '| Integer identifier of the CRM entity type to which the deal connection is being removed, for example `2` for a deal ||'
                entityId:
                  type: integer
                  description: '| Integer identifier of the CRM entity to which the deal connection is being removed, for example `1` ||'
              required:
              - activityId
              - entityTypeId
              - entityId
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
                entityTypeId:
                  type: integer
                  description: '| Integer identifier of the CRM entity type to which the deal connection is being removed, for example `2` for a deal ||'
                entityId:
                  type: integer
                  description: '| Integer identifier of the CRM entity to which the deal connection is being removed, for example `1` ||'
              required:
              - activityId
              - entityTypeId
              - entityId
      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:
        - crm
  /crm.activity.binding.list:
    post:
      summary: Get a list of all bindings for the deal crm.activity.binding.list
      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 `crm.activity.binding.list` retrieves a list of all bindings for the deal. The method will return an array, where each element will be an array containing: - `entityTypeId` — integer identifier of the [CRM object type](../../../data-types.md#object_type)'
      operationId: crm_activity_binding_list
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/binding/crm-activity-binding-list.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
              required:
              - activityId
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| Integer identifier of the deal in the timeline, for example `999` ||'
              required:
              - activityId
      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:
        - crm
  /crm.activity.binding.move:
    post:
      summary: Update the Deal's Connection with the CRM Entity crm.activity.binding.move
      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 `crm.activity.binding.move` updates the connection of a deal with a CRM entity.
      operationId: crm_activity_binding_move
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/binding/crm-activity-binding-move.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| The identifier of the deal in the timeline, for example, `999` ||'
                sourceEntityTypeId:
                  type: integer
                  description: '| Identifier of the CRM object type to which the deal is linked, for example, `2` for a deal ||'
                sourceEntityId:
                  type: integer
                  description: '| The identifier of the CRM entity to which the deal is linked, for example, `1` ||'
                targetEntityTypeId:
                  type: integer
                  description: '| Identifier of the CRM object type to which the deal should be linked, for example, `2` for a deal ||'
                targetEntityId:
                  type: integer
                  description: '| The identifier of the CRM entity to which the deal should be linked, for example, `100` ||'
              required:
              - activityId
              - sourceEntityTypeId
              - sourceEntityId
              - targetEntityTypeId
              - targetEntityId
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                activityId:
                  type: integer
                  description: '| The identifier of the deal in the timeline, for example, `999` ||'
                sourceEntityTypeId:
                  type: integer
                  description: '| Identifier of the CRM object type to which the deal is linked, for example, `2` for a deal ||'
                sourceEntityId:
                  type: integer
                  description: '| The identifier of the CRM entity to which the deal is linked, for example, `1` ||'
                targetEntityTypeId:
                  type: integer
                  description: '| Identifier of the CRM object type to which the deal should be linked, for example, `2` for a deal ||'
                targetEntityId:
                  type: integer
                  description: '| The identifier of the CRM entity to which the deal should be linked, for example, `100` ||'
              required:
              - activityId
              - sourceEntityTypeId
              - sourceEntityId
              - targetEntityTypeId
              - targetEntityId
      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:
        - crm
  /crm.activity.communication.fields:
    post:
      summary: Get Description of Communication crm.activity.communication.fields
      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 `crm.activity.communication.fields` returns the description of communication for an activity. Communications store phone numbers in calls, email addresses in e-mails, and names in meetings.
      operationId: crm_activity_communication_fields
      tags:
      - CRM
      externalDocs:
        url: https://apidocs.bitrix24.com/api-reference/crm/timeline/activities/activity-base/crm-activity-communication-fields.html
        description: Official Documentation
      requestBody:
        content:
          application/json:
            schema:
              type: object
          application/x-www-form-urlencoded:
            schema:
              type: object
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BitrixResponse'
        4XX:
       

# --- truncated at 32 KB (1282 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bitrix24/refs/heads/main/openapi/bitrix24-crm-api-openapi.yml