Swayzio Core API v1 — base path /api/swayzio/v1
Enums & Vocabularies

Enums & Vocabularies

The controlled values used across the API. All are defined in @swayzio/domain.

Visibility & access

EnumValues
Track visibilityprivate, library, pack_public
Pack visibilityprivate, link, public
Pack access levelprivate, public_view, public_collaborate
Pack access typelistener, collaborator, admin, revoked
Library share accessviewer, editor, admin, revoked
Invite statuspending, accepted, declined, expired, revoked

Assets, uploads & jobs

EnumValues
Asset kindoriginal_audio, waveform_png, peaks_json, lyrics_json, stem, draft, cover_art, document
Upload intenttrack_original, stem, draft, track_artwork, track_document
Job statusqueued, running, deferred, succeeded, failed, cancelled
Processing stage typeupload, audio_probe, waveform_peaks, tagging, stem_separation, lyric_transcription, semantic_enrichment, embedding
Track readiness statusuploading, processing, playable, tagged, ready, ready_with_warnings, failed
Readiness check statusready, processing, deferred, failed, missing, not_started, unchecked
Ingestion run statusqueued, running, core_ready, succeeded, failed

Tags & rights

EnumValues
Machine tag sourceaudio_worker, swayzio_tagger, tinymu, vertex_ai, user_import, legacy_migration
Tag curation statusaccepted, rejected, hidden
Collaborator rolewriter, publisher, master_owner
Collaborator entity typeperson, company
Rights entry typewriter, publisher, sub_publisher, master_owner
Split‑sheet categorymaster, writer, publisher, sub_publisher
Split‑sheet PROBMI, ASCAP, SESAC, PRS, SOCAN, GEMA, None
Split‑sheet writer roleSongwriter, Producer, Engineer, Composer, Other
Split‑sheet territoryWorldwide + 19 named regions (US, Canada, UK, …, Rest of World)

Analytics (Dub)

EnumValues
Event typeclicks, leads, sales, composite
Group bycount, timeseries, continents, countries, regions, cities, devices, browsers, os, triggers, referers, referer_urls, top_links, top_urls
Interval24h, 7d, 30d, 90d, mtd, qtd, ytd, 1y, all
Unavailable reasondub_disabled, plan_gated, rate_limited, provider_error

Billing

EnumValues
Entitlement statusactive, canceled, free, incomplete, past_due, trialing, unpaid

Plan IDs are not a fixed enum. They’re server‑driven string values; the live set for an account is returned in billingStatusResponseSchema.availablePlanIds.

Events

The product event log (eventTypeSchema) spans 40+ values, grouped by entity:

  • Tracktrack.uploaded, .viewed, .played, .downloaded, .saved, .shared, .updated, .deleted
  • Packpack.created, .viewed, .played, .downloaded, .saved, .unsaved, .shared, .updated, .deleted, .track_added, .track_removed, .track_reordered, .share_link.created, .tracking_link.opened, .invitation.sent / .accepted / .revoked
  • Librarylibrary.created, .updated, .deleted, .track_added, .track_removed, .shared, .invitation.*
  • External (Dub)external_link.clicked, external_link.lead, external_link.sale, external_tracking_link.opened
  • Othersearch.executed, agent.suggested / .approved / .rejected

Media intelligence & embeddings

EnumValues
Media‑intelligence lanetags, stems, lyrics, search_context
Aggregate statusaccepted, queued, running, succeeded, partial, failed, cancelled
Audio embedding modelmuq (1024‑dim), mulan (512‑dim)

Agent tools

EnumValues
Tool catalog (12)queryAgentContext, searchTracks, getTrackContext, getRightsContext, createPackDraft, suggestTags, findMissingMetadata, suggestProcessingRetries, summarizeCatalog, explainTrackUsage, listPacks, addTrackToPack
Executable (7 live)searchTracks, getTrackContext, getRightsContext, findMissingMetadata, suggestProcessingRetries, listPacks, addTrackToPack
Read/write classread, write, mutating_suggestion, destructive, outbound, billing
Data access tierstatic_api_contract, brokered_query_tool, internal_exploratory_agent, conversational_analytics, managed_mcp_tool, custom_hosted_mcp_tool

Musical keys

musicalKey is a normalized string (not a strict enum). Canonical forms: 12 minor keys (Abm, Ebm, Bbm, Fm, Cm, Gm, Dm, Am, Em, Bm, F#m, C#m) and 12 major keys (B, F#, Db, Ab, Eb, Bb, F, C, G, D, A, E). The normalizer accepts Camelot notation (8A / 8B), "C major" / "A minor", shorthand (Am), and bare (C); the display form is "C major" / "A minor".