Svix · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Svix Stream Authentication API

6 actions 6 updates phrasing extends openapi/svix-stream-authentication-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Svix's API. It is a proposal applied on top of the contract, not a document Svix publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 6

$.info
$.paths['/api/v1/auth/stream-portal-access/{stream_id}'].post
$.paths['/api/v1/auth/stream-logout'].post
$.paths['/api/v1/auth/stream/{stream_id}/expire-all'].post
$.paths['/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token/rotate'].post
$.paths['/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token'].get

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Svix Stream Authentication API
  version: 1.0.0
extends: openapi/svix-stream-authentication-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 5
- target: $.paths['/api/v1/auth/stream-portal-access/{stream_id}'].post
  update:
    x-apievangelist-phrasing:
      intent: Get a magic link to the Stream Consumer Portal
      effect: write
      questions:
      - How do I give a customer a login link to their stream consumer portal?
      - Can I control how long a stream portal link stays valid?
      instructions:
      - text: Generate a stream portal magic link for stream {stream_id}.
        slots:
          stream_id: path.stream_id
      - text: Create a stream consumer portal login for {stream_id} that expires in {expiry} seconds.
        slots:
          stream_id: path.stream_id
          expiry: requestBody.expiry
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/auth/stream-logout'].post
  update:
    x-apievangelist-phrasing:
      intent: Log out a stream token
      effect: destructive
      questions:
      - How do I log out a stream portal token when a user signs out?
      - Can stream logout invalidate tokens that aren't stream tokens?
      instructions:
      - text: Log out the stream token I'm using.
      - text: End this stream portal token's session.
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/auth/stream/{stream_id}/expire-all'].post
  update:
    x-apievangelist-phrasing:
      intent: Expire every token for a stream
      effect: destructive
      questions:
      - How do I revoke all portal tokens issued for a stream?
      - Can I expire only specific stream portal sessions?
      instructions:
      - text: Expire all tokens for stream {stream_id}.
        slots:
          stream_id: path.stream_id
      - text: Expire stream {stream_id} portal sessions {sessionIds}.
        slots:
          stream_id: path.stream_id
          sessionIds: requestBody.sessionIds
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token/rotate'].post
  update:
    x-apievangelist-phrasing:
      intent: Rotate a stream sink's poller token
      effect: write
      questions:
      - How do I rotate the token for polling events from a stream sink?
      - Can the previous stream poller token keep working briefly after rotation?
      instructions:
      - text: Rotate the poller token for sink {sink_id} on stream {stream_id}.
        slots:
          sink_id: path.sink_id
          stream_id: path.stream_id
      - text: Rotate stream {stream_id} sink {sink_id}'s poller token, keeping the old one for {oldTokenExpiry} seconds.
        slots:
          stream_id: path.stream_id
          sink_id: path.sink_id
          oldTokenExpiry: requestBody.oldTokenExpiry
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a stream sink's current poller token
      effect: read
      questions:
      - Where do I find the current token for polling a stream sink?
      - Which poller token is active for my stream sink right now?
      instructions:
      - text: Get the current poller token for sink {sink_id} on stream {stream_id}.
        slots:
          sink_id: path.sink_id
          stream_id: path.stream_id
      - text: Show stream {stream_id} sink {sink_id}'s poller token without rotating it.
        slots:
          stream_id: path.stream_id
          sink_id: path.sink_id
      method: generated
      generated: '2026-09-26'