pub struct ShareRecordingRequest {
pub recording_source_id: String,
pub visibility: ShareVisibility,
pub invited_emails: Option<Vec<String>>,
pub party_masking: Option<PartyMasking>,
pub show_transcript: Option<bool>,
pub show_audio: Option<bool>,
pub allow_download: Option<bool>,
pub default_mute_local: Option<bool>,
pub default_mute_remote: Option<bool>,
pub password: Option<String>,
pub expires_at: Option<String>,
}Expand description
Body of POST /api/voice/recordings/{id}/share — create or update a
recording’s share. The recording must already be synced (metadata +
bytes) or the platform returns 404.
Fields§
§recording_source_id: StringThe artifact UUID, as synced (daemon-side artifacts.id). Goes in
the URL path; carried in the struct so callers pass one value.
visibility: ShareVisibility§invited_emails: Option<Vec<String>>Restricted tier — the WaveKat-account emails allowed to open the
share. Ignored (and omitted) for Private / Public.
party_masking: Option<PartyMasking>Per-share visibility controls (platform docs/14) — what a viewer may see. Each is omitted when unset; the platform then applies its privacy-forward default (identity masked, transcript hidden, audio shown, download off). NB the platform treats the request as the full desired state, so an omitted control is reset to its default, not preserved from a prior share — send all of them when editing an existing share’s controls.
show_transcript: Option<bool>§show_audio: Option<bool>§allow_download: Option<bool>Whether a viewer may download the WAV, distinct from hearing it.
Off by default and only meaningful while show_audio is true — the
platform forces it off otherwise (you can’t save what you can’t
hear). A soft control: it hides the viewer’s Download affordance,
not the bytes a listener already fetches to play.
default_mute_local: Option<bool>Per-channel playback defaults — which side is audible by default
in the viewer’s player (docs/14). A call has two channels: local
(the owner’s microphone, “your side”) and remote (the other
party, “their side”). true means that side starts muted; the
viewer can still un-mute it, and the audio file is unchanged — this
is only the player’s starting state. Each is omitted when unset, in
which case the platform defaults to audible (false). Only
meaningful while show_audio is true; ignored when audio is hidden.
default_mute_remote: Option<bool>§password: Option<String>Phase 2 — out-of-band password gate. Omitted when unset.
expires_at: Option<String>Phase 2 — RFC 3339 auto-revoke time. Omitted when unset.
Trait Implementations§
Source§fn clone(&self) -> ShareRecordingRequest
fn clone(&self) -> ShareRecordingRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more