Public instructions, private token

Quave Alarm API

Use this page to trigger or schedule Filipe's phone alarm from an agent, script, MCP workflow, or API client. The bearer token is intentionally not shown here and must be retrieved through authorized Quave ONE access.

1. Get Authorized

The alarm API uses one bearer token stored as the secret Quave ONE environment variable ALARM_API_TOKEN. A client with proper access can retrieve it through Quave ONE MCP or API by identifying the account, app, and app environment, then requesting secrets.

Accountfilipenevola / KPADFfTBDQnk8J2Yv
Appalarm / dTWKedL4Jy7ddAtX4
Environmentproduction / y6ryL8CppL84tk6f6
SecretALARM_API_TOKEN

Do not paste the token in chat, URLs, docs, logs, or committed files. Keep it in memory, a secret manager, or the current process environment.

2. Trigger Now

For an immediate alarm, omit scheduledAt. The server records the alarm immediately and expires it after ttlSeconds, defaulting to 900 seconds.

export ALARM_API_TOKEN="<value from authorized Quave ONE MCP/API access>"

curl -fsS -X POST https://alarm.quave.ai/api/alarms \
  -H "Authorization: Bearer $ALARM_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Codex precisa de voce",
    "body": "Filipe, olha o Codex: preciso da sua decisao para continuar.",
    "severity": "critical",
    "link": "https://chatgpt.com/codex",
    "ttlSeconds": 900
  }'

3. Schedule With Time Zone

For local wall-clock scheduling, send scheduledAt as YYYY-MM-DDTHH:mm:ss plus an IANA timeZone. Filipe's default is America/Campo_Grande, currently UTC-4. If timeZone is omitted for a local timestamp, the server defaults to America/Campo_Grande.

Best practice for agents: always include timeZone: "America/Campo_Grande" when scheduling by Filipe's local time. Use an explicit offset or Z when scheduling in absolute UTC time.

curl -fsS -X POST https://alarm.quave.ai/api/alarms \
  -H "Authorization: Bearer $ALARM_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Follow-up",
    "body": "Filipe, olha o Codex: horario combinado para revisar.",
    "severity": "critical",
    "link": "https://chatgpt.com/codex",
    "scheduledAt": "YYYY-MM-DDT09:00:00",
    "timeZone": "America/Campo_Grande",
    "ttlSeconds": 900
  }'

Absolute timestamp alternative

{
  "scheduledAt": "YYYY-MM-DDT13:00:00Z",
  "ttlSeconds": 900
}

Relative delay alternative

{
  "delaySeconds": 300,
  "body": "Filipe, olha o Codex em cinco minutos."
}

4. Payload Contract

FieldRequiredNotes
titleNoDefaults to Quave Alarm.
bodyNoUse one concise sentence with the destination and blocker.
severityNoinfo, warning, or critical. Defaults to critical.
linkNoOptional http:// or https:// destination. The native app shows an open action. url is accepted as an alias.
scheduledAtNoISO timestamp. Local values use timeZone or the default America/Campo_Grande.
timeZoneNoValid IANA time zone. Recommended for local scheduling.
delaySecondsNoRelative scheduling. Do not combine with scheduledAt.
ttlSecondsNoAlarm delivery window after the scheduled time. Clamped from 30 seconds to 24 hours.
deviceIdNoOmit to page every registered device.