Config system Chatwoot

7 funções do TermoSell para config system chatwoot.

// npm install termo_core --save-exact
import * as sell from "termo_core/sell";
// ou: import { sell } from "termo_core";
FunçãoRotaO que faz
buscar_paginador_config_system_chatwootGET /config_system_chatwootLista as configurações do Chatwoot com paginação
criar_config_system_chatwootPOST /config_system_chatwootConecta a conta do Chatwoot
buscar_auto_complete_config_system_chatwootGET /config_system_chatwoot/autocompleteLista básica de configurações do Chatwoot para seleção
buscar_pelo_filtro_config_system_chatwootGET /config_system_chatwoot/filtroBusca configurações do Chatwoot por filtro
buscar_pelo_id_config_system_chatwootGET /config_system_chatwoot/{id}Busca a configuração do Chatwoot pelo id
atualizar_pelo_id_config_system_chatwootPATCH /config_system_chatwoot/{id}Atualiza a configuração do Chatwoot pelo id
deletar_pelo_id_config_system_chatwootDELETE /config_system_chatwoot/{id}Exclui a configuração do Chatwoot pelo id

buscar_paginador_config_system_chatwoot

GET/config_system_chatwoot Exige credencial

Lista as configurações do Chatwoot com paginação

Exige qualquer permissão da área configuracoes (qualquer ação liberada na área já libera a leitura). Ordena por nome. Para cada item, consulta o Chatwoot na hora: chave_valida diz se o token de acesso funcionou e erro_chave traz o motivo da recusa. pagina começa em 1 (padrão 1; valores menores viram 1). A página tem sempre 50 itens: tamanho é aceito, mas ignorado. total conta todos os registros não excluídos. O token de acesso nunca volta: as respostas trazem só token_acesso_mascarado.

function buscar_paginador_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPaginadorConfigSystemChatwoot = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaConfigSystemChatwootValidada>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_config_system_chatwoot(credencial_de_acesso, { pagina: 1 });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaConfigSystemChatwootValidada> · Rust: Result<tipos::PaginaConfigSystemChatwootValidada, ErroAoChamarServico> · veja PaginaConfigSystemChatwootValidada.

criar_config_system_chatwoot

POST/config_system_chatwoot Exige credencial

Conecta a conta do Chatwoot

