Package Information
Documentation
@gustavojosemelo/n8n-nodes-bitrix24
A full-featured n8n community node for Bitrix24 β covering CRM, Tasks, Open Channels, Chatbots, Drive, Document Generator, News Feed, and a Raw API executor.
β¨ Features
| Category | Resources | Operations |
|---|---|---|
| π CRM | Deal, Lead, Contact, Company | Create Β· Get Β· Update Β· Delete Β· List Β· Search |
| β Tasks | Task, Task Comment | Create Β· Get Β· Update Β· Delete Β· List Β· Complete |
| π€ Users | User | Get Β· Get Current Β· List Β· Search |
| π¬ Open Channels | Message, Conversation | Send Β· History Β· Complete Β· Assign |
| π€ Chatbot | Bot, Bot Message | Register Β· Send Β· Update Β· Delete |
| π Drive | File, Folder | Upload Β· Get Β· List Β· Delete Β· Rename |
| π Document Generator | Document, Template | Generate PDF Β· List Templates Β· Download URL |
| π° News Feed | Blog Post, CRM Activity | Create Β· Get Β· Update Β· Delete Β· List Β· Complete |
| β‘ Raw API | Any method | Execute Β· Batch Β· Auto-paginate |
Highlights
- π Dynamic dropdowns β Pipelines, Stages, Users, and custom
UF_fields loaded live from your Bitrix24 - π Smart filters β Quick filters (dropdowns) + Advanced raw JSON filter on all list operations
- π¦ Auto-pagination β Fetch all pages automatically (Bitrix24 returns max 50/page)
- β‘ Raw API β Execute any Bitrix24 method directly, just like Make's "Make an API Call"
- π Batch API β Run multiple methods in one request with cross-result references
- π Trigger Node β Auto-registers webhooks on activation, cleans up on deactivation
- π Dual auth β Webhook URL mode (simple) and OAuth2 mode (for marketplace apps)
π¦ Installation
Via n8n Interface (recommended)
- Go to Settings β Community Nodes
- Click Install
- Enter:
@gustavojosemelo/n8n-nodes-bitrix24 - Confirm and restart n8n
Via npm
npm install @gustavojosemelo/n8n-nodes-bitrix24
Via Docker
docker exec -it n8n npm install @gustavojosemelo/n8n-nodes-bitrix24 --prefix /home/node/.n8n/custom
docker restart n8n
π Authentication
This node supports two authentication modes, selectable in the credential:
Webhook Mode (recommended for personal use)
The simplest option. Uses a Bitrix24 inbound webhook URL with the token already embedded.
- In Bitrix24, go to Developer Resources β Other β Inbound Webhook
- Create a new webhook and copy the full URL
Example:
https://yourdomain.bitrix24.com/rest/1/abc123token/ - In n8n, create a Bitrix24 API credential
- Select Authentication Mode: Webhook
- Paste the full URL
OAuth2 Mode (for Marketplace apps)
For registered apps in the Bitrix24 developer zone.
- Register an app at Bitrix24 Developer Zone β My Apps
- Copy the Client ID, Client Secret, and your portal Domain
- In n8n, select Authentication Mode: OAuth2 and fill in the fields
π Usage
CRM β Dynamic Fields
When creating or updating a Deal, Lead, Contact, or Company, the node automatically loads:
- Pipeline β dropdown with your real funnels (
crm.category.list) - Stage β dropdown filtered by the selected pipeline (
crm.dealcategory.stages) - Responsible User β dropdown with active users (
user.get) - Custom Fields (UF_) β separate section listing all
UF_*fields with their readable labels
List / Search β Filtering
Every list operation has two filter modes:
- Quick Filters β pre-built dropdowns for the most common fields
- Advanced Filter (Raw JSON) β pass any
FILTERobject directly to the Bitrix24 API
// Advanced filter example for crm.deal.list
{
"STAGE_ID": "WON",
">OPPORTUNITY": 10000,
"ASSIGNED_BY_ID": "5"
}
Set Max Results to 0 to fetch all pages automatically.
β‘ Raw API β Execute any method
Select Category: Raw API to call any Bitrix24 REST method:
| Field | Example |
|---|---|
| Method | crm.deal.list |
| Parameters (JSON) | {"filter": {"STAGE_ID": "NEW"}, "select": ["ID","TITLE"]} |
| Fetch All Pages | Enable for list methods |
// Batch example
{
"cmd": {
"get_deal": "crm.deal.get?id=42",
"deal_contacts": "crm.deal.contact.items.get?id=42"
}
}
Results can reference each other: $result[get_deal][ASSIGNED_BY_ID]
π Trigger Node β Available Events
| Group | Event | Description |
|---|---|---|
| CRM Deal | ONCRMDEALADD |
Deal created |
| CRM Deal | ONCRMDEALUPDATE |
Deal updated |
| CRM Deal | ONCRMDEALMOVE |
Deal stage changed |
| CRM Deal | ONCRMDEALDELETION |
Deal deleted |
| CRM Lead | ONCRMLEADADD |
Lead created |
| CRM Lead | ONCRMLEADUPDATE |
Lead updated |
| CRM Contact | ONCRMCONTACTADD |
Contact created |
| CRM Company | ONCRMCOMPANYADD |
Company created |
| Tasks | ONTASKADD |
Task created |
| Tasks | ONTASKUPDATE |
Task updated |
| Tasks | ONTASKCOMMENTADD |
Comment added to task |
| Messages | ONIMBOTMESSAGEADD |
New open channel message |
| Messages | ONOPENLINESSESSIONSTART |
New support session opened |
| Messages | ONOPENLINESSESSIONFINISH |
Support session closed |
Tip: Enable Include Full Object to automatically fetch the complete entity (all fields including UF_*) after receiving the event β at the cost of one extra API call.
ποΈ Project Structure
nodes/Bitrix24/
βββ Bitrix24.node.ts # Main regular node
βββ Bitrix24Trigger.node.ts # Trigger node
βββ GenericFunctions.ts # HTTP helper, auth, loadOptions
βββ bitrix24.svg # Node icon
βββ credentials/
β βββ Bitrix24Api.credentials.ts
βββ resources/
βββ crm/
β βββ deal.ts
β βββ lead.ts
β βββ contact.ts
β βββ company.ts
βββ tasks/
β βββ task.ts # Task + Task Comment
βββ users/
β βββ user.ts
βββ openChannels/
β βββ message.ts # Message + Conversation
βββ chatbot/
β βββ bot.ts # Bot + Bot Message
βββ drive/
β βββ file.ts # File + Folder
βββ documentGenerator/
β βββ document.ts
βββ newsFeed/
β βββ newsFeed.ts # Blog Post + CRM Activity
βββ rawApi/
βββ rawApi.ts
π οΈ Local Development
# Clone the repo
git clone https://github.com/gustavojosemelo/n8n-nodes-bitrix24.git
cd n8n-nodes-bitrix24
# Install dependencies
npm install
# Build
npm run build
# Link for local n8n testing
cd ~/.n8n/custom
npm link n8n-nodes-bitrix24
π API Rate Limits
Bitrix24 limits 2 requests/second by default on commercial plans. For large list operations, use Max Results: 0 to enable automatic pagination with built-in rate control.
π€ Contributing
Pull requests are welcome! For major changes, please open an issue first to discuss what you'd like to change.
- Fork the repository
- Create your branch:
git checkout -b feature/my-feature - Commit:
git commit -m 'feat: add my feature' - Push:
git push origin feature/my-feature - Open a Pull Request
π License
Made with β€οΈ by Next ComunicaΓ§Γ£o