Skip to content

ColmeiaSolucoes/nectarcrm-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

NectarCRM API

Esse é um repositório para auxílio na API NectarCRM.

Colocaremos materiais e webhooks para que a integração seja facilitada.

Nota: Qualquer erro ou sugestão, por favor nos contate.

Se você tem um software e deseja desenvolver uma integração nativa com a gente, preencha o formulário abaixo.

Esta API permite o controle total dos contatos, oportunidades, tarefas e compromissos. Veja as instruções de como realizar a integração abaixo.

Instruções para realizar a integração

URL de acesso

https://app.nectarcrm.com.br/crm/api/1/

Obs: utilize o HTTPS, pois o HTTP ainda que funcione será desabilitado!

Requisição HTTP

Seguimos a estrutura padrão do estilo RESTful

  • GET: lista ou consulta dados
  • POST: criação de dados
  • PUT: atualização de dados
  • DELETE: remoção de dados

Dica: quando estiver listando, você pode escolher os campos que deseja trazer enviando o parâmetro "attribute" na URL.

Exemplo: /crm/api/1/oportunidades?attribute=id&attribute=nome Apenas id e nome virá na listagem.

Retorno

  • Response (application/json)

        {
            "sobre": {
                "versao": "1.0",
                "creditos": "Colmeia Soluções"
            },
            "endpoints": {
                "contatos": {
                    "edicao": {
                        "response": 200,
                        "title": "Edicao de contatos",
                        "method": "PUT",
                        "endpoint": "http://app.nectarcrm.com.br/crm/api/1/contatos/:id"
                    },
                    "listagem": {
                        "response": 200,
                        "title": "Listagem de contatos",
                        "method": "GET",
                        "endpoint": "http://app.nectarcrm.com.br/crm/api/1/contatos"
                    }
                    //...outros métodos abaixo
                }
            }
        }

Como autenticar

É necessário passar o token privado de autenticação para conseguir realizar as operações. Para conseguir esse token, acesse no NectarCRM a seção Configurações -> Integrações.

Token Nectar

Com esse token, você acessa, edita e excluir as informações possíveis pela API.

Você pode optar por 2 caminhos:

  1. Enviar header na requisição Access-Token SEU_TOKEN
curl http://app.nectarcrm.com.br/crm/api/1/contatos/ \ 
    -H "Access-Token: ********************bGciOiJIUzI1NiJ9.eyJpYXQiOjE2MTc2Mjk4MzksImV4cCI6MTYxODkyNTgzOSwidXNlckxvZ2luIjoidEB0LmNvIiwidXNlcklkIjoiNiIsInVzdWFyaW9NYXN0ZXJJZCI6IjUifQ.********************_iKOMBydcUX83lgq77h1uEQ"
  1. Enviar parâmetro na URL de requisição api_token=SEU_TOKEN
curl http://app.nectarcrm.com.br/crm/api/1/contatos/?api_token=********************bGciOiJIUzI1NiJ9.eyJpYXQiOjE2MTc2Mjk4MzksImV4cCI6MTYxODkyNTgzOSwidXNlckxvZ2luIjoidEB0LmNvIiwidXNlcklkIjoiNiIsInVzdWFyaW9NYXN0ZXJJZCI6IjUifQ.********************_iKOMBydcUX83lgq77h1uEQ

Códigos de respostas

  • 200 (application/json)

      Sucesso
    
  • 401 (text/json)

      Apesar de ser usualemnte problemas de credenciais pode acontecer de ser um erro de algum parâmetro enviado errado. (Sentimos muito pela confusão)
    
  • 403 (text/json)

      Acesso negado
    
  • 404 (text/json)

      Registro não encontrado
    
  • 409 (text/json)

      Conflito, problema com alguma regra/restrição (contato já exite com o mesmo email/telefone,...)
    
  • 500 (text/json)

      Erro do servidor
    

Padrões de listagens

Em todas listagem existem os padrões que seguimos para paginação e busca.

Parâmetros

  • &page

    Número da página de listagem (integer)

  • &displayLength

    Quantidade de objetos a serem listados por página (máximo 200)

Busca

  • &exato

    Faz a busca exata pelo campo pedido. Se tiver colocado &nome=test, ele buscará por qualquer coisa começada com "test". Porém, com o parâmetro &exato=true, ele somente encontrará o item com nome igual a "test"

Padrão de endpoints

Para listagem, use GET: /endpoint/
Para inserção, use POST: /endpoint/
Para visualização, use GET: /endpoint/{id}
Para atualização, use PUT: /endpoint/{id}
Para exclusão, use DELETE: /endpoint/

Seções (endpoints) disponíveis

Segue as seções que você pode acessar pela API

Principais:

Tabelas administrativas

Outros

Com o tempo vamos documentando todos endpoints, mas ainda existem alguns que podem não terem sidos documentados. Para não ficar sem informação, criamos um endpoint que lista todos objetos e campos possíveis da API:

Limpar campos

Para alguns endpoints (por hora, implementado em contatos), você pode limpar os campos passando como valor null, "", {}, []. Caso não queira limpar o valor, numa edição, não passe o parâmetro. Ex: {"nome": "Rafael", "codigo": null} -> irá alterar o nome e limpar o código. {"nome": "Rafael"} -> irá alterar somente o nome e manter os demais campos.

Header

A requisição deve conter:

  • Content-Type: application/json
  • Access-Token: SEU_TOKEN_AQUI

Para mais informações, consulte a documentação completa clicando aqui

Integração RDStation

Para informações de integração com RDStation, clique aqui