Pypestream · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Pypestream Engagement API

3 actions 3 updates update extends openapi/pypestream-engagement-api-openapi.json
Generated by API Evangelist Written by API Evangelist tooling for Pypestream's API. It is a proposal applied on top of the contract, not a document Pypestream publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-api-evangelistx-asyncapix-websocket-livex-websocket-sandboxx-websocket-protocolx-websocket-keepalivex-docsx-precondition

Targets 2

$.info
$.paths['/messaging/v1/chats/{chat_id}/message'].post

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Pypestream Engagement API
  version: 1.0.0
extends: openapi/pypestream-engagement-api-openapi.json
x-generated: '2026-08-26'
x-method: generated
x-source: API Evangelist enrichment pass over Pypestream published docs and probes, 2026-08-26. Records
  facts stated on developers.pypestream.com or observed by probe that the OpenAPI itself omits. Never
  mutates the original.
actions:
- target: $.info
  description: Attach enrichment provenance.
  update:
    x-api-evangelist:
      profile: https://apis.io/provider/pypestream
      artifacts: https://github.com/api-evangelist/pypestream
      enriched: '2026-08-26'
- target: $.info
  description: Link the WebSocket event surface, without which this REST contract cannot be used.
  update:
    x-asyncapi: asyncapi/pypestream-engagement-api-asyncapi.yml
    x-websocket-live: wss://engagement-api.pypestream.com/socket/websocket
    x-websocket-sandbox: wss://engagement-api-sandbox.pypestream.com/socket/websocket
    x-websocket-protocol: Phoenix Channels
    x-websocket-keepalive: new:ping every 20 seconds
    x-docs: https://developers.pypestream.com/reference/engagement-api-websocket
- target: $.paths['/messaging/v1/chats/{chat_id}/message'].post
  description: State the ordering precondition that produces the documented 428.
  update:
    x-precondition: The client must receive the chat:ready WebSocket event before calling this operation.
      A message sent earlier is rejected with HTTP 428.