Every item carriesDocumentation Index
Fetch the complete documentation index at: https://docs.myme.so/llms.txt
Use this file to discover all available pages before exploring further.
tier, an enum with two values: library and feed. The split is a first-class axis of the design, not a convenience flag.
Library vs feed
Personal data divides cleanly into two zones:- Library — deliberate, low-volume, long retention. Saved bookmarks. Notes the user wrote. Pinned clips. The kept stuff.
- Feed — high-volume, low-intent, short retention. Clipboard history. Unpinned clips. Auto-ingested sessions. A bookmarks app’s default inbox. The firehose.
Default when omitted
If neither the caller nor the credential supplies atier, items land in library — the “save it” instinct. Apps and credentials override this default when their writing pattern fits the other shape (auto-ingest, scrapers, watchers).
Filtering
Thetier query parameter controls which slice is returned:
/search.
Setting tier on write
Items arrive with a reasonable default based on the writing context. Credentials carry adefault_tier that stamps when the client omits the field. Apps override per item when the default doesn’t fit.
| Writing pattern | Typical default |
|---|---|
| User creates in an app’s primary UI | library |
| Sync agent / auto-ingest | feed |
| Explicit user “save” or “pin” action | library |
| Scraper / watcher / capture | feed |
tier always wins over the credential default.
Promotion is a first-class gesture
Moving an item from feed to library is a user action with system-wide consequences: blob tiers upgrade, permissions can expand. Apps bind their own triage gestures to library promotion — a read-later app’s “shortlist” moves items to library; a clipboard manager’s “pin” does the same. These bindings are app-side. The server carries the result.Tier is about prominence, not retention
Thetier field names the kind of intent — where in the UI an item belongs and how prominently it surfaces. It does not carry implicit retention semantics. A feed item is not automatically deleted after some time window; both library and feed items persist until the user (or an app acting on their behalf) trashes them.
If periodic purge of high-volume captures is wanted, it’s a user-driven flow — a filtered view plus a bulk-action verb — not an automatic platform behavior.
Storage tier
Library blobs are authoritative and replicated. Feed blobs can be deduplicated aggressively and stored on cheaper tiers. Theblob_ref shape is identical; tiering is transparent to callers but not to perceived latency. Apps that need low-latency blob fetch should operate on library items.
Default tier on credentials
Credentials carry adefault_tier field — library or feed — that stamps the tier on items written by the credential when the client omits one. Clients can override per-write. There is no read-side tier-gate on the credential; filtering by tier is a query concern (GET /items?tier=feed), not a permission boundary.
Tier vs lifecycle
Tier is orthogonal to lifecycle
state. A library or feed item can be any of active / archived / trashed. An app’s “archive” button maps to state: archived; its “pin” or “keep” button maps to tier: library. Don’t conflate them.Tier and system.*
The tier dimension does not apply to system.* items — devices, credentials, webhooks, app identities. These are operational items, not user content. The tier field is omitted from their wire shape; setting it on write returns 400 invalid_field.