- fm.freemix.actor.profile record FreeMix-specific profile data that overlays the user's Bluesky profile
- fm.freemix.attestation.proof record A service attestation proving a FreeMix record existed with specific content at a specific time. Created by the FreeMix attestor service in its own repo as an independent witness.
- fm.freemix.authFullApp permission-set
- fm.freemix.collection.crate record A crate (playlist/collection) of tracks
- fm.freemix.group.samples record A samples group: a structural grouping of samples uploaded and presented as a unit, independent of any release (FM-824; mirrors fm.freemix.group.stems, FM-549 s38). A sample PACK is this same record with a price — one record type, pricing optional. Points DOWN at its member samples, which carry an optional parentGroup back-ref (the only upward ref); members[] is authoritative for membership and order. RELATIONSHIP TO fm.freemix.release: a release is a separate 'put-out work' wrapper that MAY inc
- fm.freemix.group.stems record A stems group: a structural grouping of stems that is downloadable/sellable as a unit, independent of any release (FM-549 s38). First record under the net-new group.* segment (named group.stems, not group.stemsGroup — the segment already says 'group') (for sets that fit neither collection.* — the curatorial lens — nor release — the put-out work). Points DOWN at its member stems; the sold-product name lives here. RELATIONSHIP TO fm.freemix.release: a release is a separate 'put-out work' wrapper t
- fm.freemix.license.grant record A FreeMix license grant defining permissions for a track or stem
- fm.freemix.release record A release: a top-level container that groups member leaves into a put-out work (FM-549 s38). Single-owner (distinct from collection.*, the curatorial multi-owner lens). Container points DOWN at its members.
- fm.freemix.release.stem record A stem (isolated track component) belonging to a parent track
- fm.freemix.release.track record A music track record on FreeMix
- fm.freemix.remix.attribution record Attribution record linking a derivative work to its source, forming the remix tree graph
- fm.freemix.sample record A sample: a first-class leaf audio record (FM-549 s38: promoted from a DB-only concept to a real ATProto record). A building block — samples carry a 0% royalty by tier principle and no structured credits/notes (s41).
- fm.freemix.stem record A stem (isolated track component). Top-level leaf (FM-549 s38: pulled out from under release.* ; release.stem -> stem). May optionally reference a parent track and/or a parent stems-group.
- fm.freemix.track record A music track record on FreeMix. Top-level leaf (FM-549 s38: pulled out from under the release.* prefix; release.track -> track).
- fm.freemix.track.comment record A comment on a FreeMix track. Authored by the commenter's DID, stored in the commenter's PDS. Track-level only — no stem targets. May be timestamped to a waveform position or apply to the whole track. Replies carry BOTH the track ref and the parent-comment ref so a reply survives parent deletion by flattening to a top-level track comment.
- fm.leadsheet.authFull permission-set Everything the Leadsheet app does in an account's repo.
- fm.leadsheet.favorite record Saves a chord sheet to the account's favorites.
- fm.leadsheet.rating record A 1-5 star rating of a chord sheet. An account's newest rating of a sheet replaces its earlier ones.
- fm.leadsheet.sheet record A chord sheet or tab for a song, written in ChordPro.
- fm.plyr.authFullApp permission-set Write access to a user's plyr.fm data. Clients request include:fm.plyr.authFullApp at sign-in and the PDS expands it into the collections this set currently lists — the set can evolve without clients changing their scope request.
- fm.plyr.privateMedia space Artist-owned spaces for plyr.fm track records and audio, with access defined by each space.
- fm.plyr.privateMediaAccess permission-set
- fm.plyr.stg.authFullApp permission-set Write access to a user's plyr.fm data. Clients request include:fm.plyr.stg.authFullApp at sign-in and the PDS expands it into the collections this set currently lists — the set can evolve without clients changing their scope request.
- fm.plyr.stg.jam space Private room for synchronized listening on plyr.fm Next.
- fm.plyr.stg.jamState record
- fm.plyr.stg.preference record
- fm.plyr.stg.preferences space Private appearance and playback preferences for plyr.fm Next.
- fm.plyr.stg.privateMedia space Artist-owned spaces for plyr.fm track records and audio, with access defined by each space.
- fm.plyr.stg.privateMediaAccess permission-set
- fm.plyr.stg.track record A music track published to the AT Protocol network.
- fm.plyr.track record A music track published to the AT Protocol network.
- fm.teal.actor.defs defs A declaration of the status of the actor.
- fm.teal.actor.getProfile query This lexicon is in a not officially released state. It is subject to change. | Retrieves a profile for an actor DID or handle.
- fm.teal.actor.getProfiles query This lexicon is in a not officially released state. It is subject to change. | Retrieves the associated profile.
- fm.teal.actor.getStatus query Get an actor's currently listening status.
- fm.teal.actor.profile record This lexicon is in a not officially released state. It is subject to change. | A declaration of a teal.fm account profile.
- fm.teal.actor.profileStatus record This lexicon is in a not officially released state. It is subject to change. | A declaration of the profile status of the actor.
- fm.teal.actor.searchActors query This lexicon is in a not officially released state. It is subject to change. | Searches for actors based on profile contents.
- fm.teal.actor.status record This lexicon is in a not officially released state. It is subject to change. | A declaration of the status of the actor. Only one can be shown at a time. If there are multiple, the latest record should be picked and earlier records should be deleted or tombstoned.
- fm.teal.feed.defs defs This lexicon is in a not officially released state. It is subject to change. | Misc. items related to feeds.
- fm.teal.feed.getActorFeed query This lexicon is in a not officially released state. It is subject to change. | Retrieves multiple plays from the index or via an author's DID.
- fm.teal.feed.getPlay query This lexicon is in a not officially released state. It is subject to change. | Retrieves a play given an author DID and record key.
- fm.teal.feed.play record This lexicon is in a not officially released state. It is subject to change. | A declaration of a teal.fm play. Plays are submitted as a result of a user listening to a track. Plays should be marked as tracked when a user has listened to the entire track if it's under 2 minutes long, or half of the track's duration up to 4 minutes, whichever is longest.
- fm.teal.stats.defs defs
- fm.teal.stats.getLatest query Get latest plays globally
- fm.teal.stats.getTopArtists query Get top artists by play count
- fm.teal.stats.getTopReleases query Get top releases/albums by play count
- fm.teal.stats.getUserTopArtists query Get a user's top artists by play count
- fm.teal.stats.getUserTopReleases query Get a user's top releases/albums by play count