OpenVibe.Live API
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
Server https://openvibe.live. 27 routes performing 6 capabilities. OpenAPI 3.1 document.
GET /api/auth/user/{username}
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/content/feed
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/content/moments
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/digest
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/discover
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/featured
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/hero
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/pulse
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/star
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/stats-live
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/home/stats/series/{metric}
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Parameters
metric(path, required)
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/live-events
Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live strea
- Capabilities
- live.stream.read
- Visibility
- public
- Response
application/jsonlive.stream-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.stream.read</strong> (public): Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live stream (/api/live-events, open CORS). Stream keys and the home ZIP are redacted. Anonymous callers are served; no grant is checked at Live's boundary (roadmap §30.2, sdk-live).</p>GET /api/streams
Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live strea
- Capabilities
- live.stream.read
- Visibility
- public
- Response
application/jsonlive.stream-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.stream.read</strong> (public): Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live stream (/api/live-events, open CORS). Stream keys and the home ZIP are redacted. Anonymous callers are served; no grant is checked at Live's boundary (roadmap §30.2, sdk-live).</p>GET /api/streams/{id}
Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live strea
- Capabilities
- live.stream.read
- Visibility
- public
- Parameters
id(path, required)
- Response
application/jsonlive.stream-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.stream.read</strong> (public): Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live stream (/api/live-events, open CORS). Stream keys and the home ZIP are redacted. Anonymous callers are served; no grant is checked at Live's boundary (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}/bio-en
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}/clips-taken
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}/live
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}/popular
Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips fro
- Capabilities
- live.channel.read
- Visibility
- public
- Parameters
username(path, required)
- Response
application/jsonlive.channel-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.channel.read</strong> (public): Read a channel's public profile by username (the /@username page's data): metadata, owner display fields, follower count, live streams with playback endpoints, slots, and its public VODs and clips from Media. The owner and staff also see private listings; ingest keys are never returned. Anonymous callers are served (optionalAuth); no grant is checked at Live's boundary, and /api allows only OpenVibe origins for browsers. There is no public lookup by channel id yet (roadmap §30.2, sdk-live).</p>GET /api/streams/channel/{username}/resolve/{ref}
Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live strea
- Capabilities
- live.stream.read
- Visibility
- public
- Parameters
username(path, required)ref(path, required)
- Response
application/jsonlive.stream-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.stream.read</strong> (public): Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live stream (/api/live-events, open CORS). Stream keys and the home ZIP are redacted. Anonymous callers are served; no grant is checked at Live's boundary (roadmap §30.2, sdk-live).</p>GET /api/streams/recent
Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live strea
- Capabilities
- live.stream.read
- Visibility
- public
- Response
application/jsonlive.stream-read-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.stream.read</strong> (public): Read broadcasts: who is live now with viewer counts, one stream with its endpoint, cameras and controls, recently ended streams with their public VOD, a slot's current session, and the went-live stream (/api/live-events, open CORS). Stream keys and the home ZIP are redacted. Anonymous callers are served; no grant is checked at Live's boundary (roadmap §30.2, sdk-live).</p>GET /api/streams/recent-vods
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /api/streams/recently-online
Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, an
- Capabilities
- live.discovery.read
- Visibility
- public
- Response
application/jsonlive.discovery-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.discovery.read</strong> (public): Read Live's discovery surfaces (roadmap §30.2 live.discovery.*): the featured rotation, "watch instead" picks, the star of the day, the digest, home numbers, recently online streamers, recent VODs, and the content and AI-moments feeds. Public items only. There is no category directory and no channel search route yet; channel search belongs to OpenVibe.Search once Live publishes index documents.</p>GET /internal/followers
Read who follows the channel behind a stream (Network subject or Network user id per follower), for OpenVibe.Network's go-live notifications from live.stream.started.
- Capabilities
- live.follower.read
- Visibility
- internal
- Response
application/jsonlive.follower-page@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.follower.read</strong> (internal): Read who follows the channel behind a stream (Network subject or Network user id per follower), for OpenVibe.Network's go-live notifications from live.stream.started. Loopback only.</p>GET /internal/lineage/resolve
Resolve the canonical channel and owner behind a slug, nested slug, channel, stream, slot, VOD, clip, Media object, owner subject or legacy id, with the stream/VOD/clip lineage and how it was decided
- Capabilities
- live.lineage.resolve
- Visibility
- internal
- Parameters
slug(query) — Channel slug (Live: the username, as in /@<username>; the @ is optional), or a nested <channel>/<slot> naming a stream slot inside the channel by its slug or id. With parent_slug, a plain slug names the slot inside that parent.parent_slug(query) — The channel slug when slug names a slot inside it ({ parent_slug: 'alice', slug: 'garage' } is 'alice/garage'). Alone, it names the channel.channel_id(query) — The channel's id at its owner (Live: channels.id).stream_id(query) — A broadcast session (Live: streams.id).slot_id(query) — A persistent stream slot (Live: managed_streams.id; OpenRe stream definitions refer to it as live:managed_stream:<id>).vod_id(query) — A VOD (the Media v1 VOD id, the same id Live's VODs had before the Media split).clip_id(query) — A clip (the Media v1 clip id). A clip belongs to the clipped channel, never to the person who clipped it.media_object_id(query) — A Media object: med_<ULID>, or a legacy:<app>:<kind>:<id> reference (the media_id forms of media.media-ref@1).owner_subject(query) — The canonical subject that owns the channel (identity.subject-ref@1 user id).legacy_ids(query) — Pre-subject ids of the channel owner. Resolving through them is confidence legacy_map.display_name(query) — A label the caller holds. Accepted so the answer can say display_name_only; never used to resolve anything, because a display name is not an identity and is never sufficient to establish ownership.
- Input
- lineage.resolve-request@1
- Response
application/jsonlineage.resolution@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.lineage.resolve</strong> (internal): Resolve the canonical channel and owner behind a slug, nested slug, channel, stream, slot, VOD, clip, Media object, owner subject or legacy id, with the stream/VOD/clip lineage and how it was decided (roadmap §15.10, D20). A display name alone resolves nothing. Loopback only.</p>POST /internal/lineage/resolve
Resolve the canonical channel and owner behind a slug, nested slug, channel, stream, slot, VOD, clip, Media object, owner subject or legacy id, with the stream/VOD/clip lineage and how it was decided
- Capabilities
- live.lineage.resolve
- Visibility
- internal
- Request body
application/jsonlineage.resolve-request@1- Response
application/jsonlineage.resolution@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>live.lineage.resolve</strong> (internal): Resolve the canonical channel and owner behind a slug, nested slug, channel, stream, slot, VOD, clip, Media object, owner subject or legacy id, with the stream/VOD/clip lineage and how it was decided (roadmap §15.10, D20). A display name alone resolves nothing. Loopback only.</p>POST /internal/tips/deliveries
OpenVibe.Tips' live-chat adapter: announce a settled tip in the creator's Live chat (donation line, paid message, TTS, media request at no charge).
- Capabilities
- live.tips_delivery.write
- Visibility
- internal
- Request body
application/jsonlive.tips-delivery-request@1- Response
application/jsonlive.tips-delivery-result@1- Errors
- errors.problem@1 (application/problem+json)