OpenVibe.Tips API
Generated at from
openvibe-contracts v0.53.0 and
openvibe-sdk v0.11.0.
Server https://openvibe.tips. 26 routes performing 18 capabilities. OpenAPI 3.1 document.
POST /api/v1/checkout
Start a tip for a supporter (on_behalf SubjectRef): paid from the supporter's Billing credit (billing.transfer.create) or through a Billing checkout intent (billing.intent.create).
- Capabilities
- tips.checkout.create
- Visibility
- first-party
- Request body
application/jsontips.paid-request@1- Response
application/jsontips.paid-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.checkout.create</strong> (first-party): Start a tip for a supporter (on_behalf SubjectRef): paid from the supporter's Billing credit (billing.transfer.create) or through a Billing checkout intent (billing.intent.create). Tips never prices money; Billing does. Idempotent by Idempotency-Key.</p>POST /api/v1/goals
Create a goal for a creator.
- Capabilities
- tips.goal.create
- Visibility
- first-party
- Request body
application/jsontips.goal-create-request@1- Response
application/jsontips.goal-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.goal.create</strong> (first-party): Create a goal for a creator. Goal totals are derived from settled interactions only.</p>GET /api/v1/goals/{id}
Edit a goal (title, target, description, image, order) with optimistic revision checks; read private goals with contributions.
- Capabilities
- tips.goal.update
- Visibility
- first-party
- Parameters
id(path, required)
- Input
- tips.goal-update-request@1
- Response
application/jsontips.goal-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.goal.update</strong> (first-party): Edit a goal (title, target, description, image, order) with optimistic revision checks; read private goals with contributions.</p>PATCH /api/v1/goals/{id}
Edit a goal (title, target, description, image, order) with optimistic revision checks; read private goals with contributions.
- Capabilities
- tips.goal.update
- Visibility
- first-party
- Parameters
id(path, required)
- Request body
application/jsontips.goal-update-request@1- Response
application/jsontips.goal-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.goal.update</strong> (first-party): Edit a goal (title, target, description, image, order) with optimistic revision checks; read private goals with contributions.</p>POST /api/v1/goals/{id}/close
Close a goal; its history stays.
- Capabilities
- tips.goal.close
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsontips.goal-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.goal.close</strong> (first-party): Close a goal; its history stays.</p>GET /api/v1/interactions
List a creator's or a supporter's interactions and a creator's derived totals.
- Capabilities
- tips.interaction.list
- Visibility
- first-party
- Response
application/jsontips.interaction-list-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.list</strong> (first-party): List a creator's or a supporter's interactions and a creator's derived totals.</p>GET /api/v1/interactions/{id}
Read one interaction with its separate payment state (from Billing) and delivery state (effects).
- Capabilities
- tips.interaction.get
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsontips.interaction-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.get</strong> (first-party): Read one interaction with its separate payment state (from Billing) and delivery state (effects).</p>POST /api/v1/interactions/{id}/hide
Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word
- Capabilities
- tips.interaction.moderate
- Visibility
- internal
- Parameters
id(path, required)
- Request body
application/jsontips.moderation-request@1- Response
application/jsontips.moderation-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator's moderators; a service (e.g. Chat or Live relaying a channel moderator's action) needs this capability. Not in the charter list: proposed for the roadmap's "privacy/moderation controls" (Wave 9).</p>POST /api/v1/interactions/{id}/restore
Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word
- Capabilities
- tips.interaction.moderate
- Visibility
- internal
- Parameters
id(path, required)
- Request body
application/jsontips.moderation-request@1- Response
application/jsontips.moderation-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator's moderators; a service (e.g. Chat or Live relaying a channel moderator's action) needs this capability. Not in the charter list: proposed for the roadmap's "privacy/moderation controls" (Wave 9).</p>POST /api/v1/interactions/external
Record a tip that never touched OpenVibe money (ADR-012 EXTERNAL: a tip on a creator's own PowerChat) once per (provider, provider_ref); no Billing liability, excluded from Billing reconciliation.
- Capabilities
- tips.interaction.record
- Visibility
- internal
- Request body
application/jsontips.external-request@1- Response
application/jsontips.external-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.record</strong> (internal): Record a tip that never touched OpenVibe money (ADR-012 EXTERNAL: a tip on a creator's own PowerChat) once per (provider, provider_ref); no Billing liability, excluded from Billing reconciliation. Not in the charter list: proposed because EXTERNAL tips need a recording path while Billing emits nothing for them.</p>POST /api/v1/media-requests
Start a paid media request for a supporter (allowed hosts, the creator's minimum and length); queued with the media-queue owner only after settlement.
- Capabilities
- tips.media_request.create
- Visibility
- first-party
- Request body
application/jsontips.paid-request@1- Response
application/jsontips.paid-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.media_request.create</strong> (first-party): Start a paid media request for a supporter (allowed hosts, the creator's minimum and length); queued with the media-queue owner only after settlement.</p>GET /api/v1/moderation
Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word
- Capabilities
- tips.interaction.moderate
- Visibility
- internal
- Input
- tips.moderation-request@1
- Response
application/jsontips.moderation-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator's moderators; a service (e.g. Chat or Live relaying a channel moderator's action) needs this capability. Not in the charter list: proposed for the roadmap's "privacy/moderation controls" (Wave 9).</p>GET /api/v1/moderation/log
Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word
- Capabilities
- tips.interaction.moderate
- Visibility
- internal
- Input
- tips.moderation-request@1
- Response
application/jsontips.moderation-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator's paid messages for them: read the review queue, hide a paid message from overlays, chat still to come and public pages, or show again one that was hidden or that the creator's word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator's moderators; a service (e.g. Chat or Live relaying a channel moderator's action) needs this capability. Not in the charter list: proposed for the roadmap's "privacy/moderation controls" (Wave 9).</p>GET /api/v1/overlay-configs
Read a creator's overlay configs (alert and goal display settings).
- Capabilities
- tips.overlay.config.get
- Visibility
- first-party
- Response
application/jsontips.overlay-config-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.config.get</strong> (first-party): Read a creator's overlay configs (alert and goal display settings).</p>POST /api/v1/overlay-configs
Create or change a creator's overlay configs; open overlays receive the change at once.
- Capabilities
- tips.overlay.config.update
- Visibility
- first-party
- Request body
application/jsontips.overlay-config-request@1- Response
application/jsontips.overlay-config-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.config.update</strong> (first-party): Create or change a creator's overlay configs; open overlays receive the change at once.</p>GET /api/v1/overlay-configs/{id}
Read a creator's overlay configs (alert and goal display settings).
- Capabilities
- tips.overlay.config.get
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsontips.overlay-config-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.config.get</strong> (first-party): Read a creator's overlay configs (alert and goal display settings).</p>PATCH /api/v1/overlay-configs/{id}
Create or change a creator's overlay configs; open overlays receive the change at once.
- Capabilities
- tips.overlay.config.update
- Visibility
- first-party
- Parameters
id(path, required)
- Request body
application/jsontips.overlay-config-request@1- Response
application/jsontips.overlay-config-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.config.update</strong> (first-party): Create or change a creator's overlay configs; open overlays receive the change at once.</p>GET /api/v1/overlay-tokens
Mint a scoped overlay token (alerts, goals) for a creator — shown once, stored hashed, never a creator cookie — and list a creator's tokens without secrets.
- Capabilities
- tips.overlay.token.create
- Visibility
- first-party
- Input
- tips.overlay-token-request@1
- Response
application/jsontips.overlay-token-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.token.create</strong> (first-party): Mint a scoped overlay token (alerts, goals) for a creator — shown once, stored hashed, never a creator cookie — and list a creator's tokens without secrets.</p>POST /api/v1/overlay-tokens
Mint a scoped overlay token (alerts, goals) for a creator — shown once, stored hashed, never a creator cookie — and list a creator's tokens without secrets.
- Capabilities
- tips.overlay.token.create
- Visibility
- first-party
- Request body
application/jsontips.overlay-token-request@1- Response
application/jsontips.overlay-token-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.token.create</strong> (first-party): Mint a scoped overlay token (alerts, goals) for a creator — shown once, stored hashed, never a creator cookie — and list a creator's tokens without secrets.</p>POST /api/v1/overlay-tokens/{id}/revoke
Revoke an overlay token; open overlay streams using it are closed immediately.
- Capabilities
- tips.overlay.token.revoke
- Visibility
- first-party
- Parameters
id(path, required)
- Response
application/jsontips.overlay-token-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.overlay.token.revoke</strong> (first-party): Revoke an overlay token; open overlay streams using it are closed immediately.</p>POST /api/v1/paid-messages
Start a paid (highlighted) chat message for a supporter; the paid_messages row exists only after Billing settles it.
- Capabilities
- tips.superchat.create
- Visibility
- first-party
- Request body
application/jsontips.paid-request@1- Response
application/jsontips.paid-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.superchat.create</strong> (first-party): Start a paid (highlighted) chat message for a supporter; the paid_messages row exists only after Billing settles it.</p>GET /api/v1/profiles/{creator}
Read a creator's tip profile including a page that is switched off (public pages are readable without a token).
- Capabilities
- tips.profile.get
- Visibility
- first-party
- Parameters
creator(path, required)
- Response
application/jsontips.profile-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.profile.get</strong> (first-party): Read a creator's tip profile including a page that is switched off (public pages are readable without a token).</p>PATCH /api/v1/profiles/{creator}
Create or update a creator's tip profile on their behalf: page switch (indexing), accepting, minimums, TTS and media-request settings.
- Capabilities
- tips.profile.update
- Visibility
- first-party
- Parameters
creator(path, required)
- Request body
application/jsontips.profile-update-request@1- Response
application/jsontips.profile-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.profile.update</strong> (first-party): Create or update a creator's tip profile on their behalf: page switch (indexing), accepting, minimums, TTS and media-request settings. Creators do this themselves with their user token.</p>GET /api/v1/profiles/{creator}/totals
List a creator's or a supporter's interactions and a creator's derived totals.
- Capabilities
- tips.interaction.list
- Visibility
- first-party
- Parameters
creator(path, required)
- Response
application/jsontips.interaction-list-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.interaction.list</strong> (first-party): List a creator's or a supporter's interactions and a creator's derived totals.</p>POST /api/v1/simulate
Run the full effect path (overlay alert, goal widget, delivery) flagged test, with no Billing call, never counted in any total and never emitted as a durable event.
- Capabilities
- tips.simulation.run
- Visibility
- first-party
- Request body
application/jsontips.simulation-request@1- Response
application/jsontips.interaction-result@1- Errors
- errors.problem@1 (application/problem+json)
Description
<p><strong>tips.simulation.run</strong> (first-party): Run the full effect path (overlay alert, goal widget, delivery) flagged test, with no Billing call, never counted in any total and never emitted as a durable event. The charter's 'tips.simulate' as a 3-segment id.</p>POST /api/v1/tts-requests
Start a paid text-to-speech request for a supporter, within the creator's TTS settings; delivered to chat only after settlement.
- Capabilities
- tips.tts.request
- Visibility
- first-party
- Request body
application/jsontips.paid-request@1- Response
application/jsontips.paid-result@1- Errors
- errors.problem@1 (application/problem+json)