{"openapi":"3.1.0","info":{"title":"Stream API","version":"0.1.0","description":"A fully local, hand-curated, platform-agnostic game-streaming reference: generic platform terminology, encoder/scene/audio setup basics, streaming etiquette, content-moderation basics for streamers, audio/video concepts, ethical audience-growth tips, and budget-tier gear guidance. Not tied to any single platform's API.\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://stream.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"hr@unifydynamics.com","url":"https://connectorbay.com/stream/docs"},"termsOfService":"https://connectorbay.com/stream/terms"},"servers":[{"url":"https://stream.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/stream/docs"},"security":[{},{"bearer":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/setup_topic_info":{"post":{"operationId":"setup_topic_info","summary":"Setup basics for one topic -- encoder settings, scenes/overlays, audio mixing, webcam/lighting,","description":"Setup basics for one topic -- encoder settings, scenes/overlays, audio mixing, webcam/lighting,\n    internet/bandwidth, hotkeys, multiplatform streaming, or backup/reliability -- with key concepts, common\n    mistakes, and tips. Omit topic to list all available topics. Use for \"how do I set my encoder\", \"what\n    scenes should I have\", \"how do I balance my audio\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A setup topic; omit to list every topic.","examples":["encoder settings","audio mixing","webcam and lighting"],"title":"Topic"}},"title":"setup_topic_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/platform_term_glossary":{"post":{"operationId":"platform_term_glossary","summary":"Definition of a common, generic streamer/platform term (raid, host, sub, mod, clip, bitrate, overlay,","description":"Definition of a common, generic streamer/platform term (raid, host, sub, mod, clip, bitrate, overlay,\n    and more), grouped into categories (Platform Mechanics, Chat & Community, Content & Discovery,\n    Technical / AV, Business & Growth). Omit term to list every term. If there's no direct name match, falls\n    back to a keyword search across definitions. Use for \"what does raid mean\", \"what's a hype train\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"term":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A streaming/platform term to look up; omit to list all.","examples":["raid","sub","mod","clip","bitrate"],"title":"Term"}},"title":"platform_term_glossaryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/etiquette_tip":{"post":{"operationId":"etiquette_tip","summary":"Streaming etiquette guidance for one topic -- raids/hosting, viewer conduct, collaborations, handling","description":"Streaming etiquette guidance for one topic -- raids/hosting, viewer conduct, collaborations, handling\n    donations, responding to trolls, sponsor disclosure, crediting others, schedule communication, or\n    burnout/breaks -- with concrete do's and don'ts. Omit topic to list all available topics. Use for \"what's\n    good raid etiquette\", \"how should I handle trolls\", \"do I need to disclose sponsorships\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"An etiquette topic; omit to list every topic.","examples":["raids and hosting","responding to trolls","burnout"],"title":"Topic"}},"title":"etiquette_tipArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/moderation_tip":{"post":{"operationId":"moderation_tip","summary":"Content-moderation basics for streamers on one topic -- building a mod team, writing chat rules,","description":"Content-moderation basics for streamers on one topic -- building a mod team, writing chat rules,\n    automated filters, bans/timeouts, handling harassment, hate speech, spam/bots, protecting younger viewers,\n    doxxing/privacy, or escalating serious issues -- with key practices and things to avoid. Omit topic to list\n    all available topics. Use for \"how do I set up chat moderation\", \"how should I handle harassment\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A moderation topic; omit to list every topic.","examples":["chat rules","bans and timeouts","hate speech"],"title":"Topic"}},"title":"moderation_tipArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/audio_video_concept":{"post":{"operationId":"audio_video_concept","summary":"Plain-language explanation of one core audio/video streaming concept -- bitrate, resolution, frame","description":"Plain-language explanation of one core audio/video streaming concept -- bitrate, resolution, frame\n    rate, keyframe interval, codec, latency, CPU vs. GPU encoding, audio sample rate, or audio levels -- with\n    why it matters and a qualitative typical range. Omit topic to list all available concepts. Use for \"what\n    bitrate should I use\", \"what's the difference between 30fps and 60fps\", \"what is latency\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"An audio/video concept; omit to list every concept.","examples":["bitrate","resolution","frame rate","latency"],"title":"Topic"}},"title":"audio_video_conceptArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/growth_tip":{"post":{"operationId":"growth_tip","summary":"Ethical, practical audience-growth guidance for one topic -- consistency/scheduling, finding a niche,","description":"Ethical, practical audience-growth guidance for one topic -- consistency/scheduling, finding a niche,\n    networking with other streamers, building community, clips/highlights, cross-promotion, collaborations,\n    using your own analytics, or authenticity over gimmicks -- with concrete actions and things to avoid.\n    Explicitly steers away from clickbait or manipulative tactics. Omit topic to list all available topics. Use\n    for \"how do I grow my stream\", \"should I buy viewers\", \"how do I find my niche\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"topic":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"A growth topic; omit to list every topic.","examples":["consistency and schedule","finding your niche","authenticity"],"title":"Topic"}},"title":"growth_tipArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/find_setup_for_budget":{"post":{"operationId":"find_setup_for_budget","summary":"Suggests a streaming gear setup for one budget tier (starter/free, budget, mid-range, advanced, or","description":"Suggests a streaming gear setup for one budget tier (starter/free, budget, mid-range, advanced, or\n    professional/studio), with a qualitative price range and concrete gear categories -- not specific product\n    endorsements. Use for \"what gear do I need to start streaming on a budget\", \"what should my next upgrade\n    be\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"budget_level":{"description":"A budget tier.","examples":["starter","budget","mid-range","advanced","professional"],"minLength":1,"title":"Budget Level","type":"string"}},"required":["budget_level"],"title":"find_setup_for_budgetArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/beginner_tips":{"post":{"operationId":"beginner_tips","summary":"A curated, ranked shortlist of the most useful tips for someone just starting to stream, pulled across","description":"A curated, ranked shortlist of the most useful tips for someone just starting to stream, pulled across\n    setup, audio, moderation, growth, community, and reliability. Use for \"give me beginner streaming tips\",\n    \"what should I focus on first\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"count":{"default":5,"description":"How many tips to return.","maximum":10,"minimum":1,"title":"Count","type":"integer"}},"title":"beginner_tipsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}