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/json tips.paid-request@1
Response
application/json tips.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&#39;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/json tips.goal-create-request@1
Response
application/json tips.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/json tips.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/json tips.goal-update-request@1
Response
application/json tips.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/json tips.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/json tips.interaction-list-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.list</strong> (first-party): List a creator&#39;s or a supporter&#39;s interactions and a creator&#39;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/json tips.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/json tips.moderation-request@1
Response
application/json tips.moderation-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator&#39;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&#39;s word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator&#39;s moderators; a service (e.g. Chat or Live relaying a channel moderator&#39;s action) needs this capability. Not in the charter list: proposed for the roadmap&#39;s &quot;privacy/moderation controls&quot; (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/json tips.moderation-request@1
Response
application/json tips.moderation-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator&#39;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&#39;s word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator&#39;s moderators; a service (e.g. Chat or Live relaying a channel moderator&#39;s action) needs this capability. Not in the charter list: proposed for the roadmap&#39;s &quot;privacy/moderation controls&quot; (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/json tips.external-request@1
Response
application/json tips.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&#39;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/json tips.paid-request@1
Response
application/json tips.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&#39;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/json tips.moderation-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator&#39;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&#39;s word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator&#39;s moderators; a service (e.g. Chat or Live relaying a channel moderator&#39;s action) needs this capability. Not in the charter list: proposed for the roadmap&#39;s &quot;privacy/moderation controls&quot; (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/json tips.moderation-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.moderate</strong> (internal): Moderate a creator&#39;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&#39;s word filter held. Never touches the money (no refund, no uncounting). People moderate as the creator or one of the creator&#39;s moderators; a service (e.g. Chat or Live relaying a channel moderator&#39;s action) needs this capability. Not in the charter list: proposed for the roadmap&#39;s &quot;privacy/moderation controls&quot; (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/json tips.overlay-config-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.overlay.config.get</strong> (first-party): Read a creator&#39;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/json tips.overlay-config-request@1
Response
application/json tips.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&#39;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/json tips.overlay-config-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.overlay.config.get</strong> (first-party): Read a creator&#39;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/json tips.overlay-config-request@1
Response
application/json tips.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&#39;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/json tips.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&#39;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/json tips.overlay-token-request@1
Response
application/json tips.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&#39;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/json tips.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/json tips.paid-request@1
Response
application/json tips.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/json tips.profile-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.profile.get</strong> (first-party): Read a creator&#39;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/json tips.profile-update-request@1
Response
application/json tips.profile-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.profile.update</strong> (first-party): Create or update a creator&#39;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/json tips.interaction-list-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.interaction.list</strong> (first-party): List a creator&#39;s or a supporter&#39;s interactions and a creator&#39;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/json tips.simulation-request@1
Response
application/json tips.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&#39;s &#39;tips.simulate&#39; 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/json tips.paid-request@1
Response
application/json tips.paid-result@1
Errors
errors.problem@1 (application/problem+json)
Description<p><strong>tips.tts.request</strong> (first-party): Start a paid text-to-speech request for a supporter, within the creator&#39;s TTS settings; delivered to chat only after settlement.</p>