Guia Atualizado da REST API do Bitrix24
Seja bem-vindo ao nosso guia definitivo sobre a REST API do Bitrix24! Aqui você encontrará tudo o que precisa para começar a explorar e aplicar os recursos da API com confiança, eficiência e de forma atualizada com base na documentação oficial do Bitrix24.
Ao final deste guia, disponibilizamos materiais complementares, links úteis e dicas para quem quer se aprofundar. Caso tenha dúvidas, entre em contato conosco pelo WhatsApp ou agende uma consultoria especializada.
O que é o Bitrix24?
O Bitrix24 é uma plataforma completa de CRM e colaboração, com recursos que vão desde vendas e gestão de clientes até tarefas, projetos, RH e comunicação. Disponível na nuvem e com versão gratuita, ele também oferece acesso à sua REST API (em planos pagos e durante o trial de 15 dias).
Quer ver mais de 130 formas de uso? Acesse aqui . Faça agora sua versão gratuita do Bitrix24 e veja também dicas para começar trabalhar no Bitrix24.
Acesso à REST API: planos, permissões e primeiros passos
Disponibilidade:
- REST API está disponível apenas em planos pagos ou durante o período de demonstração (15 dias).
- Para saber se está ativo, clique em “Meu Plano” no cabeçalho do Bitrix24.
- Desenvolvedores podem solicitar ambiente NFR (sandbox).
Permissões:
- Toda chamada à API é executada em nome de um usuário.
- Utilize uma conta com perfil de administrador para ter acesso total.
Como acessar e autenticar a API
1. Webhook de Entrada
O jeito mais simples de testar a API é com webhooks:
- Acesse “Recursos do Desenvolvedor” > Outros > Webhook de entrada
- Escolha os módulos que o webhook pode acessar
- Copie a URL gerada com token exclusivo
2. Construtor de Solicitações
Ferramenta nativa do Bitrix24 para criar chamadas REST:
- Escolha o método (ex:
crm.deal.list) - Insira os parâmetros desejados
- Clique em Executar para ver o retorno JSON
3. OAuth 2.0 (para apps e integrações mais complexas)
Use OAuth quando precisar de:
- Login de múltiplos usuários
- Publicação de apps no Marketplace
Veja documentação oficial de OAuth
Estrutura básica da chamada REST API
https://empresa.bitrix24.com/rest/user_id/token/method.json?param1=valor1
Exemplo prático:
https://empresa.bitrix24.com/rest/276/xbnc9mu1u0yxkglr/crm.deal.list.json?SELECT[]=ID&SELECT[]=TITLE
Componentes:
- empresa.bitrix24.com: seu portal Bitrix
- 276: ID do usuário (dono do webhook)
- token: chave de autenticação
- crm.deal.list: método a ser chamado
Métodos HTTP principais
| Método | Uso |
|---|---|
| GET | Consultar dados (ex: crm.contact.get) |
| ADD | Criar recurso (ex: crm.deal.add) |
| UPDATE | Atualizar recurso (ex: tasks.task.update) |
| DELETE | Remover recurso (ex: crm.contact.delete) |
Perceba na API que praticamente existe uma função para cada ação desejada. Compreender e utilizar esses métodos de forma eficaz é crucial para aproveitar ao máximo as capacidades de integração e automação oferecidas pela API do Bitrix24. Nesta tabela trago os principais endpoints, sua utilidade e um exemplo de URL, onde […] é o mesmo que https://empresa.bitrix24.com.br/rest/276/xbnc9mu1u0yxkglr
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Negócios | ||
| crm.deal.get | Mostra todas as informações de um negócio específico que você passou no parâmetro id | […]/crm.deal.get/?id=226935 |
| crm.deal.list | Obtém lista de todos os negócios. É possível aplicar filtros, como no exemplo | […]/crm.deal.list/?&FILTER[TITLE]=lemos&select[]=ID&select[]=TITLE |
| crm.deal.productrows.get | Obtém lista de todos os produtos atrelados a um negócio. | […]/crm.deal.productrows.get/?id=226935 |
| crm.deal.productrows.set | Insere produtos em um negócio | […]/?id=643&rows[0][PRODUCT_NAME]=PRODUTO 1&rows[0][PRICE]=100&rows[0][QUANTITY]=4&rows[1][PRODUCT_NAME]=TAOTAO&rows[1][PRICE]=400&rows[1][QUANTITY]=1&rows[2][PRODUCT_NAME]=TERCEIRO&rows[2][PRICE]=400&rows[2][QUANTITY]=1 |
| crm.deal.update | Atualiza campos de um negócio específico | […]/?id=226935&Fields[TITLE]=TESTE&Fields[TYPE_ID]=SALE&Fields[STAGE_ID]=C95:NEW&Fields[CURRENCY_ID]=BRL&Fields[OPPORTUNITY]=0.00&Fields[IS_MANUAL_OPPORTUNITY]=N&Fields[TAX_VALUE]=0.00&Fields[COMPANY_ID]=0&Fields[ASSIGNED_BY_ID]=276&Fields[CREATED_BY_ID]=276&Fields[MODIFY_BY_ID]=276&Fields[OPENED]=Y&Fields[CLOSED]=N&Fields[CATEGORY_ID]=95&Fields[STAGE_SEMANTIC_ID]=P&Fields[IS_NEW]=Y&Fields[IS_RECURRING]=N&Fields[IS_RETURN_CUSTOMER]=N&Fields[IS_REPEATED_APPROACH]=N |
| crm.deal.add | Adiciona um novo negócio | […]/crm.deal.add/?Fields[TITLE]=TESTE&Fields[TYPE_ID]=SALE&Fields[STAGE_ID]=C95:NEW&Fields[CURRENCY_ID]=BRL&Fields[OPPORTUNITY]=0.00&Fields[IS_MANUAL_OPPORTUNITY]=N&Fields[TAX_VALUE]=0.00&Fields[COMPANY_ID]=0&Fields[ASSIGNED_BY_ID]=276&Fields[CREATED_BY_ID]=276&Fields[MODIFY_BY_ID]=276&Fields[OPENED]=Y&Fields[CLOSED]=N&Fields[CATEGORY_ID]=95&Fields[STAGE_SEMANTIC_ID]=P&Fields[IS_NEW]=Y&Fields[IS_RECURRING]=N&Fields[IS_RETURN_CUSTOMER]=N&Fields[IS_REPEATED_APPROACH]=N |
| crm.deal.delete | Exclui um negócio específico | […]/crm.deal.delete/?id=226935 |
| crm.timeline.comment.add | Adiciona um comentário no negócio | […]/crm.timeline.comment.add/?fields[ENTITY_ID]=181&fields[ENTITY_TYPE]=deal&fields[COMMENT]=Visita%20ao%20Cliente%2008/12/2020 |
| crm.deal.productrows.get | Obtém informações de produtos atrelados a um negócio | […]/crm.deal.productrows.get/?id=643 |
| crm.product.fields | Obtém a descrição dos campos de produtos | […]/crm.product.fields/ |
| crm/configs/productprops/edit | […]/crm/configs/productprops/edit/295/ | |
| crm.product.get | […]/crm.product.get/?id=433 | |
| crm/configs/productprops | […]/crm/configs/productprops/ | |
| crm.deal.productrows.set | […]/crm.deal.productrows.set/?id=643&rows[0][PRODUCT_NAME]=PRODUTO 1&rows[0][PRICE]=100&rows[0][QUANTITY]=4&rows[1][PRODUCT_NAME]=TAOTAO&rows[1][PRICE]=400&rows[1][QUANTITY]=1&rows[2][PRODUCT_NAME]=TERCEIRO&rows[2][PRICE]=400&rows[2][QUANTITY]=1 |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Contato | ||
| crm.contact.fields | Retorna a descrição dos campos padrões e personalizados de Contato | […]/crm.contact.fields/ |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Empresa | ||
| crm.company.fields | Retorna a descrição dos campos padrões e personalizados de Empresa | […]/c[…]/crm.company.fields/ |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Leads | ||
| crm.lead.fields | Retorna a descrição dos campos padrões e personalizados de Lead | […]/crm.lead.fields/ |
| crm.lead.add | Adiciona um novo lead | […]/crm.lead.add/&fields[TITLE]=SOME-TITLE&fields[NAME]=SOME-NAME&fields[SECOND_NAME]=SOME-SECOND-NAME&fields[COMMENTS]=SOME-COMMENTARY&fields[PHONE][0][VALUE]=869123123&fields[PHONE][0][VALUE_TYPE]=WORK |
| crm.lead.get | Obtém informações de um lead | […]/crm.lead.get/?id=3511 |
| crm.lead.list | Lista todos os leads | […]/crm.lead.list/ |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Tarefas | ||
| tasks.task.add | Adiciona uma nova tarefa | […]/tasks.task.add/?fields[TITLE]=Título da Tarefa&fields[DESCRIPTION]=Descrição da Tarefa&fields[RESPONSIBLE_ID]=8&fields[START_DATE_PLAN]=2024-05-01T00:00:00&fields[END_DATE_PLAN]=2024-05-30T00:00:00&fields[DEADLINE]=2024-05-30T00:00:00&fields[PRIORITY]=2&fields[TASK_CONTROL]=Y&fields[PARENT_ID]=0&fields[DEPENDS_ON]=0&fields[AUDITORS]=2&fields[ACCOMPLICES]=3&fields[groupId]=88 |
| tasks.task.update | Atualiza campos da tarefa | […]/tasks.task.update?taskId=1333&fields[ufCrmTask]=D_181 |
| tasks.task.comments.add | Adiciona comentário a tarefa | […]/tasks.task.comments.add?taskId=1&fields[POST_MESSAGE]=hello%20world! |
| task.item.update | Cria uma subtarefa | […]/task.item.update?TASKID=idtarefafilho&TASKDATA[PARENT_ID]=idtarefapai |
| tasks.task.get | Obtém informações de uma Tarefa | […]/tasks.task.get?id=1333 |
| task.stages.movetask | Muda a tarefa de fase | […]/task.stages.movetask?id=111&stageId=341 |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| Usuários | ||
| user.get | Obtém informações de um usuário | […]/user.get/?ID=28 |
| user.get?[sort] | Lista usuários ordenando por um campo | […]/user.get?[sort]=[UF_XING][order]=[ASC] |
| user.search | Procura um usuário pelo nome | […]/user.search?FILTER[NAME]=gustavo&FILTER[LAST_NAME]=lemos |
| Endpoint | Funcionalidade | Exemplo |
|---|---|---|
| CRM em geral | ||
| crm.duplicate.findbycomm | Retorna os IDs dos leads, contatos ou empresas que contêm o número de telefone ou e-mail especificados | […]/crm.duplicate.findbycomm.json?type=PHONE&values[]=67992445335 |
| crm.status.list | Retorna uma lista de elementos de acordo com o filtro indicado pelo parâmetro filter | […]/crm.status.list?filter[ENTITY_ID]=SOURCE |
| crm.company.get | Obtém informações de uma Empresa | […]/crm.company.get/?id=1061 |
| crm.company.fields | Consulta os campos da Empresa | […]/crm.company.fields/ |
| crm.contact.get | Obtém informações de um Contato | […]/crm.contact.get/?id=1359 |
| crm.contact.update | Atualiza um contato | […]/crm.contact.update?id=57855&fields[PHONE][0][ID]=+554899873058+&fields[PHONE][0][VALUE_TYPE]=WORK&fields[PHONE][0][VALUE]=+5548991537044 |
| user.fields | Obtém a descrição dos campos de usuário | […]/user.fields/ |
| crm.contact.list.json | crm.contact.list.json?filter[PHONE]=8903227&select[0]=ID&select[1]=NAME&select[2]=LAST_NAME | |
| crm.deal.productrows.get | Obtém informações de produtos atrelados a um negócio | […]/crm.deal.productrows.get/?id=643 |
| crm.product.fields | Obtém a descrição dos campos de produtos | […]/crm.product.fields/ |
| crm/configs/productprops/edit | […]/crm/configs/productprops/edit/295/ | |
| crm.product.get | […]/crm.product.get/?id=433 | |
| crm/configs/productprops | […]/crm/configs/productprops/ | |
| crm.deal.productrows.set | […]/crm.deal.productrows.set/?id=643&rows[0][PRODUCT_NAME]=PRODUTO 1&rows[0][PRICE]=100&rows[0][QUANTITY]=4&rows[1][PRODUCT_NAME]=TAOTAO&rows[1][PRICE]=400&rows[1][QUANTITY]=1&rows[2][PRODUCT_NAME]=TERCEIRO&rows[2][PRICE]=400&rows[2][QUANTITY]=1 | |
| lists.element.add | […]/lists.element.add?IBLOCK_TYPE_ID=bitrix_processes&IBLOCK_ID=31&ELEMENT_CODE=item 1&fields[NAME]=item 1 | |
| lists.element.update | […]/lists.element.update?IBLOCK_TYPE_ID=bitrix_processes&IBLOCK_ID=223&ELEMENT_ID=1745&FIELDS[PROPERTY_1385]=Teste&FIELDS[NAME]=Teste1 | |
| bizproc.workflow.start | Inicia a execução de uma automação | […]/bizproc.workflow.start/?TEMPLATE_ID=657&DOCUMENT_ID[0]=crm&DOCUMENT_ID[1]=CCrmDocumentDeal&DOCUMENT_ID[2]=719 |
| bizproc.workflow.terminate | Interrompe a execução de uma automação | […]/bizproc.workflow.terminate/?id=61519213912911.16166729 |
| bizproc | Consulta o ID de uma automação | https://empresa.bitrix24.com.br/bizproc/bizproc/ |
| crm/configs/fields/CRM_LEAD | Consulta as características do campo | https://empresa.bitrix24.com.br/crm/configs/fields/CRM_LEAD/edit/UF_CRM_1566224490/ |
| imopenlines.crm.chat.getLastId | Busca ID do último chat usado | […]/imopenlines.crm.chat.getLastId?CRM_ENTITY_TYPE=CONTACT&CRM_ENTITY={{1.id_contato}} |
| imopenlines.operator.transfer | Transfere a última conversa | […]/imopenlines.operator.transfer?CHAT_ID=40981&TRANSFER_ID=323 |
| imopenlines.crm.message.add | Envia mensagem | […]imopenlines.crm.message.add?CRM_ENTITY_TYPE=company&CRM_ENTITY=449&USER_ID=1&CHAT_ID=28533&MESSAGE=Oi |
| imopenlines.operator.another.finish | Finaliza conversa | […]/imopenlines.operator.another.finish?CHAT_ID=26387 |
| crm.item.update | Altera um item da SPA | […]/crm.item.update?entityTypeId={ID da SPA}&id={ID do Card}&fields[ID campo SPA]=Valor do campo |
Dica bônus: Para ter uma visualização melhor dos campos, utilize a extensão JSON FORMATTER no Google Chrome
O Bitrix24 disponibiliza uma tabela com a estrutura básica dos campos padrões de Empresas, Negócios, Leads, Contatos, Recursos e Atividades. Também possuímos uma tabela personalizada para consultar os principais campos que você pode baixar aqui.
A API Bitrix24 tem um método específico para cada ação. Exemplo:
https://empresa.bitrix24.com/rest/…/crm.contact.get/?id=123

