Notificação
6 funções do TermoSupport para notificação.
// npm install termo_core --save-exact
import * as support from "termo_core/support";
// ou: import { support } from "termo_core";| Função | Rota | O que faz |
|---|---|---|
buscar_paginador_notificacao | GET /notificacao | Caixa de entrada paginada |
marcar_todas_notificacao | PATCH /notificacao | Marca todas as notificações como lidas |
buscar_pelo_filtro_notificacao | GET /notificacao/filtro | Busca notificações por filtro |
buscar_pelo_id_notificacao | GET /notificacao/{id} | Busca uma notificação pelo id |
atualizar_pelo_id_notificacao | PATCH /notificacao/{id} | Marca uma notificação como lida ou não lida |
deletar_pelo_id_notificacao | DELETE /notificacao/{id} | Exclui uma notificação pelo id |
buscar_paginador_notificacao
GET/notificacao Exige credencial
Caixa de entrada paginada
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Lista as notificações da pessoa, da mais nova para a mais antiga, sempre 50 por página: tamanho é ignorado. lida filtra; nao_lidas traz o total ainda não lido (o número do sino), com qualquer filtro.
function buscar_paginador_notificacao(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPaginadorNotificacao = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaNotificacao>import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_notificacao(credencial_de_acesso, { pagina: 1 });Argumentos
Nome
Tipo
Retorno: Promise<tipos.PaginaNotificacao> · Rust: Result<tipos::PaginaNotificacao, ErroAoChamarServico> · veja PaginaNotificacao.
marcar_todas_notificacao
PATCH/notificacao Exige credencial
Marca todas as notificações como lidas
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Marca de uma vez todas as notificações da pessoa como lidas (ou como não lidas, com lida: false). Devolve quantas mudaram em alteradas.
function marcar_todas_notificacao(
credencial_de_acesso: CredencialDeAcesso,
corpo_da_requisicao: tipos.NotificacaoMarcarTodas,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.NotificacoesMarcadas>import { CredencialDeAcesso } from "termo_core";
import { marcar_todas_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await marcar_todas_notificacao(credencial_de_acesso, corpo_da_requisicao);Argumentos
Nome
Tipo
Retorno: Promise<tipos.NotificacoesMarcadas> · Rust: Result<tipos::NotificacoesMarcadas, ErroAoChamarServico> · veja NotificacoesMarcadas.
buscar_pelo_filtro_notificacao
GET/notificacao/filtro Exige credencial
Busca notificações por filtro
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Devolve até 500 notificações da pessoa, da mais nova para a mais antiga. lida filtra lidas ou não lidas e tipo é ATRIBUICAO, COMENTARIO, MENCAO, STATUS, PRAZO ou TICKET.
function buscar_pelo_filtro_notificacao(
credencial_de_acesso: CredencialDeAcesso,
parametros: ParametrosDeBuscarPeloFiltroNotificacao = {},
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.Notificacao>>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_notificacao(credencial_de_acesso, { lida: true });Argumentos
Nome
Tipo
Retorno: Promise<Array<tipos.Notificacao>> · Rust: Result<Vec<tipos::Notificacao>, ErroAoChamarServico>
buscar_pelo_id_notificacao
GET/notificacao/{id} Exige credencial
Busca uma notificação pelo id
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Só encontra as notificações da própria pessoa.
function buscar_pelo_id_notificacao(
credencial_de_acesso: CredencialDeAcesso,
id: string,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Notificacao>import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_notificacao(credencial_de_acesso, id);Argumentos
Nome
Tipo
Retorno: Promise<tipos.Notificacao> · Rust: Result<tipos::Notificacao, ErroAoChamarServico> · veja Notificacao.
atualizar_pelo_id_notificacao
PATCH/notificacao/{id} Exige credencial
Marca uma notificação como lida ou não lida
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Muda lida de uma notificação da própria pessoa.
function atualizar_pelo_id_notificacao(
credencial_de_acesso: CredencialDeAcesso,
id: string,
corpo_da_requisicao: tipos.NotificacaoAtualizar,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Notificacao>import { CredencialDeAcesso } from "termo_core";
import { atualizar_pelo_id_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await atualizar_pelo_id_notificacao(credencial_de_acesso, id, corpo_da_requisicao);Argumentos
Nome
Tipo
Retorno: Promise<tipos.Notificacao> · Rust: Result<tipos::Notificacao, ErroAoChamarServico> · veja Notificacao.
deletar_pelo_id_notificacao
DELETE/notificacao/{id} Exige credencial
Exclui uma notificação pelo id
Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Tira a notificação da caixa de entrada (exclusão lógica).
function deletar_pelo_id_notificacao(
credencial_de_acesso: CredencialDeAcesso,
id: string,
opcoes_da_chamada?: OpcoesDaChamada,
): Promise<void>import { CredencialDeAcesso } from "termo_core";
import { deletar_pelo_id_notificacao } from "termo_core/support";
const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
await deletar_pelo_id_notificacao(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.
Notificacao
import type { Notificacao } from "termo_core/support";
export interface Notificacao {
criado_em: string;
descricao?: string | null;
id: string;
lida: boolean;
link: string;
tarefa_id?: string | null;
ticket_id?: string | null;
tipo: string;
titulo: string;
}NotificacaoAtualizar
import type { NotificacaoAtualizar } from "termo_core/support";
export interface NotificacaoAtualizar {
lida: boolean;
}NotificacaoMarcarTodas
import type { NotificacaoMarcarTodas } from "termo_core/support";
export interface NotificacaoMarcarTodas {
lida?: boolean;
}NotificacoesMarcadas
import type { NotificacoesMarcadas } from "termo_core/support";
export interface NotificacoesMarcadas {
alteradas: number;
}PaginaNotificacao
import type { PaginaNotificacao } from "termo_core/support";
export interface PaginaNotificacao {
itens: Array<PaginaNotificacaoItensItem>;
/**
* Quantas notificações da pessoa ainda não foram lidas (o número do sino).
*/
nao_lidas: number;
pagina: number;
tamanho: number;
total: number;
}PaginaNotificacaoItensItem
import type { PaginaNotificacaoItensItem } from "termo_core/support";
export interface PaginaNotificacaoItensItem {
criado_em: string;
descricao?: string | null;
id: string;
lida: boolean;
link: string;
tarefa_id?: string | null;
ticket_id?: string | null;
tipo: string;
titulo: string;
}