Every item hasDocumentation Index
Fetch the complete documentation index at: https://docs.myme.so/llms.txt
Use this file to discover all available pages before exploring further.
state, one of three values:
| State | Meaning |
|---|---|
active | The item is live and part of the user’s data. Default for new items. |
archived | Kept for reference; excluded from the default active view. Still searchable, with lower relevance. |
trashed | Soft-deleted. Excluded from search. Purged after a retention window — configurable via TRASH_RETENTION_DAYS, see Configuration. |
core.*, app.*, user.*, and <publisher>.* type. Types don’t declare their own states or transitions.
system.* items are the exception. Their lifecycle is bounded to active and revoked — different shape because they’re operational items, not user content. The universal three-state model doesn’t apply.
Transitions
| From | To |
|---|---|
active | archived, trashed |
archived | active, trashed |
trashed | active (restore) |
400 invalid_transition. You cannot go directly from trashed to archived — restore to active first.
API
Transitions happen through four routes:POST /items/{id}/transition is the universal entry point — pass the target state in the body:
restore and delete routes are sugar for the common cases. Transitions are logged in the audit trail.
Triage vs lifecycle
Triage workflows — a read-later app’s Inbox / Later / Shortlist, a clipboard’s pinned vs. unpinned — are app concerns, not core state. Apps model triage in their own type’s properties (e.g.location: "shortlist" on a custom bookmark type) or in extensions.
Lifecycle and triage are separate axes. An item can be triaged to “Shortlist” (app concept) while its state is active (core concept).
Hard deletion
Purge removes:- The item row.
- All edges with this item as source or target.
- The metadata row.
- All extensions scoped to this item.
- Attachment references (blobs themselves are content-addressed and may be retained if referenced by other items).