Can't finish signing in
Your browser is blocking the sign-in storage Chime needs. Clearing this site's data usually fixes it.
Devices
0Phones and tablets signed in to this account. Revoking a device stops cloud pushes to it until it signs in again.
No devices yet — sign in on the Chime app.
Reminders
Scheduled reminders, delivered on your devices at the exact time — even offline. Next up:
No upcoming reminders.
API tokens
Bearer keys for the Chime API (e.g. POST /v1/ring). Shown once
at creation — copy it then. Revoke anytime.
No tokens yet.
API
Trigger notifications on all your signed-in devices with a bearer token (create one above). Base URL:
https://us-central1-ngnote-chime.cloudfunctions.net/api/v1
POST /ring full-screen · interruptsWakes the device and shows a full-screen alarm over whatever's on screen (and over the lockscreen). soundUri is optional.
curl -X POST https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/ring \
-H "Authorization: Bearer $CHIME_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title":"Standup meeting"}'
POST /notify non-invasive · heads-upA high-priority heads-up notification that doesn't interrupt.
curl -X POST https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/notify \
-H "Authorization: Bearer $CHIME_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title":"Package delivered","body":"Left at the front door"}'
POST /reminders scheduled · receiptsSchedule a one-shot reminder. Delivered locally at the exact time
(works offline) as a heads-up with Done/Snooze — add "interrupt": true for a
full-screen ring. Time: ISO-8601, "in": "20m", or "at": "tomorrow 9am"
with an IANA timezone. Poll GET /reminders/{id}?waitForAck=20 to confirm
scheduling; status becomes delivered → done/snoozed as the user
acts, and an optional callbackUrl gets a webhook on each transition.
Cancel with DELETE /reminders/{id}.
# schedule — time via "in", natural "at", or ISO-8601 (+ optional IANA timezone)
curl -X POST https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/reminders \
-H "Authorization: Bearer $CHIME_TOKEN" \
-H "Content-Type: application/json" \
-d '{"title":"Take out the trash","in":"20m"}'
# → 201 {"id":"…","dueAt":1784996595366,"status":"pending","revision":1}
GET /reminders status & receiptsList reminders (?status=pending|delivered|done…, ?limit=), or fetch
one with per-device scheduling acks. ?waitForAck=20 long-polls until every device
confirms it scheduled the reminder locally — proof of scheduling, not just acceptance.
Lifecycle: pending → delivered → done|snoozed (with deliveredAt/doneAt
timestamps); history is kept 30 days.
curl "https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/reminders/$ID?waitForAck=20" \
-H "Authorization: Bearer $CHIME_TOKEN"
# → {"id":"…","status":"delivered","deliveredAt":…,"doneAt":…,
# "devices":[{"deviceId":"…","status":"scheduled","ackedRevision":1}]}
DELETE /reminders/{id}Cancel a scheduled reminder (devices unschedule on sync). Returns
409 if it was already delivered — delivered reminders are history.
With a callbackUrl on the reminder, Chime POSTs
{"id","status","title","dueAt","at"} to it on every
delivered/done/snoozed transition.
POST /alarms scheduled · reliableSchedule an alarm at a set time. It fires locally on every device (works
offline, exact) and rings full-screen. Add repeatDays (0=Mon … 6=Sun) for a
recurring alarm; omit for the next occurrence. Poll GET /alarms/{id}?waitForAck=20
to confirm the device scheduled it.
curl -X POST https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/alarms \
-H "Authorization: Bearer $CHIME_TOKEN" \
-H "Content-Type: application/json" \
-d '{"hour":7,"minute":30,"label":"Wake up","repeatDays":[0,1,2,3,4]}'
GET /statusVerify a token is valid.
curl https://us-central1-ngnote-chime.cloudfunctions.net/api/v1/status \ -H "Authorization: Bearer $CHIME_TOKEN"