Exige a permissão criar da área configuracoes. O TermoSell usa uma única conta do Chatwoot: com uma configuração já cadastrada, responde 409 (edite a existente). nome (até 100 caracteres), endereco do Chatwoot (http:// ou https://, até 200), conta_id (maior que zero), token_acesso (de 8 a 200 caracteres) e endereco_publico (o endereço https:// deste backend que o Chatwoot vai chamar, até 200) são obrigatórios. Antes de gravar, cria no Chatwoot o robô de atendimento que avisa o TermoSell das mensagens; se o Chatwoot recusar, responde 400 com o motivo. A configuração nasce ativa. O token de acesso nunca volta: as respostas trazem só token_acesso_mascarado.

function criar_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  corpo_da_requisicao: tipos.ConfigSystemChatwootCriar,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.ConfigSystemChatwoot>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { criar_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await criar_config_system_chatwoot(credencial_de_acesso, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.ConfigSystemChatwoot> · Rust: Result<tipos::ConfigSystemChatwoot, ErroAoChamarServico> · veja ConfigSystemChatwoot.

buscar_auto_complete_config_system_chatwoot

GET/config_system_chatwoot/autocomplete Exige credencial

Lista básica de configurações do Chatwoot para seleção

Exige qualquer permissão da área configuracoes (qualquer ação liberada na área já libera a leitura). Devolve só id, nome e endereço das configurações ativas, em ordem alfabética de nome. busca procura por trecho do nome, sem diferenciar maiúsculas. pagina começa em 1 (padrão 1) e tamanho tem padrão 10, sem máximo; valores menores que 1 viram 1. total conta os registros que casam com a busca.

function buscar_auto_complete_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarAutoCompleteConfigSystemChatwoot = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaConfigSystemChatwootAutoComplete>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_auto_complete_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_auto_complete_config_system_chatwoot(credencial_de_acesso, { busca: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaConfigSystemChatwootAutoComplete> · Rust: Result<tipos::PaginaConfigSystemChatwootAutoComplete, ErroAoChamarServico> · veja PaginaConfigSystemChatwootAutoComplete.

buscar_pelo_filtro_config_system_chatwoot

GET/config_system_chatwoot/filtro Exige credencial

Busca configurações do Chatwoot por filtro

Exige qualquer permissão da área configuracoes (qualquer ação liberada na área já libera a leitura). Devolve todas as configurações que casam com o filtro, sem paginação, em ordem alfabética de nome. nome e endereco procuram por trecho, sem diferenciar maiúsculas; ativo filtra pela situação. O token de acesso nunca volta: as respostas trazem só token_acesso_mascarado.

function buscar_pelo_filtro_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPeloFiltroConfigSystemChatwoot = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.ConfigSystemChatwoot>>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_config_system_chatwoot(credencial_de_acesso, { nome: "..." });

Argumentos

Nome

Tipo

Retorno: Promise<Array<tipos.ConfigSystemChatwoot>> · Rust: Result<Vec<tipos::ConfigSystemChatwoot>, ErroAoChamarServico>

buscar_pelo_id_config_system_chatwoot

GET/config_system_chatwoot/{id} Exige credencial

Busca a configuração do Chatwoot pelo id

Exige qualquer permissão da área configuracoes (qualquer ação liberada na área já libera a leitura). Configuração excluída responde 404. robo_chatwoot_id é o id do robô de atendimento criado no Chatwoot. O token de acesso nunca volta: as respostas trazem só token_acesso_mascarado.

function buscar_pelo_id_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.ConfigSystemChatwoot>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_config_system_chatwoot(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.ConfigSystemChatwoot> · Rust: Result<tipos::ConfigSystemChatwoot, ErroAoChamarServico> · veja ConfigSystemChatwoot.

atualizar_pelo_id_config_system_chatwoot

PATCH/config_system_chatwoot/{id} Exige credencial

Atualiza a configuração do Chatwoot pelo id

Exige a permissão editar da área configuracoes. Atualização parcial: só nome (até 100), token_acesso (de 8 a 200), endereco_publico (https://, até 200) e ativo mudam; o endereço e a conta do Chatwoot não. Trocar o token ou o endereço público atualiza antes o robô de atendimento no Chatwoot, e trocar o endereço público também refaz o webhook de cada número da Z-API ligado a esta conta; se o Chatwoot ou a Z-API recusarem, nada é gravado e a resposta é 400 com o motivo. O token de acesso nunca volta: as respostas trazem só token_acesso_mascarado.

function atualizar_pelo_id_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  corpo_da_requisicao: tipos.ConfigSystemChatwootAtualizar,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.ConfigSystemChatwoot>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { atualizar_pelo_id_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await atualizar_pelo_id_config_system_chatwoot(credencial_de_acesso, id, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.ConfigSystemChatwoot> · Rust: Result<tipos::ConfigSystemChatwoot, ErroAoChamarServico> · veja ConfigSystemChatwoot.

deletar_pelo_id_config_system_chatwoot

DELETE/config_system_chatwoot/{id} Exige credencial

Exclui a configuração do Chatwoot pelo id

Exige a permissão deletar da área configuracoes. A exclusão é lógica e não há como restaurar. Só exclui a configuração que não tem números de WhatsApp (Z-API) vinculados; exclua ou desvincule os números antes.

function deletar_pelo_id_config_system_chatwoot(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<void>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { deletar_pelo_id_config_system_chatwoot } from "termo_core/sell";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
await deletar_pelo_id_config_system_chatwoot(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<void> · Rust: Result<(), ErroAoChamarServico> · sem corpo na resposta.

Tipos

Tipos usados pelas funções desta página. O nome é o mesmo nos dois pacotes.

ConfigSystemChatwoot

import type { ConfigSystemChatwoot } from "termo_core/sell";

export interface ConfigSystemChatwoot {
  ativo: boolean;
  atualizado_em: string;
  conta_id: number;
  criado_em: string;
  endereco: string;
  endereco_publico: string;
  id: string;
  nome: string;
  robo_chatwoot_id: number;
  token_acesso_mascarado: string;
}

ConfigSystemChatwootAtualizar

import type { ConfigSystemChatwootAtualizar } from "termo_core/sell";

export interface ConfigSystemChatwootAtualizar {
  ativo?: boolean | null;
  endereco_publico?: string | null;
  nome?: string | null;
  token_acesso?: string | null;
}

ConfigSystemChatwootCriar

import type { ConfigSystemChatwootCriar } from "termo_core/sell";

export interface ConfigSystemChatwootCriar {
  conta_id: number;
  endereco: string;
  endereco_publico: string;
  nome: string;
  token_acesso: string;
}

PaginaConfigSystemChatwootAutoComplete

import type { PaginaConfigSystemChatwootAutoComplete } from "termo_core/sell";

export interface PaginaConfigSystemChatwootAutoComplete {
  itens: Array<PaginaConfigSystemChatwootAutoCompleteItensItem>;
  pagina: number;
  tamanho: number;
  total: number;
}

PaginaConfigSystemChatwootAutoCompleteItensItem

import type { PaginaConfigSystemChatwootAutoCompleteItensItem } from "termo_core/sell";

export interface PaginaConfigSystemChatwootAutoCompleteItensItem {
  endereco: string;
  id: string;
  nome: string;
}

PaginaConfigSystemChatwootValidada

import type { PaginaConfigSystemChatwootValidada } from "termo_core/sell";

export interface PaginaConfigSystemChatwootValidada {
  itens: Array<ConfigSystemChatwoot & PaginaConfigSystemChatwootValidadaItensItemParte2>;
  pagina: number;
  tamanho: number;
  total: number;
}

PaginaConfigSystemChatwootValidadaItensItemParte2

import type { PaginaConfigSystemChatwootValidadaItensItemParte2 } from "termo_core/sell";

export interface PaginaConfigSystemChatwootValidadaItensItemParte2 {
  chave_valida: boolean;
  erro_chave?: string | null;
}

Nesta página