Skip to content

Resources API

Os endpoints Resources gerem delivery resources e os seus fluxos públicos de setup. Todas as rotas desta página usam o namespace canónico /api.

GET /api/resources

Devolve resources.

Argumentos:

ArgumentoLocalizaçãoDescrição
workspaceQueryFiltro opcional por workspace fullname.
projectQueryFiltro opcional por project fullname.

Payload: nenhum.

Resposta: ResourceView[].

GET /api/resources/:fullname

Devolve um resource.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathResource fullname.

Payload: nenhum.

Resposta: ResourceView.

PUT /api/resources/:fullname

Cria ou atualiza um resource.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathResource fullname. Deve coincidir com payload.fullname.

Payload:

CampoObrigatórioDescrição
nameSimNome do resource.
fullnameSimResource fullname.
workspaceSimWorkspace fullname.
projectNãoProject fullname, se o resource estiver vinculado a um project.
blueprintSimBlueprint fullname que define o comportamento setup/action.
dataNãoDados específicos do resource.
tagsNãoTags.
labelsNãoLabels.
meta.titleNãoTítulo visível.

Resposta: ResourceView.

DELETE /api/resources/:fullname

Elimina um resource.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathResource fullname.

Payload: nenhum.

Resposta: OperationResult.

Os três endpoints de setup session seguintes só estão disponíveis quando o setup seguro do destino Telegram está ativado no servidor.

POST /api/resources/:fullname/setup-sessions

Inicia uma setup session segura para escolher o destino Telegram. A conta autenticada tem de ser proprietária do workspace do resource e o resource tem de usar o blueprint externo do Telegram.

Só pode existir uma setup session ativa por resource. Criar uma nova marca a anterior como superseded, sem alterar o destino atual do resource.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathFullname do Telegram resource.

Payload: nenhum.

Resposta:

CampoDescrição
idID da setup session para consultar o estado ou cancelar.
statuspending.
setupTokenSegredo de utilização única para abrir o setup flow do bot Telegram. Só é devolvido nesta resposta; não deve ser registado nem guardado.
expiresAtTimestamp ISO. A session e o setupToken expiram 15 minutos depois da criação.

O destino existente continua a receber alerts até o Telegram confirmar o novo destino e a session passar a completed.

Quando termina, o servidor guarda o target confirmado em data privado, define ready como true e limpa remark. Um controller do workspace recebe o nome seguro, o tipo e o topic opcional através de destinationSummary; o Telegram target id e os dados privados não são expostos. Usa destinationSummary, não remark, para mostrar o destino configurado.

GET /api/resources/:fullname/setup-sessions/:id

Devolve o estado público de uma Telegram destination setup session. A resposta nunca contém setupToken.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathFullname do Telegram resource.
idPathID da setup session.

Payload: nenhum.

Resposta:

CampoDescrição
idID da setup session.
resourceFullnameFullname do resource.
statuspending, claimed, completed, cancelled, expired ou superseded.
expiresAtTimestamp ISO de expiração.

DELETE /api/resources/:fullname/setup-sessions/:id

Cancela uma Telegram destination setup session ativa. Se o resource já estiver configurado, o destino atual não é alterado.

Argumentos:

ArgumentoLocalizaçãoDescrição
fullnamePathFullname do Telegram resource.
idPathID da setup session.

Payload: nenhum.

Resposta: resposta de sucesso vazia.

GET /api/resources/external/:token

Lê o estado de external resource setup através da capability do resource.

Segurança: :token é uma bearer capability persistente do resource, não o setupToken de utilização única e 15 minutos das Telegram setup sessions. Trate o URL completo como um segredo: envie-o apenas por HTTPS e não o inclua em analytics, logs da aplicação, mensagens de suporte ou links que transmitam o referrer.

Argumentos:

ArgumentoLocalizaçãoDescrição
tokenPathBearer capability persistente do resource.

Payload: nenhum.

Resposta: ExternalResourceView.

POST /api/resources/external/:token

Envia o payload de external resource setup através da capability do resource.

Argumentos:

ArgumentoLocalizaçãoDescrição
tokenPathBearer capability persistente do resource.

Payload:

CampoObrigatórioDescrição
transformSimObjeto ou null, resultado transform/setup específico do resource/app.

Resposta: OperationResult.