Tipo de evento
7 funções do TermoWebhook para tipo de evento.
// npm install termo_core --save-exact
import * as webhook from "termo_core/webhook";
// ou: import { webhook } from "termo_core";| Função | Rota | O que faz |
|---|---|---|
buscar_paginador_tipo_de_evento | GET /tipo_de_evento | Lista os tipos de evento paginados |
criar_tipo_de_evento | POST /tipo_de_evento | Cadastra um tipo de evento |
buscar_auto_complete_tipo_de_evento | GET /tipo_de_evento/autocomplete | Lista básica de tipos de evento para seleção |
buscar_pelo_filtro_tipo_de_evento | GET /tipo_de_evento/filtro | Busca tipos de evento por filtro |
buscar_pelo_id_tipo_de_evento | GET /tipo_de_evento/{id} | Busca um tipo de evento pelo id |
atualizar_pelo_id_tipo_de_evento | PATCH /tipo_de_evento/{id} | Atualiza um tipo de evento pelo id |
deletar_pelo_id_tipo_de_evento | DELETE /tipo_de_evento/{id} | Exclui um tipo de evento pelo id |
buscar_paginador_tipo_de_evento
GET/tipo_de_evento Exige credencial
Lista os tipos de evento paginados
Leitura liberada a quem tem a permissão ler em contratos, assinaturas ou monitoramento. Lista os tipos não excluídos em ordem alfabética do nome. pagina começa em 1 (padrão 1) e tamanho tem padrão 10, sem máximo; valores menores que 1 viram 1. total é a quantidade de tipos não excluídos.
function buscar_paginador_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPaginadorTipoDeEvento = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaTipoDeEvento>import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_tipo_de_evento(credencial_de_acesso, { pagina: 1 });Argumentos
Nome
Tipo
Retorno: Promise<tipos.PaginaTipoDeEvento> · Rust: Result<tipos::PaginaTipoDeEvento, ErroAoChamarServico> · veja PaginaTipoDeEvento.
criar_tipo_de_evento
POST/tipo_de_evento Exige credencial
Cadastra um tipo de evento
Exige a permissão criar na área contratos. nome segue o formato dominio.acontecimento, só com letras minúsculas, números e _ (ex.: pedido.faturado), tem até 120 caracteres, é único entre os tipos não excluídos e não muda depois. descricao é obrigatória (até 500 caracteres). aplicativo_dono_id é o aplicativo que publica o tipo: só ele pode publicar eventos desse tipo. dias_de_retencao vai de 1 a 3650 (padrão 30): eventos mais velhos que isso são apagados de vez pela limpeza diária. ativo tem padrão true; tipo inativo tem as publicações recusadas. O tipo nasce sem versões: cadastre o esquema em POST /versao_de_esquema.
function criar_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
corpo_da_requisicao: tipos.TipoDeEventoCriar,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.TipoDeEvento>import { CredencialDeAcesso } from "termo_core";
import { criar_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await criar_tipo_de_evento(credencial_de_acesso, corpo_da_requisicao);Argumentos
Nome
Tipo
Retorno: Promise<tipos.TipoDeEvento> · Rust: Result<tipos::TipoDeEvento, ErroAoChamarServico> · veja TipoDeEvento.
buscar_auto_complete_tipo_de_evento
GET/tipo_de_evento/autocomplete Exige credencial
Lista básica de tipos de evento para seleção
Leitura liberada a quem tem a permissão ler em contratos, assinaturas ou monitoramento. Devolve só id, nome, descrição e o id do aplicativo dono, em ordem alfabética do nome, sem os excluídos. busca procura o trecho no nome e na descrição, sem diferenciar maiúsculas. pagina começa em 1 (padrão 1) e tamanho tem padrão 10.
function buscar_auto_complete_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarAutoCompleteTipoDeEvento = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaTipoDeEventoAutoComplete>import { CredencialDeAcesso } from "termo_core";
import { buscar_auto_complete_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_auto_complete_tipo_de_evento(credencial_de_acesso, { busca: "..." });Argumentos
Nome
Tipo
Retorno: Promise<tipos.PaginaTipoDeEventoAutoComplete> · Rust: Result<tipos::PaginaTipoDeEventoAutoComplete, ErroAoChamarServico> · veja PaginaTipoDeEventoAutoComplete.
buscar_pelo_filtro_tipo_de_evento
GET/tipo_de_evento/filtro Exige credencial
Busca tipos de evento por filtro
Leitura liberada a quem tem a permissão ler em contratos, assinaturas ou monitoramento. Devolve todos os tipos não excluídos que casam com o filtro, sem paginação, em ordem alfabética do nome. nome procura o trecho no nome e na descrição, sem diferenciar maiúsculas; aplicativo_dono_id e ativo filtram pelo valor exato. Sem filtro, devolve todos.
function buscar_pelo_filtro_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPeloFiltroTipoDeEvento = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.TipoDeEvento>>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_tipo_de_evento(credencial_de_acesso, { nome: "..." });Argumentos
Nome
Tipo
Retorno: Promise<Array<tipos.TipoDeEvento>> · Rust: Result<Vec<tipos::TipoDeEvento>, ErroAoChamarServico>
buscar_pelo_id_tipo_de_evento
GET/tipo_de_evento/{id} Exige credencial
Busca um tipo de evento pelo id
Leitura liberada a quem tem a permissão ler em contratos, assinaturas ou monitoramento. Tipo excluído não é encontrado. Traz o nome do aplicativo dono, as versões do esquema não excluídas (número e situação, em ordem crescente), a quantidade de assinaturas e a data do último evento recebido.
function buscar_pelo_id_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
id: string,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.TipoDeEvento>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_tipo_de_evento(credencial_de_acesso, id);Argumentos
Nome
Tipo
Retorno: Promise<tipos.TipoDeEvento> · Rust: Result<tipos::TipoDeEvento, ErroAoChamarServico> · veja TipoDeEvento.
atualizar_pelo_id_tipo_de_evento
PATCH/tipo_de_evento/{id} Exige credencial
Atualiza um tipo de evento pelo id
Exige a permissão editar na área contratos. Atualização parcial: só os campos enviados mudam; o nome não pode ser alterado. descricao não pode ficar vazia (até 500 caracteres), dias_de_retencao vai de 1 a 3650 e aplicativo_dono_id precisa ser um aplicativo existente. O dono não pode mudar enquanto houver eventos publicados pelo dono atual ainda dentro da retenção. Desativar o tipo faz as próximas publicações dele serem recusadas.
function atualizar_pelo_id_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
id: string,
corpo_da_requisicao: tipos.TipoDeEventoAtualizar,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.TipoDeEvento>import { CredencialDeAcesso } from "termo_core";
import { atualizar_pelo_id_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await atualizar_pelo_id_tipo_de_evento(credencial_de_acesso, id, corpo_da_requisicao);Argumentos
Nome
Tipo
Retorno: Promise<tipos.TipoDeEvento> · Rust: Result<tipos::TipoDeEvento, ErroAoChamarServico> · veja TipoDeEvento.
deletar_pelo_id_tipo_de_evento
DELETE/tipo_de_evento/{id} Exige credencial
Exclui um tipo de evento pelo id
Exige a permissão deletar na área contratos. A exclusão é lógica: o tipo e todas as versões do esquema dele somem das leituras e o nome fica livre para um novo cadastro, mas nada é apagado e não há como restaurar. Só exclui tipo sem assinaturas; exclua-as antes. Os eventos já recebidos continuam até vencer a retenção.
function deletar_pelo_id_tipo_de_evento(
credencial_de_acesso: CredencialDeAcesso,
id: string,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<void>import { CredencialDeAcesso } from "termo_core";
import { deletar_pelo_id_tipo_de_evento } from "termo_core/webhook";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
await deletar_pelo_id_tipo_de_evento(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.
PaginaTipoDeEvento
import type { PaginaTipoDeEvento } from "termo_core/webhook";
export interface PaginaTipoDeEvento {
itens: Array<PaginaTipoDeEventoItensItem>;
pagina: number;
tamanho: number;
total: number;
}PaginaTipoDeEventoAutoComplete
import type { PaginaTipoDeEventoAutoComplete } from "termo_core/webhook";
export interface PaginaTipoDeEventoAutoComplete {
itens: Array<PaginaTipoDeEventoAutoCompleteItensItem>;
pagina: number;
tamanho: number;
total: number;
}PaginaTipoDeEventoAutoCompleteItensItem
import type { PaginaTipoDeEventoAutoCompleteItensItem } from "termo_core/webhook";
export interface PaginaTipoDeEventoAutoCompleteItensItem {
aplicativo_dono_id: string;
descricao: string;
id: string;
nome: string;
}PaginaTipoDeEventoItensItem
import type { PaginaTipoDeEventoItensItem } from "termo_core/webhook";
export interface PaginaTipoDeEventoItensItem {
aplicativo_dono_id: string;
aplicativo_dono_nome: string;
ativo: boolean;
atualizado_em: string;
criado_em: string;
descricao: string;
dias_de_retencao: number;
id: string;
nome: string;
quantidade_de_assinaturas: number;
ultimo_evento_em?: string | null;
versoes: Array<VersaoResumida>;
}TipoDeEvento
import type { TipoDeEvento } from "termo_core/webhook";
export interface TipoDeEvento {
aplicativo_dono_id: string;
aplicativo_dono_nome: string;
ativo: boolean;
atualizado_em: string;
criado_em: string;
descricao: string;
dias_de_retencao: number;
id: string;
nome: string;
quantidade_de_assinaturas: number;
ultimo_evento_em?: string | null;
versoes: Array<VersaoResumida>;
}TipoDeEventoAtualizar
import type { TipoDeEventoAtualizar } from "termo_core/webhook";
export interface TipoDeEventoAtualizar {
aplicativo_dono_id?: string | null;
ativo?: boolean | null;
descricao?: string | null;
dias_de_retencao?: number | null;
}TipoDeEventoCriar
import type { TipoDeEventoCriar } from "termo_core/webhook";
export interface TipoDeEventoCriar {
aplicativo_dono_id: string;
ativo?: boolean | null;
descricao: string;
dias_de_retencao?: number | null;
nome: string;
}VersaoResumida
import type { VersaoResumida } from "termo_core/webhook";
export interface VersaoResumida {
situacao: string;
versao: number;
}