Filtros, ordenação e seleção de campos
A maioria dos métodos aceita os parâmetros:
ORDER[]=: ordenação, ex:ORDER[]=NAME:ASCFILTER[]=: filtrar dados, ex:FILTER[>PROBABILITY]=50SELECT[]=: especificar campos, ex:SELECT[]=ID&SELECT[]=UF_*
Dicas:
- Para todos os campos personalizados:
SELECT[]=*&SELECT[]=UF_* - Use
%como curinga, ex:FILTER[NAME]=%an%para pegar “Jan”, “Brian”… - A filtragem é case-insensitive mas depende do formato exato (ex: telefone precisa estar idêntico)
Diferença entre crm.deal.get e crm.deal.list
A maioria dos métodos aceita os parâmetros:
| Método | Resultado |
|---|---|
crm.deal.getGET | Retorna todos os campos, inclusive personalizados |
crm.deal.list | Retorna apenas campos padrão, a menos que especifique com SELECT[]= |
Exemplos práticos
# Listar todos os contatos
crm.contact.list.json?select[]=ID&select[]=NAME
# Buscar contato por telefone
crm.contact.list.json?filter[PHONE]=8903227&select[]=ID&select[]=NAME
# Buscar todos os produtos de um Negócio
crm.deal.productrows.get.json?id=226935
Utilize a extensão JSON Formatter no Chrome para facilitar a leitura do retorno.
Enviando arquivos via API
Para transferir um arquivo, é necessário especificar dois parâmetros – o nome do arquivo com sua extensão, além do código base64, que na verdade é um conjunto de dados para o arquivo.
Os dados no campo são enviados em um arquivo compactado. Visualmente, isso pode ser representado assim:
[[somefile.txt,base64],[somefile2.txt,base64]]
Os dados no campo são enviados em um arquivo compactado. Visualmente, isso pode ser representado assim:
/crm.deal.update?ID=123&FIELDS[UF_CRM_1674832920][0][fileData][0]=somefile.txt&FIELDS[UF_CRM_1674832920][0][fileData][1]=SGVsbG8gd29ybGQ%3D
Explicação:
/crm.deal.update?ID=123– acessa o negócio com ID 123 para atualizá-lo.FIELDS[UF_CRM_1674832920][0][fileData][0]=somefile.txt– envia o nome do arquivo.FIELDS[UF_CRM_1674832920][0][fileData][1]=SGVsbG8gd29ybGQ%3D– envia o conteúdo do arquivo em base64.
Testando com Postman
Uma maneira prática e segura de testar chamadas da API Bitrix24 é usando o Postman:
- Baixe o arquivo de coleção
.postman_collection.json - No Postman, clique em Importar > Arquivo e selecione o arquivo
- Configure as variáveis
{{domain}},{{user_id}}e{{token}}no ambiente - Execute requisições como
crm.contact.get,crm.deal.list,crm.status.list, entre outras já preparadas
Exemplo de chamada:
https://empresa.bitrix24.com.br/rest/25/s9epahw88mj42jlv/crm.deal.get/?id=7323
https://empresa.bitrix24.com.br/rest/25/s9epahw88mj42jlv/crm.deal.get/?id=7323
Com o Postman, você pode montar, testar e automatizar chamadas REST com mais agilidade. Ideal para desenvolvedores, agências e parceiros Bitrix24.
Webhooks: como utilizar
Os webhooks são uma ferramenta poderosa para integrar e automatizar processos no Bitrix24, permitindo que você receba notificações em tempo real sobre eventos específicos. Vamos explicar como configurar e utilizar Webhooks no Bitrix24, com base na documentação oficial, facilitando a comunicação entre o Bitrix24 e outros sistemas ou até entre ele mesmo.
- Acesse Recursos do Desenvolvedor > Webhook de Entrada
- Dê um nome ao webhook
- Escolha o escopo e permissões
- Use o Construtor de Solicitação para gerar exemplos

