Monitor de página de status com IA: alerte só quando algo mudar
Em um agendamento, um agente lê uma página de status e devolve um único veredito em JSON que o seu próprio script pode usar.
- Web
- Agendado
- Callback
- Limite de orçamento
Veja uma execução real
Uma execução real em 7 de out. de 2026, reproduzida. Modelo: openai/gpt-6-luna.
{
"url": "https://ephemer.al/api/samples/status"
}- Na filaorçamento de $0.03 reservado
- MicroVMmicroVM ready
- MicroVMworker started · shell off · web on
- Web
web_fetch https://ephemer.al/api/samples/status - Resultado
web https://ephemer.al/api/samples/status → 200 - MicroVMmicroVM destroyed
- Concluída2 chamadas ao modelo, 2,449 tokensSaída gravada (em inglês)
{ "ok": true, "http_status": 200, "summary": "The page reports all systems operational; the listed incidents are resolved." } - Worker destruído$0.003616 cobrados, $0.026384 liberados
Execute você mesmo
Abra o exemplo no playground com a requisição inteira preenchida. Ele roda na sua própria conta, dentro do orçamento indicado, contra os mesmos sistemas de exemplo somente leitura.
Orçamento deste exemplo: $0.03
Como funciona
A cada quinze minutos, uma execução agendada busca a página e responde {ok, http_status, summary}. O acesso à web é limitado a um domínio e a busca está desativada, então a verificação lê esse site e mais nada. Seu script só publica no chat quando ok passa a false.
O que o agente pode e não pode fazer
As permissões fazem parte da requisição. Tudo o que não está listado aqui não está disponível para a execução.
| Configuração | Permitido |
|---|---|
| Conexões | Nenhuma |
| Web | Somente ephemer.al |
| Shell | Desativado |
| Arquivos | Nenhuma |
| Retenção zero de dados | Desativada: o registro é mantido por 30 dias |
| Orçamento | $0.03, um limite rígido |
| Tempo limite | 90 segundos |
As credenciais nunca entram na máquina: um broker as adiciona a cada chamada e aplica os métodos acima.
O código
Esta é a requisição exata que o exemplo envia. Defina EPHEMERAL_API_KEY com uma chave de membro da sua organização.
curl -X POST $EPHEMERAL_URL/v1/runs \
-H "Authorization: Bearer $EPHEMERAL_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d @request.jsonCorpo completo da requisição workflow.json
O mesmo corpo, com os arquivos inline.
{
"prompt": "Fetch the page at input.url with web_fetch. Reply with one JSON object and nothing else: {\"ok\": boolean, \"http_status\": number, \"summary\": string}. Set ok to true only when the response status is 200 and the page reports no ongoing incident, outage or degraded service; resolved past incidents do not count. summary is one sentence of at most 200 characters.",
"web": {
"allow": [
"ephemer.al"
],
"search": false
},
"shell": false,
"timeout_seconds": 90
}Este exemplo roda em um horário fixo: */15 * * * * em UTC. Um agendamento inicia um fluxo de trabalho salvo, então salve a requisição como fluxo de trabalho primeiro e depois crie o agendamento.