Um cliente de projeto vê o próprio projeto. Um cliente de equipe vê os eventos
da equipe e os eventos de todos os projetos.
Liste eventos
type, since e until. Para ler um evento com o corpo, peça a
carga:
payloadAvailability informa quando um
corpo não está disponível, por exemplo depois que ele expirou. Veja
Histórico de eventos.
Consulte novos eventos periodicamente
listIndexed retorna os eventos na ordem em que a Polymorfa os armazenou, não
na ordem em que aconteceram. Use-o para consultas periódicas: um evento
armazenado com atraso, como uma mensagem recebida depois de uma reconexão,
ainda aparece depois do offset que você salvou. Comece de uma linha de base e
depois consulte a partir do offset salvo:
hasMore for true, continue a partir de nextOffset. Quando a
página se esgotar, salve highWatermark e passe esse valor na próxima
consulta. Offsets são strings decimais. Mantenha-os como strings.
Receba eventos em tempo real
Os streams de eventos estão em beta. Um proprietário ou administrador da equipe
entra no beta pela linha dele na página Chaves de API do projeto, no
Console. Até a equipe entrar, o stream lança
PolymorfaAuthorizationError com
o código feature_unavailable. Veja Streams de eventos.stream() se reconecta depois de uma queda de conexão e continua a partir do
último evento que entregou. Cada item tem:
event: o registro do evento, com os mesmos campos deevents.retrieve.webhook: o corpo do webhook, ounullquando o corpo não foi mantido.cursor: a posição depois deste evento.
since. Passe
onGap para saber quando eventos expiraram antes de você continuar. Abortar o
signal ou sair do loop fecha o stream. Um cliente de equipe precisa passar
projectId.
Execute streams apenas no seu servidor. Tokens de cliente não podem abri-los.
Reenvie um evento
Envie de novo um evento armazenado para um endpoint de webhook:replayableUntil dele.
Aguarde uma operação
Métodos que iniciam trabalho em segundo plano retornam um ID de operação. Aguarde até que ela termine:wait retorna quando a operação tem sucesso, falha ou é cancelada, ou quando
maxWaitMs termina (5 minutos por padrão). Em todos os casos, ele retorna o
estado mais recente, então sempre verifique status.
Encontre e cancele operações
get(id) lê uma operação. Passe { wait: 30 } para manter a solicitação
aberta por até 30 segundos até a operação mudar. listTransitions(id) lista as
mudanças de estado dela. O cancelamento só funciona enquanto
capabilities.cancellable for true. Veja Operações.