Após abrir a seção de webhook, você pode realizar as seguintes ações:
– Alterar o nome do webhook;
– Selecionar o método REST API no Construtor de solicitações (você pode ler a descrição do método e baixar um exemplo de código completo com os parâmetros necessários para executar as solicitações);
-Adicionar Parâmetros
– Verificar se o webhook está operacional, clicando em Executar;
– Atribuir permissões de acesso para módulos e ferramentas individuais do Bitrix24.
O Construtor de solicitações contém uma URL que deve ser usada ao enviar dados de um sistema externo de terceiros para o Bitrix24.
Você pode sempre contar com o auxílio da equipe Sapiens. Surgiu alguma dúvida? Nos chame no Whatsapp!
Dica: biblioteca oficial e exemplos
A Bitrix disponibiliza bibliotecas para PHP (Crest), JavaScript (BX24.js) e SDKs para aplicações em nuvem. Utilize para facilitar suas chamadas e lidar com autenticação de forma segura.
Materiais complementares
- Documentação oficial da API Bitrix24
- Curso Oficial de REST API da Bitrix24
- Ajuda on-line da API Bitrix
- Exemplos de webhooks para desenvolvedores
- Como desenvolver e consumir API do Bitrix24
Conclusão
A REST API do Bitrix24 é uma poderosa aliada para quem deseja automação e integração. Com as informações e exemplos deste guia, você está pronto para começar a criar soluções práticas e avançadas. E lembre-se: a equipe Sapiens está pronta para ajudar sempre que você precisar!
Vamos juntos acelerar seus processos e resultados!



Deixe um comentário