1. Create
The author sends markdown content and a policy to the API. The server stores the sanitized note body, any password hash, and the active expiry and access limits.
This guide explains the current `notefade` note lifecycle in product language, using the same create, preview, unlock, read, and cleanup flow the backend implements today.
The note lifecycle is split across public routes so recipients only see what the API allows at each step.
The author sends markdown content and a policy to the API. The server stores the sanitized note body, any password hash, and the active expiry and access limits.
Anyone with the link can hit the preview route to learn the note policy state, including whether a password is required, without seeing the body itself.
Password-protected notes require the recipient to post the password to the unlock route. A successful unlock returns a signed read token tied to the note expiry window.
The read route returns the stored markdown body. View counts, device counts, and access-event records update during the successful read path.
A note becomes consumed on destroy-on-read, destroyed when it reaches the last allowed successful view, or expired when the server sees the expiry window has passed.
Expired notes and older destroyed-note tombstones are removed later by the scheduled cleanup job instead of being erased instantly inside the request path.
The service is designed to stop access quickly, then let the cleanup job remove expired or long-destroyed records off the request path.
A note can be unavailable to recipients before the row disappears from storage. That is why the privacy and lifecycle pages avoid promising instant deletion at the exact moment a note expires or is consumed.