owncast/docs/api/index.html

2376 lines
1.6 MiB
HTML
Raw Normal View History

2020-10-22 08:42:51 +03:00
<!DOCTYPE html>
<html>
<head>
<meta charset="utf8" />
<title>Owncast</title>
<!-- needed for adaptive design -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
body {
padding: 0;
margin: 0;
}
</style>
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
<script>/*! For license information please see redoc.standalone.js.LICENSE.txt */
2022-06-13 23:34:48 +03:00
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("null")):"function"==typeof define&&define.amd?define(["null"],t):"object"==typeof exports?exports.Redoc=t(require("null")):e.Redoc=t(e.null)}(this,(function(e){return function(){var t={5499:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.CodeGen=t.Name=t.nil=t.stringify=t.str=t._=t.KeywordCxt=void 0;const r=n(3325),o=n(6479),i=n(5522),a=n(4137),s=["/properties"],l="http://json-schema.org/draft-07/schema";class c extends r.default{_addVocabularies(){super._addVocabularies(),o.default.forEach((e=>this.addVocabulary(e))),this.opts.discriminator&&this.addKeyword(i.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;const e=this.opts.$data?this.$dataMetaSchema(a,s):a;this.addMetaSchema(e,l,!1),this.refs["http://json-schema.org/schema"]=l}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(l)?l:void 0)}}e.exports=t=c,Object.defineProperty(t,"__esModule",{value:!0}),t.default=c;var u=n(1321);Object.defineProperty(t,"KeywordCxt",{enumerable:!0,get:function(){return u.KeywordCxt}});var p=n(4475);Object.defineProperty(t,"_",{enumerable:!0,get:function(){return p._}}),Object.defineProperty(t,"str",{enumerable:!0,get:function(){return p.str}}),Object.defineProperty(t,"stringify",{enumerable:!0,get:function(){return p.stringify}}),Object.defineProperty(t,"nil",{enumerable:!0,get:function(){return p.nil}}),Object.defineProperty(t,"Name",{enumerable:!0,get:function(){return p.Name}}),Object.defineProperty(t,"CodeGen",{enumerable:!0,get:function(){return p.CodeGen}})},4667:function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.regexpCode=t.getProperty=t.safeStringify=t.stringify=t.strConcat=t.addCodeArg=t.str=t._=t.nil=t._Code=t.Name=t.IDENTIFIER=t._CodeOrName=void 0;class n{}t._CodeOrName=n,t.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class r extends n{constructor(e){if(super(),!t.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}t.Name=r;class o extends n{constructor(e){super(),this._items="string"==typeof e?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;const e=this._items[0];return""===e||'""'===e}get str(){var e;return null!==(e=this._str)&&void 0!==e?e:this._str=this._items.reduce(((e,t)=>`${e}${t}`),"")}get names(){var e;return null!==(e=this._names)&&void 0!==e?e:this._names=this._items.reduce(((e,t)=>(t instanceof r&&(e[t.str]=(e[t.str]||0)+1),e)),{})}}function i(e,...t){const n=[e[0]];let r=0;for(;r<t.length;)l(n,t[r]),n.push(e[++r]);return new o(n)}t._Code=o,t.nil=new o(""),t._=i;const a=new o("+");function s(e,...t){const n=[u(e[0])];let r=0;for(;r<t.length;)n.push(a),l(n,t[r]),n.push(a,u(e[++r]));return function(e){let t=1;for(;t<e.length-1;){if(e[t]===a){const n=c(e[t-1],e[t+1]);if(void 0!==n){e.splice(t-1,3,n);continue}e[t++]="+"}t++}}(n),new o(n)}function l(e,t){var n;t instanceof o?e.push(...t._items):t instanceof r?e.push(t):e.push("number"==typeof(n=t)||"boolean"==typeof n||null===n?n:u(Array.isArray(n)?n.join(","):n))}function c(e,t){if('""'===t)return e;if('""'===e)return t;if("string"==typeof e){if(t instanceof r||'"'!==e[e.length-1])return;return"string"!=typeof t?`${e.slice(0,-1)}${t}"`:'"'===t[0]?e.slice(0,-1)+t.slice(1):void 0}return"string"!=typeof t||'"'!==t[0]||e instanceof r?void 0:`"${e}${t.slice(1)}`}function u(e){return JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}t.str=s,t.addCodeArg=l,t.strConcat=function(e,t){return t.emptyStr()?e:e.emptyStr()?t:s`${e}${t}`},t.stringify=function(e){return new o(u(e))},t.safeStringify=u,t.getProperty=function(e){return"string"==typeof e&&t.IDENTIFIER.test(e)?new o(`.${e}`):i`[${e}]`},t.regexpCode=function(e){return new o(e.toString())}},4475:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.or=t.and=t.not=t.CodeGen=t.operators=t.varKinds=t.ValueScopeName=t.Valu
|| (${s} == "string" && ${o} && ${o} == +${o})`).assign(l,a._`+${o}`);case"integer":return void r.elseIf(a._`${s} === "boolean" || ${o} === null
|| (${s} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(l,a._`+${o}`);case"boolean":return void r.elseIf(a._`${o} === "false" || ${o} === 0 || ${o} === null`).assign(l,!1).elseIf(a._`${o} === "true" || ${o} === 1`).assign(l,!0);case"null":return r.elseIf(a._`${o} === "" || ${o} === 0 || ${o} === false`),void r.assign(l,null);case"array":r.elseIf(a._`${s} === "string" || ${s} === "number"
|| ${s} === "boolean" || ${o} === null`).assign(l,a._`[${o}]`)}}r.else(),h(e),r.endIf(),r.if(a._`${l} !== undefined`,(()=>{r.assign(o,l),function({gen:e,parentData:t,parentDataProperty:n},r){e.if(a._`${t} !== undefined`,(()=>e.assign(a._`${t}[${n}]`,r)))}(e,l)}))}(e,t,s):h(e)}))}return c};const u=new Set(["string","number","integer","boolean","null"]);function p(e,t,n,r=l.Correct){const o=r===l.Correct?a.operators.EQ:a.operators.NEQ;let i;switch(e){case"null":return a._`${t} ${o} null`;case"array":i=a._`Array.isArray(${t})`;break;case"object":i=a._`${t} && typeof ${t} == "object" && !Array.isArray(${t})`;break;case"integer":i=s(a._`!(${t} % 1) && !isNaN(${t})`);break;case"number":i=s();break;default:return a._`typeof ${t} ${o} ${e}`}return r===l.Correct?i:a.not(i);function s(e=a.nil){return a.and(a._`typeof ${t} == "number"`,e,n?a._`isFinite(${t})`:a.nil)}}function d(e,t,n,r){if(1===e.length)return p(e[0],t,n,r);let o;const i=s.toHash(e);if(i.array&&i.object){const e=a._`typeof ${t} != "object"`;o=i.null?e:a._`!${t} || ${e}`,delete i.null,delete i.array,delete i.object}else o=a.nil;i.number&&delete i.integer;for(const e in i)o=a.and(o,p(e,t,n,r));return o}t.checkDataType=p,t.checkDataTypes=d;const f={message:({schema:e})=>`must be ${e}`,params:({schema:e,schemaValue:t})=>"string"==typeof e?a._`{type: ${e}}`:a._`{type: ${t}}`};function h(e){const t=function(e){const{gen:t,data:n,schema:r}=e,o=s.schemaRefOrVal(e,r,"type");return{gen:t,keyword:"type",data:n,schema:r.type,schemaCode:o,schemaValue:o,parentSchema:r,params:{},it:e}}(e);i.reportError(t,f)}t.reportTypeError=h},2537:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.assignDefaults=void 0;const r=n(4475),o=n(6124);function i(e,t,n){const{gen:i,compositeRule:a,data:s,opts:l}=e;if(void 0===n)return;const c=r._`${s}${r.getProperty(t)}`;if(a)return void o.checkStrictMode(e,`default is ignored for: ${c}`);let u=r._`${c} === undefined`;"empty"===l.useDefaults&&(u=r._`${u} || ${c} === null || ${c} === ""`),i.if(u,r._`${c} = ${r.stringify(n)}`)}t.assignDefaults=function(e,t){const{properties:n,items:r}=e.schema;if("object"===t&&n)for(const t in n)i(e,t,n[t].default);else"array"===t&&Array.isArray(r)&&r.forEach(((t,n)=>i(e,n,t.default)))}},1321:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getData=t.KeywordCxt=t.validateFunctionCode=void 0;const r=n(7627),o=n(7927),i=n(4566),a=n(7927),s=n(2537),l=n(6488),c=n(4688),u=n(4475),p=n(5018),d=n(9826),f=n(6124),h=n(1885);function m({gen:e,validateName:t,schema:n,schemaEnv:r,opts:o},i){o.code.es5?e.func(t,u._`${p.default.data}, ${p.default.valCxt}`,r.$async,(()=>{e.code(u._`"use strict"; ${g(n,o)}`),function(e,t){e.if(p.default.valCxt,(()=>{e.var(p.default.instancePath,u._`${p.default.valCxt}.${p.default.instancePath}`),e.var(p.default.parentData,u._`${p.default.valCxt}.${p.default.parentData}`),e.var(p.default.parentDataProperty,u._`${p.default.valCxt}.${p.default.parentDataProperty}`),e.var(p.default.rootData,u._`${p.default.valCxt}.${p.default.rootData}`),t.dynamicRef&&e.var(p.default.dynamicAnchors,u._`${p.default.valCxt}.${p.default.dynamicAnchors}`)}),(()=>{e.var(p.default.instancePath,u._`""`),e.var(p.default.parentData,u._`undefined`),e.var(p.default.parentDataProperty,u._`undefined`),e.var(p.default.rootData,p.default.data),t.dynamicRef&&e.var(p.default.dynamicAnchors,u._`{}`)}))}(e,o),e.code(i)})):e.func(t,u._`${p.default.data}, ${function(e){return u._`{${p.default.instancePath}="", ${p.default.parentData}, ${p.default.parentDataProperty}, ${p.default.rootData}=${p.default.data}${e.dynamicRef?u._`, ${p.default.dynamicAnchors}={}`:u.nil}}={}`}(o)}`,r.$async,(()=>e.code(g(n,o)).code(i)))}function g(e,t){const n="object"==typeof e&&e[t.schemaId];return n&&(t.code.source||t.code.process)?u._`/*# sourceURL=${n} */`:u.nil}function y({schema:e,self:t}){if("boolean"==typeof e)return!e;for(const n in e)if(t.RULES.all[n])return!0;return!1}function v(e){return"boolean"!=typeof e.schema}function b(e){f.checkUnknownRules(e),function(e){const{schema:t,errSche
missingProperty: ${o},
depsCount: ${t},
deps: ${n}}`};const a={keyword:"dependencies",type:"object",schemaType:"object",error:t.error,code(e){const[t,n]=function({schema:e}){const t={},n={};for(const r in e)"__proto__"!==r&&((Array.isArray(e[r])?t:n)[r]=e[r]);return[t,n]}(e);s(e,t),l(e,n)}};function s(e,t=e.schema){const{gen:n,data:o,it:a}=e;if(0===Object.keys(t).length)return;const s=n.let("missing");for(const l in t){const c=t[l];if(0===c.length)continue;const u=i.propertyInData(n,o,l,a.opts.ownProperties);e.setParams({property:l,depsCount:c.length,deps:c.join(", ")}),a.allErrors?n.if(u,(()=>{for(const t of c)i.checkReportMissingProp(e,t)})):(n.if(r._`${u} && (${i.checkMissingProp(e,c,s)})`),i.reportMissingProp(e,s),n.else())}}function l(e,t=e.schema){const{gen:n,data:r,keyword:a,it:s}=e,l=n.name("valid");for(const c in t)o.alwaysValidSchema(s,t[c])||(n.if(i.propertyInData(n,r,c,s.opts.ownProperties),(()=>{const t=e.subschema({keyword:a,schemaProp:c},l);e.mergeValidEvaluated(t,l)}),(()=>n.var(l,!0))),e.ok(l))}t.validatePropertyDeps=s,t.validateSchemaDeps=l,t.default=a},5184:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(4475),o=n(6124),i={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:{message:({params:e})=>r.str`must match "${e.ifClause}" schema`,params:({params:e})=>r._`{failingKeyword: ${e.ifClause}}`},code(e){const{gen:t,parentSchema:n,it:i}=e;void 0===n.then&&void 0===n.else&&o.checkStrictMode(i,'"if" without "then" and "else" is ignored');const s=a(i,"then"),l=a(i,"else");if(!s&&!l)return;const c=t.let("valid",!0),u=t.name("_valid");if(function(){const t=e.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},u);e.mergeEvaluated(t)}(),e.reset(),s&&l){const n=t.let("ifClause");e.setParams({ifClause:n}),t.if(u,p("then",n),p("else",n))}else s?t.if(u,p("then")):t.if(r.not(u),p("else"));function p(n,o){return()=>{const i=e.subschema({keyword:n},u);t.assign(c,u),e.mergeValidEvaluated(i,c),o?t.assign(o,r._`${n}`):e.setParams({ifClause:n})}}e.pass(c,(()=>e.error(!0)))}};function a(e,t){const n=e.schema[t];return void 0!==n&&!o.alwaysValidSchema(e,n)}t.default=i},9616:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(3074),o=n(6988),i=n(6348),a=n(9822),s=n(9564),l=n(1117),c=n(4002),u=n(1422),p=n(9690),d=n(9883),f=n(8435),h=n(1668),m=n(9684),g=n(5716),y=n(5184),v=n(5642);t.default=function(e=!1){const t=[f.default,h.default,m.default,g.default,y.default,v.default,c.default,u.default,l.default,p.default,d.default];return e?t.push(o.default,a.default):t.push(r.default,i.default),t.push(s.default),t}},6348:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.validateTuple=void 0;const r=n(4475),o=n(6124),i=n(8619),a={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(e){const{schema:t,it:n}=e;if(Array.isArray(t))return s(e,"additionalItems",t);n.items=!0,o.alwaysValidSchema(n,t)||e.ok(i.validateArray(e))}};function s(e,t,n=e.schema){const{gen:i,parentSchema:a,data:s,keyword:l,it:c}=e;!function(e){const{opts:r,errSchemaPath:i}=c,a=n.length,s=a===e.minItems&&(a===e.maxItems||!1===e[t]);if(r.strictTuples&&!s){const e=`"${l}" is ${a}-tuple, but minItems or maxItems/${t} are not specified or different at path "${i}"`;o.checkStrictMode(c,e,r.strictTuples)}}(a),c.opts.unevaluated&&n.length&&!0!==c.items&&(c.items=o.mergeEvaluated.items(i,n.length,c.items));const u=i.name("valid"),p=i.const("len",r._`${s}.length`);n.forEach(((t,n)=>{o.alwaysValidSchema(c,t)||(i.if(r._`${p} > ${n}`,(()=>e.subschema({keyword:l,schemaProp:n,dataProp:n},u))),e.ok(u))}))}t.validateTuple=s,t.default=a},9822:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const r=n(4475),o=n(6124),i=n(8619),a=n(3074),s={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:{message:({params:{len:e}})=>r.str`must NOT have more than ${e} items`,params:({params:{len:e}})=>r._`{limit: ${e}}`},code(e){const{schema:t,parentSchema:n,it:r}=e,{prefixItems:s}=n;r.items=!0,
2022-03-05 22:33:35 +03:00
@media ${t?"print, ":""} screen and (max-width: ${t=>t.theme.breakpoints[e]}) ${n||""} {
2022-06-13 23:34:48 +03:00
${ua(...r)};
2022-03-05 22:33:35 +03:00
}
2022-06-13 23:34:48 +03:00
`;var ma=ca;function ga(e){return t=>{if(t.theme.extensionsHook)return t.theme.extensionsHook(e,t)}}const ya=ma.div`
2022-03-05 22:33:35 +03:00
padding: 20px;
color: red;
2022-06-13 23:34:48 +03:00
`;class va extends n.Component{constructor(e){super(e),this.state={error:void 0}}componentDidCatch(e){return this.setState({error:e}),!1}render(){return this.state.error?n.createElement(ya,null,n.createElement("h1",null,"Something went wrong..."),n.createElement("small",null," ",this.state.error.message," "),n.createElement("p",null,n.createElement("details",null,n.createElement("summary",null,"Stack trace"),n.createElement("pre",null,this.state.error.stack))),n.createElement("small",null," ReDoc Version: ","2.0.0-rc.72")," ",n.createElement("br",null),n.createElement("small",null," Commit: ","5f2d05f")):n.Children.only(this.props.children)}}const ba=da`
2022-03-05 22:33:35 +03:00
0% {
transform: rotate(0deg); }
100% {
transform: rotate(360deg);
}
2022-06-13 23:34:48 +03:00
`,wa=ma((e=>n.createElement("svg",{className:e.className,version:"1.1",width:"512",height:"512",viewBox:"0 0 512 512"},n.createElement("path",{d:"M275.682 147.999c0 10.864-8.837 19.661-19.682 19.661v0c-10.875 0-19.681-8.796-19.681-19.661v-96.635c0-10.885 8.806-19.661 19.681-19.661v0c10.844 0 19.682 8.776 19.682 19.661v96.635z"}),n.createElement("path",{d:"M275.682 460.615c0 10.865-8.837 19.682-19.682 19.682v0c-10.875 0-19.681-8.817-19.681-19.682v-96.604c0-10.885 8.806-19.681 19.681-19.681v0c10.844 0 19.682 8.796 19.682 19.682v96.604z"}),n.createElement("path",{d:"M147.978 236.339c10.885 0 19.681 8.755 19.681 19.641v0c0 10.885-8.796 19.702-19.681 19.702h-96.624c-10.864 0-19.661-8.817-19.661-19.702v0c0-10.885 8.796-19.641 19.661-19.641h96.624z"}),n.createElement("path",{d:"M460.615 236.339c10.865 0 19.682 8.755 19.682 19.641v0c0 10.885-8.817 19.702-19.682 19.702h-96.584c-10.885 0-19.722-8.817-19.722-19.702v0c0-10.885 8.837-19.641 19.722-19.641h96.584z"}),n.createElement("path",{d:"M193.546 165.703c7.69 7.66 7.68 20.142 0 27.822v0c-7.701 7.701-20.162 7.701-27.853 0.020l-68.311-68.322c-7.68-7.701-7.68-20.142 0-27.863v0c7.68-7.68 20.121-7.68 27.822 0l68.342 68.342z"}),n.createElement("path",{d:"M414.597 386.775c7.7 7.68 7.7 20.163 0.021 27.863v0c-7.7 7.659-20.142 7.659-27.843-0.062l-68.311-68.26c-7.68-7.7-7.68-20.204 0-27.863v0c7.68-7.7 20.163-7.7 27.842 0l68.291 68.322z"}),n.createElement("path",{d:"M165.694 318.464c7.69-7.7 20.153-7.7 27.853 0v0c7.68 7.659 7.69 20.163 0 27.863l-68.342 68.322c-7.67 7.659-20.142 7.659-27.822-0.062v0c-7.68-7.68-7.68-20.122 0-27.801l68.311-68.322z"}),n.createElement("path",{d:"M386.775 97.362c7.7-7.68 20.142-7.68 27.822 0v0c7.7 7.68 7.7 20.183 0.021 27.863l-68.322 68.311c-7.68 7.68-20.163 7.68-27.843-0.020v0c-7.68-7.68-7.68-20.162 0-27.822l68.322-68.332z"}))))`
animation: 2s ${ba} linear infinite;
2022-03-05 22:33:35 +03:00
width: 50px;
height: 50px;
content: '';
display: inline-block;
margin-left: -25px;
path {
fill: ${e=>e.color};
}
2022-06-13 23:34:48 +03:00
`,xa=ma.div`
2022-03-05 22:33:35 +03:00
font-family: helvetica, sans;
width: 100%;
text-align: center;
font-size: 25px;
margin: 30px 0 20px 0;
color: ${e=>e.color};
2022-06-13 23:34:48 +03:00
`;class ka extends n.PureComponent{render(){return n.createElement("div",{style:{textAlign:"center"}},n.createElement(xa,{color:this.props.color},"Loading ..."),n.createElement(wa,{color:this.props.color}))}}var _a=r(5697);const Oa=n.createContext(new xo({})),Sa=Oa.Provider,Ea=Oa.Consumer;var Pa=r(3675),Aa=r(3777),$a=r(8925);var Ra=r(1851),Ca=r(6729),ja=r(3573),Ta=r.n(ja);const Ia=ja.parse;class Na{static baseName(e,t=1){const n=Na.parse(e);return n[n.length-t]}static dirName(e,t=1){const n=Na.parse(e);return ja.compile(n.slice(0,n.length-t))}static relative(e,t){const n=Na.parse(e);return Na.parse(t).slice(n.length)}static parse(e){let t=e;return"#"===t.charAt(0)&&(t=t.substring(1)),Ia(t)}static join(e,t){const n=Na.parse(e).concat(t);return ja.compile(n)}static get(e,t){return ja.get(e,t)}static compile(e){return ja.compile(e)}static escape(e){return ja.escape(e)}}ja.parse=Na.parse,Object.assign(Na,ja);var Da=r(6470),La=r(3578),Ma=Object.defineProperty,Fa=Object.defineProperties,za=Object.getOwnPropertyDescriptors,Ua=Object.getOwnPropertySymbols,Ba=Object.prototype.hasOwnProperty,qa=Object.prototype.propertyIsEnumerable,Va=(e,t,n)=>t in e?Ma(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Wa=(e,t)=>{for(var n in t||(t={}))Ba.call(t,n)&&Va(e,n,t[n]);if(Ua)for(var n of Ua(t))qa.call(t,n)&&Va(e,n,t[n]);return e},Ha=(e,t)=>Fa(e,za(t));function Ya(e){return"string"==typeof e&&/\dxx/i.test(e)}function Ga(e,t=!1){if("default"===e)return t?"error":"success";let n="string"==typeof e?parseInt(e,10):e;if(Ya(e)&&(n*=100),n<100||n>599)throw new Error("invalid HTTP code");let r="success";return n>=300&&n<400?r="redirect":n>=400?r="error":n<200&&(r="info"),r}const Ka={get:!0,post:!0,put:!0,head:!0,patch:!0,delete:!0,options:!0,$ref:!0};function Qa(e){return e in Ka}const Xa={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",contentEncoding:"string",contentMediaType:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",unevaluatedProperties:"object",properties:"object",patternProperties:"object"};function Ja(e,t=e.type){if(void 0!==e.oneOf||void 0!==e.anyOf)return!1;if(e.if&&e.then||e.if&&e.else)return!1;let n=!0;const r=io(t);return("object"===t||r&&(null==t?void 0:t.includes("object")))&&(n=void 0!==e.properties?0===Object.keys(e.properties).length:void 0===e.additionalProperties&&void 0===e.unevaluatedProperties),!io(e.items)&&!io(e.prefixItems)&&(void 0!==e.items&&!ao(e.items)&&("array"===t||r&&(null==t?void 0:t.includes("array")))&&(n=Ja(e.items,e.items.type)),n)}function Za(e){return-1!==e.search(/json/i)}function es(e,t,n){return io(e)?e.map((e=>e.toString())).join(n):"object"==typeof e?Object.keys(e).map((t=>`${t}${n}${e[t]}`)).join(n):t+"="+e.toString()}function ts(e,t){return io(e)?(console.warn("deepObject style cannot be used with array value:"+e.toString()),""):"object"==typeof e?Object.keys(e).map((n=>`${t}[${n}]=${e[n]}`)).join("&"):(console.warn("deepObject style cannot be used with non-object value:"+e.toString()),"")}function ns(e,t,n){const r="__redoc_param_name__",o=t?"*":"";return La.parse(`{?${r}${o}}`).expand({[r]:n}).substring(1).replace(/__redoc_param_name__/g,e)}function rs(e,t){return Za(t)?JSON.stringify(e):(console.warn(`Parameter serialization as ${t} is not supported`),"")}function os(e,t){return e.in?decodeURIComponent(function(e,t){const{name:n,style:r,explode:o=!1,serializationMime:i}=e;if(i)switch(e.in){case"path":case"header":return rs(t,i);case"cookie":case"query":return`${n}=${rs(t,i)}`;default:return console.warn("Unexpected parameter location: "+e.in),""}if(!r)return console.warn(`Missing style attribute or content for parameter ${n}`),"";switch(e.in){case"path":return function(e,t,n,r){const o=n?"*":"";let i="";"label"===t?i=".":"matrix"===t&&(i=";");const a="__redoc_param_name__";return La.parse(`{${i}${a}${o}}`).expand({[a]:r}).replace(/__redoc_param_n
2022-03-05 22:33:35 +03:00
width: calc(100% - ${e=>e.theme.rightPanel.width});
padding: 0 ${e=>e.theme.spacing.sectionHorizontal}px;
2022-06-13 23:34:48 +03:00
${({compact:e,theme:t})=>ha("medium",!0)`
2022-03-05 22:33:35 +03:00
width: 100%;
padding: ${`${e?0:t.spacing.sectionVertical}px ${t.spacing.sectionHorizontal}px`};
`};
2022-06-13 23:34:48 +03:00
`,pu=ma.div.attrs((e=>({[hf]:e.id})))`
2022-03-05 22:33:35 +03:00
padding: ${e=>e.theme.spacing.sectionVertical}px 0;
&:last-child {
min-height: calc(100vh + 1px);
}
& > &:last-child {
min-height: initial;
}
2022-06-13 23:34:48 +03:00
${ha("medium",!0)`
2022-03-05 22:33:35 +03:00
padding: 0;
`}
${e=>e.underlined?"\n position: relative;\n\n &:not(:last-of-type):after {\n position: absolute;\n bottom: 0;\n width: 100%;\n display: block;\n content: '';\n border-bottom: 1px solid rgba(0, 0, 0, 0.2);\n }\n ":""}
2022-06-13 23:34:48 +03:00
`,du=ma(ma.div`
2022-03-05 22:33:35 +03:00
width: ${e=>e.theme.rightPanel.width};
color: ${({theme:e})=>e.rightPanel.textColor};
background-color: ${e=>e.theme.rightPanel.backgroundColor};
padding: 0 ${e=>e.theme.spacing.sectionHorizontal}px;
2022-06-13 23:34:48 +03:00
${ha("medium",!0)`
2022-03-05 22:33:35 +03:00
width: 100%;
padding: ${e=>`${e.theme.spacing.sectionVertical}px ${e.theme.spacing.sectionHorizontal}px`};
`};
`)`
background-color: ${e=>e.theme.rightPanel.backgroundColor};
2022-06-13 23:34:48 +03:00
`,fu=ma.div`
2022-03-05 22:33:35 +03:00
display: flex;
width: 100%;
padding: 0;
2022-06-13 23:34:48 +03:00
${ha("medium",!0)`
2022-03-05 22:33:35 +03:00
flex-direction: column;
`};
2022-06-13 23:34:48 +03:00
`,hu={1:"1.85714em",2:"1.57143em",3:"1.27em"},mu=e=>ua`
2022-03-05 22:33:35 +03:00
font-family: ${({theme:e})=>e.typography.headings.fontFamily};
font-weight: ${({theme:e})=>e.typography.headings.fontWeight};
2022-06-13 23:34:48 +03:00
font-size: ${hu[e]};
2022-03-05 22:33:35 +03:00
line-height: ${({theme:e})=>e.typography.headings.lineHeight};
2022-06-13 23:34:48 +03:00
`,gu=ma.h1`
${mu(1)};
color: ${({theme:e})=>e.colors.text.primary};
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${ga("H1")};
`,yu=ma.h2`
${mu(2)};
color: ${({theme:e})=>e.colors.text.primary};
margin: 0 0 20px;
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${ga("H2")};
`,vu=(ma.h2`
${mu(3)};
color: ${({theme:e})=>e.colors.text.primary};
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${ga("H3")};
`,ma.h3`
2022-03-05 22:33:35 +03:00
color: ${({theme:e})=>e.rightPanel.textColor};
2022-06-13 23:34:48 +03:00
${ga("RightPanelHeader")};
`),bu=ma.h5`
2022-03-05 22:33:35 +03:00
border-bottom: 1px solid rgba(38, 50, 56, 0.3);
margin: 1em 0 1em 0;
color: rgba(38, 50, 56, 0.5);
font-weight: normal;
text-transform: uppercase;
font-size: 0.929em;
line-height: 20px;
2022-06-13 23:34:48 +03:00
${ga("UnderlinedHeader")};
`,wu=(0,n.createContext)(void 0),{Provider:xu,Consumer:ku}=wu;function _u(e){const{spec:t,specUrl:o,options:i,onLoaded:a,children:s}=e,[l,c]=n.useState(null),[u,p]=n.useState(null);if(u)throw u;n.useEffect((()=>{!function(){return e=this,null,n=function*(){if(t||o){c(null);try{const e=yield function(e){return t=this,n=function*(){const t=new Aa.Config({}),n={config:t,base:Vr?window.location.href:process.cwd()};Vr&&(t.resolve.http.customFetch=r.g.fetch),"object"==typeof e&&null!==e?n.doc={source:{absoluteRef:""},parsed:e}:n.ref=e;const{bundle:{parsed:o}}=yield(0,Pa.bundle)(n);return void 0!==o.swagger?(i=o,console.warn("[ReDoc Compatibility mode]: Converting OpenAPI 2.0 to OpenAPI 3.0"),new Promise(((e,t)=>(0,$a.convertObj)(i,{patch:!0,warnOnly:!0,text:"{}",anchors:!0},((n,r)=>{if(n)return t(n);e(r&&r.openapi)}))))):o;var i},new Promise(((e,r)=>{var o=e=>{try{a(n.next(e))}catch(e){r(e)}},i=e=>{try{a(n.throw(e))}catch(e){r(e)}},a=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,i);a((n=n.apply(t,null)).next())}));var t,n}(t||o);c(e)}catch(e){throw p(e),e}}},new Promise(((t,r)=>{var o=e=>{try{a(n.next(e))}catch(e){r(e)}},i=e=>{try{a(n.throw(e))}catch(e){r(e)}},a=e=>e.done?t(e.value):Promise.resolve(e.value).then(o,i);a((n=n.apply(e,null)).next())}));var e,n}()}),[t,o]);const d=n.useMemo((()=>{if(!l)return null;try{return new Jg(l,o,i)}catch(e){throw a&&a(e),e}}),[l,o,i]);return n.useEffect((()=>{d&&a&&a()}),[d,a]),s({loading:!d,store:d})}const Ou=e=>ua`
2022-03-05 22:33:35 +03:00
${e} {
cursor: pointer;
margin-left: -20px;
padding: 0;
line-height: 1;
width: 20px;
display: inline-block;
outline: 0;
}
${e}:before {
content: '';
width: 15px;
height: 15px;
background-size: contain;
background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');
opacity: 0.5;
visibility: hidden;
display: inline-block;
vertical-align: middle;
}
h1:hover > ${e}::before, h2:hover > ${e}::before, ${e}:hover::before {
visibility: visible;
}
2022-06-13 23:34:48 +03:00
`,Su=ma((function(e){const t=n.useContext(wu),r=n.useCallback((n=>{t&&function(e,t,n){t.defaultPrevented||0!==t.button||(e=>!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey))(t)||(t.preventDefault(),e.replace(encodeURI(n)))}(t.menu.history,n,e.to)}),[t,e.to]);return t?n.createElement("a",{className:e.className,href:t.menu.history.linkForId(e.to),onClick:r,"aria-label":e.to},e.children):null}))`
${Ou("&")};
`;function Eu(e){return n.createElement(Su,{to:e.to})}const Pu={left:"90deg",right:"-90deg",up:"-180deg",down:"0"};class Au extends n.PureComponent{render(){return n.createElement("svg",{className:this.props.className,style:this.props.style,version:"1.1",viewBox:"0 0 24 24",x:"0",xmlns:"http://www.w3.org/2000/svg",y:"0","aria-hidden":"true"},n.createElement("polygon",{points:"17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "}))}}const $u=ma(Au)`
2022-03-05 22:33:35 +03:00
height: ${e=>e.size||"18px"};
width: ${e=>e.size||"18px"};
2022-06-13 23:34:48 +03:00
min-width: ${e=>e.size||"18px"};
2022-03-05 22:33:35 +03:00
vertical-align: middle;
float: ${e=>e.float||""};
transition: transform 0.2s ease-out;
2022-06-13 23:34:48 +03:00
transform: rotateZ(${e=>Pu[e.direction||"down"]});
2022-03-05 22:33:35 +03:00
polygon {
fill: ${({color:e,theme:t})=>e&&t.colors.responses[e]&&t.colors.responses[e].color||e};
}
2022-06-13 23:34:48 +03:00
`,Ru=ma.span`
2022-03-05 22:33:35 +03:00
display: inline-block;
padding: 2px 8px;
margin: 0;
background-color: ${e=>e.theme.colors[e.type].main};
color: ${e=>e.theme.colors[e.type].contrastText};
font-size: ${e=>e.theme.typography.code.fontSize};
vertical-align: middle;
line-height: 1.6;
border-radius: 4px;
font-weight: ${({theme:e})=>e.typography.fontWeightBold};
font-size: 12px;
+ span[type] {
margin-left: 4px;
}
2022-06-13 23:34:48 +03:00
`,Cu=ua`
2022-03-05 22:33:35 +03:00
text-decoration: line-through;
color: #707070;
2022-06-13 23:34:48 +03:00
`,ju=ma.caption`
2022-03-05 22:33:35 +03:00
text-align: right;
font-size: 0.9em;
font-weight: normal;
color: ${e=>e.theme.colors.text.secondary};
2022-06-13 23:34:48 +03:00
`,Tu=ma.td`
2022-03-05 22:33:35 +03:00
border-left: 1px solid ${e=>e.theme.schema.linesColor};
box-sizing: border-box;
position: relative;
padding: 10px 10px 10px 0;
2022-06-13 23:34:48 +03:00
${ha("small")`
2022-03-05 22:33:35 +03:00
display: block;
overflow: hidden;
`}
tr:first-of-type > &,
tr.last > & {
border-left-width: 0;
background-position: top left;
background-repeat: no-repeat;
background-size: 1px 100%;
}
tr:first-of-type > & {
background-image: linear-gradient(
to bottom,
transparent 0%,
transparent 22px,
${e=>e.theme.schema.linesColor} 22px,
${e=>e.theme.schema.linesColor} 100%
);
}
tr.last > & {
background-image: linear-gradient(
to bottom,
${e=>e.theme.schema.linesColor} 0%,
${e=>e.theme.schema.linesColor} 22px,
transparent 22px,
transparent 100%
);
}
tr.last + tr > & {
border-left-color: transparent;
}
tr.last:first-child > & {
background: none;
border-left-color: transparent;
}
2022-06-13 23:34:48 +03:00
`,Iu=ma(Tu)`
2022-03-05 22:33:35 +03:00
padding: 0;
2022-06-13 23:34:48 +03:00
`,Nu=ma(Tu)`
2022-03-05 22:33:35 +03:00
vertical-align: top;
line-height: 20px;
white-space: nowrap;
font-size: 13px;
font-family: ${e=>e.theme.typography.code.fontFamily};
&.deprecated {
2022-06-13 23:34:48 +03:00
${Cu};
2022-03-05 22:33:35 +03:00
}
2022-06-13 23:34:48 +03:00
${({kind:e})=>"patternProperties"===e&&ua`
> span.property-name {
display: inline-table;
white-space: break-spaces;
margin-right: 20px;
::before,
::after {
content: '/';
filter: opacity(0.2);
}
}
`}
${({kind:e=""})=>["field","additionalProperties","patternProperties"].includes(e)?"":"font-style: italic"};
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${ga("PropertyNameCell")};
`,Du=ma.td`
2022-03-05 22:33:35 +03:00
border-bottom: 1px solid #9fb4be;
padding: 10px 0;
width: ${e=>e.theme.schema.defaultDetailsWidth};
box-sizing: border-box;
tr.expanded & {
border-bottom: none;
}
2022-06-13 23:34:48 +03:00
${ha("small")`
2022-03-05 22:33:35 +03:00
padding: 0 20px;
border-bottom: none;
border-left: 1px solid ${e=>e.theme.schema.linesColor};
tr.last > & {
border-left: none;
}
`}
2022-06-13 23:34:48 +03:00
${ga("PropertyDetailsCell")};
`,Lu=ma.span`
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.schema.linesColor};
font-family: ${e=>e.theme.typography.code.fontFamily};
margin-right: 10px;
&::before {
content: '';
display: inline-block;
vertical-align: middle;
width: 10px;
height: 1px;
background: ${e=>e.theme.schema.linesColor};
}
&::after {
content: '';
display: inline-block;
vertical-align: middle;
width: 1px;
background: ${e=>e.theme.schema.linesColor};
height: 7px;
}
2022-06-13 23:34:48 +03:00
`,Mu=ma.div`
2022-03-05 22:33:35 +03:00
padding: ${({theme:e})=>e.schema.nestingSpacing};
2022-06-13 23:34:48 +03:00
`,Fu=ma.table`
2022-03-05 22:33:35 +03:00
border-collapse: separate;
border-radius: 3px;
font-size: ${e=>e.theme.typography.fontSize};
border-spacing: 0;
width: 100%;
> tr {
vertical-align: middle;
}
2022-06-13 23:34:48 +03:00
${ha("small")`
2022-03-05 22:33:35 +03:00
display: block;
> tr, > tbody > tr {
display: block;
}
`}
2022-06-13 23:34:48 +03:00
${ha("small",!1," and (-ms-high-contrast:none)")`
2022-03-05 22:33:35 +03:00
td {
float: left;
width: 100%;
}
`}
&
2022-06-13 23:34:48 +03:00
${Mu},
2022-03-05 22:33:35 +03:00
&
2022-06-13 23:34:48 +03:00
${Mu}
${Mu}
${Mu},
2022-03-05 22:33:35 +03:00
&
2022-06-13 23:34:48 +03:00
${Mu}
${Mu}
${Mu}
${Mu}
${Mu} {
2022-03-05 22:33:35 +03:00
margin: ${({theme:e})=>e.schema.nestingSpacing};
margin-right: 0;
background: ${({theme:e})=>e.schema.nestedBackground};
}
&
2022-06-13 23:34:48 +03:00
${Mu}
${Mu},
2022-03-05 22:33:35 +03:00
&
2022-06-13 23:34:48 +03:00
${Mu}
${Mu}
${Mu}
${Mu},
2022-03-05 22:33:35 +03:00
&
2022-06-13 23:34:48 +03:00
${Mu}
${Mu}
${Mu}
${Mu}
${Mu}
${Mu} {
2022-03-05 22:33:35 +03:00
background: #ffffff;
}
2022-06-13 23:34:48 +03:00
`,zu=ma.div`
2022-03-05 22:33:35 +03:00
margin: 0 0 3px 0;
display: inline-block;
2022-06-13 23:34:48 +03:00
`,Uu=ma.span`
2022-03-05 22:33:35 +03:00
font-size: 0.9em;
margin-right: 10px;
color: ${e=>e.theme.colors.primary.main};
font-family: ${e=>e.theme.typography.headings.fontFamily};
}
2022-06-13 23:34:48 +03:00
`,Bu=ma.button`
2022-03-05 22:33:35 +03:00
display: inline-block;
margin-right: 10px;
margin-bottom: 5px;
font-size: 0.8em;
cursor: pointer;
border: 1px solid ${e=>e.theme.colors.primary.main};
padding: 2px 10px;
line-height: 1.5em;
outline: none;
&:focus {
box-shadow: 0 0 0 1px ${e=>e.theme.colors.primary.main};
}
2022-06-13 23:34:48 +03:00
${({deprecated:e})=>e&&Cu||""};
${e=>e.active?`\n color: white;\n background-color: ${e.theme.colors.primary.main};\n &:focus {\n box-shadow: none;\n background-color: ${Cr(.15,e.theme.colors.primary.main)};\n }\n `:`\n color: ${e.theme.colors.primary.main};\n background-color: white;\n `}
`,qu=ma.div`
2022-03-05 22:33:35 +03:00
font-size: 0.9em;
font-family: ${e=>e.theme.typography.code.fontFamily};
&::after {
content: ' [';
}
2022-06-13 23:34:48 +03:00
`,Vu=ma.div`
2022-03-05 22:33:35 +03:00
font-size: 0.9em;
font-family: ${e=>e.theme.typography.code.fontFamily};
&::after {
content: ']';
}
2022-06-13 23:34:48 +03:00
`;function Wu(e){return function(t){return!!t.type&&t.type.tabsRole===e}}var Hu=Wu("Tab"),Yu=Wu("TabList"),Gu=Wu("TabPanel");function Ku(){return(Ku=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function Qu(e,t){return n.Children.map(e,(function(e){return null===e?null:function(e){return Hu(e)||Yu(e)||Gu(e)}(e)?t(e):e.props&&e.props.children&&"object"==typeof e.props.children?(0,n.cloneElement)(e,Ku({},e.props,{children:Qu(e.props.children,t)})):e}))}function Xu(e,t){return n.Children.forEach(e,(function(e){null!==e&&(Hu(e)||Gu(e)?t(e):e.props&&e.props.children&&"object"==typeof e.props.children&&(Yu(e)&&t(e),Xu(e.props.children,t)))}))}function Ju(e){var t,n,r="";if("string"==typeof e||"number"==typeof e)r+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=Ju(e[t]))&&(r&&(r+=" "),r+=n);else for(t in e)e[t]&&(r&&(r+=" "),r+=t);return r}function Zu(){for(var e,t,n=0,r="";n<arguments.length;)(e=arguments[n++])&&(t=Ju(e))&&(r&&(r+=" "),r+=t);return r}var ep,tp=0;function np(){return"react-tabs-"+tp++}function rp(e){var t=0;return Xu(e,(function(e){Hu(e)&&t++})),t}function op(){return(op=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function ip(e,t){return(ip=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ap(e){return e&&"getAttribute"in e}function sp(e){return ap(e)&&"tab"===e.getAttribute("role")}function lp(e){return ap(e)&&"true"===e.getAttribute("aria-disabled")}var cp=function(e){var t,r;function o(){for(var t,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(t=e.call.apply(e,[this].concat(r))||this).tabNodes=[],t.handleKeyDown=function(e){var n=t.props,r=n.direction,o=n.disableUpDownKeys;if(t.isTabFromContainer(e.target)){var i=t.props.selectedIndex,a=!1,s=!1;32!==e.keyCode&&13!==e.keyCode||(a=!0,s=!1,t.handleClick(e)),37===e.keyCode||!o&&38===e.keyCode?(i="rtl"===r?t.getNextTab(i):t.getPrevTab(i),a=!0,s=!0):39===e.keyCode||!o&&40===e.keyCode?(i="rtl"===r?t.getPrevTab(i):t.getNextTab(i),a=!0,s=!0):35===e.keyCode?(i=t.getLastTab(),a=!0,s=!0):36===e.keyCode&&(i=t.getFirstTab(),a=!0,s=!0),a&&e.preventDefault(),s&&t.setSelected(i,e)}},t.handleClick=function(e){var n=e.target;do{if(t.isTabFromContainer(n)){if(lp(n))return;var r=[].slice.call(n.parentNode.children).filter(sp).indexOf(n);return void t.setSelected(r,e)}}while(null!=(n=n.parentNode))},t}r=e,(t=o).prototype=Object.create(r.prototype),t.prototype.constructor=t,ip(t,r);var i=o.prototype;return i.setSelected=function(e,t){if(!(e<0||e>=this.getTabsCount())){var n=this.props;(0,n.onSelect)(e,n.selectedIndex,t)}},i.getNextTab=function(e){for(var t=this.getTabsCount(),n=e+1;n<t;n++)if(!lp(this.getTab(n)))return n;for(var r=0;r<e;r++)if(!lp(this.getTab(r)))return r;return e},i.getPrevTab=function(e){for(var t=e;t--;)if(!lp(this.getTab(t)))return t;for(t=this.getTabsCount();t-- >e;)if(!lp(this.getTab(t)))return t;return e},i.getFirstTab=function(){for(var e=this.getTabsCount(),t=0;t<e;t++)if(!lp(this.getTab(t)))return t;return null},i.getLastTab=function(){for(var e=this.getTabsCount();e--;)if(!lp(this.getTab(e)))return e;return null},i.getTabsCount=function(){return rp(this.props.children)},i.getPanelsCount=function(){return e=this.props.children,t=0,Xu(e,(function(e){Gu(e)&&t++})),t;var e,t},i.getTab=function(e){return this.tabNodes["tabs-"+e]},i.getChildren=function(){var e=this,t=0,r=this.props,o=r.children,i=r.disabledTabClassName,a=r.focus,s=r.forceRenderTabPanel,l=r.selectedIndex,c=r.selectedTabClassName,u=r.selectedTabPanelClassName,p=r.environment;this.tabIds=this.tabIds||[],this.panelIds=this.panelIds||[];for(var d=this.tabIds.length-this.getTabsCount();d++<0;)this.tabIds.push(np()),this.panelIds.push(np());return Qu(o,(function(r){var o=r;if(Yu(r)){var d=0,f=!1;null==ep&&function(e){var t=e||("undefined"!=
2022-03-05 22:33:35 +03:00
> ul {
list-style: none;
padding: 0;
margin: 0;
margin: 0 -5px;
> li {
padding: 5px 10px;
display: inline-block;
background-color: ${({theme:e})=>e.codeBlock.backgroundColor};
border-bottom: 1px solid rgba(0, 0, 0, 0.5);
cursor: pointer;
text-align: center;
outline: none;
2022-06-13 23:34:48 +03:00
color: ${({theme:e})=>Cr(e.colors.tonalOffset,e.rightPanel.textColor)};
2022-03-05 22:33:35 +03:00
margin: 0
${({theme:e})=>`${e.spacing.unit}px ${e.spacing.unit}px ${e.spacing.unit}px`};
2022-06-13 23:34:48 +03:00
border: 1px solid ${({theme:e})=>Cr(.05,e.codeBlock.backgroundColor)};
2022-03-05 22:33:35 +03:00
border-radius: 5px;
min-width: 60px;
font-size: 0.9em;
font-weight: bold;
&.react-tabs__tab--selected {
color: ${e=>e.theme.colors.text.primary};
background: ${({theme:e})=>e.rightPanel.textColor};
&:focus {
outline: auto;
}
}
&:only-child {
flex: none;
min-width: 100px;
}
&.tab-success {
color: ${e=>e.theme.colors.responses.success.tabTextColor};
}
&.tab-redirect {
color: ${e=>e.theme.colors.responses.redirect.tabTextColor};
}
&.tab-info {
color: ${e=>e.theme.colors.responses.info.tabTextColor};
}
&.tab-error {
color: ${e=>e.theme.colors.responses.error.tabTextColor};
}
}
}
> .react-tabs__tab-panel {
background: ${({theme:e})=>e.codeBlock.backgroundColor};
& > div,
& > pre {
padding: ${e=>4*e.theme.spacing.unit}px;
margin: 0;
}
& > div > pre {
padding: 0;
}
}
2022-06-13 23:34:48 +03:00
`,_p=(ma(kp)`
2022-03-05 22:33:35 +03:00
> ul {
display: block;
> li {
padding: 2px 5px;
min-width: auto;
margin: 0 15px 0 0;
font-size: 13px;
font-weight: normal;
border-bottom: 1px dashed;
2022-06-13 23:34:48 +03:00
color: ${({theme:e})=>Cr(e.colors.tonalOffset,e.rightPanel.textColor)};
2022-03-05 22:33:35 +03:00
border-radius: 0;
background: none;
&:last-child {
margin-right: 0;
}
&.react-tabs__tab--selected {
color: ${({theme:e})=>e.rightPanel.textColor};
background: none;
}
}
}
> .react-tabs__tab-panel {
& > div,
& > pre {
padding: ${e=>2*e.theme.spacing.unit}px 0;
}
}
2022-06-13 23:34:48 +03:00
`,ma.div`
2022-03-05 22:33:35 +03:00
/**
* Based on prism-dark.css
*/
code[class*='language-'],
pre[class*='language-'] {
/* color: white;
background: none; */
text-shadow: 0 -0.1em 0.2em black;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
-moz-tab-size: 4;
-o-tab-size: 4;
tab-size: 4;
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
@media print {
code[class*='language-'],
pre[class*='language-'] {
text-shadow: none;
}
}
/* Code blocks */
pre[class*='language-'] {
padding: 1em;
margin: 0.5em 0;
overflow: auto;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: hsl(30, 20%, 50%);
}
.token.punctuation {
opacity: 0.7;
}
.namespace {
opacity: 0.7;
}
.token.property,
.token.tag,
.token.number,
.token.constant,
.token.symbol {
color: #4a8bb3;
}
.token.boolean {
color: #e64441;
}
.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted {
color: #a0fbaa;
& + a,
& + a:visited {
color: #4ed2ba;
text-decoration: underline;
}
}
.token.property.string {
color: white;
}
.token.operator,
.token.entity,
.token.url,
.token.variable {
color: hsl(40, 90%, 60%);
}
.token.atrule,
.token.attr-value,
.token.keyword {
color: hsl(350, 40%, 70%);
}
.token.regex,
.token.important {
color: #e90;
}
.token.important,
.token.bold {
font-weight: bold;
}
.token.italic {
font-style: italic;
}
.token.entity {
cursor: help;
}
.token.deleted {
color: red;
}
2022-06-13 23:34:48 +03:00
${ga("Prism")};
`),Op=ma.div`
2022-03-05 22:33:35 +03:00
opacity: 0.7;
transition: opacity 0.3s ease;
text-align: right;
&:focus-within {
opacity: 1;
}
> button {
background-color: transparent;
border: 0;
color: inherit;
padding: 2px 10px;
font-family: ${({theme:e})=>e.typography.fontFamily};
font-size: ${({theme:e})=>e.typography.fontSize};
line-height: ${({theme:e})=>e.typography.lineHeight};
cursor: pointer;
outline: 0;
:hover,
:focus {
background: rgba(255, 255, 255, 0.1);
}
}
2022-06-13 23:34:48 +03:00
`,Sp=ma.div`
&:hover ${Op} {
2022-03-05 22:33:35 +03:00
opacity: 1;
}
2022-06-13 23:34:48 +03:00
`,Ep=ma(_p.withComponent("pre"))`
2022-03-05 22:33:35 +03:00
font-family: ${e=>e.theme.typography.code.fontFamily};
font-size: ${e=>e.theme.typography.code.fontSize};
overflow-x: auto;
margin: 0;
white-space: ${({theme:e})=>e.typography.code.wrap?"pre-wrap":"pre"};
2022-06-13 23:34:48 +03:00
`;function Pp(e){return getComputedStyle(e)}function Ap(e,t){for(var n in t){var r=t[n];"number"==typeof r&&(r+="px"),e.style[n]=r}return e}function $p(e){var t=document.createElement("div");return t.className=e,t}var Rp="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector);function Cp(e,t){if(!Rp)throw new Error("No element matching method supported");return Rp.call(e,t)}function jp(e){e.remove?e.remove():e.parentNode&&e.parentNode.removeChild(e)}function Tp(e,t){return Array.prototype.filter.call(e.children,(function(e){return Cp(e,t)}))}var Ip=function(e){return"ps__thumb-"+e},Np=function(e){return"ps__rail-"+e},Dp="ps__child--consume",Lp="ps--focus",Mp="ps--clicking",Fp=function(e){return"ps--active-"+e},zp=function(e){return"ps--scrolling-"+e},Up={x:null,y:null};function Bp(e,t){var n=e.element.classList,r=zp(t);n.contains(r)?clearTimeout(Up[t]):n.add(r)}function qp(e,t){Up[t]=setTimeout((function(){return e.isAlive&&e.element.classList.remove(zp(t))}),e.settings.scrollingThreshold)}var Vp=function(e){this.element=e,this.handlers={}},Wp={isEmpty:{configurable:!0}};Vp.prototype.bind=function(e,t){void 0===this.handlers[e]&&(this.handlers[e]=[]),this.handlers[e].push(t),this.element.addEventListener(e,t,!1)},Vp.prototype.unbind=function(e,t){var n=this;this.handlers[e]=this.handlers[e].filter((function(r){return!(!t||r===t)||(n.element.removeEventListener(e,r,!1),!1)}))},Vp.prototype.unbindAll=function(){for(var e in this.handlers)this.unbind(e)},Wp.isEmpty.get=function(){var e=this;return Object.keys(this.handlers).every((function(t){return 0===e.handlers[t].length}))},Object.defineProperties(Vp.prototype,Wp);var Hp=function(){this.eventElements=[]};function Yp(e){if("function"==typeof window.CustomEvent)return new CustomEvent(e);var t=document.createEvent("CustomEvent");return t.initCustomEvent(e,!1,!1,void 0),t}function Gp(e,t,n,r,o){var i;if(void 0===r&&(r=!0),void 0===o&&(o=!1),"top"===t)i=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==t)throw new Error("A proper axis should be provided");i=["contentWidth","containerWidth","scrollLeft","x","left","right"]}!function(e,t,n,r,o){var i=n[0],a=n[1],s=n[2],l=n[3],c=n[4],u=n[5];void 0===r&&(r=!0),void 0===o&&(o=!1);var p=e.element;e.reach[l]=null,p[s]<1&&(e.reach[l]="start"),p[s]>e[i]-e[a]-1&&(e.reach[l]="end"),t&&(p.dispatchEvent(Yp("ps-scroll-"+l)),t<0?p.dispatchEvent(Yp("ps-scroll-"+c)):t>0&&p.dispatchEvent(Yp("ps-scroll-"+u)),r&&function(e,t){Bp(e,t),qp(e,t)}(e,l)),e.reach[l]&&(t||o)&&p.dispatchEvent(Yp("ps-"+l+"-reach-"+e.reach[l]))}(e,n,i,r,o)}function Kp(e){return parseInt(e,10)||0}Hp.prototype.eventElement=function(e){var t=this.eventElements.filter((function(t){return t.element===e}))[0];return t||(t=new Vp(e),this.eventElements.push(t)),t},Hp.prototype.bind=function(e,t,n){this.eventElement(e).bind(t,n)},Hp.prototype.unbind=function(e,t,n){var r=this.eventElement(e);r.unbind(t,n),r.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(r),1)},Hp.prototype.unbindAll=function(){this.eventElements.forEach((function(e){return e.unbindAll()})),this.eventElements=[]},Hp.prototype.once=function(e,t,n){var r=this.eventElement(e),o=function(e){r.unbind(t,o),n(e)};r.bind(t,o)};var Qp={isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&window.navigator.maxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!=typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!=typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)};function Xp(e){var t=e.element,n=Math.floor(t.scrollTop),r=t.getBoundingClientRect();e.containerWidth=Math.ceil(r.width),e.containerHeight=Math.ceil(r.height),e.contentWidth=t.scrollWidth,e.contentHeight=t.scrollHeight,t.contains(e.scrollbarXRail)||(Tp(t,Np("x")).forEach((function(
position: relative;
`;class dd extends n.Component{constructor(){super(...arguments),this.handleRef=e=>{this._container=e}}componentDidMount(){const e=this._container.parentElement&&this._container.parentElement.scrollTop||0;this.inst=new ld(this._container,this.props.options||{}),this._container.scrollTo&&this._container.scrollTo(0,e)}componentDidUpdate(){this.inst.update()}componentWillUnmount(){this.inst.destroy()}render(){const{children:e,className:t,updateFn:r}=this.props;return r&&r(this.componentDidUpdate.bind(this)),n.createElement(n.Fragment,null,cd&&n.createElement(ud,null),n.createElement(pd,{className:`scrollbar-container ${t}`,ref:this.handleRef},e))}}function fd(e){return n.createElement(Oa.Consumer,null,(t=>t.nativeScrollbars?n.createElement("div",{style:{overflow:"auto",overscrollBehavior:"contain",msOverflowStyle:"-ms-autohiding-scrollbar"}},e.children):n.createElement(dd,((e,t)=>{for(var n in t||(t={}))id.call(t,n)&&sd(e,n,t[n]);if(od)for(var n of od(t))ad.call(t,n)&&sd(e,n,t[n]);return e})({},e),e.children)))}const hd=ma((({className:e,style:t})=>n.createElement("svg",{className:e,style:t,xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},n.createElement("polyline",{points:"6 9 12 15 18 9"}))))`
position: absolute;
pointer-events: none;
z-index: 1;
top: 50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
right: 8px;
margin: auto;
text-align: center;
polyline {
color: ${e=>"dark"===e.variant&&"white"};
}
`,md=n.memo((e=>{const{options:t,onChange:r,placeholder:o,value:i="",variant:a,className:s}=e;return n.createElement("div",{className:s},n.createElement(hd,{variant:a}),n.createElement("select",{onChange:e=>{const{selectedIndex:n}=e.target;r(t[o?n-1:n])},value:i,className:"dropdown-select"},o&&n.createElement("option",{disabled:!0,hidden:!0,value:o},o),t.map((({idx:e,value:t,title:r},o)=>n.createElement("option",{key:e||t+o,value:t},r||t)))),n.createElement("label",null,i))})),gd=la(md)`
label {
box-sizing: border-box;
min-width: 100px;
outline: none;
display: inline-block;
font-family: ${e=>e.theme.typography.headings.fontFamily};
color: ${({theme:e})=>e.colors.text.primary};
vertical-align: bottom;
width: ${({fullWidth:e})=>e?"100%":"auto"};
text-transform: none;
padding: 0 22px 0 4px;
font-size: 0.929em;
line-height: 1.5em;
font-family: inherit;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.dropdown-select {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 0;
border: none;
appearance: none;
cursor: pointer;
color: ${({theme:e})=>e.colors.text.primary};
line-height: inherit;
font-family: inherit;
}
box-sizing: border-box;
min-width: 100px;
outline: none;
display: inline-block;
border-radius: 2px;
border: 1px solid rgba(38, 50, 56, 0.5);
vertical-align: bottom;
padding: 2px 0px 2px 6px;
2022-03-05 22:33:35 +03:00
position: relative;
2022-06-13 23:34:48 +03:00
width: auto;
background: white;
color: #263238;
font-family: ${e=>e.theme.typography.headings.fontFamily};
font-size: 0.929em;
line-height: 1.5em;
cursor: pointer;
transition: border 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
&:hover,
&:focus-within {
border: 1px solid ${e=>e.theme.colors.primary.main};
color: ${e=>e.theme.colors.primary.main};
box-shadow: 0px 0px 0px 1px ${e=>e.theme.colors.primary.main};
}
`,yd=la(gd)`
margin-left: 10px;
text-transform: none;
font-size: 0.969em;
font-size: 1em;
border: none;
padding: 0 1.2em 0 0;
background: transparent;
&:hover,
&:focus-within {
border: none;
box-shadow: none;
label {
color: ${e=>e.theme.colors.primary.main};
text-shadow: 0px 0px 0px ${e=>e.theme.colors.primary.main};
}
}
`,vd=la.span`
margin-left: 10px;
text-transform: none;
font-size: 0.929em;
color: black;
`;var bd=Object.defineProperty,wd=Object.defineProperties,xd=Object.getOwnPropertyDescriptors,kd=Object.getOwnPropertySymbols,_d=Object.prototype.hasOwnProperty,Od=Object.prototype.propertyIsEnumerable,Sd=(e,t,n)=>t in e?bd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Ed=(e,t)=>{for(var n in t||(t={}))_d.call(t,n)&&Sd(e,n,t[n]);if(kd)for(var n of kd(t))Od.call(t,n)&&Sd(e,n,t[n]);return e},Pd=(e,t)=>wd(e,xd(t));class Ad{constructor(e,t,n){this.operations=[];const r=e.deref(n||{});e.exitRef(n),this.initWebhooks(e,r,t)}initWebhooks(e,t,n){for(const r of Object.keys(t)){const o=t[r],i=Object.keys(o).filter(Qa);for(const t of i){const r=o[t];if(o.$ref){const r=e.deref(o||{});this.initWebhooks(e,{[t]:r},n)}if(!r)continue;const i=new cu(e,Pd(Ed({},r),{httpVerb:t}),void 0,n,!1);this.operations.push(i)}}}}class $d{constructor(e,t,n){const r=e.deref(n);this.id=t,this.sectionId=fs+t,this.type=r.type,this.displayName=r["x-displayName"]||t,this.description=r.description||"","apiKey"===r.type&&(this.apiKey={name:r.name,in:r.in}),"http"===r.type&&(this.http={scheme:r.scheme,bearerFormat:r.bearerFormat}),"openIdConnect"===r.type&&(this.openId={connectUrl:r.openIdConnectUrl}),"oauth2"===r.type&&r.flows&&(this.flows=r.flows)}}class Rd{constructor(e){const t=e.spec.components&&e.spec.components.securitySchemes||{};this.schemes=Object.keys(t).map((n=>new $d(e,n,t[n])))}}var Cd=Object.defineProperty,jd=Object.defineProperties,Td=Object.getOwnPropertyDescriptors,Id=Object.getOwnPropertySymbols,Nd=Object.prototype.hasOwnProperty,Dd=Object.prototype.propertyIsEnumerable,Ld=(e,t,n)=>t in e?Cd(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Md=(e,t)=>{for(var n in t||(t={}))Nd.call(t,n)&&Ld(e,n,t[n]);if(Id)for(var n of Id(t))Dd.call(t,n)&&Ld(e,n,t[n]);return e},Fd=(e,t)=>jd(e,Td(t)),zd=(e,t)=>{var n={};for(var r in e)Nd.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&Id)for(var r of Id(e))t.indexOf(r)<0&&Dd.call(e,r)&&(n[r]=e[r]);return n};class Ud{constructor(){this._counter={}}reset(){this._counter={}}visit(e){this._counter[e]=this._counter[e]?this._counter[e]+1:1}exit(e){this._counter[e]=this._counter[e]&&this._counter[e]-1}visited(e){return!!this._counter[e]}}class Bd{constructor(e,t,n=new xo({})){this.options=n,this._refCounter=new Ud,this.allowMergeRefs=!1,this.byRef=e=>{let t;if(this.spec){"#"!==e.charAt(0)&&(e="#"+e),e=decodeURIComponent(e);try{t=Na.get(this.spec,e)}catch(e){}return t||{}}},this.validate(e),this.spec=e,this.allowMergeRefs=e.openapi.startsWith("3.1");const r=Vr?window.location.href:void 0;"string"==typeof t&&(this.specUrl=new URL(t,r).href)}validate(e){if(void 0===e.openapi)throw new Error("Document must be valid OpenAPI 3.0.0 definition")}isRef(e){return!!e&&void 0!==e.$ref&&null!==e.$ref}resetVisited(){this._refCounter=new Ud}exitRef(e){this.isRef(e)&&this._refCounter.exit(e.$ref)}deref(e,t=!1,n=!1){if(this.isRef(e)){const r=ss(e.$ref);if(r&&this.options.ignoreNamedSchemas.has(r))return{type:"object",title:r};const o=this.byRef(e.$ref),i=this._refCounter.visited(e.$ref);if(this._refCounter.visit(e.$ref),i&&!t)return Object.assign({},o,{"x-circular-ref":!0});let a=o;return this.isRef(o)&&(a=this.deref(o,!1,n),this.exitRef(o)),this.allowMergeRefs?this.mergeRefs(e,o,n):a}return e}shallowDeref(e){if(this.isRef(e)){const t=ss(e.$ref);if(t&&this.options.ignoreNamedSchemas.has(t))return{type:"object",title:t};const n=this.byRef(e.$ref);return this.allowMergeRefs?this.mergeRefs(e,n,!1):n}return e}mergeRefs(e,t,n){const r=e,{$ref:o}=r,i=zd(r,["$ref"]),a=Object.keys(i);return 0===a.length?this.isRef(t)?this.shallowDeref(t):t:n&&a.some((e=>"description"!==e&&"title"!==e&&"externalDocs"!==e))?{allOf:[i,t]}:Md(Md({},t),i)}mergeAllOf(e,t,n=!1,r=new Set){if(t&&r.add(t),void 0===(e=this.hoistOneOfs(e)).allOf)return e;let o=Fd(Md({},e),{allOf:void 0,parentRefs:[],title:e.title||ss(t)});void 0!==o.properties&&"object"==typeof o.properties&&(o.properties=Md({},o.properties)),void 0!==o.items&&"object"==typeof o.items&&(o.items=Md({},o.items));const i=e.allOf.map((e=>{if(e&&e.$ref&&r.has(e.$ref))return
2022-03-05 22:33:35 +03:00
a {
2022-06-13 23:34:48 +03:00
text-decoration: ${e=>e.theme.typography.links.textDecoration};
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.typography.links.color};
&:visited {
color: ${e=>e.theme.typography.links.visited};
}
&:hover {
color: ${e=>e.theme.typography.links.hover};
2022-06-13 23:34:48 +03:00
text-decoration: ${e=>e.theme.typography.links.hoverTextDecoration};
2022-03-05 22:33:35 +03:00
}
}
2022-06-13 23:34:48 +03:00
`,$f=ma(_p)`
2022-03-05 22:33:35 +03:00
font-family: ${e=>e.theme.typography.fontFamily};
font-weight: ${e=>e.theme.typography.fontWeightRegular};
line-height: ${e=>e.theme.typography.lineHeight};
p {
&:last-child {
margin-bottom: 0;
}
}
${({compact:e})=>e&&"\n p:first-child {\n margin-top: 0;\n }\n p:last-child {\n margin-bottom: 0;\n }\n "}
${({inline:e})=>e&&" p {\n display: inline-block;\n }"}
h1 {
2022-06-13 23:34:48 +03:00
${mu(1)};
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.colors.primary.main};
margin-top: 0;
}
h2 {
2022-06-13 23:34:48 +03:00
${mu(2)};
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.colors.text.primary};
}
code {
color: ${({theme:e})=>e.typography.code.color};
background-color: ${({theme:e})=>e.typography.code.backgroundColor};
font-family: ${e=>e.theme.typography.code.fontFamily};
border-radius: 2px;
border: 1px solid rgba(38, 50, 56, 0.1);
padding: 0 ${({theme:e})=>e.spacing.unit}px;
font-size: ${e=>e.theme.typography.code.fontSize};
font-weight: ${({theme:e})=>e.typography.code.fontWeight};
word-break: break-word;
}
pre {
font-family: ${e=>e.theme.typography.code.fontFamily};
white-space: ${({theme:e})=>e.typography.code.wrap?"pre-wrap":"pre"};
background-color: ${({theme:e})=>e.codeBlock.backgroundColor};
color: white;
padding: ${e=>4*e.theme.spacing.unit}px;
overflow-x: auto;
line-height: normal;
border-radius: 0px;
border: 1px solid rgba(38, 50, 56, 0.1);
code {
background-color: transparent;
color: white;
padding: 0;
&:before,
&:after {
content: none;
}
}
}
blockquote {
margin: 0;
margin-bottom: 1em;
padding: 0 15px;
color: #777;
border-left: 4px solid #ddd;
}
img {
max-width: 100%;
box-sizing: content-box;
}
ul,
ol {
padding-left: 2em;
margin: 0;
margin-bottom: 1em;
ul,
ol {
margin-bottom: 0;
margin-top: 0;
}
}
table {
display: block;
width: 100%;
overflow: auto;
word-break: normal;
word-break: keep-all;
border-collapse: collapse;
border-spacing: 0;
margin-top: 1.5em;
margin-bottom: 1.5em;
}
table tr {
background-color: #fff;
border-top: 1px solid #ccc;
&:nth-child(2n) {
background-color: ${({theme:e})=>e.schema.nestedBackground};
}
}
table th,
table td {
padding: 6px 13px;
border: 1px solid #ddd;
}
table th {
text-align: left;
font-weight: bold;
}
2022-06-13 23:34:48 +03:00
${Ou(".share-link")};
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${Af}
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${ga("Markdown")};
`;var Rf=Object.defineProperty,Cf=Object.getOwnPropertySymbols,jf=Object.prototype.hasOwnProperty,Tf=Object.prototype.propertyIsEnumerable,If=(e,t,n)=>t in e?Rf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const Nf=$f.withComponent("span");function Df(e){const t=e.inline?Nf:$f;return n.createElement(Ea,null,(r=>{return n.createElement(t,((e,t)=>{for(var n in t||(t={}))jf.call(t,n)&&If(e,n,t[n]);if(Cf)for(var n of Cf(t))Tf.call(t,n)&&If(e,n,t[n]);return e})({className:"redoc-markdown "+(e.className||""),dangerouslySetInnerHTML:{__html:(o=r.untrustedSpec,i=e.html,o?Pf.sanitize(i):i)},"data-role":e["data-role"]},e));var o,i}))}class Lf extends n.Component{render(){const{source:e,inline:t,compact:r,className:o,"data-role":i}=this.props,a=new Cl;return n.createElement(Df,{html:a.renderMd(e),inline:t,compact:r,className:o,"data-role":i})}}const Mf=ma.div`
2022-03-05 22:33:35 +03:00
position: relative;
2022-06-13 23:34:48 +03:00
`,Ff=ma.div`
2022-03-05 22:33:35 +03:00
position: absolute;
min-width: 80px;
max-width: 500px;
background: #fff;
bottom: 100%;
left: 50%;
margin-bottom: 10px;
transform: translateX(-50%);
border-radius: 4px;
padding: 0.3em 0.6em;
text-align: center;
box-shadow: 0px 0px 5px 0px rgba(204, 204, 204, 1);
2022-06-13 23:34:48 +03:00
`,zf=ma.div`
2022-03-05 22:33:35 +03:00
background: #fff;
color: #000;
display: inline;
font-size: 0.85em;
white-space: nowrap;
2022-06-13 23:34:48 +03:00
`,Uf=ma.div`
2022-03-05 22:33:35 +03:00
position: absolute;
width: 0;
height: 0;
bottom: -5px;
left: 50%;
margin-left: -5px;
border-left: solid transparent 5px;
border-right: solid transparent 5px;
border-top: solid #fff 5px;
2022-06-13 23:34:48 +03:00
`,Bf=ma.div`
2022-03-05 22:33:35 +03:00
position: absolute;
width: 100%;
height: 20px;
bottom: -20px;
2022-06-13 23:34:48 +03:00
`;class qf extends n.Component{render(){const{open:e,title:t,children:r}=this.props;return n.createElement(Mf,null,r,e&&n.createElement(Ff,null,n.createElement(zf,null,t),n.createElement(Uf,null),n.createElement(Bf,null)))}}const Vf="undefined"!=typeof document&&document.queryCommandSupported&&document.queryCommandSupported("copy");class Wf{static isSupported(){return Vf}static selectElement(e){let t,n;document.body.createTextRange?(t=document.body.createTextRange(),t.moveToElementText(e),t.select()):document.createRange&&window.getSelection&&(n=window.getSelection(),t=document.createRange(),t.selectNodeContents(e),n.removeAllRanges(),n.addRange(t))}static deselect(){if(document.selection)document.selection.empty();else if(window.getSelection){const e=window.getSelection();e&&e.removeAllRanges()}}static copySelected(){let e;try{e=document.execCommand("copy")}catch(t){e=!1}return e}static copyElement(e){Wf.selectElement(e);const t=Wf.copySelected();return t&&Wf.deselect(),t}static copyCustom(e){const t=document.createElement("textarea");t.style.position="fixed",t.style.top="0",t.style.left="0",t.style.width="2em",t.style.height="2em",t.style.padding="0",t.style.border="none",t.style.outline="none",t.style.boxShadow="none",t.style.background="transparent",t.value=e,document.body.appendChild(t),t.select();const n=Wf.copySelected();return document.body.removeChild(t),n}}class Hf extends n.PureComponent{constructor(e){super(e),this.copy=()=>{const e="string"==typeof this.props.data?this.props.data:JSON.stringify(this.props.data,null,2);Wf.copyCustom(e),this.showTooltip()},this.renderCopyButton=()=>n.createElement("button",{onClick:this.copy},n.createElement(qf,{title:Wf.isSupported()?"Copied":"Not supported in your browser",open:this.state.tooltipShown},"Copy")),this.state={tooltipShown:!1}}render(){return this.props.children({renderCopyButton:this.renderCopyButton})}showTooltip(){this.setState({tooltipShown:!0}),setTimeout((()=>{this.setState({tooltipShown:!1})}),1500)}}let Yf=1;function Gf(e,t){Yf=1;let n="";return n+='<div class="redoc-json">',n+="<code>",n+=Zf(e,t),n+="</code>",n+="</div>",n}function Kf(e){return void 0!==e?e.toString().replace(/&/g,"&amp;").replace(/"/g,"&quot;").replace(/</g,"&lt;").replace(/>/g,"&gt;"):""}function Qf(e){return JSON.stringify(e).slice(1,-1)}function Xf(e,t){return'<span class="'+t+'">'+Kf(e)+"</span>"}function Jf(e){return'<span class="token punctuation">'+e+"</span>"}function Zf(e,t){const n=typeof e;let r="";return null==e?r+=Xf("null","token keyword"):e&&e.constructor===Array?(Yf++,r+=function(e,t){const n=Yf>t?"collapsed":"";let r=`<button class="collapser" aria-label="${Yf>t+1?"expand":"collapse"}"></button>${Jf("[")}<span class="ellipsis"></span><ul class="array collapsible">`,o=!1;const i=e.length;for(let a=0;a<i;a++)o=!0,r+='<li><div class="hoverable '+n+'">',r+=Zf(e[a],t),a<i-1&&(r+=","),r+="</div></li>";return r+=`</ul>${Jf("]")}`,o||(r=Jf("[ ]")),r}(e,t),Yf--):e&&e.constructor===Date?r+=Xf('"'+e.toISOString()+'"',"token string"):"object"===n?(Yf++,r+=function(e,t){const n=Yf>t?"collapsed":"",r=Object.keys(e),o=r.length;let i=`<button class="collapser" aria-label="${Yf>t+1?"expand":"collapse"}"></button>${Jf("{")}<span class="ellipsis"></span><ul class="obj collapsible">`,a=!1;for(let s=0;s<o;s++){const l=r[s];a=!0,i+='<li><div class="hoverable '+n+'">',i+='<span class="property token string">"'+Kf(l)+'"</span>: ',i+=Zf(e[l],t),s<o-1&&(i+=Jf(",")),i+="</div></li>"}return i+=`</ul>${Jf("}")}`,a||(i=Jf("{ }")),i}(e,t),Yf--):"number"===n?r+=Xf(e,"token number"):"string"===n?/^(http|https):\/\/[^\s]+$/.test(e)?r+=Xf('"',"token string")+'<a href="'+encodeURI(e)+'">'+Kf(Qf(e))+"</a>"+Xf('"',"token string"):r+=Xf('"'+Qf(e)+'"',"token string"):"boolean"===n&&(r+=Xf(e,"token boolean")),r}const eh=ua`
2022-03-05 22:33:35 +03:00
.redoc-json code > .collapser {
display: none;
pointer-events: none;
}
font-family: ${e=>e.theme.typography.code.fontFamily};
font-size: ${e=>e.theme.typography.code.fontSize};
white-space: ${({theme:e})=>e.typography.code.wrap?"pre-wrap":"pre"};
contain: content;
overflow-x: auto;
.callback-function {
color: gray;
}
.collapser:after {
content: '-';
cursor: pointer;
}
.collapsed > .collapser:after {
content: '+';
cursor: pointer;
}
.ellipsis:after {
content: ' … ';
}
.collapsible {
margin-left: 2em;
}
.hoverable {
padding-top: 1px;
padding-bottom: 1px;
padding-left: 2px;
padding-right: 2px;
border-radius: 2px;
}
.hovered {
background-color: rgba(235, 238, 249, 1);
}
.collapser {
background-color: transparent;
border: 0;
color: #fff;
font-family: ${e=>e.theme.typography.code.fontFamily};
font-size: ${e=>e.theme.typography.code.fontSize};
padding-right: 6px;
padding-left: 6px;
padding-top: 0;
padding-bottom: 0;
display: flex;
align-items: center;
justify-content: center;
width: 15px;
height: 15px;
position: absolute;
top: 4px;
left: -1.5em;
cursor: default;
user-select: none;
-webkit-user-select: none;
padding: 2px;
&:focus {
outline-color: #fff;
outline-style: dotted;
outline-width: 1px;
}
}
ul {
list-style-type: none;
padding: 0px;
margin: 0px 0px 0px 26px;
}
li {
position: relative;
display: block;
}
.hoverable {
display: inline-block;
}
.selected {
outline-style: solid;
outline-width: 1px;
outline-style: dotted;
}
.collapsed > .collapsible {
display: none;
}
.ellipsis {
display: none;
}
.collapsed > .ellipsis {
display: inherit;
}
2022-06-13 23:34:48 +03:00
`,th=ma.div`
&:hover > ${Op} {
2022-03-05 22:33:35 +03:00
opacity: 1;
}
2022-06-13 23:34:48 +03:00
`;class nh extends n.PureComponent{constructor(){super(...arguments),this.renderInner=({renderCopyButton:e})=>{const t=this.props.data&&Object.values(this.props.data).some((e=>"object"==typeof e&&null!==e));return n.createElement(th,null,n.createElement(Op,null,e(),t&&n.createElement(n.Fragment,null,n.createElement("button",{onClick:this.expandAll}," Expand all "),n.createElement("button",{onClick:this.collapseAll}," Collapse all "))),n.createElement(Oa.Consumer,null,(e=>n.createElement(_p,{className:this.props.className,ref:e=>this.node=e,dangerouslySetInnerHTML:{__html:Gf(this.props.data,e.jsonSampleExpandLevel)}}))))},this.expandAll=()=>{const e=this.node.getElementsByClassName("collapsible");for(const t of Array.prototype.slice.call(e)){const e=t.parentNode;e.classList.remove("collapsed"),e.querySelector(".collapser").setAttribute("aria-label","collapse")}},this.collapseAll=()=>{const e=this.node.getElementsByClassName("collapsible"),t=Array.prototype.slice.call(e,1);for(const e of t){const t=e.parentNode;t.classList.add("collapsed"),t.querySelector(".collapser").setAttribute("aria-label","expand")}},this.collapseElement=e=>{let t;"collapser"===e.className&&(t=e.parentElement.getElementsByClassName("collapsible")[0],t.parentElement.classList.contains("collapsed")?(t.parentElement.classList.remove("collapsed"),e.setAttribute("aria-label","collapse")):(t.parentElement.classList.add("collapsed"),e.setAttribute("aria-label","expand")))},this.clickListener=e=>{this.collapseElement(e.target)},this.focusListener=e=>{"Enter"===e.key&&this.collapseElement(e.target)}}render(){return n.createElement(Hf,{data:this.props.data},this.renderInner)}componentDidMount(){this.node.addEventListener("click",this.clickListener),this.node.addEventListener("focus",this.focusListener)}componentWillUnmount(){this.node.removeEventListener("click",this.clickListener),this.node.removeEventListener("focus",this.focusListener)}}const rh=ma(nh)`
${eh};
`;class oh extends n.PureComponent{render(){const{source:e,lang:t}=this.props;return n.createElement(Ep,{dangerouslySetInnerHTML:{__html:ys(e,t)}})}}class ih extends n.Component{render(){return n.createElement(Hf,{data:this.props.source},(({renderCopyButton:e})=>n.createElement(Sp,null,n.createElement(Op,null,e()),n.createElement(oh,{lang:this.props.lang,source:this.props.source}))))}}function ah({value:e,mimeType:t}){return Za(t)?n.createElement(rh,{data:e}):("object"==typeof e&&(e=JSON.stringify(e,null,2)),n.createElement(ih,{lang:(r=t,-1!==r.search(/xml/i)?"xml":"clike"),source:e}));var r}function sh({example:e,mimeType:t}){return void 0===e.value&&e.externalValueUrl?n.createElement(lh,{example:e,mimeType:t}):n.createElement(ah,{value:e.value,mimeType:t})}function lh({example:e,mimeType:t}){const r=function(e,t){const[,r]=(0,n.useState)(!0),o=(0,n.useRef)(void 0),i=(0,n.useRef)(void 0);return i.current!==e&&(o.current=void 0),i.current=e,(0,n.useEffect)((()=>{(()=>{return n=this,i=function*(){r(!0);try{o.current=yield e.getExternalValue(t)}catch(e){o.current=e}r(!1)},new Promise(((e,t)=>{var r=e=>{try{a(i.next(e))}catch(e){t(e)}},o=e=>{try{a(i.throw(e))}catch(e){t(e)}},a=t=>t.done?e(t.value):Promise.resolve(t.value).then(r,o);a((i=i.apply(n,null)).next())}));var n,i})()}),[e,t]),o.current}(e,t);return void 0===r?n.createElement("span",null,"Loading..."):r instanceof Error?n.createElement(Ep,null,"Error loading external example: ",n.createElement("br",null),n.createElement("a",{className:"token string",href:e.externalValueUrl,target:"_blank",rel:"noopener noreferrer"},e.externalValueUrl)):n.createElement(ah,{value:r,mimeType:t})}const ch=ma.div`
2022-03-05 22:33:35 +03:00
padding: 0.9em;
2022-06-13 23:34:48 +03:00
background-color: ${({theme:e})=>Ur(.6,e.rightPanel.backgroundColor)};
2022-03-05 22:33:35 +03:00
margin: 0 0 10px 0;
display: block;
font-family: ${({theme:e})=>e.typography.headings.fontFamily};
font-size: 0.929em;
line-height: 1.5em;
2022-06-13 23:34:48 +03:00
`,uh=ma.span`
2022-03-05 22:33:35 +03:00
font-family: ${({theme:e})=>e.typography.headings.fontFamily};
font-size: 12px;
position: absolute;
z-index: 1;
top: -11px;
left: 12px;
font-weight: ${({theme:e})=>e.typography.fontWeightBold};
2022-06-13 23:34:48 +03:00
color: ${({theme:e})=>Ur(.3,e.rightPanel.textColor)};
`,ph=ma.div`
2022-03-05 22:33:35 +03:00
position: relative;
2022-06-13 23:34:48 +03:00
`,dh=ma(gd)`
label {
color: ${({theme:e})=>e.rightPanel.textColor};
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
2022-03-05 22:33:35 +03:00
font-size: 1em;
2022-06-13 23:34:48 +03:00
text-transform: none;
border: none;
}
margin: 0 0 10px 0;
display: block;
background-color: ${({theme:e})=>Ur(.6,e.rightPanel.backgroundColor)};
border: none;
padding: 0.9em 1.6em 0.9em 0.9em;
box-shadow: none;
&:hover,
&:focus-within {
2022-03-05 22:33:35 +03:00
border: none;
box-shadow: none;
2022-06-13 23:34:48 +03:00
background-color: ${({theme:e})=>Ur(.3,e.rightPanel.backgroundColor)};
2022-03-05 22:33:35 +03:00
}
2022-06-13 23:34:48 +03:00
`,fh=ma.div`
2022-03-05 22:33:35 +03:00
font-family: ${e=>e.theme.typography.code.fontFamily};
font-size: 12px;
color: #ee807f;
2022-06-13 23:34:48 +03:00
`;class hh extends n.Component{constructor(){super(...arguments),this.state={activeIdx:0},this.switchMedia=({idx:e})=>{void 0!==e&&this.setState({activeIdx:e})}}render(){const{activeIdx:e}=this.state,t=this.props.mediaType.examples||{},r=this.props.mediaType.name,o=n.createElement(fh,null,"No sample"),i=Object.keys(t);if(0===i.length)return o;if(i.length>1){const o=i.map(((e,n)=>({value:t[e].summary||e,idx:n}))),a=t[i[e]],s=a.description;return n.createElement(mh,null,n.createElement(ph,null,n.createElement(uh,null,"Example"),this.props.renderDropdown({value:o[e].value,options:o,onChange:this.switchMedia,ariaLabel:"Example"})),n.createElement("div",null,s&&n.createElement(Lf,{source:s}),n.createElement(sh,{example:a,mimeType:r})))}{const e=t[i[0]];return n.createElement(mh,null,e.description&&n.createElement(Lf,{source:e.description}),n.createElement(sh,{example:e,mimeType:r}))}}}const mh=ma.div`
2022-03-05 22:33:35 +03:00
margin-top: 15px;
2022-06-13 23:34:48 +03:00
`;if(!n.useState)throw new Error("mobx-react-lite requires React with Hooks support");if(!tn)throw new Error("mobx-react-lite@3 requires mobx at least version 6 to be available");function gh(e){e()}var yh=[];function vh(e){return Dt(qn(e,t));var t}var bh="undefined"==typeof FinalizationRegistry?void 0:FinalizationRegistry;function wh(e){return{reaction:e,mounted:!1,changedBeforeMount:!1,cleanAt:Date.now()+xh}}var xh=1e4,kh=bh?function(e){var t=new Map,n=1,r=new e((function(e){var n=t.get(e);n&&(n.reaction.dispose(),t.delete(e))}));return{addReactionToTrack:function(e,o,i){var a=n++;return r.register(i,a,e),e.current=wh(o),e.current.finalizationRegistryCleanupToken=a,t.set(a,e.current),e.current},recordReactionAsCommitted:function(e){r.unregister(e),e.current&&e.current.finalizationRegistryCleanupToken&&t.delete(e.current.finalizationRegistryCleanupToken)},forceCleanupTimerToRunNowForTests:function(){},resetCleanupScheduleForTests:function(){}}}(bh):function(){var e,t=new Set;function n(){void 0===e&&(e=setTimeout(r,1e4))}function r(){e=void 0;var r=Date.now();t.forEach((function(e){var n=e.current;n&&r>=n.cleanAt&&(n.reaction.dispose(),e.current=null,t.delete(e))})),t.size>0&&n()}return{addReactionToTrack:function(e,r,o){var i;return e.current=wh(r),i=e,t.add(i),n(),e.current},recordReactionAsCommitted:function(e){t.delete(e)},forceCleanupTimerToRunNowForTests:function(){e&&(clearTimeout(e),r())},resetCleanupScheduleForTests:function(){var n,r;if(t.size>0){try{for(var o=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(t),i=o.next();!i.done;i=o.next()){var a=i.value,s=a.current;s&&(s.reaction.dispose(),a.current=null)}}catch(e){n={error:e}}finally{try{i&&!i.done&&(r=o.return)&&r.call(o)}finally{if(n)throw n.error}}t.clear()}e&&(clearTimeout(e),e=void 0)}}}(),_h=kh.addReactionToTrack,Oh=kh.recordReactionAsCommitted,Sh=(kh.resetCleanupScheduleForTests,kh.forceCleanupTimerToRunNowForTests,!1);function Eh(){return Sh}function Ph(e){return"observer"+e}var Ah=function(){};function $h(e,t){if(void 0===t&&(t="observed"),Eh())return e();var r,o=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}(n.useState(new Ah),1)[0],i=(r=function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),a=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)a.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return a}((0,n.useState)(0),2)[1],(0,n.useCallback)((function(){r((function(e){return e+1}))}),yh)),a=n.useRef(null);if(!a.current)var s=new mt(Ph(t),(function(){l.mounted?i():l.changedBeforeMount=!0})),l=_h(a,s,o);var c,u,p=a.current.reaction;if(n.useDebugValue(p,vh),n.useEffect((function(){return Oh(a),a.current?(a.current.mounted=!0,a.current.changedBeforeMount&&(a.current.changedBeforeMount=!1,i())):(a.current={reaction:new mt(Ph(t),(function(){i()})),mounted:!0,changedBeforeMount:!1,cleanAt:1/0},i()),function(){a.current.reaction.dispose(),a.current=null}}),[]),p.track((function(){try{c=e()}catch(e){u=e}})),u)throw u;return c}var Rh=function(){return(Rh=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e}).apply(this,arguments)};var Ch={$$typeof:!0,render:!0,compare:!0,type:!0};function jh(e){var t=e.children,n=e.render,r=t||n;return"function"!=typeof r?null:$h(r)}jh.displayName="Observer",function(e){e||(e=gh),Nt({reactionScheduler:e})}(i.unstable_batchedUpdates);var Th=0,Ih={};function Nh(e){return Ih[e]||(Ih[e]=function(e){if("function"==typeof Symbol)return Symb
2022-03-05 22:33:35 +03:00
button {
background-color: transparent;
border: 0;
outline: 0;
font-size: 13px;
font-family: ${e=>e.theme.typography.code.fontFamily};
cursor: pointer;
padding: 0;
color: ${e=>e.theme.colors.text.primary};
&:focus {
font-weight: ${({theme:e})=>e.typography.fontWeightBold};
}
2022-06-13 23:34:48 +03:00
${({kind:e})=>"patternProperties"===e&&ua`
display: inline-flex;
margin-right: 20px;
> span.property-name {
white-space: break-spaces;
text-align: left;
::before,
::after {
content: '/';
filter: opacity(0.2);
}
}
> svg {
align-self: center;
}
`}
2022-03-05 22:33:35 +03:00
}
${$u} {
height: ${({theme:e})=>e.schema.arrow.size};
width: ${({theme:e})=>e.schema.arrow.size};
polygon {
fill: ${({theme:e})=>e.schema.arrow.color};
}
}
2022-06-13 23:34:48 +03:00
`,am=ma.span`
2022-03-05 22:33:35 +03:00
vertical-align: middle;
font-size: ${({theme:e})=>e.typography.code.fontSize};
line-height: 20px;
2022-06-13 23:34:48 +03:00
`,sm=ma(am)`
color: ${e=>Ur(.1,e.theme.schema.typeNameColor)};
`,lm=ma(am)`
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.schema.typeNameColor};
2022-06-13 23:34:48 +03:00
`,cm=ma(am)`
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.schema.typeTitleColor};
word-break: break-word;
2022-06-13 23:34:48 +03:00
`,um=lm,pm=ma(am.withComponent("div"))`
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.schema.requireLabelColor};
font-size: ${e=>e.theme.schema.labelsTextSize};
font-weight: normal;
margin-left: 20px;
line-height: 1;
2022-06-13 23:34:48 +03:00
`,dm=ma(pm)`
color: ${e=>e.theme.colors.primary.light};
`,fm=ma(am)`
2022-03-05 22:33:35 +03:00
color: ${({theme:e})=>e.colors.warning.main};
font-size: 13px;
2022-06-13 23:34:48 +03:00
`,hm=ma(am)`
2022-03-05 22:33:35 +03:00
color: #0e7c86;
&::before,
&::after {
font-weight: bold;
}
2022-06-13 23:34:48 +03:00
`,mm=ma(am)`
2022-03-05 22:33:35 +03:00
border-radius: 2px;
2022-06-13 23:34:48 +03:00
word-break: break-word;
${({theme:e})=>`\n background-color: ${Ur(.95,e.colors.text.primary)};\n color: ${Ur(.1,e.colors.text.primary)};\n\n padding: 0 ${e.spacing.unit}px;\n border: 1px solid ${Ur(.9,e.colors.text.primary)};\n font-family: ${e.typography.code.fontFamily};\n}`};
2022-03-05 22:33:35 +03:00
& + & {
margin-left: 0;
}
2022-06-13 23:34:48 +03:00
${ga("ExampleValue")};
`,gm=ma(mm)``,ym=ma(am)`
2022-03-05 22:33:35 +03:00
border-radius: 2px;
2022-06-13 23:34:48 +03:00
${({theme:e})=>`\n background-color: ${Ur(.95,e.colors.primary.light)};\n color: ${Ur(.1,e.colors.primary.main)};\n\n margin: 0 ${e.spacing.unit}px;\n padding: 0 ${e.spacing.unit}px;\n border: 1px solid ${Ur(.9,e.colors.primary.main)};\n}`};
2022-03-05 22:33:35 +03:00
& + & {
margin-left: 0;
}
2022-06-13 23:34:48 +03:00
${ga("ConstraintItem")};
`,vm=ma.button`
2022-03-05 22:33:35 +03:00
background-color: transparent;
border: 0;
color: ${({theme:e})=>e.colors.text.secondary};
margin-left: ${({theme:e})=>e.spacing.unit}px;
border-radius: 2px;
cursor: pointer;
outline-color: ${({theme:e})=>e.colors.text.secondary};
font-size: 12px;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;const bm=ma.div`
${Af};
2022-03-05 22:33:35 +03:00
${({compact:e})=>e?"":"margin: 1em 0"}
2022-06-13 23:34:48 +03:00
`;let wm=class extends n.Component{render(){const{externalDocs:e}=this.props;return e&&e.url?n.createElement(bm,{compact:this.props.compact},n.createElement("a",{href:e.url},e.description||e.url)):null}};wm=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],wm);class xm extends n.PureComponent{constructor(){super(...arguments),this.state={collapsed:!0}}toggle(){this.setState({collapsed:!this.state.collapsed})}render(){const{values:e,isArrayType:t}=this.props,{collapsed:r}=this.state,{enumSkipQuotes:o,maxDisplayedEnumValues:i}=this.context;if(!e.length)return null;const a=this.state.collapsed&&i?e.slice(0,i):e,s=!!i&&e.length>i,l=i?r?`… ${e.length-i} more`:"Hide":"";return n.createElement("div",null,n.createElement(am,null,t?lo("enumArray"):""," ",1===e.length?lo("enumSingleValue"):lo("enum"),":")," ",a.map(((e,t)=>{const r=o?String(e):JSON.stringify(e);return n.createElement(n.Fragment,{key:t},n.createElement(mm,null,r)," ")})),s?n.createElement(km,{onClick:()=>{this.toggle()}},l):null)}}xm.contextType=Oa;const km=ma.span`
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.colors.primary.main};
vertical-align: middle;
font-size: 13px;
line-height: 20px;
padding: 0 5px;
cursor: pointer;
2022-06-13 23:34:48 +03:00
`,_m=ma($f)`
2022-03-05 22:33:35 +03:00
margin: 2px 0;
2022-06-13 23:34:48 +03:00
`;class Om extends n.PureComponent{render(){const e=this.props.extensions;return n.createElement(Oa.Consumer,null,(t=>n.createElement(n.Fragment,null,t.showExtensions&&Object.keys(e).map((t=>n.createElement(_m,{key:t},n.createElement(am,null," ",t.substring(2),": ")," ",n.createElement(gm,null,"string"==typeof e[t]?e[t]:JSON.stringify(e[t]))))))))}}function Sm({field:e}){return e.examples?n.createElement(n.Fragment,null,n.createElement(am,null," ",lo("examples"),": "),io(e.examples)?e.examples.map(((t,r)=>{const o=os(e,t),i=e.in?String(o):JSON.stringify(o);return n.createElement(n.Fragment,{key:r},n.createElement(mm,null,i)," ")})):n.createElement(Em,null,Object.values(e.examples).map(((t,r)=>n.createElement("li",{key:r+t.value},n.createElement(mm,null,os(e,t.value))," -"," ",t.summary||t.description))))):null}const Em=ma.ul`
2022-03-05 22:33:35 +03:00
margin-top: 1em;
2022-06-13 23:34:48 +03:00
list-style-position: outside;
`;class Pm extends n.PureComponent{render(){return 0===this.props.constraints.length?null:n.createElement("span",null," ",this.props.constraints.map((e=>n.createElement(ym,{key:e}," ",e," "))))}}const Am=n.memo((function({value:e,label:t,raw:r}){if(void 0===e)return null;const o=r?String(e):JSON.stringify(e);return n.createElement("div",null,n.createElement(am,null," ",t," ")," ",n.createElement(mm,null,o))}));function $m(e){const t=e.schema.pattern,{hideSchemaPattern:r}=n.useContext(Oa),[o,i]=n.useState(!1),a=n.useCallback((()=>i(!o)),[o]);return!t||r?null:n.createElement(n.Fragment,null,n.createElement(hm,null,o||t.length<45?t:`${t.substr(0,45)}...`),t.length>45&&n.createElement(vm,{onClick:a},o?"Hide pattern":"Show pattern"))}function Rm({schema:e}){const{hideSchemaPattern:t}=n.useContext(Oa);return e&&("string"!==e.type||e.constraints.length)&&((null==e?void 0:e.pattern)&&!t||e.items||e.displayFormat||e.constraints.length)?n.createElement(Cm,null,"[ items",e.displayFormat&&n.createElement(um,null," <",e.displayFormat," >"),n.createElement(Pm,{constraints:e.constraints}),n.createElement($m,{schema:e}),e.items&&n.createElement(Rm,{schema:e.items})," ]"):null}const Cm=ma(sm)`
2022-03-05 22:33:35 +03:00
margin: 0 5px;
vertical-align: text-top;
2022-06-13 23:34:48 +03:00
`;var jm=Object.defineProperty,Tm=Object.getOwnPropertySymbols,Im=Object.prototype.hasOwnProperty,Nm=Object.prototype.propertyIsEnumerable,Dm=(e,t,n)=>t in e?jm(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,Lm=(e,t)=>{for(var n in t||(t={}))Im.call(t,n)&&Dm(e,n,t[n]);if(Tm)for(var n of Tm(t))Nm.call(t,n)&&Dm(e,n,t[n]);return e};const Mm=om((e=>{const{enumSkipQuotes:t,hideSchemaTitles:r}=n.useContext(Oa),{showExamples:o,field:i,renderDiscriminatorSwitch:a}=e,{schema:s,description:l,deprecated:c,extensions:u,in:p,const:d}=i,f="array"===s.type,h=t||"header"===p,m=n.useMemo((()=>!o||void 0===i.example&&void 0===i.examples?null:void 0!==i.examples?n.createElement(Sm,{field:i}):n.createElement(Am,{label:lo("example")+":",value:os(i,i.example),raw:Boolean(i.in)})),[i,o]);return n.createElement("div",null,n.createElement("div",null,n.createElement(sm,null,s.typePrefix),n.createElement(lm,null,s.displayType),s.displayFormat&&n.createElement(um,null," ","<",s.displayFormat,">"," "),s.contentEncoding&&n.createElement(um,null," ","<",s.contentEncoding,">"," "),s.contentMediaType&&n.createElement(um,null," ","<",s.contentMediaType,">"," "),s.title&&!r&&n.createElement(cm,null," (",s.title,") "),n.createElement(Pm,{constraints:s.constraints}),n.createElement($m,{schema:s}),s.isCircular&&n.createElement(fm,null," ",lo("recursive")," "),f&&s.items&&n.createElement(Rm,{schema:s.items})),c&&n.createElement("div",null,n.createElement(Ru,{type:"warning"}," ",lo("deprecated")," ")),n.createElement(Am,{raw:h,label:lo("default")+":",value:s.default}),!a&&n.createElement(xm,{isArrayType:f,values:s.enum})," ",m,n.createElement(Om,{extensions:Lm(Lm({},u),s.extensions)}),n.createElement("div",null,n.createElement(Lf,{compact:!0,source:l})),s.externalDocs&&n.createElement(wm,{externalDocs:s.externalDocs,compact:!0}),a&&a(e)||null,d&&n.createElement(Am,{label:lo("const")+":",value:d})||null)})),Fm=n.memo(Mm);var zm=Object.defineProperty,Um=(Object.getOwnPropertyDescriptor,Object.getOwnPropertySymbols),Bm=Object.prototype.hasOwnProperty,qm=Object.prototype.propertyIsEnumerable,Vm=(e,t,n)=>t in e?zm(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;let Wm=class extends n.Component{constructor(){super(...arguments),this.toggle=()=>{void 0===this.props.field.expanded&&this.props.expandByDefault?this.props.field.collapse():this.props.field.toggle()},this.handleKeyPress=e=>{"Enter"===e.key&&(e.preventDefault(),this.toggle())}}render(){const{className:e="",field:t,isLast:r,expandByDefault:o}=this.props,{name:i,deprecated:a,required:s,kind:l}=t,c=!t.schema.isPrimitive&&!t.schema.isCircular,u=void 0===t.expanded?o:t.expanded,p=n.createElement(n.Fragment,null,"additionalProperties"===l&&n.createElement(dm,null,"additional property"),"patternProperties"===l&&n.createElement(dm,null,"pattern property"),s&&n.createElement(pm,null,"required")),d=c?n.createElement(im,{className:a?"deprecated":"",kind:l,title:i},n.createElement(Lu,null),n.createElement("button",{onClick:this.toggle,onKeyPress:this.handleKeyPress,"aria-label":"expand properties"},n.createElement("span",{className:"property-name"},i),n.createElement($u,{direction:u?"down":"right"})),p):n.createElement(Nu,{className:a?"deprecated":void 0,kind:l,title:i},n.createElement(Lu,null),n.createElement("span",{className:"property-name"},i),p);return n.createElement(n.Fragment,null,n.createElement("tr",{className:r?"last "+e:e},d,n.createElement(Du,null,n.createElement(Fm,((e,t)=>{for(var n in t||(t={}))Bm.call(t,n)&&Vm(e,n,t[n]);if(Um)for(var n of Um(t))qm.call(t,n)&&Vm(e,n,t[n]);return e})({},this.props)))),u&&c&&n.createElement("tr",{key:t.name+"inner"},n.createElement(Iu,{colSpan:2},n.createElement(Mu,null,n.createElement(Sg,{schema:t.schema,skipReadOnly:this.props.skipReadOnly,skipWriteOnly:this.props.skipWriteOnly,showTitle:this.props.showTitle,level:this.props.level})))))}};Wm=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Wm);Object.defineProperty,Object.getOwnPropertyDescriptor;let Hm=class extends n.Component{constructor(){super(
2022-03-05 22:33:35 +03:00
padding-left: ${({theme:e})=>2*e.spacing.unit}px;
2022-06-13 23:34:48 +03:00
`;class og extends n.PureComponent{render(){const e=this.props.schema,t=e.items,r=void 0===e.minItems&&void 0===e.maxItems?"":`(${cs(e)})`;return e.fields?n.createElement(Ym,ng(tg({},this.props),{level:this.props.level})):!e.displayType||t||r.length?n.createElement("div",null,n.createElement(qu,null," Array ",r),n.createElement(rg,null,n.createElement(Sg,ng(tg({},this.props),{schema:t}))),n.createElement(Vu,null)):n.createElement("div",null,n.createElement(lm,null,e.displayType))}}var ig=Object.defineProperty,ag=Object.defineProperties,sg=Object.getOwnPropertyDescriptor,lg=Object.getOwnPropertyDescriptors,cg=Object.getOwnPropertySymbols,ug=Object.prototype.hasOwnProperty,pg=Object.prototype.propertyIsEnumerable,dg=(e,t,n)=>t in e?ig(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,fg=(e,t,n,r)=>{for(var o,i=r>1?void 0:r?sg(t,n):t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&ig(t,n,i),i};let hg=class extends n.Component{constructor(){super(...arguments),this.activateOneOf=()=>{this.props.schema.activateOneOf(this.props.idx)}}render(){const{idx:e,schema:t,subSchema:r}=this.props;return n.createElement(Bu,{deprecated:r.deprecated,active:e===t.activeOneOf,onClick:this.activateOneOf},r.title||r.typePrefix+r.displayType)}};hg=fg([om],hg);let mg=class extends n.Component{render(){const{schema:{oneOf:e},schema:t}=this.props;if(void 0===e)return null;const r=e[t.activeOneOf];return n.createElement("div",null,n.createElement(Uu,null," ",t.oneOfType," "),n.createElement(zu,null,e.map(((e,r)=>n.createElement(hg,{key:e.pointer,schema:t,subSchema:e,idx:r})))),n.createElement("div",null,e[t.activeOneOf].deprecated&&n.createElement(Ru,{type:"warning"},"Deprecated")),n.createElement(Pm,{constraints:r.constraints}),n.createElement(Sg,((e,t)=>ag(e,lg(t)))(((e,t)=>{for(var n in t||(t={}))ug.call(t,n)&&dg(e,n,t[n]);if(cg)for(var n of cg(t))pg.call(t,n)&&dg(e,n,t[n]);return e})({},this.props),{schema:r})))}};mg=fg([om],mg);var gg=Object.defineProperty,yg=Object.defineProperties,vg=(Object.getOwnPropertyDescriptor,Object.getOwnPropertyDescriptors),bg=Object.getOwnPropertySymbols,wg=Object.prototype.hasOwnProperty,xg=Object.prototype.propertyIsEnumerable,kg=(e,t,n)=>t in e?gg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,_g=(e,t)=>{for(var n in t||(t={}))wg.call(t,n)&&kg(e,n,t[n]);if(bg)for(var n of bg(t))xg.call(t,n)&&kg(e,n,t[n]);return e},Og=(e,t)=>yg(e,vg(t));let Sg=class extends n.Component{render(){var e;const t=this.props,{schema:r}=t,o=((e,t)=>{var n={};for(var r in e)wg.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&bg)for(var r of bg(e))t.indexOf(r)<0&&xg.call(e,r)&&(n[r]=e[r]);return n})(t,["schema"]),i=(o.level||0)+1;if(!r)return n.createElement("em",null," Schema not provided ");const{type:a,oneOf:s,discriminatorProp:l,isCircular:c}=r;if(c)return n.createElement("div",null,n.createElement(lm,null,r.displayType),r.title&&n.createElement(cm,null," ",r.title," "),n.createElement(fm,null," ",lo("recursive")," "));if(void 0!==l)return s&&s.length?n.createElement(Ym,Og(_g({},o),{level:i,schema:s[r.activeOneOf],discriminator:{fieldName:l,parentSchema:r}})):(console.warn(`Looks like you are using discriminator wrong: you don't have any definition inherited from the ${r.title}`),null);if(void 0!==s)return n.createElement(mg,_g({schema:r},o));const u=io(a)?a:[a];if(u.includes("object")){if(null==(e=r.fields)?void 0:e.length)return n.createElement(Ym,Og(_g({},this.props),{level:i}))}else if(u.includes("array"))return n.createElement(og,Og(_g({},this.props),{level:i}));const p={schema:r,name:"",required:!1,description:r.description,externalDocs:r.externalDocs,deprecated:!1,toggle:()=>null,expanded:!1};return n.createElement("div",null,n.createElement(Fm,{field:p}))}};Sg=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Sg);var Eg=Object.defineProperty,Pg=Object.defineProperties,Ag=Object.getOwnPropertyDescriptors,$g=Object.getOwnPropertySymbols,Rg=Object.prototype.hasOwnProperty,Cg=Object.prototype.propertyIsEnumerable,jg=(e,t,n)=>t in e?Eg(e,t,
2022-03-05 22:33:35 +03:00
background: ${({theme:e})=>e.codeBlock.backgroundColor};
& > div,
& > pre {
padding: ${e=>4*e.theme.spacing.unit}px;
margin: 0;
}
& > div > pre {
padding: 0;
}
2022-06-13 23:34:48 +03:00
`,Ng=(la.div`
background-color: #e4e7eb;
`,la.ul`
display: inline;
list-style: none;
padding: 0;
li {
display: inherit;
&:after {
content: ',';
}
&:last-child:after {
content: none;
}
}
`,la.code`
font-size: ${e=>e.theme.typography.code.fontSize};
font-family: ${e=>e.theme.typography.code.fontFamily};
margin: 0 3px;
padding: 0.2em;
display: inline-block;
line-height: 1;
&:after {
content: ',';
font-weight: normal;
}
&:last-child:after {
content: none;
}
`),Dg=la.span`
&:after {
content: ' and ';
font-weight: normal;
}
&:last-child:after {
content: none;
}
${Af};
`,Lg=la.span`
${e=>!e.expanded&&"white-space: nowrap;"}
&:after {
content: ' or ';
${e=>e.expanded&&"content: ' or \\a';"}
white-space: pre;
}
&:last-child:after,
&:only-child:after {
content: none;
}
${Af};
`,Mg=la.div`
flex: 1 1 auto;
cursor: pointer;
`,Fg=la.div`
width: ${e=>e.theme.schema.defaultDetailsWidth};
text-overflow: ellipsis;
border-radius: 4px;
overflow: hidden;
${e=>e.expanded&&`background: ${e.theme.colors.gray[100]};\n padding: 8px 9.6px;\n margin: 20px 0;\n width: 100%;\n `};
${ha("small")`
margin-top: 10px;
`}
`,zg=la(bu)`
display: inline-block;
margin: 0;
`,Ug=la.div`
width: 100%;
display: flex;
margin: 1em 0;
flex-direction: ${e=>e.expanded?"column":"row"};
${ha("small")`
flex-direction: column;
`}
`,Bg=la.div`
margin: 0.5em 0;
`,qg=la.div`
border-bottom: 1px solid ${({theme:e})=>e.colors.border.dark};
margin-bottom: 1.5em;
padding-bottom: 0.7em;
h5 {
line-height: 1em;
margin: 0 0 0.6em;
font-size: ${({theme:e})=>e.typography.fontSize};
}
.redoc-markdown p:first-child {
display: inline;
}
`;function Vg({children:e,height:t}){const r=n.createRef(),[o,i]=n.useState(!1),[a,s]=n.useState(!1);return n.useEffect((()=>{r.current&&r.current.clientHeight+20<r.current.scrollHeight&&s(!0)}),[r]),n.createElement(n.Fragment,null,n.createElement(Wg,{ref:r,className:o?"":"container",style:{height:o?"auto":t}},e),n.createElement(Hg,{dimmed:!o},a&&n.createElement(Yg,{onClick:()=>{i(!o)}},o?"See less":"See more")))}const Wg=la.div`
overflow-y: hidden;
`,Hg=la.div`
text-align: center;
line-height: 1.5em;
${({dimmed:e})=>e&&"background-image: linear-gradient(to bottom, transparent,rgb(255 255 255));\n position: relative;\n top: -0.5em;\n padding-top: 0.5em;\n background-position-y: -1em;\n "}
`,Yg=la.a`
cursor: pointer;
`,Gg=n.memo((function(e){const{type:t,flow:r,RequiredScopes:o}=e,i=Object.keys((null==r?void 0:r.scopes)||{});return n.createElement(n.Fragment,null,n.createElement(Bg,null,n.createElement("b",null,"Flow type: "),n.createElement("code",null,t," ")),("implicit"===t||"authorizationCode"===t)&&n.createElement(Bg,null,n.createElement("strong",null," Authorization URL: "),n.createElement("code",null,n.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:r.authorizationUrl},r.authorizationUrl))),("password"===t||"clientCredentials"===t||"authorizationCode"===t)&&n.createElement(Bg,null,n.createElement("b",null," Token URL: "),n.createElement("code",null,r.tokenUrl)),r.refreshUrl&&n.createElement(Bg,null,n.createElement("strong",null," Refresh URL: "),r.refreshUrl),!!i.length&&n.createElement(n.Fragment,null,o||null,n.createElement(Bg,null,n.createElement("b",null," Scopes: ")),n.createElement(Vg,{height:"4em"},n.createElement("ul",null,i.map((e=>n.createElement("li",{key:e},n.createElement("code",null,e)," -"," ",n.createElement(Lf,{className:"redoc-markdown",inline:!0,source:r.scopes[e]||""}))))))))}));function Kg(e){const{RequiredScopes:t,scheme:r}=e;return n.createElement($f,null,r.apiKey?n.createElement(n.Fragment,null,n.createElement(Bg,null,n.createElement("b",null,(o=r.apiKey.in||"").charAt(0).toUpperCase()+o.slice(1)," parameter name: "),n.createElement("code",null,r.apiKey.name)),t):r.http?n.createElement(n.Fragment,null,n.createElement(Bg,null,n.createElement("b",null,"HTTP Authorization Scheme: "),n.createElement("code",null,r.http.scheme)),n.createElement(Bg,null,"bearer"===r.http.scheme&&r.http.bearerFormat&&n.createElement(n.Fragment,null,n.createElement("b",null,"Bearer format: "),n.createElement("code",null,r.http.bearerFormat))),t):r.openId?n.createElement(n.Fragment,null,n.createElement(Bg,null,n.createElement("b",null,"Connect URL: "),n.createElement("code",null,n.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:r.openId.connectUrl},r.openId.connectUrl))),t):r.flows?Object.keys(r.flows).map((e=>n.createElement(Gg,{key:e,type:e,RequiredScopes:t,flow:r.flows[e]}))):null);var o}const Qg={oauth2:"OAuth2",apiKey:"API Key",http:"HTTP",openIdConnect:"OpenID Connect"};class Xg extends n.PureComponent{render(){return this.props.securitySchemes.schemes.map((e=>n.createElement(pu,{id:e.sectionId,key:e.id},n.createElement(fu,null,n.createElement(uu,null,n.createElement(yu,null,n.createElement(Eu,{to:e.sectionId}),e.displayName),n.createElement(Lf,{source:e.description||""}),n.createElement(qg,null,n.createElement(Bg,null,n.createElement("b",null,"Security Scheme Type: "),n.createElement("span",null,Qg[e.type]||e.type)),n.createElement(Kg,{scheme:e})))))))}}class Jg{constructor(e,t,n={},r=!0){var o,i,a,s;this.marker=new Ds,this.disposer=null,this.rawOptions=n,this.options=new xo(n,Zg),this.scroll=new bf(this.options),mf.updateOnHistory(Is.currentId,this.scroll),this.spec=new Kd(e,t,this.options),this.menu=new mf(this.spec,this.scroll,Is),this.options.disableSearch||(this.search=new wf,r&&this.search.indexItems(this.menu.items),this.disposer=(o=this.menu,i="activeItemIdx",w(a=e=>{this.updateMarkOnMenu(e.newValue)})?function(e,t,n,r){return Vn(e,t).observe_(n,r)}(o,i,a,s):function(e,t,n){return Vn(e).observe_(t,n)}(o,i,a)))}static fromJS(e){const t=new Jg(e.spec.data,e.spec.url,e.options,!1);return t.menu.activeItemIdx=e.menu.activeItemIdx||0,t.menu.activate(t.menu.flatItems[t.menu.activeItemIdx]),t.options.disableSearch||t.search.load(e.searchIndex),t}onDidMount(){this.menu.updateOnHistory(),this.updateMarkOnMenu(this.menu.activeItemIdx)}dispose(){this.scroll.dispose(),this.menu.dispose(),this.search&&this.search.dispose(),null!=this.disposer&&this.disposer()}toJS(){return e=this,t=null,n=function*(){return{menu:{activeItemIdx:this.menu.activeItemIdx},spec:{url:this.spec.parser.specUrl,data:this.spec.parser.spec},searchIndex:this.search?yield this.search.toJS():void 0,options:this.rawOptions}},new Promise(((r,o)=>{var i=e=>{try{s(n.next(e))}catch(e){o(e)}},a=e=>{try{s(n.throw(e))}catch(e){o(
2022-03-05 22:33:35 +03:00
margin-top: 0;
margin-bottom: 0.5em;
2022-06-13 23:34:48 +03:00
${ga("ApiHeader")};
`,ty=ma.a`
2022-03-05 22:33:35 +03:00
border: 1px solid ${e=>e.theme.colors.primary.main};
color: ${e=>e.theme.colors.primary.main};
font-weight: normal;
margin-left: 0.5em;
padding: 4px 8px 4px;
display: inline-block;
text-decoration: none;
cursor: pointer;
2022-06-13 23:34:48 +03:00
${ga("DownloadButton")};
`,ny=ma.span`
2022-03-05 22:33:35 +03:00
&::before {
content: '|';
display: inline-block;
opacity: 0.5;
width: ${15}px;
text-align: center;
}
&:last-child::after {
display: none;
}
2022-06-13 23:34:48 +03:00
`,ry=ma.div`
2022-03-05 22:33:35 +03:00
overflow: hidden;
2022-06-13 23:34:48 +03:00
`,oy=ma.div`
2022-03-05 22:33:35 +03:00
display: flex;
flex-wrap: wrap;
// hide separator on new lines: idea from https://stackoverflow.com/a/31732902/1749888
margin-left: -${15}px;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let iy=class extends n.Component{constructor(){super(...arguments),this.handleDownloadClick=e=>{e.target.href||(e.target.href=this.props.store.spec.info.downloadLink)}}render(){const{store:e}=this.props,{info:t,externalDocs:r}=e.spec,o=e.options.hideDownloadButton,i=t.downloadFileName,a=t.downloadLink,s=t.license&&n.createElement(ny,null,"License:"," ",t.license.identifier?t.license.identifier:n.createElement("a",{href:t.license.url},t.license.name))||null,l=t.contact&&t.contact.url&&n.createElement(ny,null,"URL: ",n.createElement("a",{href:t.contact.url},t.contact.url))||null,c=t.contact&&t.contact.email&&n.createElement(ny,null,t.contact.name||"E-mail",":"," ",n.createElement("a",{href:"mailto:"+t.contact.email},t.contact.email))||null,u=t.termsOfService&&n.createElement(ny,null,n.createElement("a",{href:t.termsOfService},"Terms of Service"))||null,p=t.version&&n.createElement("span",null,"(",t.version,")")||null;return n.createElement(pu,null,n.createElement(fu,null,n.createElement(uu,{className:"api-info"},n.createElement(ey,null,t.title," ",p),!o&&n.createElement("p",null,lo("downloadSpecification"),":",n.createElement(ty,{download:i||!0,target:"_blank",href:a,onClick:this.handleDownloadClick},lo("download"))),n.createElement($f,null,(t.license||t.contact||t.termsOfService)&&n.createElement(ry,null,n.createElement(oy,null,c," ",l," ",s," ",u))||null),n.createElement(Lf,{source:e.spec.info.summary,"data-role":"redoc-summary"}),n.createElement(Lf,{source:e.spec.info.description,"data-role":"redoc-description"}),r&&n.createElement(wm,{externalDocs:r}))))}};iy=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],iy);const ay=ma.img`
2022-03-05 22:33:35 +03:00
max-height: ${e=>e.theme.logo.maxHeight};
max-width: ${e=>e.theme.logo.maxWidth};
padding: ${e=>e.theme.logo.gutter};
width: 100%;
display: block;
2022-06-13 23:34:48 +03:00
`,sy=ma.div`
2022-03-05 22:33:35 +03:00
text-align: center;
2022-06-13 23:34:48 +03:00
`,ly=ma.a`
2022-03-05 22:33:35 +03:00
display: inline-block;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let cy=class extends n.Component{render(){const{info:e}=this.props,t=e["x-logo"];if(!t||!t.url)return null;const r=t.href||e.contact&&e.contact.url,o=t.altText?t.altText:"logo",i=n.createElement(ay,{src:t.url,alt:o});return n.createElement(sy,{style:{backgroundColor:t.backgroundColor}},r?(a=r,e=>n.createElement(ly,{href:a},e))(i):i);var a}};cy=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],cy);var uy=Object.defineProperty,py=Object.getOwnPropertySymbols,dy=Object.prototype.hasOwnProperty,fy=Object.prototype.propertyIsEnumerable,hy=(e,t,n)=>t in e?uy(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,my=(e,t)=>{for(var n in t||(t={}))dy.call(t,n)&&hy(e,n,t[n]);if(py)for(var n of py(t))fy.call(t,n)&&hy(e,n,t[n]);return e};class gy extends n.Component{render(){return n.createElement(Ea,null,(e=>n.createElement(ku,null,(t=>this.renderWithOptionsAndStore(e,t)))))}renderWithOptionsAndStore(e,t){const{source:r,htmlWrap:o=(e=>e)}=this.props;if(!t)throw new Error("When using components in markdown, store prop must be provided");const i=new Cl(e).renderMdWithComponents(r);return i.length?i.map(((e,r)=>"string"==typeof e?n.cloneElement(o(n.createElement(Df,{html:e,inline:!1,compact:!1})),{key:r}):n.createElement(e.component,my({key:r},my(my({},e.props),e.propsSelector(t)))))):null}}var yy=r(4184),vy=r.n(yy);const by=ma.span.attrs((e=>({className:`operation-type ${e.type}`})))`
2022-03-05 22:33:35 +03:00
width: 9ex;
display: inline-block;
height: ${e=>e.theme.typography.code.fontSize};
line-height: ${e=>e.theme.typography.code.fontSize};
background-color: #333;
border-radius: 3px;
background-repeat: no-repeat;
background-position: 6px 4px;
font-size: 7px;
font-family: Verdana, sans-serif; // web-safe
color: white;
text-transform: uppercase;
text-align: center;
font-weight: bold;
vertical-align: middle;
margin-right: 6px;
margin-top: 2px;
&.get {
background-color: ${e=>e.theme.colors.http.get};
}
&.post {
background-color: ${e=>e.theme.colors.http.post};
}
&.put {
background-color: ${e=>e.theme.colors.http.put};
}
&.options {
background-color: ${e=>e.theme.colors.http.options};
}
&.patch {
background-color: ${e=>e.theme.colors.http.patch};
}
&.delete {
background-color: ${e=>e.theme.colors.http.delete};
}
&.basic {
background-color: ${e=>e.theme.colors.http.basic};
}
&.link {
background-color: ${e=>e.theme.colors.http.link};
}
&.head {
background-color: ${e=>e.theme.colors.http.head};
}
&.hook {
background-color: ${e=>e.theme.colors.primary.main};
}
2022-06-13 23:34:48 +03:00
`;function wy(e,{theme:t},n){return e>1?t.sidebar.level1Items[n]:1===e?t.sidebar.groupItems[n]:""}const xy=ma.ul`
2022-03-05 22:33:35 +03:00
margin: 0;
padding: 0;
& & {
font-size: 0.929em;
}
${e=>e.expanded?"":"display: none;"};
2022-06-13 23:34:48 +03:00
`,ky=ma.li`
2022-03-05 22:33:35 +03:00
list-style: none inside none;
overflow: hidden;
text-overflow: ellipsis;
padding: 0;
${e=>0===e.depth?"margin-top: 15px":""};
2022-06-13 23:34:48 +03:00
`,_y={0:ua`
2022-03-05 22:33:35 +03:00
opacity: 0.7;
text-transform: ${({theme:e})=>e.sidebar.groupItems.textTransform};
font-size: 0.8em;
padding-bottom: 0;
cursor: default;
2022-06-13 23:34:48 +03:00
`,1:ua`
2022-03-05 22:33:35 +03:00
font-size: 0.929em;
text-transform: ${({theme:e})=>e.sidebar.level1Items.textTransform};
2022-06-13 23:34:48 +03:00
`},Oy=ma.label.attrs((e=>({role:"menuitem",className:vy()("-depth"+e.depth,{active:e.active})})))`
2022-03-05 22:33:35 +03:00
cursor: pointer;
2022-06-13 23:34:48 +03:00
color: ${e=>e.active?wy(e.depth,e,"activeTextColor"):e.theme.sidebar.textColor};
2022-03-05 22:33:35 +03:00
margin: 0;
padding: 12.5px ${e=>4*e.theme.spacing.unit}px;
${({depth:e,type:t,theme:n})=>"section"===t&&e>1&&"padding-left: "+8*n.spacing.unit+"px;"||""}
display: flex;
justify-content: space-between;
font-family: ${e=>e.theme.typography.headings.fontFamily};
2022-06-13 23:34:48 +03:00
${e=>_y[e.depth]};
background-color: ${e=>e.active?wy(e.depth,e,"activeBackgroundColor"):e.theme.sidebar.backgroundColor};
2022-03-05 22:33:35 +03:00
2022-06-13 23:34:48 +03:00
${e=>e.deprecated&&Cu||""};
2022-03-05 22:33:35 +03:00
&:hover {
2022-06-13 23:34:48 +03:00
color: ${e=>wy(e.depth,e,"activeTextColor")};
background-color: ${e=>wy(e.depth,e,"activeBackgroundColor")};
2022-03-05 22:33:35 +03:00
}
${$u} {
height: ${({theme:e})=>e.sidebar.arrow.size};
width: ${({theme:e})=>e.sidebar.arrow.size};
polygon {
fill: ${({theme:e})=>e.sidebar.arrow.color};
}
}
2022-06-13 23:34:48 +03:00
`,Sy=ma.span`
2022-03-05 22:33:35 +03:00
display: inline-block;
vertical-align: middle;
width: ${e=>e.width?e.width:"auto"};
overflow: hidden;
text-overflow: ellipsis;
2022-06-13 23:34:48 +03:00
`,Ey=ma.div`
${({theme:e})=>`\n font-size: 0.8em;\n margin-top: ${2*e.spacing.unit}px;\n padding: 0 ${4*e.spacing.unit}px;\n text-align: left;\n\n opacity: 0.7;\n\n a,\n a:visited,\n a:hover {\n color: ${e.sidebar.textColor} !important;\n border-top: 1px solid ${Cr(.1,e.sidebar.backgroundColor)};\n padding: ${e.spacing.unit}px 0;\n display: block;\n }\n`};
`;class Py extends n.PureComponent{render(){const{name:e,opened:t,className:r,onClick:o,httpVerb:i,deprecated:a}=this.props;return n.createElement(Ay,{className:r,onClick:o||void 0},n.createElement(Ry,{type:i},hs(i)),n.createElement($u,{size:"1.5em",direction:t?"down":"right",float:"left"}),n.createElement($y,{deprecated:a},e),a?n.createElement(Ru,{type:"warning"}," ",lo("deprecated")," "):null)}}const Ay=ma.button`
2022-03-05 22:33:35 +03:00
border: 0;
width: 100%;
text-align: left;
& > * {
vertical-align: middle;
}
${$u} {
polygon {
2022-06-13 23:34:48 +03:00
fill: ${({theme:e})=>Cr(e.colors.tonalOffset,e.colors.gray[100])};
2022-03-05 22:33:35 +03:00
}
}
2022-06-13 23:34:48 +03:00
`,$y=ma.span`
2022-03-05 22:33:35 +03:00
text-decoration: ${e=>e.deprecated?"line-through":"none"};
margin-right: 8px;
2022-06-13 23:34:48 +03:00
`,Ry=ma(by)`
2022-03-05 22:33:35 +03:00
margin: 0 5px 0 0;
2022-06-13 23:34:48 +03:00
`,Cy=ma(Py)`
2022-03-05 22:33:35 +03:00
padding: 10px;
border-radius: 2px;
margin-bottom: 4px;
line-height: 1.5em;
background-color: ${({theme:e})=>e.colors.gray[100]};
cursor: pointer;
2022-06-13 23:34:48 +03:00
outline-color: ${({theme:e})=>Cr(e.colors.tonalOffset,e.colors.gray[100])};
`,jy=ma.div`
2022-03-05 22:33:35 +03:00
padding: 10px 25px;
background-color: ${({theme:e})=>e.colors.gray[50]};
margin-bottom: 5px;
margin-top: 5px;
2022-06-13 23:34:48 +03:00
`;class Ty extends n.PureComponent{constructor(){super(...arguments),this.selectElement=()=>{Wf.selectElement(this.child)}}render(){const{children:e}=this.props;return n.createElement("div",{ref:e=>this.child=e,onClick:this.selectElement,onFocus:this.selectElement,tabIndex:0,role:"button"},e)}}const Iy=ma.div`
2022-03-05 22:33:35 +03:00
cursor: pointer;
position: relative;
margin-bottom: 5px;
2022-06-13 23:34:48 +03:00
`,Ny=ma.span`
2022-03-05 22:33:35 +03:00
font-family: ${e=>e.theme.typography.code.fontFamily};
margin-left: 10px;
flex: 1;
overflow-x: hidden;
text-overflow: ellipsis;
2022-06-13 23:34:48 +03:00
`,Dy=ma.button`
2022-03-05 22:33:35 +03:00
outline: 0;
color: inherit;
width: 100%;
text-align: left;
cursor: pointer;
padding: 10px 30px 10px ${e=>e.inverted?"10px":"20px"};
border-radius: ${e=>e.inverted?"0":"4px 4px 0 0"};
background-color: ${e=>e.inverted?"transparent":e.theme.codeBlock.backgroundColor};
display: flex;
white-space: nowrap;
align-items: center;
border: ${e=>e.inverted?"0":"1px solid transparent"};
border-bottom: ${e=>e.inverted?"1px solid #ccc":"0"};
transition: border-color 0.25s ease;
${e=>e.expanded&&!e.inverted&&`border-color: ${e.theme.colors.border.dark};`||""}
2022-06-13 23:34:48 +03:00
.${Ny} {
2022-03-05 22:33:35 +03:00
color: ${e=>e.inverted?e.theme.colors.text.primary:"#ffffff"};
}
&:focus {
box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.45), 0 2px 0 rgba(128, 128, 128, 0.25);
}
2022-06-13 23:34:48 +03:00
`,Ly=ma.span.attrs((e=>({className:`http-verb ${e.type}`})))`
2022-03-05 22:33:35 +03:00
font-size: ${e=>e.compact?"0.8em":"0.929em"};
line-height: ${e=>e.compact?"18px":"20px"};
background-color: ${e=>e.theme.colors.http[e.type]||"#999999"};
color: #ffffff;
padding: ${e=>e.compact?"2px 8px":"3px 10px"};
text-transform: uppercase;
font-family: ${e=>e.theme.typography.headings.fontFamily};
margin: 0;
2022-06-13 23:34:48 +03:00
`,My=ma.div`
2022-03-05 22:33:35 +03:00
position: absolute;
width: 100%;
z-index: 100;
2022-06-13 23:34:48 +03:00
background: ${e=>e.theme.rightPanel.servers.overlay.backgroundColor};
color: ${e=>e.theme.rightPanel.servers.overlay.textColor};
2022-03-05 22:33:35 +03:00
box-sizing: border-box;
box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.33);
overflow: hidden;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
transition: all 0.25s ease;
visibility: hidden;
${e=>e.expanded?"visibility: visible;":"transform: translateY(-50%) scaleY(0);"}
2022-06-13 23:34:48 +03:00
`,Fy=ma.div`
2022-03-05 22:33:35 +03:00
padding: 10px;
2022-06-13 23:34:48 +03:00
`,zy=ma.div`
2022-03-05 22:33:35 +03:00
padding: 5px;
border: 1px solid #ccc;
2022-06-13 23:34:48 +03:00
background: ${e=>e.theme.rightPanel.servers.url.backgroundColor};
2022-03-05 22:33:35 +03:00
word-break: break-all;
color: ${e=>e.theme.colors.primary.main};
> span {
color: ${e=>e.theme.colors.text.primary};
}
2022-06-13 23:34:48 +03:00
`;class Uy extends n.Component{constructor(e){super(e),this.toggle=()=>{this.setState({expanded:!this.state.expanded})},this.state={expanded:!1}}render(){const{operation:e,inverted:t,hideHostname:r}=this.props,{expanded:o}=this.state;return n.createElement(Oa.Consumer,null,(i=>n.createElement(Iy,null,n.createElement(Dy,{onClick:this.toggle,expanded:o,inverted:t},n.createElement(Ly,{type:e.httpVerb,compact:this.props.compact},e.httpVerb),n.createElement(Ny,null,e.path),n.createElement($u,{float:"right",color:t?"black":"white",size:"20px",direction:o?"up":"down",style:{marginRight:"-25px"}})),n.createElement(My,{expanded:o,"aria-hidden":!o},e.servers.map((t=>{const o=i.expandDefaultServerVariables?function(e,t={}){return e.replace(/(?:{)([\w-.]+)(?:})/g,((e,n)=>t[n]&&t[n].default||e))}(t.url,t.variables):t.url,a=function(e){try{return ro(e).pathname}catch(t){return e}}(o);return n.createElement(Fy,{key:o},n.createElement(Lf,{source:t.description||"",compact:!0}),n.createElement(Ty,null,n.createElement(zy,null,n.createElement("span",null,r||i.hideHostname?"/"===a?"":a:o),e.path)))}))))))}}class By extends n.PureComponent{render(){const{place:e,parameters:t}=this.props;return t&&t.length?n.createElement("div",{key:e},n.createElement(bu,null,e," Parameters"),n.createElement(Fu,null,n.createElement("tbody",null,Kr(t,((e,t)=>n.createElement(Wm,{key:e.name,isLast:t,field:e,showExamples:!0})))))):null}}Object.defineProperty,Object.getOwnPropertyDescriptor;let qy=class extends n.Component{constructor(){super(...arguments),this.switchMedia=({idx:e})=>{this.props.content&&void 0!==e&&this.props.content.activate(e)}}render(){const{content:e}=this.props;if(!e||!e.mediaTypes||!e.mediaTypes.length)return null;const t=e.activeMimeIdx,r=e.mediaTypes.map(((e,t)=>({value:e.name,idx:t}))),o=({children:e})=>this.props.withLabel?n.createElement(ph,null,n.createElement(uh,null,"Content type"),e):e;return n.createElement(n.Fragment,null,n.createElement(o,null,this.props.renderDropdown({value:r[t].value,options:r,onChange:this.switchMedia,ariaLabel:"Content type"})),this.props.children(e.active))}};qy=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],qy);var Vy=Object.defineProperty,Wy=Object.getOwnPropertySymbols,Hy=Object.prototype.hasOwnProperty,Yy=Object.prototype.propertyIsEnumerable,Gy=(e,t,n)=>t in e?Vy(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const Ky=["path","query","cookie","header"];class Qy extends n.PureComponent{orderParams(e){const t={};return e.forEach((e=>{var n,r,o;o=e,(n=t)[r=e.in]||(n[r]=[]),n[r].push(o)})),t}render(){const{body:e,parameters:t=[]}=this.props;if(void 0===e&&void 0===t)return null;const r=this.orderParams(t),o=t.length>0?Ky:[],i=e&&e.content,a=e&&e.description;return n.createElement(n.Fragment,null,o.map((e=>n.createElement(By,{key:e,place:e,parameters:r[e]}))),i&&n.createElement(Jy,{content:i,description:a}))}}function Xy(e){return n.createElement(bu,{key:"header"},"Request Body schema: ",n.createElement(Ef,((e,t)=>{for(var n in t||(t={}))Hy.call(t,n)&&Gy(e,n,t[n]);if(Wy)for(var n of Wy(t))Yy.call(t,n)&&Gy(e,n,t[n]);return e})({},e)))}function Jy(e){const{content:t,description:r}=e,{isRequestType:o}=t;return n.createElement(qy,{content:t,renderDropdown:Xy},(({schema:e})=>n.createElement(n.Fragment,null,void 0!==r&&n.createElement(Lf,{source:r}),"object"===(null==e?void 0:e.type)&&n.createElement(Pm,{constraints:(null==e?void 0:e.constraints)||[]}),n.createElement(Sg,{skipReadOnly:o,skipWriteOnly:!o,key:"schema",schema:e}))))}const Zy=ma(n.memo((function({title:e,type:t,empty:r,code:o,opened:i,className:a,onClick:s}){return n.createElement("button",{className:a,onClick:!r&&s||void 0,"aria-expanded":i,disabled:r},!r&&n.createElement($u,{size:"1.5em",color:t,direction:i?"down":"right",float:"left"}),n.createElement(nv,null,o," "),n.createElement(Lf,{compact:!0,inline:!0,source:e}))})))`
2022-03-05 22:33:35 +03:00
display: block;
border: 0;
width: 100%;
text-align: left;
padding: 10px;
border-radius: 2px;
margin-bottom: 4px;
line-height: 1.5em;
cursor: pointer;
color: ${e=>e.theme.colors.responses[e.type].color};
background-color: ${e=>e.theme.colors.responses[e.type].backgroundColor};
&:focus {
outline: auto ${e=>e.theme.colors.responses[e.type].color};
}
${e=>e.empty?'\ncursor: default;\n&::before {\n content: "—";\n font-weight: bold;\n width: 1.5em;\n text-align: center;\n display: inline-block;\n vertical-align: top;\n}\n&:focus {\n outline: 0;\n}\n':""};
2022-06-13 23:34:48 +03:00
`,ev=ma.div`
2022-03-05 22:33:35 +03:00
padding: 10px;
2022-06-13 23:34:48 +03:00
`,tv=ma(bu.withComponent("caption"))`
2022-03-05 22:33:35 +03:00
text-align: left;
margin-top: 1em;
caption-side: top;
2022-06-13 23:34:48 +03:00
`,nv=ma.strong`
2022-03-05 22:33:35 +03:00
vertical-align: top;
2022-06-13 23:34:48 +03:00
`;class rv extends n.PureComponent{render(){const{headers:e}=this.props;return void 0===e||0===e.length?null:n.createElement(Fu,null,n.createElement(tv,null," Response Headers "),n.createElement("tbody",null,Kr(e,((e,t)=>n.createElement(Wm,{isLast:t,key:e.name,field:e,showExamples:!0})))))}}var ov=Object.defineProperty,iv=Object.getOwnPropertySymbols,av=Object.prototype.hasOwnProperty,sv=Object.prototype.propertyIsEnumerable,lv=(e,t,n)=>t in e?ov(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;class cv extends n.PureComponent{constructor(){super(...arguments),this.renderDropdown=e=>n.createElement(bu,{key:"header"},"Response Schema: ",n.createElement(Ef,((e,t)=>{for(var n in t||(t={}))av.call(t,n)&&lv(e,n,t[n]);if(iv)for(var n of iv(t))sv.call(t,n)&&lv(e,n,t[n]);return e})({},e)))}render(){const{description:e,extensions:t,headers:r,content:o}=this.props.response;return n.createElement(n.Fragment,null,e&&n.createElement(Lf,{source:e}),n.createElement(Om,{extensions:t}),n.createElement(rv,{headers:r}),n.createElement(qy,{content:o,renderDropdown:this.renderDropdown},(({schema:e})=>n.createElement(n.Fragment,null,"object"===(null==e?void 0:e.type)&&n.createElement(Pm,{constraints:(null==e?void 0:e.constraints)||[]}),n.createElement(Sg,{skipWriteOnly:!0,key:"schema",schema:e})))))}}const uv=om((({response:e})=>{const{extensions:t,headers:r,type:o,summary:i,description:a,code:s,expanded:l,content:c}=e,u=n.useMemo((()=>void 0===c?[]:c.mediaTypes.filter((e=>void 0!==e.schema))),[c]),p=n.useMemo((()=>!(t&&0!==Object.keys(t).length||0!==r.length||0!==u.length||a)),[t,r,u,a]);return n.createElement("div",null,n.createElement(Zy,{onClick:()=>e.toggle(),type:o,empty:p,title:i||"",code:s,opened:l}),l&&!p&&n.createElement(ev,null,n.createElement(cv,{response:e})))})),pv=ma.h3`
2022-03-05 22:33:35 +03:00
font-size: 1.3em;
padding: 0.2em 0;
margin: 3em 0 1.1em;
color: ${({theme:e})=>e.colors.text.primary};
font-weight: normal;
2022-06-13 23:34:48 +03:00
`;class dv extends n.PureComponent{render(){const{responses:e,isCallback:t}=this.props;return e&&0!==e.length?n.createElement("div",null,n.createElement(pv,null,lo(t?"callbackResponses":"responses")),e.map((e=>n.createElement(uv,{key:e.code,response:e})))):null}}function fv(e){const{security:t,showSecuritySchemeType:r,expanded:o}=e,i=t.schemes.length>1;return n.createElement(Lg,{expanded:o},i&&"(",t.schemes.map((e=>n.createElement(Dg,{key:e.id},r&&`${Qg[e.type]||e.type}: `,n.createElement("i",null,e.displayName),o&&e.scopes.length?[" (",e.scopes.map((e=>n.createElement(Ng,{key:e},e))),") "]:null))),i&&") ")}const hv=({scopes:e})=>e.length?n.createElement("div",null,n.createElement("b",null,"Required scopes: "),e.map(((e,t)=>n.createElement(n.Fragment,{key:t},n.createElement("code",null,e)," ")))):null;function mv(e){const t=(0,n.useContext)(wu),r=null==t?void 0:t.options.showSecuritySchemeType,[o,i]=(0,n.useState)(!1),{securities:a}=e;if(!(null==a?void 0:a.length)||(null==t?void 0:t.options.hideSecuritySection))return null;const s=null==t?void 0:t.spec.securitySchemes.schemes.filter((({id:e})=>a.find((t=>t.schemes.find((t=>t.id===e))))));return n.createElement(n.Fragment,null,n.createElement(Ug,{expanded:o},n.createElement(Mg,{onClick:()=>i(!o)},n.createElement(zg,null,"Authorizations:"),n.createElement($u,{size:"1.3em",direction:o?"down":"right"})),n.createElement(Fg,{expanded:o},a.map(((e,t)=>n.createElement(fv,{key:t,expanded:o,showSecuritySchemeType:r,security:e}))))),o&&(null==s?void 0:s.length)&&s.map(((e,t)=>n.createElement(qg,{key:t},n.createElement("h5",null,n.createElement(gv,null)," ",Qg[e.type]||e.type,": ",e.id),n.createElement(Lf,{source:e.description||""}),n.createElement(Kg,{key:e.id,scheme:e,RequiredScopes:n.createElement(hv,{scopes:yv(e.id,a)})})))))}const gv=()=>n.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",width:"11",height:"11"},n.createElement("path",{fill:"currentColor",d:"M18 10V6A6 6 0 0 0 6 6v4H3v14h18V10h-3zM8 6c0-2.206 1.794-4 4-4s4 1.794 4 4v4H8V6zm11 16H5V12h14v10z"}));function yv(e,t){const n=[];let r=t.length;for(;r--;){const o=t[r];let i=o.schemes.length;for(;i--;){const t=o.schemes[i];t.id===e&&n.push(...t.scopes)}}return Array.from(new Set(n))}Object.defineProperty,Object.getOwnPropertyDescriptor;let vv=class extends n.Component{render(){const{operation:e}=this.props,{description:t,externalDocs:r}=e,o=!(!t&&!r);return n.createElement(jy,null,o&&n.createElement(bv,null,void 0!==t&&n.createElement(Lf,{source:t}),r&&n.createElement(wm,{externalDocs:r})),n.createElement(Uy,{operation:this.props.operation,inverted:!0,compact:!0}),n.createElement(Om,{extensions:e.extensions}),n.createElement(mv,{securities:e.security}),n.createElement(Qy,{parameters:e.parameters,body:e.requestBody}),n.createElement(dv,{responses:e.responses,isCallback:e.isCallback}))}};vv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],vv);const bv=ma.div`
2022-03-05 22:33:35 +03:00
margin-bottom: ${({theme:e})=>3*e.spacing.unit}px;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let wv=class extends n.Component{constructor(){super(...arguments),this.toggle=()=>{this.props.callbackOperation.toggle()}}render(){const{name:e,expanded:t,httpVerb:r,deprecated:o}=this.props.callbackOperation;return n.createElement(n.Fragment,null,n.createElement(Cy,{onClick:this.toggle,name:e,opened:t,httpVerb:r,deprecated:o}),t&&n.createElement(vv,{operation:this.props.callbackOperation}))}};wv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],wv);class xv extends n.PureComponent{render(){const{callbacks:e}=this.props;return e&&0!==e.length?n.createElement("div",null,n.createElement(kv,null," Callbacks "),e.map((e=>e.operations.map(((t,r)=>n.createElement(wv,{key:`${e.name}_${r}`,callbackOperation:t})))))):null}}const kv=ma.h3`
2022-03-05 22:33:35 +03:00
font-size: 1.3em;
padding: 0.2em 0;
margin: 3em 0 1.1em;
color: ${({theme:e})=>e.colors.text.primary};
font-weight: normal;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let _v=class extends n.Component{constructor(e){super(e),this.switchItem=({idx:e})=>{this.props.items&&void 0!==e&&this.setState({activeItemIdx:e})},this.state={activeItemIdx:0}}render(){const{items:e}=this.props;if(!e||!e.length)return null;const t=({children:e})=>this.props.label?n.createElement(ph,null,n.createElement(uh,null,this.props.label),e):e;return n.createElement(n.Fragment,null,n.createElement(t,null,this.props.renderDropdown({value:this.props.options[this.state.activeItemIdx].value,options:this.props.options,onChange:this.switchItem,ariaLabel:this.props.label||"Callback"})),this.props.children(e[this.state.activeItemIdx]))}};_v=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],_v);var Ov=Object.defineProperty,Sv=Object.defineProperties,Ev=(Object.getOwnPropertyDescriptor,Object.getOwnPropertyDescriptors),Pv=Object.getOwnPropertySymbols,Av=Object.prototype.hasOwnProperty,$v=Object.prototype.propertyIsEnumerable,Rv=(e,t,n)=>t in e?Ov(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;let Cv=class extends n.Component{constructor(){super(...arguments),this.renderDropdown=e=>{return n.createElement(Ef,(t=((e,t)=>{for(var n in t||(t={}))Av.call(t,n)&&Rv(e,n,t[n]);if(Pv)for(var n of Pv(t))$v.call(t,n)&&Rv(e,n,t[n]);return e})({Label:ch,Dropdown:dh},e),Sv(t,Ev({variant:"dark"}))));var t}}render(){const e=this.props.content;return void 0===e?null:n.createElement(qy,{content:e,renderDropdown:this.renderDropdown,withLabel:!0},(e=>n.createElement(hh,{key:"samples",mediaType:e,renderDropdown:this.renderDropdown})))}};Cv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Cv);class jv extends n.Component{render(){const e=this.props.callback.codeSamples.find((e=>su(e)));return e?n.createElement(Tv,null,n.createElement(Cv,{content:e.requestBodyContent})):null}}const Tv=ma.div`
2022-03-05 22:33:35 +03:00
margin-top: 15px;
2022-06-13 23:34:48 +03:00
`;var Iv=Object.defineProperty,Nv=Object.defineProperties,Dv=(Object.getOwnPropertyDescriptor,Object.getOwnPropertyDescriptors),Lv=Object.getOwnPropertySymbols,Mv=Object.prototype.hasOwnProperty,Fv=Object.prototype.propertyIsEnumerable,zv=(e,t,n)=>t in e?Iv(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;let Uv=class extends n.Component{constructor(){super(...arguments),this.renderDropdown=e=>{return n.createElement(Ef,(t=((e,t)=>{for(var n in t||(t={}))Mv.call(t,n)&&zv(e,n,t[n]);if(Lv)for(var n of Lv(t))Fv.call(t,n)&&zv(e,n,t[n]);return e})({Label:ch,Dropdown:dh},e),Nv(t,Dv({variant:"dark"}))));var t}}render(){const{callbacks:e}=this.props;if(!e||0===e.length)return null;const t=e.map((e=>e.operations.map((e=>e)))).reduce(((e,t)=>e.concat(t)),[]);if(!t.some((e=>e.codeSamples.length>0)))return null;const r=t.map(((e,t)=>({value:`${e.httpVerb.toUpperCase()}: ${e.name}`,idx:t})));return n.createElement("div",null,n.createElement(vu,null," Callback payload samples "),n.createElement(Bv,null,n.createElement(_v,{items:t,renderDropdown:this.renderDropdown,label:"Callback",options:r},(e=>n.createElement(jv,{key:"callbackPayloadSample",callback:e,renderDropdown:this.renderDropdown})))))}};Uv.contextType=Oa,Uv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Uv);const Bv=ma.div`
2022-03-05 22:33:35 +03:00
background: ${({theme:e})=>e.codeBlock.backgroundColor};
padding: ${e=>4*e.theme.spacing.unit}px;
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let qv=class extends n.Component{render(){const{operation:e}=this.props,t=e.codeSamples,r=t.length>0,o=1===t.length&&this.context.hideSingleRequestSampleTab;return r&&n.createElement("div",null,n.createElement(vu,null," ",lo("requestSamples")," "),n.createElement(kp,{defaultIndex:0},n.createElement(hp,{hidden:o},t.map((e=>n.createElement(vp,{key:e.lang+"_"+(e.label||"")},void 0!==e.label?e.label:e.lang)))),t.map((e=>n.createElement(xp,{key:e.lang+"_"+(e.label||"")},su(e)?n.createElement("div",null,n.createElement(Cv,{content:e.requestBodyContent})):n.createElement(ih,{lang:e.lang,source:e.source}))))))||null}};qv.contextType=Oa,qv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],qv);Object.defineProperty,Object.getOwnPropertyDescriptor;let Vv=class extends n.Component{render(){const{operation:e}=this.props,t=e.responses.filter((e=>e.content&&e.content.hasSample));return t.length>0&&n.createElement("div",null,n.createElement(vu,null," ",lo("responseSamples")," "),n.createElement(kp,{defaultIndex:0},n.createElement(hp,null,t.map((e=>n.createElement(vp,{className:"tab-"+e.type,key:e.code},e.code)))),t.map((e=>n.createElement(xp,{key:e.code},n.createElement("div",null,n.createElement(Cv,{content:e.content})))))))||null}};Vv=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Vv);var Wv=Object.defineProperty,Hv=Object.defineProperties,Yv=Object.getOwnPropertyDescriptors,Gv=Object.getOwnPropertySymbols,Kv=Object.prototype.hasOwnProperty,Qv=Object.prototype.propertyIsEnumerable,Xv=(e,t,n)=>t in e?Wv(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;const Jv=ma.div`
2022-03-05 22:33:35 +03:00
margin-bottom: ${({theme:e})=>6*e.spacing.unit}px;
2022-06-13 23:34:48 +03:00
`,Zv=om((({operation:e})=>{const{name:t,description:r,deprecated:o,externalDocs:i,isWebhook:a,httpVerb:s}=e,l=!(!r&&!i),{showWebhookVerb:c}=n.useContext(Oa);return n.createElement(Oa.Consumer,null,(u=>n.createElement(fu,((e,t)=>Hv(e,Yv(t)))(((e,t)=>{for(var n in t||(t={}))Kv.call(t,n)&&Xv(e,n,t[n]);if(Gv)for(var n of Gv(t))Qv.call(t,n)&&Xv(e,n,t[n]);return e})({},{[hf]:e.operationHash}),{id:e.operationHash}),n.createElement(uu,null,n.createElement(yu,null,n.createElement(Eu,{to:e.id}),t," ",o&&n.createElement(Ru,{type:"warning"}," Deprecated "),a&&n.createElement(Ru,{type:"primary"}," ","Webhook ",c&&s&&"| "+s.toUpperCase())),u.pathInMiddlePanel&&!a&&n.createElement(Uy,{operation:e,inverted:!0}),l&&n.createElement(Jv,null,void 0!==r&&n.createElement(Lf,{source:r}),i&&n.createElement(wm,{externalDocs:i})),n.createElement(Om,{extensions:e.extensions}),n.createElement(mv,{securities:e.security}),n.createElement(Qy,{parameters:e.parameters,body:e.requestBody}),n.createElement(dv,{responses:e.responses}),n.createElement(xv,{callbacks:e.callbacks})),n.createElement(du,null,!u.pathInMiddlePanel&&!a&&n.createElement(Uy,{operation:e}),n.createElement(qv,{operation:e}),n.createElement(Vv,{operation:e}),n.createElement(Uv,{callbacks:e.callbacks})))))}));var eb=Object.defineProperty,tb=Object.getOwnPropertyDescriptor,nb=Object.getOwnPropertySymbols,rb=Object.prototype.hasOwnProperty,ob=Object.prototype.propertyIsEnumerable,ib=(e,t,n)=>t in e?eb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,ab=(e,t)=>{for(var n in t||(t={}))rb.call(t,n)&&ib(e,n,t[n]);if(nb)for(var n of nb(t))ob.call(t,n)&&ib(e,n,t[n]);return e},sb=(e,t,n,r)=>{for(var o,i=r>1?void 0:r?tb(t,n):t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&eb(t,n,i),i};let lb=class extends n.Component{render(){const e=this.props.items;return 0===e.length?null:e.map((e=>n.createElement(cb,{key:e.id,item:e})))}};lb=sb([om],lb);let cb=class extends n.Component{render(){const e=this.props.item;let t;const{type:r}=e;switch(r){case"group":t=null;break;case"tag":case"section":t=n.createElement(pb,ab({},this.props));break;case"operation":t=n.createElement(db,{item:e});break;default:t=n.createElement(pb,ab({},this.props))}return n.createElement(n.Fragment,null,t&&n.createElement(pu,{id:e.id,underlined:"operation"===e.type},t),e.items&&n.createElement(lb,{items:e.items}))}};cb=sb([om],cb);const ub=e=>n.createElement(uu,{compact:!0},e);let pb=class extends n.Component{render(){const{name:e,description:t,externalDocs:r,level:o}=this.props.item,i=2===o?yu:gu;return n.createElement(n.Fragment,null,n.createElement(fu,null,n.createElement(uu,{compact:!1},n.createElement(i,null,n.createElement(Eu,{to:this.props.item.id}),e))),n.createElement(gy,{source:t||"",htmlWrap:ub}),r&&n.createElement(fu,null,n.createElement(uu,null,n.createElement(wm,{externalDocs:r}))))}};pb=sb([om],pb);let db=class extends n.Component{render(){return n.createElement(Zv,{operation:this.props.item})}};db=sb([om],db);var fb=Object.defineProperty,hb=Object.defineProperties,mb=(Object.getOwnPropertyDescriptor,Object.getOwnPropertyDescriptors),gb=Object.getOwnPropertySymbols,yb=Object.prototype.hasOwnProperty,vb=Object.prototype.propertyIsEnumerable,bb=(e,t,n)=>t in e?fb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;let wb=class extends n.Component{constructor(){super(...arguments),this.ref=n.createRef(),this.activate=e=>{this.props.onActivate(this.props.item),e.stopPropagation()}}componentDidMount(){this.scrollIntoViewIfActive()}componentDidUpdate(){this.scrollIntoViewIfActive()}scrollIntoViewIfActive(){this.props.item.active&&this.ref.current&&Hr(this.ref.current)}render(){const{item:e,withoutChildren:t}=this.props;return n.createElement(ky,{onClick:this.activate,depth:e.depth,"data-item-id":e.id},"operation"===e.type?n.createElement(xb,((e,t)=>hb(e,mb(t)))(((e,t)=>{for(var n in t||(t={}))yb.call(t,n)&&bb(e,n,t[n]);if(gb)for(var n of gb(t))vb.call(t,n)&&bb(e,n,t[n]);return e})({},this.props),{item:e})):n.createElement(Oy,{depth:e.depth,active:e.active,type:e.type,ref:th
2022-03-05 22:33:35 +03:00
user-select: none;
width: 20px;
height: 20px;
align-self: center;
display: flex;
flex-direction: column;
color: ${e=>e.theme.colors.primary.main};
2022-06-13 23:34:48 +03:00
`;Object.defineProperty,Object.getOwnPropertyDescriptor;let jb;Vr&&(jb=r(5114));const Tb=jb&&jb(),Ib=ma.div`
2022-03-05 22:33:35 +03:00
width: ${e=>e.theme.sidebar.width};
background-color: ${e=>e.theme.sidebar.backgroundColor};
overflow: hidden;
display: flex;
flex-direction: column;
backface-visibility: hidden;
/* contain: strict; TODO: breaks layout since Chrome 80*/
height: 100vh;
position: sticky;
position: -webkit-sticky;
top: 0;
2022-06-13 23:34:48 +03:00
${ha("small")`
2022-03-05 22:33:35 +03:00
position: fixed;
z-index: 20;
width: 100%;
background: ${({theme:e})=>e.sidebar.backgroundColor};
display: ${e=>e.open?"flex":"none"};
`};
@media print {
display: none;
}
2022-06-13 23:34:48 +03:00
`,Nb=ma.div`
2022-03-05 22:33:35 +03:00
outline: none;
user-select: none;
2022-06-13 23:34:48 +03:00
background-color: ${({theme:e})=>e.fab.backgroundColor};
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.colors.primary.main};
display: none;
cursor: pointer;
position: fixed;
right: 20px;
z-index: 100;
border-radius: 50%;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
2022-06-13 23:34:48 +03:00
${ha("small")`
2022-03-05 22:33:35 +03:00
display: flex;
`};
bottom: 44px;
width: 60px;
height: 60px;
padding: 0 20px;
2022-06-13 23:34:48 +03:00
svg {
color: ${({theme:e})=>e.fab.color};
}
2022-03-05 22:33:35 +03:00
@media print {
display: none;
}
2022-06-13 23:34:48 +03:00
`;let Db=class extends n.Component{constructor(){super(...arguments),this.state={offsetTop:"0px"},this.toggleNavMenu=()=>{this.props.menu.toggleSidebar()}}componentDidMount(){Tb&&Tb.add(this.stickyElement),this.setState({offsetTop:this.getScrollYOffset(this.context)})}componentWillUnmount(){Tb&&Tb.remove(this.stickyElement)}getScrollYOffset(e){let t;return t=void 0!==this.props.scrollYOffset?xo.normalizeScrollYOffset(this.props.scrollYOffset)():e.scrollYOffset(),t+"px"}render(){const e=this.props.menu.sideBarOpened,t=this.state.offsetTop;return n.createElement(n.Fragment,null,n.createElement(Ib,{open:e,className:this.props.className,style:{top:t,height:`calc(100vh - ${t})`},ref:e=>{this.stickyElement=e}},this.props.children),!this.context.hideFab&&n.createElement(Nb,{onClick:this.toggleNavMenu},n.createElement($b,{open:e})))}};Db.contextType=Oa,Db=((e,t,n,r)=>{for(var o,i=t,a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(i)||i);return i})([om],Db);const Lb=ma.div`
2022-03-05 22:33:35 +03:00
${({theme:e})=>`\n font-family: ${e.typography.fontFamily};\n font-size: ${e.typography.fontSize};\n font-weight: ${e.typography.fontWeightRegular};\n line-height: ${e.typography.lineHeight};\n color: ${e.colors.text.primary};\n display: flex;\n position: relative;\n text-align: left;\n\n -webkit-font-smoothing: ${e.typography.smoothing};\n font-smoothing: ${e.typography.smoothing};\n ${e.typography.optimizeSpeed?"text-rendering: optimizeSpeed !important":""};\n\n tap-highlight-color: rgba(0, 0, 0, 0);\n text-size-adjust: 100%;\n\n * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(255, 255, 255, 0);\n }\n`};
2022-06-13 23:34:48 +03:00
`,Mb=ma.div`
2022-03-05 22:33:35 +03:00
z-index: 1;
position: relative;
overflow: hidden;
width: calc(100% - ${e=>e.theme.sidebar.width});
2022-06-13 23:34:48 +03:00
${ha("small",!0)`
2022-03-05 22:33:35 +03:00
width: 100%;
`};
contain: layout;
2022-06-13 23:34:48 +03:00
`,Fb=ma.div`
2022-03-05 22:33:35 +03:00
background: ${({theme:e})=>e.rightPanel.backgroundColor};
position: absolute;
top: 0;
bottom: 0;
right: 0;
width: ${({theme:e})=>{if(e.rightPanel.width.endsWith("%")){const t=parseInt(e.rightPanel.width,10);return`calc((100% - ${e.sidebar.width}) * ${t/100})`}return e.rightPanel.width}};
2022-06-13 23:34:48 +03:00
${ha("medium",!0)`
2022-03-05 22:33:35 +03:00
display: none;
`};
2022-06-13 23:34:48 +03:00
`,zb=ma.div`
2022-03-05 22:33:35 +03:00
padding: 5px 0;
2022-06-13 23:34:48 +03:00
`,Ub=ma.input.attrs((()=>({className:"search-input"})))`
2022-03-05 22:33:35 +03:00
width: calc(100% - ${e=>8*e.theme.spacing.unit}px);
box-sizing: border-box;
margin: 0 ${e=>4*e.theme.spacing.unit}px;
padding: 5px ${e=>2*e.theme.spacing.unit}px 5px
${e=>4*e.theme.spacing.unit}px;
border: 0;
border-bottom: 1px solid
2022-06-13 23:34:48 +03:00
${({theme:e})=>(Ir(e.sidebar.backgroundColor)>.5?Cr:Dr)(.1,e.sidebar.backgroundColor)};
2022-03-05 22:33:35 +03:00
font-family: ${({theme:e})=>e.typography.fontFamily};
font-weight: bold;
font-size: 13px;
color: ${e=>e.theme.sidebar.textColor};
background-color: transparent;
outline: none;
2022-06-13 23:34:48 +03:00
`,Bb=ma((e=>n.createElement("svg",{className:e.className,version:"1.1",viewBox:"0 0 1000 1000",x:"0px",xmlns:"http://www.w3.org/2000/svg",y:"0px"},n.createElement("path",{d:"M968.2,849.4L667.3,549c83.9-136.5,66.7-317.4-51.7-435.6C477.1-25,252.5-25,113.9,113.4c-138.5,138.3-138.5,362.6,0,501C219.2,730.1,413.2,743,547.6,666.5l301.9,301.4c43.6,43.6,76.9,14.9,104.2-12.4C981,928.3,1011.8,893,968.2,849.4z M524.5,522c-88.9,88.7-233,88.7-321.8,0c-88.9-88.7-88.9-232.6,0-321.3c88.9-88.7,233-88.7,321.8,0C613.4,289.4,613.4,433.3,524.5,522z"})))).attrs({className:"search-icon"})`
2022-03-05 22:33:35 +03:00
position: absolute;
left: ${e=>4*e.theme.spacing.unit}px;
height: 1.8em;
width: 0.9em;
path {
fill: ${e=>e.theme.sidebar.textColor};
}
2022-06-13 23:34:48 +03:00
`,qb=ma.div`
2022-03-05 22:33:35 +03:00
padding: ${e=>e.theme.spacing.unit}px 0;
2022-06-13 23:34:48 +03:00
background-color: ${({theme:e})=>Cr(.05,e.sidebar.backgroundColor)}};
2022-03-05 22:33:35 +03:00
color: ${e=>e.theme.sidebar.textColor};
min-height: 150px;
max-height: 250px;
2022-06-13 23:34:48 +03:00
border-top: ${({theme:e})=>Cr(.1,e.sidebar.backgroundColor)}};
border-bottom: ${({theme:e})=>Cr(.1,e.sidebar.backgroundColor)}};
2022-03-05 22:33:35 +03:00
margin-top: 10px;
line-height: 1.4;
font-size: 0.9em;
li {
background-color: inherit;
}
2022-06-13 23:34:48 +03:00
${Oy} {
2022-03-05 22:33:35 +03:00
padding-top: 6px;
padding-bottom: 6px;
&:hover,
&.active {
2022-06-13 23:34:48 +03:00
background-color: ${({theme:e})=>Cr(.1,e.sidebar.backgroundColor)};
2022-03-05 22:33:35 +03:00
}
> svg {
display: none;
}
}
2022-06-13 23:34:48 +03:00
`,Vb=ma.i`
2022-03-05 22:33:35 +03:00
position: absolute;
display: inline-block;
width: ${e=>2*e.theme.spacing.unit}px;
text-align: center;
right: ${e=>4*e.theme.spacing.unit}px;
line-height: 2em;
vertical-align: middle;
margin-right: 2px;
cursor: pointer;
font-style: normal;
color: '#666';
2022-06-13 23:34:48 +03:00
`;var Wb=Object.defineProperty,Hb=Object.getOwnPropertyDescriptor;class Yb extends n.PureComponent{constructor(e){super(e),this.activeItemRef=null,this.clear=()=>{this.setState({results:[],noResults:!1,term:"",activeItemIdx:-1}),this.props.marker.unmark()},this.handleKeyDown=e=>{if(27===e.keyCode&&this.clear(),40===e.keyCode&&(this.setState({activeItemIdx:Math.min(this.state.activeItemIdx+1,this.state.results.length-1)}),e.preventDefault()),38===e.keyCode&&(this.setState({activeItemIdx:Math.max(0,this.state.activeItemIdx-1)}),e.preventDefault()),13===e.keyCode){const e=this.state.results[this.state.activeItemIdx];if(e){const t=this.props.getItemById(e.meta);t&&this.props.onActivate(t)}}},this.search=e=>{const{minCharacterLengthToInitSearch:t}=this.context,n=e.target.value;n.length<t?this.clearResults(n):this.setState({term:n},(()=>this.searchCallback(this.state.term)))},this.state={results:[],noResults:!1,term:"",activeItemIdx:-1}}clearResults(e){this.setState({results:[],noResults:!1,term:e}),this.props.marker.unmark()}setResults(e,t){this.setState({results:e,noResults:0===e.length}),this.props.marker.mark(t)}searchCallback(e){this.props.search.search(e).then((t=>{this.setResults(t,e)}))}render(){const{activeItemIdx:e}=this.state,t=this.state.results.map((e=>({item:this.props.getItemById(e.meta),score:e.score})));return t.sort(((e,t)=>t.score-e.score)),n.createElement(zb,{role:"search"},this.state.term&&n.createElement(Vb,{onClick:this.clear},"×"),n.createElement(Bb,null),n.createElement(Ub,{value:this.state.term,onKeyDown:this.handleKeyDown,placeholder:"Search...","aria-label":"Search",type:"text",onChange:this.search}),t.length>0&&n.createElement(fd,{options:{wheelPropagation:!1}},n.createElement(qb,{"data-role":"search:results"},t.map(((t,r)=>n.createElement(wb,{item:Object.create(t.item,{active:{value:r===e}}),onActivate:this.props.onActivate,withoutChildren:!0,key:t.item.id,"data-role":"search:result"}))))),this.state.term&&this.state.noResults?n.createElement(qb,{"data-role":"search:results"},lo("noResultsFound")):null)}}Yb.contextType=Oa,((e,t,n,r)=>{for(var o,i=Hb(t,n),a=e.length-1;a>=0;a--)(o=e[a])&&(i=o(t,n,i)||i);i&&Wb(t,n,i)})([Ra.bind,(0,Ra.debounce)(400)],Yb.prototype,"searchCallback");class Gb extends n.Component{componentDidMount(){this.props.store.onDidMount()}componentWillUnmount(){this.props.store.dispose()}render(){const{store:{spec:e,menu:t,options:r,search:o,marker:i}}=this.props,a=this.props.store;return n.createElement(fa,{theme:r.theme},n.createElement(xu,{value:a},n.createElement(Sa,{value:r},n.createElement(Lb,{className:"redoc-wrap"},n.createElement(Db,{menu:t,className:"menu-content"},n.createElement(cy,{info:e.info}),!r.disableSearch&&n.createElement(Yb,{search:o,marker:i,getItemById:t.getItemById,onActivate:t.activateAndScroll})||null,n.createElement(Ab,{menu:t})),n.createElement(Mb,{className:"api-content"},n.createElement(iy,{store:a}),n.createElement(lb,{items:t.items})),n.createElement(Fb,null)))))}}Gb.propTypes={store:_a.instanceOf(Jg).isRequired};const Kb=function(e){const{spec:t,specUrl:o,options:i={},onLoaded:a}=e,s=bo(i.hideLoading,!1),l=new xo(i);if(void 0!==l.nonce)try{r.nc=l.nonce}catch(e){}return n.createElement(va,null,n.createElement(_u,{spec:t,specUrl:o,options:i,onLoaded:a},(({loading:e,store:t})=>e?s?null:n.createElement(ka,{color:l.theme.colors.primary.main}):n.createElement(Gb,{store:t}))))};var Qb=Object.defineProperty,Xb=Object.getOwnPropertySymbols,Jb=Object.prototype.hasOwnProperty,Zb=Object.prototype.propertyIsEnumerable,ew=(e,t,n)=>t in e?Qb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,tw=(e,t)=>{for(var n in t||(t={}))Jb.call(t,n)&&ew(e,n,t[n]);if(Xb)for(var n of Xb(t))Zb.call(t,n)&&ew(e,n,t[n]);return e};Nt({useProxies:"ifavailable"});const nw="2.0.0-rc.72",rw="5f2d05f";function ow(e){const t=function(e){const t={},n=e.attributes;for(let e=0;e<n.length;e++){const r=n[e];t[r.name]=r.value}return t}(e),n={};for(const e in t){const r=e.replace(/-(.)/g,((e,t)=>t.toUpperCase())),o=t[e];n[r]="theme"===e?JSON.parse(o):o}return n}function iw(e,t={},
2022-01-19 01:43:13 +03:00
//# sourceMappingURL=redoc.standalone.js.map</script><style data-styled="true" data-styled-version="5.3.0">.juinod{width:calc(100% - 40%);padding:0 40px;}/*!sc*/
@media print,screen and (max-width:75rem){.juinod{width:100%;padding:40px 40px;}}/*!sc*/
.bJcDWV{width:calc(100% - 40%);padding:0 40px;}/*!sc*/
@media print,screen and (max-width:75rem){.bJcDWV{width:100%;padding:0px 40px;}}/*!sc*/
data-styled.g4[id="sc-hKFxyN"]{content:"juinod,bJcDWV,"}/*!sc*/
.jlMQbh{padding:40px 0;}/*!sc*/
.jlMQbh:last-child{min-height:calc(100vh + 1px);}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.sc-eCApnc > .sc-eCApnc:last-child{min-height:initial;}/*!sc*/
2022-01-19 01:43:13 +03:00
@media print,screen and (max-width:75rem){.jlMQbh{padding:0;}}/*!sc*/
.liLqNm{padding:40px 0;position:relative;}/*!sc*/
.liLqNm:last-child{min-height:calc(100vh + 1px);}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.sc-eCApnc > .sc-eCApnc:last-child{min-height:initial;}/*!sc*/
2022-01-19 01:43:13 +03:00
@media print,screen and (max-width:75rem){.liLqNm{padding:0;}}/*!sc*/
.liLqNm:not(:last-of-type):after{position:absolute;bottom:0;width:100%;display:block;content:'';border-bottom:1px solid rgba(0,0,0,0.2);}/*!sc*/
data-styled.g5[id="sc-eCApnc"]{content:"jlMQbh,liLqNm,"}/*!sc*/
.gBjRyf{width:40%;color:#ffffff;background-color:#263238;padding:0 40px;}/*!sc*/
@media print,screen and (max-width:75rem){.gBjRyf{width:100%;padding:40px 40px;}}/*!sc*/
data-styled.g6[id="sc-jSFjdj"]{content:"gBjRyf,"}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.gcushC{background-color:#263238;}/*!sc*/
data-styled.g7[id="sc-gKAaRy"]{content:"gcushC,"}/*!sc*/
2022-01-19 01:43:13 +03:00
.gLxhOh{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;padding:0;}/*!sc*/
@media print,screen and (max-width:75rem){.gLxhOh{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g8[id="sc-iCoGMd"]{content:"gLxhOh,"}/*!sc*/
2022-06-13 23:34:48 +03:00
.bpZWeL{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.85714em;line-height:1.6em;color:#333333;}/*!sc*/
data-styled.g9[id="sc-fujyAs"]{content:"bpZWeL,"}/*!sc*/
.eftmgB{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.57143em;line-height:1.6em;color:#333333;margin:0 0 20px;}/*!sc*/
data-styled.g10[id="sc-pNWdM"]{content:"eftmgB,"}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.iXmHCl{color:#ffffff;}/*!sc*/
data-styled.g12[id="sc-kEqXSa"]{content:"iXmHCl,"}/*!sc*/
.eONCmm{border-bottom:1px solid rgba(38,50,56,0.3);margin:1em 0 1em 0;color:rgba(38,50,56,0.5);font-weight:normal;text-transform:uppercase;font-size:0.929em;line-height:20px;}/*!sc*/
data-styled.g13[id="sc-iqAclL"]{content:"eONCmm,"}/*!sc*/
.iUxAWq{cursor:pointer;margin-left:-20px;padding:0;line-height:1;width:20px;display:inline-block;outline:0;}/*!sc*/
.iUxAWq:before{content:'';width:15px;height:15px;background-size:contain;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle;}/*!sc*/
h1:hover > .sc-crzoAE::before,h2:hover > .iUxAWq::before,.iUxAWq:hover::before{visibility:visible;}/*!sc*/
data-styled.g14[id="sc-crzoAE"]{content:"iUxAWq,"}/*!sc*/
2022-06-13 23:34:48 +03:00
.dvcDrG{height:18px;width:18px;min-width:18px;vertical-align:middle;float:right;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/
.izTTdU{height:20px;width:20px;min-width:20px;vertical-align:middle;float:right;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(0);-ms-transform:rotateZ(0);transform:rotateZ(0);}/*!sc*/
.izTTdU polygon{fill:black;}/*!sc*/
.iPqByX{height:1.3em;width:1.3em;min-width:1.3em;vertical-align:middle;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/
.dqYXmg{height:1.5em;width:1.5em;min-width:1.5em;vertical-align:middle;float:left;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/
.dqYXmg polygon{fill:#1d8127;}/*!sc*/
.hGHhhO{height:18px;width:18px;min-width:18px;vertical-align:middle;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/
.dVWHLw{height:1.5em;width:1.5em;min-width:1.5em;vertical-align:middle;float:left;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;-webkit-transform:rotateZ(-90deg);-ms-transform:rotateZ(-90deg);transform:rotateZ(-90deg);}/*!sc*/
.dVWHLw polygon{fill:#d41f1c;}/*!sc*/
data-styled.g15[id="sc-dIsUp"]{content:"dvcDrG,izTTdU,iPqByX,dqYXmg,hGHhhO,dVWHLw,"}/*!sc*/
2022-01-19 01:43:13 +03:00
.iwcKgn{border-left:1px solid #7c7cbb;box-sizing:border-box;position:relative;padding:10px 10px 10px 0;}/*!sc*/
@media screen and (max-width:50rem){.iwcKgn{display:block;overflow:hidden;}}/*!sc*/
tr:first-of-type > .sc-hBMUJo,tr.last > .iwcKgn{border-left-width:0;background-position:top left;background-repeat:no-repeat;background-size:1px 100%;}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
tr:first-of-type > .sc-hBMUJo{background-image:linear-gradient( to bottom, transparent 0%, transparent 22px, #7c7cbb 22px, #7c7cbb 100% );}/*!sc*/
tr.last > .sc-hBMUJo{background-image:linear-gradient( to bottom, #7c7cbb 0%, #7c7cbb 22px, transparent 22px, transparent 100% );}/*!sc*/
tr.last + tr > .sc-hBMUJo{border-left-color:transparent;}/*!sc*/
tr.last:first-child > .sc-hBMUJo{background:none;border-left-color:transparent;}/*!sc*/
2022-01-19 01:43:13 +03:00
data-styled.g18[id="sc-hBMUJo"]{content:"iwcKgn,"}/*!sc*/
2022-06-13 23:34:48 +03:00
.cAqMTE{vertical-align:top;line-height:20px;white-space:nowrap;font-size:13px;font-family:Courier,monospace;}/*!sc*/
.cAqMTE.deprecated{-webkit-text-decoration:line-through;text-decoration:line-through;color:#707070;}/*!sc*/
data-styled.g20[id="sc-fFSPTT"]{content:"cAqMTE,"}/*!sc*/
2022-01-19 01:43:13 +03:00
.ctPuOP{border-bottom:1px solid #9fb4be;padding:10px 0;width:75%;box-sizing:border-box;}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
tr.expanded .sc-bkbkJK{border-bottom:none;}/*!sc*/
2022-01-19 01:43:13 +03:00
@media screen and (max-width:50rem){.ctPuOP{padding:0 20px;border-bottom:none;border-left:1px solid #7c7cbb;}tr.last > .sc-bkbkJK{border-left:none;}}/*!sc*/
data-styled.g21[id="sc-bkbkJK"]{content:"ctPuOP,"}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.bcnRwz{color:#7c7cbb;font-family:Courier,monospace;margin-right:10px;}/*!sc*/
.bcnRwz::before{content:'';display:inline-block;vertical-align:middle;width:10px;height:1px;background:#7c7cbb;}/*!sc*/
.bcnRwz::after{content:'';display:inline-block;vertical-align:middle;width:1px;background:#7c7cbb;height:7px;}/*!sc*/
data-styled.g22[id="sc-iemWCZ"]{content:"bcnRwz,"}/*!sc*/
2022-01-19 01:43:13 +03:00
.VCQHZ{border-collapse:separate;border-radius:3px;font-size:14px;border-spacing:0;width:100%;}/*!sc*/
.VCQHZ > tr{vertical-align:middle;}/*!sc*/
@media screen and (max-width:50rem){.VCQHZ{display:block;}.VCQHZ > tr,.VCQHZ > tbody > tr{display:block;}}/*!sc*/
@media screen and (max-width:50rem) and (-ms-high-contrast:none){.VCQHZ td{float:left;width:100%;}}/*!sc*/
.VCQHZ .sc-dIvrsQ,.VCQHZ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ,.VCQHZ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ{margin:1em;margin-right:0;background:#fafafa;}/*!sc*/
.VCQHZ .sc-dIvrsQ .sc-dIvrsQ,.VCQHZ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ,.VCQHZ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ .sc-dIvrsQ{background:#ffffff;}/*!sc*/
data-styled.g24[id="sc-hHEiqL"]{content:"VCQHZ,"}/*!sc*/
Chat refactor + persistent backing chat users (#1163) * First pass at chat user registration and validation * Disable chat if the user is disabled/blocked or the server hits max connections * Handle dropping sockets if chat is disabled * Fix origin in automated chat test * Work for updated chat moderation * Chat message markdown rendering and fix tests * Put /api/chat behind a chat user access token. Closes #1085 * Reject blocked username changes * More WIP moderation * Defer configuring chat until we know if it is enabled. Closes #1135 * chat user blocking. Closes #1096 * Add tests around user access for #1096 * Add external integration chat message API + update integration auth middleware to pass along integration name. Closes #1092 * Delete old chat messages from db as to not hold on to excessive data. Closes #1152 * Add schema migration for messages. Closes #1155 * Commit updated API documentation * Add chat load test * Shared db mutex and db optimizations * Simplify past display name handling * Use a new test db for each test run * Wire up the external messages actions + add tests for them * Move access tokens to be actual users * Run message pruning at launch + fix comparison * Do not return API users in disabled users response * Fix incorrect highlighting. Closes #1160 * Consolidate user table statements * Set the max process connection limit to 70% of maximum * Fix wrong old display name being returned in name change event * Delete the old chat server files * Wire back up the webhooks * Remove unused * Invalidate user cache on changes * Do not send rendered body as RawBody * Some cleanup * Standardize names for external API users to ExternalAPIUser * Do not log token * Checkout branch when building admin for testing * Bundle in dev admin for testing * Some cleanup * Cleanup js logs * Cleanup and standardize event names * Clean up some logging * Update API spec. Closes #1133 * Commit updated API documentation * Change paths to be better named * Commit updated API documentation * Update admin bundle * Fix duplicate event name * Rename scope var * Update admin bundle * Move connected clients controller into admin package * Fix collecting usernames for autocomplete purposes * No longer generate username when it is empty * Sort clients and users by timestamp * Move file to admin controller package * Swap, so the comments stay correct Co-authored-by: Jannik <jannik@outlook.com> * Use explicit type alias Co-authored-by: Jannik <jannik@outlook.com> * Remove commented code. Co-authored-by: Jannik <jannik@outlook.com> * Cleanup test * Remove some extra logging * Add some clarity * Update dev instance of admin for testing * Consolidate lines Co-authored-by: Jannik <jannik@outlook.com> * Remove commented unused vars Co-authored-by: Jannik <jannik@outlook.com> * Until needed do not return IP address with client list * Fix typo of wrong var * Typo led to a bad test. Fix typo and fix test. * Guard against the socket reconnecting on error if previously set to shutdown * Do not log access tokens * Return success message on enable/disable user * Clean up some inactionable error messages. Sent ban message. Sort banned users. * fix styling for when chat is completely disabled * Unused * guard against nil clients * Update dev admin bundle * Do not unhide messages when unblocking user just to be safe. Send removal action from the controller * Add convinience function for getting active connections for a single user * Lock db on these mutations * Cleanup force disconnect using GetClientsForUser and capture client reference explicitly * No longer re-showing banned user messages for safety. Removing this test. * Remove no longer needed comment * Tweaks to forbidden username handling. - Standardize naming to not use "block" but "forbidden" instead. - Pass array over the wire instead of string. - Add API test - Fix default list incorrectly being appended to custom list. * Logging cleanup * Update dev admin bundle * Add an artificial delay in order to visually see message being hidden when testing * Remove the user cache as it is a premature optimization * When connected to chat let the user know their current user details to sync the username in the UI * On connected send current display name back to client. - Move name change out of chat component. - Add additional event type constants. * Fix broken workflow due to typo * Troubleshoot workflow * Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181) * Bump htm from 3.0.4 to 3.1.0 in /build/javascript Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0. - [Release notes](https://github.com/developit/htm/releases) - [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0) --- updated-dependencies: - dependency-name: htm dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Run npm run build and update libraries Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabe Kangas <gabek@real-ity.com> * Commit updated Javascript packages * Re-send current user info when a rejected name change takes place * All socket writes should be through the send chan and not directly * Seed the random generator * Add keys and indexes to users table * a util to generate consistent emoji markup * console clean up * mod tidy * Commit updated API documentation * Handle the max payload size of a socket message. - Only close socket if x2 greater than the max size. - Send the user a message if a message is too large. - Surface the max size in bytes in the config. * Update admin bundle * Force all events to be sent in their own socket message and do not concatinate in a single message * Update chat embed to register for access token * Use a different access token for embed chat * Update the chat message bubble background color to be bolder * add base tag to open links in new window, closes #1220 * Support text input of :emoji: in chat (#1190) * Initial implementation of emoji injection * fix bookkeeping with multiple emoji * make the emoji lookup case-insensitive * try another solution for Caretposition * add title to emojis minor refactoring * bind moji injection to InputKeyUp * simplify the code replace all found emojis * inject emoji if the modifer is released earlier * more efficient emoji tag search * use json emoji.emoji as url * use createEmojiMarkup() * move emojify() to chat.js * emojify on paste * cleanup emoji titles in paste * update inputText in InputKeyup * mark emoji titles with 2*zwnj this way paste cleanup will not interfere with text which include zwnj * emoji should not change the inputText * Do not show join messages when chat is offline. Closes #1224 - Show stream starting/ending messages in chat. - When stream starts show everyone the welcome message. * Force scrolling chat to bottom after history is populated regardless of scroll position. Closes https://github.com/owncast/owncast/issues/1222 * use maxSocketPayloadSize to calculate total bytes of message payload (#1221) * utilize maxSocketPayloadSize from config; update chatInput to calculate based on that value instead of text value; remove usage of inputText for counting * add a buffer to account for entire websocket payload for message char counting; trim nbsp;'s from ends of messages when calculating count Co-authored-by: Gabe Kangas <gabek@real-ity.com> Co-authored-by: Owncast <owncast@owncast.online> Co-authored-by: Jannik <jannik@outlook.com> Co-authored-by: Ginger Wong <omqmail@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Meisam <39205857+MFTabriz@users.noreply.github.com>
2021-07-20 05:22:29 +03:00
.jaCkRh{font-size:0.9em;font-family:Courier,monospace;}/*!sc*/
.jaCkRh::after{content:' [';}/*!sc*/
data-styled.g28[id="sc-bCwfaz"]{content:"jaCkRh,"}/*!sc*/
.kHKMOg{font-size:0.9em;font-family:Courier,monospace;}/*!sc*/
.kHKMOg::after{content:']';}/*!sc*/
data-styled.g29[id="sc-iwajpm"]{content:"kHKMOg,"}/*!sc*/
2022-06-13 23:34:48 +03:00
.gxohHo > ul{list-style:none;padding:0;margin:0;margin:0 -5px;}/*!sc*/
.gxohHo > ul > li{padding:5px 10px;display:inline-block;background-color:#11171a;border-bottom:1px solid rgba(0,0,0,0.5);cursor:pointer;text-align:center;outline:none;color:#ccc;margin:0 5px 5px 5px;border:1px solid #07090b;border-radius:5px;min-width:60px;font-size:0.9em;font-weight:bold;}/*!sc*/
.gxohHo > ul > li.react-tabs__tab--selected{color:#333333;background:#ffffff;}/*!sc*/
.gxohHo > ul > li.react-tabs__tab--selected:focus{outline:auto;}/*!sc*/
.gxohHo > ul > li:only-child{-webkit-flex:none;-ms-flex:none;flex:none;min-width:100px;}/*!sc*/
.gxohHo > ul > li.tab-success{color:#1d8127;}/*!sc*/
.gxohHo > ul > li.tab-redirect{color:#ffa500;}/*!sc*/
.gxohHo > ul > li.tab-info{color:#87ceeb;}/*!sc*/
.gxohHo > ul > li.tab-error{color:#d41f1c;}/*!sc*/
.gxohHo > .react-tabs__tab-panel{background:#11171a;}/*!sc*/
.gxohHo > .react-tabs__tab-panel > div,.gxohHo > .react-tabs__tab-panel > pre{padding:20px;margin:0;}/*!sc*/
.gxohHo > .react-tabs__tab-panel > div > pre{padding:0;}/*!sc*/
data-styled.g30[id="sc-cxNHIi"]{content:"gxohHo,"}/*!sc*/
.jCdxGr code[class*='language-'],.jCdxGr pre[class*='language-']{text-shadow:0 -0.1em 0.2em black;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;}/*!sc*/
@media print{.jCdxGr code[class*='language-'],.jCdxGr pre[class*='language-']{text-shadow:none;}}/*!sc*/
.jCdxGr pre[class*='language-']{padding:1em;margin:0.5em 0;overflow:auto;}/*!sc*/
.jCdxGr .token.comment,.jCdxGr .token.prolog,.jCdxGr .token.doctype,.jCdxGr .token.cdata{color:hsl(30,20%,50%);}/*!sc*/
.jCdxGr .token.punctuation{opacity:0.7;}/*!sc*/
.jCdxGr .namespace{opacity:0.7;}/*!sc*/
.jCdxGr .token.property,.jCdxGr .token.tag,.jCdxGr .token.number,.jCdxGr .token.constant,.jCdxGr .token.symbol{color:#4a8bb3;}/*!sc*/
.jCdxGr .token.boolean{color:#e64441;}/*!sc*/
.jCdxGr .token.selector,.jCdxGr .token.attr-name,.jCdxGr .token.string,.jCdxGr .token.char,.jCdxGr .token.builtin,.jCdxGr .token.inserted{color:#a0fbaa;}/*!sc*/
.jCdxGr .token.selector + a,.jCdxGr .token.attr-name + a,.jCdxGr .token.string + a,.jCdxGr .token.char + a,.jCdxGr .token.builtin + a,.jCdxGr .token.inserted + a,.jCdxGr .token.selector + a:visited,.jCdxGr .token.attr-name + a:visited,.jCdxGr .token.string + a:visited,.jCdxGr .token.char + a:visited,.jCdxGr .token.builtin + a:visited,.jCdxGr .token.inserted + a:visited{color:#4ed2ba;-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.jCdxGr .token.property.string{color:white;}/*!sc*/
.jCdxGr .token.operator,.jCdxGr .token.entity,.jCdxGr .token.url,.jCdxGr .token.variable{color:hsl(40,90%,60%);}/*!sc*/
.jCdxGr .token.atrule,.jCdxGr .token.attr-value,.jCdxGr .token.keyword{color:hsl(350,40%,70%);}/*!sc*/
.jCdxGr .token.regex,.jCdxGr .token.important{color:#e90;}/*!sc*/
.jCdxGr .token.important,.jCdxGr .token.bold{font-weight:bold;}/*!sc*/
.jCdxGr .token.italic{font-style:italic;}/*!sc*/
.jCdxGr .token.entity{cursor:help;}/*!sc*/
.jCdxGr .token.deleted{color:red;}/*!sc*/
data-styled.g32[id="sc-iJCRrE"]{content:"jCdxGr,"}/*!sc*/
.hMPeqJ{opacity:0.7;-webkit-transition:opacity 0.3s ease;transition:opacity 0.3s ease;text-align:right;}/*!sc*/
.hMPeqJ:focus-within{opacity:1;}/*!sc*/
.hMPeqJ > button{background-color:transparent;border:0;color:inherit;padding:2px 10px;font-family:Roboto,sans-serif;font-size:14px;line-height:1.5em;cursor:pointer;outline:0;}/*!sc*/
.hMPeqJ > button:hover,.hMPeqJ > button:focus{background:rgba(255,255,255,0.1);}/*!sc*/
data-styled.g33[id="sc-giAqHp"]{content:"hMPeqJ,"}/*!sc*/
.leCKhp{position:relative;}/*!sc*/
data-styled.g38[id="sc-iklJeh"]{content:"leCKhp,"}/*!sc*/
.gVpQmv{position:absolute;pointer-events:none;z-index:1;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);right:8px;margin:auto;text-align:center;}/*!sc*/
.gVpQmv polyline{color:white;}/*!sc*/
data-styled.g39[id="sc-jJMGnK"]{content:"gVpQmv,"}/*!sc*/
.bycQNU{box-sizing:border-box;min-width:100px;outline:none;display:inline-block;border-radius:2px;border:1px solid rgba(38,50,56,0.5);vertical-align:bottom;padding:2px 0px 2px 6px;position:relative;width:auto;background:white;color:#263238;font-family:Montserrat,sans-serif;font-size:0.929em;line-height:1.5em;cursor:pointer;-webkit-transition:border 0.25s ease,color 0.25s ease,box-shadow 0.25s ease;transition:border 0.25s ease,color 0.25s ease,box-shadow 0.25s ease;}/*!sc*/
.bycQNU label{box-sizing:border-box;min-width:100px;outline:none;display:inline-block;font-family:Montserrat,sans-serif;color:#333333;vertical-align:bottom;width:auto;text-transform:none;padding:0 22px 0 4px;font-size:0.929em;line-height:1.5em;font-family:inherit;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;}/*!sc*/
.bycQNU .dropdown-select{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;color:#333333;line-height:inherit;font-family:inherit;}/*!sc*/
.bycQNU:hover,.bycQNU:focus-within{border:1px solid #32329f;color:#32329f;box-shadow:0px 0px 0px 1px #32329f;}/*!sc*/
data-styled.g40[id="sc-hiKfDv"]{content:"bycQNU,"}/*!sc*/
.eKyrDP{margin-left:10px;text-transform:none;font-size:0.929em;color:black;}/*!sc*/
data-styled.g42[id="sc-cBoqAE"]{content:"eKyrDP,"}/*!sc*/
.QGruV{font-family:Roboto,sans-serif;font-weight:400;line-height:1.5em;}/*!sc*/
.QGruV p:last-child{margin-bottom:0;}/*!sc*/
.QGruV h1{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.85714em;line-height:1.6em;color:#32329f;margin-top:0;}/*!sc*/
.QGruV h2{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.57143em;line-height:1.6em;color:#333333;}/*!sc*/
.QGruV code{color:#e53935;background-color:rgba(38,50,56,0.05);font-family:Courier,monospace;border-radius:2px;border:1px solid rgba(38,50,56,0.1);padding:0 5px;font-size:13px;font-weight:400;word-break:break-word;}/*!sc*/
.QGruV pre{font-family:Courier,monospace;white-space:pre;background-color:#11171a;color:white;padding:20px;overflow-x:auto;line-height:normal;border-radius:0px;border:1px solid rgba(38,50,56,0.1);}/*!sc*/
.QGruV pre code{background-color:transparent;color:white;padding:0;}/*!sc*/
.QGruV pre code:before,.QGruV pre code:after{content:none;}/*!sc*/
.QGruV blockquote{margin:0;margin-bottom:1em;padding:0 15px;color:#777;border-left:4px solid #ddd;}/*!sc*/
.QGruV img{max-width:100%;box-sizing:content-box;}/*!sc*/
.QGruV ul,.QGruV ol{padding-left:2em;margin:0;margin-bottom:1em;}/*!sc*/
.QGruV ul ul,.QGruV ol ul,.QGruV ul ol,.QGruV ol ol{margin-bottom:0;margin-top:0;}/*!sc*/
.QGruV table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;border-spacing:0;margin-top:1.5em;margin-bottom:1.5em;}/*!sc*/
.QGruV table tr{background-color:#fff;border-top:1px solid #ccc;}/*!sc*/
.QGruV table tr:nth-child(2n){background-color:#fafafa;}/*!sc*/
.QGruV table th,.QGruV table td{padding:6px 13px;border:1px solid #ddd;}/*!sc*/
.QGruV table th{text-align:left;font-weight:bold;}/*!sc*/
.QGruV .share-link{cursor:pointer;margin-left:-20px;padding:0;line-height:1;width:20px;display:inline-block;outline:0;}/*!sc*/
.QGruV .share-link:before{content:'';width:15px;height:15px;background-size:contain;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle;}/*!sc*/
.QGruV h1:hover > .share-link::before,.QGruV h2:hover > .share-link::before,.QGruV .share-link:hover::before{visibility:visible;}/*!sc*/
.QGruV a{-webkit-text-decoration:auto;text-decoration:auto;color:#32329f;}/*!sc*/
.QGruV a:visited{color:#32329f;}/*!sc*/
.QGruV a:hover{color:#6868cf;-webkit-text-decoration:auto;text-decoration:auto;}/*!sc*/
.lhENGb{font-family:Roboto,sans-serif;font-weight:400;line-height:1.5em;}/*!sc*/
.lhENGb p:last-child{margin-bottom:0;}/*!sc*/
.lhENGb p:first-child{margin-top:0;}/*!sc*/
.lhENGb p:last-child{margin-bottom:0;}/*!sc*/
.lhENGb h1{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.85714em;line-height:1.6em;color:#32329f;margin-top:0;}/*!sc*/
.lhENGb h2{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.57143em;line-height:1.6em;color:#333333;}/*!sc*/
.lhENGb code{color:#e53935;background-color:rgba(38,50,56,0.05);font-family:Courier,monospace;border-radius:2px;border:1px solid rgba(38,50,56,0.1);padding:0 5px;font-size:13px;font-weight:400;word-break:break-word;}/*!sc*/
.lhENGb pre{font-family:Courier,monospace;white-space:pre;background-color:#11171a;color:white;padding:20px;overflow-x:auto;line-height:normal;border-radius:0px;border:1px solid rgba(38,50,56,0.1);}/*!sc*/
.lhENGb pre code{background-color:transparent;color:white;padding:0;}/*!sc*/
.lhENGb pre code:before,.lhENGb pre code:after{content:none;}/*!sc*/
.lhENGb blockquote{margin:0;margin-bottom:1em;padding:0 15px;color:#777;border-left:4px solid #ddd;}/*!sc*/
.lhENGb img{max-width:100%;box-sizing:content-box;}/*!sc*/
.lhENGb ul,.lhENGb ol{padding-left:2em;margin:0;margin-bottom:1em;}/*!sc*/
.lhENGb ul ul,.lhENGb ol ul,.lhENGb ul ol,.lhENGb ol ol{margin-bottom:0;margin-top:0;}/*!sc*/
.lhENGb table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;border-spacing:0;margin-top:1.5em;margin-bottom:1.5em;}/*!sc*/
.lhENGb table tr{background-color:#fff;border-top:1px solid #ccc;}/*!sc*/
.lhENGb table tr:nth-child(2n){background-color:#fafafa;}/*!sc*/
.lhENGb table th,.lhENGb table td{padding:6px 13px;border:1px solid #ddd;}/*!sc*/
.lhENGb table th{text-align:left;font-weight:bold;}/*!sc*/
.lhENGb .share-link{cursor:pointer;margin-left:-20px;padding:0;line-height:1;width:20px;display:inline-block;outline:0;}/*!sc*/
.lhENGb .share-link:before{content:'';width:15px;height:15px;background-size:contain;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle;}/*!sc*/
.lhENGb h1:hover > .share-link::before,.lhENGb h2:hover > .share-link::before,.lhENGb .share-link:hover::before{visibility:visible;}/*!sc*/
.lhENGb a{-webkit-text-decoration:auto;text-decoration:auto;color:#32329f;}/*!sc*/
.lhENGb a:visited{color:#32329f;}/*!sc*/
.lhENGb a:hover{color:#6868cf;-webkit-text-decoration:auto;text-decoration:auto;}/*!sc*/
data-styled.g43[id="sc-ciSkZP"]{content:"QGruV,lhENGb,"}/*!sc*/
.eDjFAZ{font-family:Roboto,sans-serif;font-weight:400;line-height:1.5em;}/*!sc*/
.eDjFAZ p:last-child{margin-bottom:0;}/*!sc*/
.eDjFAZ p:first-child{margin-top:0;}/*!sc*/
.eDjFAZ p:last-child{margin-bottom:0;}/*!sc*/
.eDjFAZ p{display:inline-block;}/*!sc*/
.eDjFAZ h1{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.85714em;line-height:1.6em;color:#32329f;margin-top:0;}/*!sc*/
.eDjFAZ h2{font-family:Montserrat,sans-serif;font-weight:400;font-size:1.57143em;line-height:1.6em;color:#333333;}/*!sc*/
.eDjFAZ code{color:#e53935;background-color:rgba(38,50,56,0.05);font-family:Courier,monospace;border-radius:2px;border:1px solid rgba(38,50,56,0.1);padding:0 5px;font-size:13px;font-weight:400;word-break:break-word;}/*!sc*/
.eDjFAZ pre{font-family:Courier,monospace;white-space:pre;background-color:#11171a;color:white;padding:20px;overflow-x:auto;line-height:normal;border-radius:0px;border:1px solid rgba(38,50,56,0.1);}/*!sc*/
.eDjFAZ pre code{background-color:transparent;color:white;padding:0;}/*!sc*/
.eDjFAZ pre code:before,.eDjFAZ pre code:after{content:none;}/*!sc*/
.eDjFAZ blockquote{margin:0;margin-bottom:1em;padding:0 15px;color:#777;border-left:4px solid #ddd;}/*!sc*/
.eDjFAZ img{max-width:100%;box-sizing:content-box;}/*!sc*/
.eDjFAZ ul,.eDjFAZ ol{padding-left:2em;margin:0;margin-bottom:1em;}/*!sc*/
.eDjFAZ ul ul,.eDjFAZ ol ul,.eDjFAZ ul ol,.eDjFAZ ol ol{margin-bottom:0;margin-top:0;}/*!sc*/
.eDjFAZ table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;border-spacing:0;margin-top:1.5em;margin-bottom:1.5em;}/*!sc*/
.eDjFAZ table tr{background-color:#fff;border-top:1px solid #ccc;}/*!sc*/
.eDjFAZ table tr:nth-child(2n){background-color:#fafafa;}/*!sc*/
.eDjFAZ table th,.eDjFAZ table td{padding:6px 13px;border:1px solid #ddd;}/*!sc*/
.eDjFAZ table th{text-align:left;font-weight:bold;}/*!sc*/
.eDjFAZ .share-link{cursor:pointer;margin-left:-20px;padding:0;line-height:1;width:20px;display:inline-block;outline:0;}/*!sc*/
.eDjFAZ .share-link:before{content:'';width:15px;height:15px;background-size:contain;background-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMCIgeT0iMCIgd2lkdGg9IjUxMiIgaGVpZ2h0PSI1MTIiIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA1MTIgNTEyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBmaWxsPSIjMDEwMTAxIiBkPSJNNDU5LjcgMjMzLjRsLTkwLjUgOTAuNWMtNTAgNTAtMTMxIDUwLTE4MSAwIC03LjktNy44LTE0LTE2LjctMTkuNC0yNS44bDQyLjEtNDIuMWMyLTIgNC41LTMuMiA2LjgtNC41IDIuOSA5LjkgOCAxOS4zIDE1LjggMjcuMiAyNSAyNSA2NS42IDI0LjkgOTAuNSAwbDkwLjUtOTAuNWMyNS0yNSAyNS02NS42IDAtOTAuNSAtMjQuOS0yNS02NS41LTI1LTkwLjUgMGwtMzIuMiAzMi4yYy0yNi4xLTEwLjItNTQuMi0xMi45LTgxLjYtOC45bDY4LjYtNjguNmM1MC01MCAxMzEtNTAgMTgxIDBDNTA5LjYgMTAyLjMgNTA5LjYgMTgzLjQgNDU5LjcgMjMzLjR6TTIyMC4zIDM4Mi4ybC0zMi4yIDMyLjJjLTI1IDI0LjktNjUuNiAyNC45LTkwLjUgMCAtMjUtMjUtMjUtNjUuNiAwLTkwLjVsOTAuNS05MC41YzI1LTI1IDY1LjUtMjUgOTAuNSAwIDcuOCA3LjggMTIuOSAxNy4yIDE1LjggMjcuMSAyLjQtMS40IDQuOC0yLjUgNi44LTQuNWw0Mi4xLTQyYy01LjQtOS4yLTExLjYtMTgtMTkuNC0yNS44IC01MC01MC0xMzEtNTAtMTgxIDBsLTkwLjUgOTAuNWMtNTAgNTAtNTAgMTMxIDAgMTgxIDUwIDUwIDEzMSA1MCAxODEgMGw2OC42LTY4LjZDMjc0LjYgMzk1LjEgMjQ2LjQgMzkyLjMgMjIwLjMgMzgyLjJ6Ii8+PC9zdmc+Cg==');opacity:0.5;visibility:hidden;display:inline-block;vertical-align:middle;}/*!sc*/
.eDjFAZ h1:hover > .share-link::before,.eDjFAZ h2:hover > .share-link::before,.eDjFAZ .share-link:hover::before{visibility:visible;}/*!sc*/
.eDjFAZ a{-webkit-text-decoration:auto;text-decoration:auto;color:#32329f;}/*!sc*/
.eDjFAZ a:visited{color:#32329f;}/*!sc*/
.eDjFAZ a:hover{color:#6868cf;-webkit-text-decoration:auto;text-decoration:auto;}/*!sc*/
data-styled.g44[id="sc-jcwpoC"]{content:"eDjFAZ,"}/*!sc*/
.UksDl{position:relative;}/*!sc*/
data-styled.g45[id="sc-carFqZ"]{content:"UksDl,"}/*!sc*/
.esZIbL:hover > .sc-giAqHp{opacity:1;}/*!sc*/
data-styled.g50[id="sc-jNnpgg"]{content:"esZIbL,"}/*!sc*/
.gyljjx{font-family:Courier,monospace;font-size:13px;white-space:pre;contain:content;overflow-x:auto;}/*!sc*/
.gyljjx .redoc-json code > .collapser{display:none;pointer-events:none;}/*!sc*/
.gyljjx .callback-function{color:gray;}/*!sc*/
.gyljjx .collapser:after{content:'-';cursor:pointer;}/*!sc*/
.gyljjx .collapsed > .collapser:after{content:'+';cursor:pointer;}/*!sc*/
.gyljjx .ellipsis:after{content:' … ';}/*!sc*/
.gyljjx .collapsible{margin-left:2em;}/*!sc*/
.gyljjx .hoverable{padding-top:1px;padding-bottom:1px;padding-left:2px;padding-right:2px;border-radius:2px;}/*!sc*/
.gyljjx .hovered{background-color:rgba(235,238,249,1);}/*!sc*/
.gyljjx .collapser{background-color:transparent;border:0;color:#fff;font-family:Courier,monospace;font-size:13px;padding-right:6px;padding-left:6px;padding-top:0;padding-bottom:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;width:15px;height:15px;position:absolute;top:4px;left:-1.5em;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-select:none;padding:2px;}/*!sc*/
.gyljjx .collapser:focus{outline-color:#fff;outline-style:dotted;outline-width:1px;}/*!sc*/
.gyljjx ul{list-style-type:none;padding:0px;margin:0px 0px 0px 26px;}/*!sc*/
.gyljjx li{position:relative;display:block;}/*!sc*/
.gyljjx .hoverable{display:inline-block;}/*!sc*/
.gyljjx .selected{outline-style:solid;outline-width:1px;outline-style:dotted;}/*!sc*/
.gyljjx .collapsed > .collapsible{display:none;}/*!sc*/
.gyljjx .ellipsis{display:none;}/*!sc*/
.gyljjx .collapsed > .ellipsis{display:inherit;}/*!sc*/
data-styled.g51[id="sc-dPaNzc"]{content:"gyljjx,"}/*!sc*/
.kQSIAz{padding:0.9em;background-color:rgba(38,50,56,0.4);margin:0 0 10px 0;display:block;font-family:Montserrat,sans-serif;font-size:0.929em;line-height:1.5em;}/*!sc*/
data-styled.g52[id="sc-bBjRSN"]{content:"kQSIAz,"}/*!sc*/
.hlhNtL{font-family:Montserrat,sans-serif;font-size:12px;position:absolute;z-index:1;top:-11px;left:12px;font-weight:600;color:rgba(255,255,255,0.7);}/*!sc*/
data-styled.g53[id="sc-cOifOu"]{content:"hlhNtL,"}/*!sc*/
.jojbRz{position:relative;}/*!sc*/
data-styled.g54[id="sc-Arkif"]{content:"jojbRz,"}/*!sc*/
.hLNtis{margin:0 0 10px 0;display:block;background-color:rgba(38,50,56,0.4);border:none;padding:0.9em 1.6em 0.9em 0.9em;box-shadow:none;}/*!sc*/
.hLNtis label{color:#ffffff;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-size:1em;text-transform:none;border:none;}/*!sc*/
.hLNtis:hover,.hLNtis:focus-within{border:none;box-shadow:none;background-color:rgba(38,50,56,0.7);}/*!sc*/
data-styled.g55[id="sc-khIgEk"]{content:"hLNtis,"}/*!sc*/
.dSaTNC{margin-top:15px;}/*!sc*/
data-styled.g57[id="sc-jgPyTC"]{content:"dSaTNC,"}/*!sc*/
.hTttpy button{background-color:transparent;border:0;outline:0;font-size:13px;font-family:Courier,monospace;cursor:pointer;padding:0;color:#333333;}/*!sc*/
.hTttpy button:focus{font-weight:600;}/*!sc*/
.hTttpy .sc-dIsUp{height:1.1em;width:1.1em;}/*!sc*/
.hTttpy .sc-dIsUp polygon{fill:#666;}/*!sc*/
data-styled.g58[id="sc-gSYDnn"]{content:"hTttpy,"}/*!sc*/
.jWaWWE{vertical-align:middle;font-size:13px;line-height:20px;}/*!sc*/
data-styled.g59[id="sc-laZMeE"]{content:"jWaWWE,"}/*!sc*/
.jrLlAa{color:rgba(102,102,102,0.9);}/*!sc*/
data-styled.g60[id="sc-iNiQyp"]{content:"jrLlAa,"}/*!sc*/
.cThoNa{color:#666;}/*!sc*/
data-styled.g61[id="sc-jffHpj"]{content:"cThoNa,"}/*!sc*/
.dLCGMn{vertical-align:middle;font-size:13px;line-height:20px;}/*!sc*/
data-styled.g63[id="sc-oeezt"]{content:"dLCGMn,"}/*!sc*/
.hIkHYw{color:#d41f1c;font-size:0.9em;font-weight:normal;margin-left:20px;line-height:1;}/*!sc*/
data-styled.g64[id="sc-hhIiOg"]{content:"hIkHYw,"}/*!sc*/
.gBTJlj{padding-left:10px;}/*!sc*/
data-styled.g77[id="sc-hmbstg"]{content:"gBTJlj,"}/*!sc*/
.dPrSxx:after{content:' and ';font-weight:normal;}/*!sc*/
.dPrSxx:last-child:after{content:none;}/*!sc*/
.dPrSxx a{-webkit-text-decoration:auto;text-decoration:auto;color:#32329f;}/*!sc*/
.dPrSxx a:visited{color:#32329f;}/*!sc*/
.dPrSxx a:hover{color:#6868cf;-webkit-text-decoration:auto;text-decoration:auto;}/*!sc*/
data-styled.g82[id="sc-dsXzNU"]{content:"dPrSxx,"}/*!sc*/
.fcvuS{white-space:nowrap;}/*!sc*/
.fcvuS:after{content:' or ';white-space:pre;}/*!sc*/
.fcvuS:last-child:after,.fcvuS:only-child:after{content:none;}/*!sc*/
.fcvuS a{-webkit-text-decoration:auto;text-decoration:auto;color:#32329f;}/*!sc*/
.fcvuS a:visited{color:#32329f;}/*!sc*/
.fcvuS a:hover{color:#6868cf;-webkit-text-decoration:auto;text-decoration:auto;}/*!sc*/
data-styled.g83[id="sc-daBunf"]{content:"fcvuS,"}/*!sc*/
.bhDyou{-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;cursor:pointer;}/*!sc*/
data-styled.g84[id="sc-jUfyBS"]{content:"bhDyou,"}/*!sc*/
.ccffaZ{width:75%;text-overflow:ellipsis;border-radius:4px;overflow:hidden;}/*!sc*/
@media screen and (max-width:50rem){.ccffaZ{margin-top:10px;}}/*!sc*/
data-styled.g85[id="sc-jQAxuV"]{content:"ccffaZ,"}/*!sc*/
.hZIgic{display:inline-block;margin:0;}/*!sc*/
data-styled.g86[id="sc-fuISkM"]{content:"hZIgic,"}/*!sc*/
.cvfxAX{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:1em 0;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}/*!sc*/
@media screen and (max-width:50rem){.cvfxAX{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g87[id="sc-fcmMJX"]{content:"cvfxAX,"}/*!sc*/
.fdKBSs{margin-top:0;margin-bottom:0.5em;}/*!sc*/
data-styled.g93[id="sc-dFRpbK"]{content:"fdKBSs,"}/*!sc*/
.gidAUi{border:1px solid #32329f;color:#32329f;font-weight:normal;margin-left:0.5em;padding:4px 8px 4px;display:inline-block;-webkit-text-decoration:none;text-decoration:none;cursor:pointer;}/*!sc*/
data-styled.g94[id="sc-bsatvv"]{content:"gidAUi,"}/*!sc*/
.dnRviY::before{content:'|';display:inline-block;opacity:0.5;width:15px;text-align:center;}/*!sc*/
.dnRviY:last-child::after{display:none;}/*!sc*/
data-styled.g95[id="sc-gIvpjk"]{content:"dnRviY,"}/*!sc*/
.jOrOKn{overflow:hidden;}/*!sc*/
data-styled.g96[id="sc-euEtCV"]{content:"jOrOKn,"}/*!sc*/
.bpQNnD{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-left:-15px;}/*!sc*/
data-styled.g97[id="sc-fHCHyC"]{content:"bpQNnD,"}/*!sc*/
.khncU{max-height:260px;max-width:260px;padding:2px;width:100%;display:block;}/*!sc*/
data-styled.g98[id="sc-dtLLSn"]{content:"khncU,"}/*!sc*/
.hfHzFo{text-align:center;}/*!sc*/
data-styled.g99[id="sc-dkQUaI"]{content:"hfHzFo,"}/*!sc*/
.dLUlxb{display:inline-block;}/*!sc*/
data-styled.g100[id="sc-WZYut"]{content:"dLUlxb,"}/*!sc*/
.ecAtVr{width:9ex;display:inline-block;height:13px;line-height:13px;background-color:#333;border-radius:3px;background-repeat:no-repeat;background-position:6px 4px;font-size:7px;font-family:Verdana,sans-serif;color:white;text-transform:uppercase;text-align:center;font-weight:bold;vertical-align:middle;margin-right:6px;margin-top:2px;}/*!sc*/
.ecAtVr.get{background-color:#2F8132;}/*!sc*/
.ecAtVr.post{background-color:#186FAF;}/*!sc*/
.ecAtVr.put{background-color:#95507c;}/*!sc*/
.ecAtVr.options{background-color:#947014;}/*!sc*/
.ecAtVr.patch{background-color:#bf581d;}/*!sc*/
.ecAtVr.delete{background-color:#cc3333;}/*!sc*/
.ecAtVr.basic{background-color:#707070;}/*!sc*/
.ecAtVr.link{background-color:#07818F;}/*!sc*/
.ecAtVr.head{background-color:#A23DAD;}/*!sc*/
.ecAtVr.hook{background-color:#32329f;}/*!sc*/
data-styled.g101[id="sc-ikXwFM"]{content:"ecAtVr,"}/*!sc*/
.eVBiGQ{margin:0;padding:0;}/*!sc*/
.sc-uxdHp .sc-uxdHp{font-size:0.929em;}/*!sc*/
.cxhdTN{margin:0;padding:0;display:none;}/*!sc*/
.sc-uxdHp .sc-uxdHp{font-size:0.929em;}/*!sc*/
data-styled.g102[id="sc-uxdHp"]{content:"eVBiGQ,cxhdTN,"}/*!sc*/
.jycHIP{list-style:none inside none;overflow:hidden;text-overflow:ellipsis;padding:0;}/*!sc*/
data-styled.g103[id="sc-biJonm"]{content:"jycHIP,"}/*!sc*/
.btqmKr{cursor:pointer;color:#333333;margin:0;padding:12.5px 20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;font-family:Montserrat,sans-serif;font-size:0.929em;text-transform:none;background-color:#fafafa;}/*!sc*/
.btqmKr:hover{color:#32329f;background-color:#e1e1e1;}/*!sc*/
.btqmKr .sc-dIsUp{height:1.5em;width:1.5em;}/*!sc*/
.btqmKr .sc-dIsUp polygon{fill:#333333;}/*!sc*/
.dNhyuN{cursor:pointer;color:#333333;margin:0;padding:12.5px 20px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;font-family:Montserrat,sans-serif;background-color:#fafafa;}/*!sc*/
.dNhyuN:hover{color:#32329f;background-color:#ededed;}/*!sc*/
.dNhyuN .sc-dIsUp{height:1.5em;width:1.5em;}/*!sc*/
.dNhyuN .sc-dIsUp polygon{fill:#333333;}/*!sc*/
data-styled.g104[id="sc-eHEENL"]{content:"btqmKr,dNhyuN,"}/*!sc*/
.ylzCN{display:inline-block;vertical-align:middle;width:auto;overflow:hidden;text-overflow:ellipsis;}/*!sc*/
.jYJtsM{display:inline-block;vertical-align:middle;width:calc(100% - 38px);overflow:hidden;text-overflow:ellipsis;}/*!sc*/
data-styled.g105[id="sc-hzUIXc"]{content:"ylzCN,jYJtsM,"}/*!sc*/
.fzNTDo{font-size:0.8em;margin-top:10px;padding:0 20px;text-align:left;opacity:0.7;}/*!sc*/
.fzNTDo a,.fzNTDo a:visited,.fzNTDo a:hover{color:#333333 !important;border-top:1px solid #e1e1e1;padding:5px 0;display:block;}/*!sc*/
data-styled.g106[id="sc-kYPZxB"]{content:"fzNTDo,"}/*!sc*/
.fWsqvQ{cursor:pointer;position:relative;margin-bottom:5px;}/*!sc*/
data-styled.g112[id="sc-EZqKI"]{content:"fWsqvQ,"}/*!sc*/
.fCEUju{font-family:Courier,monospace;margin-left:10px;-webkit-flex:1;-ms-flex:1;flex:1;overflow-x:hidden;text-overflow:ellipsis;}/*!sc*/
data-styled.g113[id="sc-jXcxbT"]{content:"fCEUju,"}/*!sc*/
.hyDbyC{outline:0;color:inherit;width:100%;text-align:left;cursor:pointer;padding:10px 30px 10px 10px;border-radius:0;background-color:transparent;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;white-space:nowrap;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border:0;border-bottom:1px solid #ccc;-webkit-transition:border-color 0.25s ease;transition:border-color 0.25s ease;}/*!sc*/
.hyDbyC ..sc-jXcxbT{color:#333333;}/*!sc*/
.hyDbyC:focus{box-shadow:inset 0 2px 2px rgba(0,0,0,0.45),0 2px 0 rgba(128,128,128,0.25);}/*!sc*/
data-styled.g114[id="sc-eEVmNe"]{content:"hyDbyC,"}/*!sc*/
.ihNycv{font-size:0.929em;line-height:20px;background-color:#2F8132;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/
.ldMUmp{font-size:0.929em;line-height:20px;background-color:#186FAF;color:#ffffff;padding:3px 10px;text-transform:uppercase;font-family:Montserrat,sans-serif;margin:0;}/*!sc*/
data-styled.g115[id="sc-fmdNqN"]{content:"ihNycv,ldMUmp,"}/*!sc*/
.flIrdF{position:absolute;width:100%;z-index:100;background:#fafafa;color:#263238;box-sizing:border-box;box-shadow:0px 0px 6px rgba(0,0,0,0.33);overflow:hidden;border-bottom-left-radius:4px;border-bottom-right-radius:4px;-webkit-transition:all 0.25s ease;transition:all 0.25s ease;visibility:hidden;-webkit-transform:translateY(-50%) scaleY(0);-ms-transform:translateY(-50%) scaleY(0);transform:translateY(-50%) scaleY(0);}/*!sc*/
data-styled.g116[id="sc-ljsmAU"]{content:"flIrdF,"}/*!sc*/
.fQkroN{padding:10px;}/*!sc*/
data-styled.g117[id="sc-jlZJtj"]{content:"fQkroN,"}/*!sc*/
.dfUAUz{padding:5px;border:1px solid #ccc;background:#fff;word-break:break-all;color:#32329f;}/*!sc*/
.dfUAUz > span{color:#333333;}/*!sc*/
data-styled.g118[id="sc-dTSzeu"]{content:"dfUAUz,"}/*!sc*/
.lbYftx{display:block;border:0;width:100%;text-align:left;padding:10px;border-radius:2px;margin-bottom:4px;line-height:1.5em;cursor:pointer;color:#1d8127;background-color:rgba(29,129,39,0.07);}/*!sc*/
.lbYftx:focus{outline:auto #1d8127;}/*!sc*/
.jUGDyD{display:block;border:0;width:100%;text-align:left;padding:10px;border-radius:2px;margin-bottom:4px;line-height:1.5em;cursor:pointer;color:#1d8127;background-color:rgba(29,129,39,0.07);cursor:default;}/*!sc*/
.jUGDyD:focus{outline:auto #1d8127;}/*!sc*/
.jUGDyD::before{content:"—";font-weight:bold;width:1.5em;text-align:center;display:inline-block;vertical-align:top;}/*!sc*/
.jUGDyD:focus{outline:0;}/*!sc*/
.NAUPn{display:block;border:0;width:100%;text-align:left;padding:10px;border-radius:2px;margin-bottom:4px;line-height:1.5em;cursor:pointer;color:#d41f1c;background-color:rgba(212,31,28,0.07);}/*!sc*/
.NAUPn:focus{outline:auto #d41f1c;}/*!sc*/
data-styled.g119[id="sc-htmcrh"]{content:"lbYftx,jUGDyD,NAUPn,"}/*!sc*/
.cMoEZ{vertical-align:top;}/*!sc*/
data-styled.g123[id="sc-fWWYYk"]{content:"cMoEZ,"}/*!sc*/
.DvFer{font-size:1.3em;padding:0.2em 0;margin:3em 0 1.1em;color:#333333;font-weight:normal;}/*!sc*/
data-styled.g124[id="sc-fIxmyt"]{content:"DvFer,"}/*!sc*/
.hCTIhr{margin-bottom:30px;}/*!sc*/
data-styled.g129[id="sc-iGkqmO"]{content:"hCTIhr,"}/*!sc*/
.eOSIAa{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:20px;height:20px;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#32329f;}/*!sc*/
data-styled.g130[id="sc-irKDMX"]{content:"eOSIAa,"}/*!sc*/
.coDLND{width:260px;background-color:#fafafa;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-backface-visibility:hidden;backface-visibility:hidden;height:100vh;position:-webkit-sticky;position:sticky;position:-webkit-sticky;top:0;}/*!sc*/
@media screen and (max-width:50rem){.coDLND{position:fixed;z-index:20;width:100%;background:#fafafa;display:none;}}/*!sc*/
@media print{.coDLND{display:none;}}/*!sc*/
data-styled.g131[id="sc-eWnToP"]{content:"coDLND,"}/*!sc*/
.ceJzZm{outline:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:#f2f2f2;color:#32329f;display:none;cursor:pointer;position:fixed;right:20px;z-index:100;border-radius:50%;box-shadow:0 0 20px rgba(0,0,0,0.3);bottom:44px;width:60px;height:60px;padding:0 20px;}/*!sc*/
@media screen and (max-width:50rem){.ceJzZm{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}}/*!sc*/
.ceJzZm svg{color:#0065FB;}/*!sc*/
@media print{.ceJzZm{display:none;}}/*!sc*/
data-styled.g132[id="sc-kTCsyW"]{content:"ceJzZm,"}/*!sc*/
.fDfMfd{font-family:Roboto,sans-serif;font-size:14px;font-weight:400;line-height:1.5em;color:#333333;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;text-align:left;-webkit-font-smoothing:antialiased;font-smoothing:antialiased;text-rendering:optimizeSpeed !important;tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:100%;text-size-adjust:100%;}/*!sc*/
.fDfMfd *{box-sizing:border-box;-webkit-tap-highlight-color:rgba(255,255,255,0);}/*!sc*/
data-styled.g133[id="sc-dvUynV"]{content:"fDfMfd,"}/*!sc*/
.kRuFuS{z-index:1;position:relative;overflow:hidden;width:calc(100% - 260px);contain:layout;}/*!sc*/
@media print,screen and (max-width:50rem){.kRuFuS{width:100%;}}/*!sc*/
data-styled.g134[id="sc-jtiXyc"]{content:"kRuFuS,"}/*!sc*/
.bgakXB{background:#263238;position:absolute;top:0;bottom:0;right:0;width:calc((100% - 260px) * 0.4);}/*!sc*/
@media print,screen and (max-width:75rem){.bgakXB{display:none;}}/*!sc*/
data-styled.g135[id="sc-ellfGf"]{content:"bgakXB,"}/*!sc*/
.bUGKYA{padding:5px 0;}/*!sc*/
data-styled.g136[id="sc-kizEQm"]{content:"bUGKYA,"}/*!sc*/
.eIJtBZ{width:calc(100% - 40px);box-sizing:border-box;margin:0 20px;padding:5px 10px 5px 20px;border:0;border-bottom:1px solid #e1e1e1;font-family:Roboto,sans-serif;font-weight:bold;font-size:13px;color:#333333;background-color:transparent;outline:none;}/*!sc*/
data-styled.g137[id="sc-cKRKFl"]{content:"eIJtBZ,"}/*!sc*/
.jIUTls{position:absolute;left:20px;height:1.8em;width:0.9em;}/*!sc*/
.jIUTls path{fill:#333333;}/*!sc*/
data-styled.g138[id="sc-iIgjPs"]{content:"jIUTls,"}/*!sc*/
2020-10-22 08:42:51 +03:00
</style>
<link href="https://fonts.googleapis.com/css?family=Montserrat:300,400,700|Roboto:300,400,700" rel="stylesheet">
</head>
<body>
2022-06-13 23:34:48 +03:00
<div id="redoc"><div class="sc-dvUynV fDfMfd redoc-wrap"><div class="sc-eWnToP coDLND menu-content" style="top:0px;height:calc(100vh - 0px)"><div class="sc-dkQUaI hfHzFo"><a href="http://owncast.online" class="sc-WZYut dLUlxb"><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAEvmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS41LjAiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgZXhpZjpQaXhlbFhEaW1lbnNpb249IjEyOCIKICAgZXhpZjpQaXhlbFlEaW1lbnNpb249IjEyOCIKICAgZXhpZjpDb2xvclNwYWNlPSIxIgogICB0aWZmOkltYWdlV2lkdGg9IjEyOCIKICAgdGlmZjpJbWFnZUxlbmd0aD0iMTI4IgogICB0aWZmOlJlc29sdXRpb25Vbml0PSIyIgogICB0aWZmOlhSZXNvbHV0aW9uPSI5Ni4wIgogICB0aWZmOllSZXNvbHV0aW9uPSI5Ni4wIgogICBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIgogICBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiCiAgIHhtcDpNb2RpZnlEYXRlPSIyMDIwLTA2LTE4VDAwOjQ2OjEyLTA3OjAwIgogICB4bXA6TWV0YWRhdGFEYXRlPSIyMDIwLTA2LTE4VDAwOjQ2OjEyLTA3OjAwIj4KICAgPHhtcE1NOkhpc3Rvcnk+CiAgICA8cmRmOlNlcT4KICAgICA8cmRmOmxpCiAgICAgIHN0RXZ0OmFjdGlvbj0icHJvZHVjZWQiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFmZmluaXR5IERlc2lnbmVyIChNYXIgMzEgMjAyMCkiCiAgICAgIHN0RXZ0OndoZW49IjIwMjAtMDYtMThUMDA6NDY6MTItMDc6MDAiLz4KICAgIDwvcmRmOlNlcT4KICAgPC94bXBNTTpIaXN0b3J5PgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KPD94cGFja2V0IGVuZD0iciI/Pn6jclUAAAGCaUNDUHNSR0IgSUVDNjE5NjYtMi4xAAAokXWRzytEURTHPzODESPCwsLipWE15EdNbJSZNNSkaYwy2Mw880PNj9d7I8lW2SpKbPxa8BewVdZKESlZWVgTG/ScZ6Zmkjm3c8/nfu89p3vPBXsko2aNmn7I5gp6OOBTZqNzivOZOlpx0oESUw1tLBQKUtU+7rBZ8abXqlX93L/WuJgwVLDVC4+qml4QnhAOrhQ0i7eF29V0bFH4VNijywWFby09XuQXi1NF/rJYj4T9YG8RVlIVHK9gNa1nheXluLOZZbV0H+slrkRuZlpil3gnBmEC+FCYZBw/XgYYkdlLL4P0yYoq+f2/+VPkJVeVWWMVnSVSpCngEXVZqickJkVPyMiwavX/b1+N5NBgsbrLB7VPpvnWDc4t+N40zc9D0/w+AscjXOTK+fkDGH4XfbOsufeheR3OLstafAfON6DjQYvpsV/JIW5PJuH1BJqi0HYNDfPFnpX2Ob6HyJp81RXs7kGPnG9e+AEyv2fOZnRq6wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAHBpJREFUeJztfXl8VEW69vO852QhYYcAIRsGRETZ3BURRXGcn5/bOKPOOPPduRevv9EZh3tdRp1x+bjM6FXGXcdt3HGDO7ij1w0XRnHBBTAoypJASEjYlyzdp+r9/ugEmqQ7fbrTnaQDz+9XhD6n6q23u556q+qtDdiP/diPfRfsbAU6Gx/fpz36ZeJiUM8EMAzEAADZADIBGADbAdRCdbW1mFdXL88eMZ07O1PnZGKfJcA395sCOJgmgisB9vKbThXbVfF3Nfr4oZc4S1OpY0dgnyPAkpuV2sc7WRx5kURuO0RZazDLqN444VK3MWkKdjD2KQJ8ebe6jmsegMNfAshKgkhVq8uMxRmH/dYtT4K8Dsc+Q4DF93m9BXyIDs5PunBFuXp69oTL3K+SLjvF2CcI8Pm9XhbJJ0mcl8JsKuxOjD/iD86WFOaRdLidrUBHQIFZUJynmtJsitEDLwKYnNJckoxubwE+uSt4CYX3ApAOyM5aq78/ZnrGfR2QV1LQrQnw/h1eYabgGxK9OzDbOmtQeNx/umnRFHTbJuDD24MZQl1glb2RWtPfEjmATgPw1w7NNUF0hFnsFFiLi6xyuFWgwwN4w/uzgh1pdRJGt7QA784yBaC5z2qnNXG9VDgBwPudlL9vdEsCKM1lBmQHm/69dVA7FfsJ0PF4878bR1rldHZi4QOAgqcDuK5ztYiNbtcHUPLfVTXbqqKTw9hXbmzo2dm/Ryx0Kwsw50Z1rQYv7mw9miDM5kgAX3S2Im2hWxGgR3bwcgPt6GFfVKjaodhPgI6DVf1FZ+sQDlUO6GwdYqHbEGDOH+0gq8ExXaX2A4CiQz2QCaHbEAAZjXdZZRfr1GqXd7V3CwI886eGbHVxqulsRVpCaTtbhVjoFgQIKAZkqfbpSuYfAAit62wdYqFbEMDJ0EuMwulsPVpB0eVXD6c9Ae6+fHumAX6TqOfPGsAYQA1grUIt0HLhCAlQQkGEEAdwHPiYTNcNiWnVcUh7AuTkOMUWOqAt868aKmhrgWCjorEOCDQogoFQwScEAhlZQFY2kdkDyOxBiADihAgDANagKkHpHYa0J4ASw02kwlegfqdi145QQTcToBXaMW4wAaAhoMB2gNCQhXCAzCwgpxdMrpO1JnHpHYO0J4BRPaX5/8FGoKFO0VAfquGt1gCmelCmADwg4AE7d7Lsz89mBFKcY7uR9gQIGJwaaFDs2KoIdvT2jDYJZRd1lBrtQVoT4PLzt/WrWqdjdtd0n+ZcFQECj0J1IYB6BU6h8NcAeiRLN1V8lCxZqURaE0AcHGKgjMO0e7CYoca5f9ZzuZvCns+74hfbb3Cov4TwLwBy2qubiv2uvTI6AmlNABWMtv4Lvw5WfvPXp3s+Fenlbc/03gjgzssv3L5IHLyDdpBAQ/+sSjR9R6KL+c7jgzp6iKXCT/BUb/zr7MiFH47bn+69yBhztqWqX9kRwne3ze7b5X0AQJpbAAMe6Mv8q75sa/vc7luu4D1C14EsSkgxq7MSStcJSGsLYEVHKENzbtGCJRqt8vp73vA/MXP3U/2Clrg3luwoIaiC11L5vZOJtCXA+ecZscQBhoq2
2020-10-22 08:42:51 +03:00
m -673.67664,1221.6502 -231.2455,-231.24803 55.6165,
-55.627 c 30.5891,-30.59485 56.1806,-55.627 56.8701,-55.627 0.6894,
0 79.8637,78.60862 175.9427,174.68583 l 174.6892,174.6858 174.6892,
-174.6858 c 96.079,-96.07721 175.253196,-174.68583 175.942696,
-174.68583 0.6895,0 26.281,25.03215 56.8701,
55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864
-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,
-104.0616 -231.873,-231.248 z
" fill="currentColor"></path></g></svg><svg class="" style="transform:translate(2px, 4px);transition:transform 0.2s ease" viewBox="0 0 926.23699 573.74994" version="1.1" x="0px" y="0px" width="15" height="15"><g transform="translate(904.92214,-879.1482)"><path d="
m -673.67664,1221.6502 -231.2455,-231.24803 55.6165,
-55.627 c 30.5891,-30.59485 56.1806,-55.627 56.8701,-55.627 0.6894,
0 79.8637,78.60862 175.9427,174.68583 l 174.6892,174.6858 174.6892,
-174.6858 c 96.079,-96.07721 175.253196,-174.68583 175.942696,
-174.68583 0.6895,0 26.281,25.03215 56.8701,
55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864
-231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,
-104.0616 -231.873,-231.248 z
2022-06-13 23:34:48 +03:00
" fill="currentColor"></path></g></svg></div></div><div class="sc-jtiXyc kRuFuS api-content"><div class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod api-info"><h1 class="sc-fujyAs sc-dFRpbK bpZWeL fdKBSs">Owncast<!-- --> <span>(<!-- -->0.0.12<!-- -->)</span></h1><p>Download OpenAPI specification<!-- -->:<a download="openapi.json" target="_blank" class="sc-bsatvv gidAUi">Download</a></p><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><div class="sc-euEtCV jOrOKn"><div class="sc-fHCHyC bpQNnD"><span class="sc-gIvpjk dnRviY">Gabe Kangas<!-- -->:<!-- --> <a href="mailto:gabek@real-ity.com">gabek@real-ity.com</a></span> <span class="sc-gIvpjk dnRviY">URL: <a href="http://owncast.online">http://owncast.online</a></span> <!-- --> </div></div></div><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV" data-role="redoc-summary"></div><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV" data-role="redoc-description"><p>Owncast is a self-hosted live video and web chat server for use with existing popular broadcasting software.</p>
</div></div></div></div><div id="tag/Admin" data-section-id="tag/Admin" class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h1 class="sc-fujyAs bpZWeL"><a class="sc-crzoAE iUxAWq" href="#tag/Admin" aria-label="tag/Admin"></a>Admin</h1></div></div><div class="sc-hKFxyN bJcDWV"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV redoc-markdown "><p>Admin operations requiring authentication.</p>
</div></div></div><div id="tag/Admin/paths/~1api~1admin~1status/get" data-section-id="tag/Admin/paths/~1api~1admin~1status/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1status/get" aria-label="tag/Admin/paths/~1api~1admin~1status/get"></a>Server status and broadcaster<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/status</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/status</div></div></div></div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Server status and broadcaster details</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-0" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-1" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-1" aria-labelledby="react-tabs-0"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"broadcaster"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"remoteAddr"</span>: <span class="token string">&quot;172.217.164.110&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-06T23:20:44.588649-07:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"streamDetails"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"width"</span>: <span class="token number">640</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"height"</span>: <span class="token number">480</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"frameRate"</span>: <span class="token number">24</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoBitrate"</span>: <span class="token number">1500</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoCodec"</span>: <span class="token string">&quot;mp4a&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"audioBitrate"</span>: <span class="token number">256</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"audioCodec"</span>: <span class="token string">&quot;aac&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"encoder"</span>: <span class="token string">&quot;obs-output module (libobs version 25.0.8)&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"online"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"viewerCount"</span>: <span class="token number">3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class=
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-2" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-3" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-3" aria-labelledby="react-tabs-2"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1yp~1reset/post" data-section-id="tag/Admin/paths/~1api~1admin~1yp~1reset/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1yp~1reset/post" aria-label="tag/Admin/paths/~1api~1admin~1yp~1reset/post"></a>Reset your YP registration key.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/yp/reset</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/yp/reset</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Used when there is a problem with your registration to the Owncast Directory via the YP APIs. This will reset your local registration key.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-4" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-5" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-5" aria-labelledby="react-tabs-4"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1chat~1clients/get" data-section-id="tag/Admin/paths/~1api~1admin~1chat~1clients/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1chat~1clients/get" aria-label="tag/Admin/paths/~1api~1admin~1chat~1clients/get"></a>Return a list of currently connected clients<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/chat/clients</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/chat/clients</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Return a list of currently connected clients with optional geo details.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Successful response of an array of clients</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-6" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-7" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-7" aria-labelledby="react-tabs-6"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"connectedAt"</span>: <span class="token string">&quot;2020-10-06T23:20:44.588649-07:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"messageCount"</span>: <span class="token number">3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"userAgent"</span>: <span class="token string">&quot;Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"ipAddress"</span>: <span class="token string">&quot;172.217.164.110&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"geo"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"countryCode"</span>: <span class="token string">&quot;US&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"regionName"</span>: <span class="token string">&quot;California&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timeZone"</span>: <span class="token string">&quot;America/Los_Angeles&quot;</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"user"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class=
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>A collection of users.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-8" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-9" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-9" aria-labelledby="react-tabs-8"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1logs/get" data-section-id="tag/Admin/paths/~1api~1admin~1logs/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1logs/get" aria-label="tag/Admin/paths/~1api~1admin~1logs/get"></a>Return recent log entries<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/logs</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/logs</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Returns serve
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Response of server log entries</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-10" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-11" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-11" aria-labelledby="react-tabs-10"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;Owncast v0.0.0-localdev (unknown)&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:34.422386-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;Web server running on port: 8080&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:35.011731-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;RTMP server is listening for incoming stream on port: 1935&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:35.011823-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1logs~1warnings/get" data-section-id="tag/Admin/paths/~1api~1admin~1logs~1warnings/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1adm
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Response of server log entries</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-12" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-13" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-13" aria-labelledby="react-tabs-12"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;Owncast v0.0.0-localdev (unknown)&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:34.422386-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;Web server running on port: 8080&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:35.011731-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"message"</span>: <span class="token string">&quot;RTMP server is listening for incoming stream on port: 1935&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"level"</span>: <span class="token string">&quot;info&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-29T18:35:35.011823-07:00&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1serverconfig/get" data-section-id="tag/Admin/paths/~1api~1admin~1serverconfig/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-14" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-15" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-15" aria-labelledby="react-tabs-14"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"instanceDetails"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"summary"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"logo"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"tags"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"socialHandles"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"platform"</span>: <span class="token string">&quot;github&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;</span><a href="http://github.c
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-16" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-17" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-17" aria-labelledby="react-tabs-16"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"user"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"body"</span>: <span class="token string">&qu
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="visible"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">visible</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Are these messages visible.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="idArray"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">idArray</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa">Array of </span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">strings</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-18" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-19" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-19" aria-labelledby="react-tabs-18"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"visible"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"idArray"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-20" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-21" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-21" aria-labelledby="react-tabs-20"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1chat~1users~1setenabled/post" data-section-id="tag/Admin/paths/~1api~1admin~1chat~1users~1setenabled/post" clas
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="userId"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">userId</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>User ID to act upon.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="enabled"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">enabled</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Set the enabled state of this user.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-22" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-23" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-23" aria-labelledby="react-tabs-22"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"userId"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"enabled"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-24" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-25" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-25" aria-labelledby="react-tabs-24"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1key/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1key/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1key/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1key/post"></a>Set the stream key.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class=
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-26" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-27" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-27" aria-labelledby="react-tabs-26"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-28" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-29" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-29" aria-labelledby="react-tabs-28"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1pagecontent/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1pagecontent/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1pagecontent/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1pagecontent/post"></a>Set the custom page content.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/confi
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-30" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-31" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-31" aria-labelledby="react-tabs-30"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><span class="token string">&quot;# Welcome to my cool server!&lt;br&gt;&lt;br&gt;I _hope_ you enjoy it.&quot;</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-32" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-33" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-33" aria-labelledby="react-tabs-32"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1streamtitle/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1streamtitle/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1streamtitle/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1streamtitle/post"></a>Set the stream title.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/streamtitle</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-34" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-35" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-35" aria-labelledby="react-tabs-34"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;Streaming my favorite game, Desert Bus.&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-36" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-37" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-37" aria-labelledby="react-tabs-36"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1name/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1name/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1name/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1name/post"></a>Set the server name.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/n
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-38" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-39" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-39" aria-labelledby="react-tabs-38"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-40" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-41" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-41" aria-labelledby="react-tabs-40"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1serversummary/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1serversummary/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1serversummary/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1serversummary/post"></a>Set the server summary.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/co
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-42" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-43" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-43" aria-labelledby="react-tabs-42"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;The best in Desert Bus Streaming&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-44" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-45" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-45" aria-labelledby="react-tabs-44"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1logo/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1logo/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1logo/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1logo/post"></a>Set the server logo.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/logo</sp
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-46" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-47" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-47" aria-labelledby="react-tabs-46"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;/img/mylogo.png&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-48" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-49" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-49" aria-labelledby="react-tabs-48"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1tags/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1tags/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1tags/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1tags/post"></a>Set the server tags.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/tags</span><svg class="sc
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-50" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-51" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-51" aria-labelledby="react-tabs-50"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;games&quot;</span>,</div></li><li><div class="hoverable collapsed"><span class="token string">&quot;music&quot;</span>,</div></li><li><div class="hoverable collapsed"><span class="token string">&quot;streaming&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-52" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-53" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-53" aria-labelledby="react-tabs-52"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1ffmpegpath/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1ff
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-54" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-55" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-55" aria-labelledby="react-tabs-54"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;/home/owncast/ffmpeg&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-56" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-57" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-57" aria-labelledby="react-tabs-56"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1webserverport/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1webserverport/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1webserverport/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1webserverport/post"></a>Set the owncast web port.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUj
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-58" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-59" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-59" aria-labelledby="react-tabs-58"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token number">8080</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-60" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-61" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-61" aria-labelledby="react-tabs-60"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1rtmpserverport/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1rtmpserverport/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1rtmpserverport/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1rtmpserverport/post"></a>Set the inbound rtmp server port.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/co
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-62" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-63" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-63" aria-labelledby="react-tabs-62"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token number">1935</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-64" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-65" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-65" aria-labelledby="react-tabs-64"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1nsfw/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1nsfw/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1nsfw/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1nsfw/post"></a>Mark if your stream is not safe for work<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/nsfw</span><svg class="sc-dI
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-66" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-67" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-67" aria-labelledby="react-tabs-66"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token boolean">false</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-68" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-69" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-69" aria-labelledby="react-tabs-68"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1directoryenabled/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1directoryenabled/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1directoryenabled/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1directoryenabled/post"></a>Set if this server supports the Owncast directory.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-j
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-70" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-71" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-71" aria-labelledby="react-tabs-70"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-72" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-73" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-73" aria-labelledby="react-tabs-72"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1serverurl/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1serverurl/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1serverurl/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1serverurl/post"></a>Set the public url of this owncast server.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/serve
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-74" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-75" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-75" aria-labelledby="react-tabs-74"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;</span><a href="https://live.mycoolserver.biz">https://live.mycoolserver.biz</a><span class="token string">&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-76" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-77" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-77" aria-labelledby="react-tabs-76"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1video~1streamlatencylevel/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1video~1streamlatencylevel/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1video~1streamlatencylevel/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1video~1streamlatencylevel/post"></a>Set the latency level for the stream.<!-- --> </h2><div class="
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">value</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">integer</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The latency level</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-78" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-79" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-79" aria-labelledby="react-tabs-78"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token number">4</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-80" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-81" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-81" aria-labelledby="react-tabs-80"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1video~1streamoutputvariants/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1video~1streamoutputvariants/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1video~1streamoutputvariants/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1video~1streamoutputvariants/post"></a>Set the configuration of your stream output.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb p
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-82" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-83" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-83" aria-labelledby="react-tabs-82"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"framerate"</span>: <span class="token number">30</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoPassthrough"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoBitrate"</span>: <span class="token number">1800</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"cpuUsageLevel"</span>: <span class="token number">2</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"audioPassthrough"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"framerate"</span>: <span class="token number">24</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoPassthrough"</span>: <span class="token boolean">false</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"videoBitrate"</span>: <span class="token number">1000</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"cpuUsageLevel"</span>: <span class="token number">3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"audioPassthrough"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-84" aria-s
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">value</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The video codec to change to.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-86" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-87" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-87" aria-labelledby="react-tabs-86"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;libx264&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-88" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-89" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-89" aria-labelledby="react-tabs-88"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1s3/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1s3/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1s3/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1s3/post"></a>Set your storage configration.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/s3</span><svg class="sc-dIsUp i
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-90" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-91" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-91" aria-labelledby="react-tabs-90"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"enabled"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"endpoint"</span>: <span class="token string">&quot;</span><a href="https://s3.us-west-000.backblazeb2.com">https://s3.us-west-000.backblazeb2.com</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"accessKey"</span>: <span class="token string">&quot;e1ac500y7000500047156bd060&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"secret"</span>: <span class="token string">&quot;H8FH8eSxM2K/S42CUg5K000Tt4WY2fI&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"bucket"</span>: <span class="token string">&quot;video&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"region"</span>: <span class="token string">&quot;us-west-000&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-92" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-93" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-93" aria-labelledby="react-tabs-92"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation suc
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-94" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-95" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-95" aria-labelledby="react-tabs-94"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"platform"</span>: <span class="token string">&quot;github&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;</span><a href="https://github.com/owncast/owncast">https://github.com/owncast/owncast</a><span class="token string">&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"platform"</span>: <span class="token string">&quot;mastodon&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;</span><a href="https://mastodon.social/@gabek">https://mastodon.social/@gabek</a><span class="token string">&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-96" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-97" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-97" aria-labelledby="react-tabs-96"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeede
</div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-98" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-99" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-99" aria-labelledby="react-tabs-98"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;body { color: orange; background: black; }&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-100" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-101" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-101" aria-labelledby="react-tabs-100"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1viewersOverTime/get" data-section-id="tag/Admin/paths/~1api~1admin~1viewersOverTime/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1viewersOverTime/get" aria-label="tag/Admin/paths/~1api~1admin~1viewersOverTime/get"></a>Viewers Over Time<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-102" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-103" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-103" aria-labelledby="react-tabs-102"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-03T21:41:00.381996-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"value"</span>: <span class="token number">50</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-03T21:42:00.381996-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"value"</span>: <span class="token number">52</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1hardwarestats/get" data-section-id="tag/Admin/paths/~1api~1admin~1hardwarestats/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1hardwarestats/get" aria-label="tag/Admin/paths/~1api~1admin~1hardwarestats/get"></a>Hardware Stats<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/hardwarestats</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-104" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-105" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-105" aria-labelledby="react-tabs-104"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"cpu"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-03T21:41:00.381996-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"value"</span>: <span class="token number">23</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-03T21:42:00.381996-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"value"</span>: <span class="token number">27</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"time"</span>: <span class="token string">&quot;2020-10-03T21:43:00.381996-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"value"</span>: <span class="token number">22</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-106" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-107" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-107" aria-labelledby="react-tabs-106"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-108" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-109" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-109" aria-labelledby="react-tabs-108"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1federation~1private/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1federation~1private/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1federation~1private/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1federation~1private/post"></a>Enable or disable private federation mode.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-110" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-111" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-111" aria-labelledby="react-tabs-110"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-112" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-113" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-113" aria-labelledby="react-tabs-112"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1federation~1showengagement/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1federation~1showengagement/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1federation~1showengagement/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1federation~1showengagement/post"></a>Enable or disable Federation activity showing in chat.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-114" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-115" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-115" aria-labelledby="react-tabs-114"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-116" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-117" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-117" aria-labelledby="react-tabs-116"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1federation~1username/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1federation~1username/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1federation~1username/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1federation~1username/post"></a>Set the username you are seen as on the fediverse.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post<
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-118" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-119" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-119" aria-labelledby="react-tabs-118"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-120" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-121" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-121" aria-labelledby="react-tabs-120"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1federation~1livemessage/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1federation~1livemessage/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1federation~1livemessage/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1federation~1livemessage/post"></a>Set the message sent to the fediverse when this instance goes live.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" cla
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-122" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-123" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-123" aria-labelledby="react-tabs-122"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-124" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-125" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-125" aria-labelledby="react-tabs-124"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1federation~1blockdomains/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1federation~1blockdomains/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1federation~1blockdomains/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1federation~1blockdomains/post"></a>Save a collection of domains that should be ignored on the fediverse.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="pos
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-126" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-127" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-127" aria-labelledby="react-tabs-126"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;guns.eagles.biz&quot;</span>,</div></li><li><div class="hoverable collapsed"><span class="token string">&quot;freedom.us&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-128" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-129" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-129" aria-labelledby="react-tabs-128"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1federation~1send/post" data-section-id="tag/Admin/paths/~1api~1admin~1federation~1send/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-130" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-131" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-131" aria-labelledby="react-tabs-130"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;I'm still streaming, you should come visit.&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-132" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-133" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-133" aria-labelledby="react-tabs-132"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1federation~1actions/get" data-section-id="tag/Admin/paths/~1api~1admin~1federation~1actions/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1federation~1actions/get" aria-label="tag/Admin/paths/~1api~1admin~1federation~1actions/get"></a>Get a list of accepted actions that took place on the Fediverse.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNyc
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-134" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-135" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-135" aria-labelledby="react-tabs-134"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"iri"</span>: <span class="token string">&quot;</span><a href="https://fediverse.server/jfk-3827">https://fediverse.server/jfk-3827</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"actorIRI"</span>: <span class="token string">&quot;</span><a href="https://mastodon.cloud/users/gabektest">https://mastodon.cloud/users/gabektest</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"type"</span>: <span class="token string">&quot;FEDIVERSE_ENGAGEMENT_FOLLOW&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1webhooks/get" data-section-id="tag/Admin/paths/~1api~1admin~1webhooks/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1webhooks/get" aria-label="tag/Admin/paths/~1api~1admin~1webhooks/get"></a>Return all webhooks.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/webhooks</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/webhooks</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Return all of the configured webhooks for external events.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Webhooks are returned</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-136" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-137" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-137" aria-labelledby="react-tabs-136"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"id"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"url"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"events"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"timestamp"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"lastUsed"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1externalactions/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1externalactions/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1externalactions/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1externalactions/post"></a>Set external action URLs.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/externalactions</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/config/externalactions</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Set a collection of external action URLs that are displayed in the UI.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><div><div class="sc-bCwfaz jaCkRh"> Array </div><div class="sc-hmbstg gBTJlj"><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="url"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">url</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>URL of the external action content.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="title"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">title</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The title to put on the external action button.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="description"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">description</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Optional additional description to display in the UI.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="icon"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">icon</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The URL to an image to place on the external action button.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="color"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">color</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Optional color to use for drawing the action button.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="openExternally"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">openExternally</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>If set this action will open in a new browser tab instead of an internal modal.</p>
</div></div></div></td></tr></tbody></table></div><div class="sc-iwajpm kHKMOg"></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh jUGDyD" disabled=""><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Actions have been updated.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-138" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-139" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-139" aria-labelledby="react-tabs-138"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"title"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"description"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"icon"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"color"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"openExternally"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1webhooks~1delete/post" data-section-id="tag/Admin/paths/~1api~1admin~1webhooks~1delete/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1webhooks~1delete/post" aria-label="tag/Admin/paths/~1api~1admin~1webhooks~1delete/post"></a>Delete a single webhook.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/webhooks/delete</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/webhooks/delete</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Delete a single webhook by its ID.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="id"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">id</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The webhook id to delete</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh jUGDyD" disabled=""><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Webhook is deleted</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-140" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-141" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-141" aria-labelledby="react-tabs-140"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"id"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1webhooks~1create/post" data-section-id="tag/Admin/paths/~1api~1admin~1webhooks~1create/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1webhooks~1create/post" aria-label="tag/Admin/paths/~1api~1admin~1webhooks~1create/post"></a>Create a webhook.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/webhooks/create</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/webhooks/create</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Create a single webhook that acts on the requested events.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="url"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">url</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The url to post the events to.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="events"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">events</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa">Array of </span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">strings</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The events to be notified about.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Token was created.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-142" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-143" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-143" aria-labelledby="react-tabs-142"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"url"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"events"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-144" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-145" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-145" aria-labelledby="react-tabs-144"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">&quot;your new token&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"token"</span>: <span class="token string">&quot;zG2xO-mHTFnelCp5xaIkYEFWcPhoOswOSRmFC1BkI=&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1chat~1users~1setmoderator/post" data-section-id="tag/Admin/paths/~1api~1admin~1chat~1users~1setmoderator/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1chat~1users~1setmoderator/post" aria-label="tag/Admin/paths/~1api~1admin~1chat~1users~1setmoderator/post"></a>Set moderator priviledges on a chat users.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/chat/users/setmoderator</span><svg class="sc-dIsUp izTTd
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="userId"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">userId</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>User ID of the chat user you want to change moderation status of.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="isModerator"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">isModerator</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The moderator status of this user.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-146" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-147" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-147" aria-labelledby="react-tabs-146"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"userId"</span>: <span class="token string">&quot;xJ84_48Ghj&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"isModerator"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-148" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-149" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-149" aria-labelledby="react-tabs-148"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1chat~1users~1moderators/get" data-section-id="tag/Admin/paths/~1api~1admin~1chat~1users~1moderators/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1chat~1users~1moderators/get" aria-label="tag/Admin/paths/~1api~1admin~1chat~1users~1moderators/get"></a>Get a list of chat
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-150" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-151" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-151" aria-labelledby="react-tabs-150"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1followers/get" data-section-id="tag/Admin/paths/~1api~1admin~1followers/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1followers/get" aria-label="tag/Admin/paths/~1api~1admin~1followers/get"></a>Get the followers of this instance<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/followers</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/followers</div></div></div></div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-152" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-153" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-153" aria-labelledby="react-tabs-152"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"link"</span>: <span class="token string">&quot;</span><a href="https://mastodon.cloud/users/gabektest">https://mastodon.cloud/users/gabektest</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">&quot;John Smith&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"image"</span>: <span class="token string">&quot;</span><a href="http://mastodon.cloud/users/gabektest/avatar.png">http://mastodon.cloud/users/gabektest/avatar.png</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timestamp"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"disabledAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1followers~1pending/get" data-section-id="tag/Admin/paths/~1api~1admin~1followers~1pending/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1followers~1pending/get" aria-label="tag/Admin/paths/~1api~1admin~1followers~1pending/get"></a>Get a list of follow requests that are pending.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/followers/pending</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/followers/pending</div></div></div></div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" vi
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-154" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-155" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-155" aria-labelledby="react-tabs-154"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"actorIRI"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-156" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-157" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-157" aria-labelledby="react-tabs-156"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1config~1chat~1suggestedusernames/post" data-section-id="tag/Admin/paths/~1api~1admin~1config~1chat~1suggestedusernames/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1config~1chat~1suggestedusernames/post" aria-label="tag/Admin/paths/~1api~1admin~1config~1chat~1suggestedusernames/post"></a>A list of names to select from randomly for new chat users.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" clas
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-158" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-159" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-159" aria-labelledby="react-tabs-158"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-160" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-161" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-161" aria-labelledby="react-tabs-160"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Admin/paths/~1api~1admin~1prometheus/get" data-section-id="tag/Admin/paths/~1api~1admin~1prometheus/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Admin/paths/~1api~1admin~1prometheus/get" aria
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"></div></div></div><div id="tag/Chat" data-section-id="tag/Chat" class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h1 class="sc-fujyAs bpZWeL"><a class="sc-crzoAE iUxAWq" href="#tag/Chat" aria-label="tag/Chat"></a>Chat</h1></div></div><div class="sc-hKFxyN bJcDWV"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV redoc-markdown "><p>Endpoints related to the chat interface.</p>
</div></div></div><div id="tag/Chat/paths/~1api~1chat~1register/post" data-section-id="tag/Chat/paths/~1api~1chat~1register/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Chat/paths/~1api~1chat~1register/post" aria-label="tag/Chat/paths/~1api~1chat~1register/post"></a>Register a chat user<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/chat/register</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/chat/register</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Register a user that returns an access token for accessing chat.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>UserToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="displayName"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">displayName</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Optionally provide a display name you want to assign to this user when registering.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-162" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-163" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-163" aria-labelledby="react-tabs-162"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"displayName"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-164" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-165" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-165" aria-labelledby="react-tabs-164"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"id"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"accessToken"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"displayName"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Chat/paths/~1api~1chat/get" data-section-id="tag/Chat/paths/~1api~1chat/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Chat/paths/~1api~1chat/get" aria-label="tag/Chat/paths/~1api~1chat/get"></a>Chat Messages Backlog<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/chat</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="ht
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>UserToken</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-166" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-167" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-167" aria-labelledby="react-tabs-166"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"user"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"body"</span>: <span class="token string">&quo
</div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-168" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-169" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-169" aria-labelledby="react-tabs-168"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"items"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">&quot;nicolas_cage_party&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"emoji"</span>: <span class="token string">&quot;/img/emoji/nicolas_cage_party.gif&quot;</span></div></li></ul><span class="token punctuation">}</span>,</div></li><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">&quot;parrot&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"emoji"</span>: <span class="token string">&quot;/img/emoji/parrot.gif&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations" data-section-id="tag/Integrations" class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h1 class="sc-fujyAs bpZWeL"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations" aria-label="tag/Integrations"></a>Integrations</h1></div></div><div class="sc-hKFxyN bJcDWV"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV redoc-markdown "><p>APIs built to allow 3rd parties to interact with an Owncast server.</p>
</div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1streamtitle/post" data-section-id="tag/Integrations/paths/~1api~1integrations~1streamtitle/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1streamtitle/post" aria-label="tag/Integrations/paths/~1api~1integrations~1streamtitle/post"></a>Set the stream title.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/integrations/streamtitle</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/integrations/streamtitle</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Set the title of the currently streaming content.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT sc-gSYDnn iwcKgn cAqMTE hTttpy" kind="field" title="value"><span class="sc-iemWCZ bcnRwz"></span><button aria-label="expand properties"><span class="property-name">value</span><svg class="sc-dIsUp hGHhhO" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string or integer or object or boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-170" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-171" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-171" aria-labelledby="react-tabs-170"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"value"</span>: <span class="token string">&quot;Streaming my favorite game, Desert Bus.&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-172" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-173" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-173" aria-labelledby="react-tabs-172"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1chat~1send/post" data-section-id="tag/Integrations/paths/~1api~1integrations~1chat~1send/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1chat~1send/post" aria-label="tag/Integrations/paths/~1api~1integrations~1chat~1send/post"></a>Send a chat message.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post<
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="body"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">body</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The message text that will be sent as the user.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Message was sent.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-174" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-175" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-175" aria-labelledby="react-tabs-174"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"body"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-176" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-177" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-177" aria-labelledby="react-tabs-176"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;sent&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1chat~1system/post" data-section-id="tag/Integrations/paths/~1api~1integrations~1chat~1system/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1chat~1system/post" aria-label="tag/Integrations/paths/~1api~1integrations~1chat~1system/post"></a>Send a system chat message.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/integrations/chat/system</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/integrations/chat/system</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGru
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="body"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">body</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The message text that will be sent as the system user.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Message was sent.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-178" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-179" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-179" aria-labelledby="react-tabs-178"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"body"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-180" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-181" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-181" aria-labelledby="react-tabs-180"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;sent&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1chat~1action/post" data-section-id="tag/Integrations/paths/~1api~1integrations~1chat~1action/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1chat~1action/post" aria-label="tag/Integrations/paths/~1api~1integrations~1chat~1action/post"></a>Send a chat action.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/integrations/chat/action</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/integrations/chat/action</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Se
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="body"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">body</span><div class="sc-oeezt sc-hhIiOg dLCGMn hIkHYw">required</div></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The message text that will be sent as the system user.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="author"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">author</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>An optional user name that performed the action.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Message was sent.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-182" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-183" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-183" aria-labelledby="react-tabs-182"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"body"</span>: <span class="token string">&quot;rolled a 15 on the dice&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"author"</span>: <span class="token string">&quot;JohnSmith&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-184" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-185" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-185" aria-labelledby="react-tabs-184"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;sent&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1chat~1system~1client~1{clientId}/post" data-section-id="tag/Integrations/paths/~1api~1integrations~1chat~1system~1client~1{clientId}/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1chat~1system~1client~1{clientId}/post" aria-label="tag/Integrations/paths/~1api~1integrations~1chat~1system~1client~1{clientId}/post"></a>Send system chat message to a client, identified by its ClientId<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/integrations/chat/system/client/{clientId}</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><div><h5 class="sc-iqAclL eONCmm">path<!-- --> Parameters</h5><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="clientId"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">clientId</span><div class="sc-oeezt sc-hhIiOg dLCGMn hIkHYw">required</div></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">integer</span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa"> <!-- -->&lt;<!-- -->int64<!-- -->&gt;<!-- --> </span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Client ID (a unique numeric Id, identifying the client connection)</p>
</div></div></div></td></tr></tbody></table></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="body"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">body</span><div class="sc-oeezt sc-hhIiOg dLCGMn hIkHYw">required</div></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The message text that will be sent to the client.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Message was sent.</p>
</span></button></div><div><button class="sc-htmcrh NAUPn"><svg class="sc-dIsUp dVWHLw" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">500<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Message was not sent to the client</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-186" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-187" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-187" aria-labelledby="react-tabs-186"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"body"</span>: <span class="token string">&quot;What a beautiful day. I love it&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-188" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-189" tabindex="0" data-rttab="true">200</li><li class="tab-error" role="tab" id="react-tabs-190" aria-selected="false" aria-disabled="false" aria-controls="react-tabs-191" data-rttab="true">500</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-189" aria-labelledby="react-tabs-188"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"messages"</span>: <span class="token string">&quot;sent&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div><div class="react-tabs__tab-panel" role="tabpanel" id="react-tabs-191" aria-labelledby="react-tabs-190"></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1admin~1accesstokens~1create/post" data-section-id="tag/Integrations/paths/~1api~1admin~1accesstokens~1create/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1admin~1accesstokens~1create/post" aria-label="tag/Integrations/paths/~1api~1admin~1accesstokens~1create/post"></a>Create an access token.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/accesstokens/create</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="name"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">name</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The human-readable name to give this access token.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="scopes"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">scopes</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa">Array of </span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">strings</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Token was created.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-192" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-193" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-193" aria-labelledby="react-tabs-192"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-194" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-195" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-195" aria-labelledby="react-tabs-194"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">&quot;your new token&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"token"</span>: <span class="token string">&quot;zG2xO-mHTFnelCp5xaIkYEFWcPhoOswOSRmFC1BkI=&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1admin~1accesstokens~1delete/post" data-section-id="tag/Integrations/paths/~1api~1admin~1accesstokens~1delete/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1admin~1accesstokens~1delete/post" aria-label="tag/Integrations/paths/~1api~1admin~1accesstokens~1delete/post"></a>Delete an access token.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/accesstokens/delete</span><svg class="sc-dIsUp izTTdU" style="marg
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="token"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">token</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The token to delete</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Token was deleted.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-196" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-197" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-197" aria-labelledby="react-tabs-196"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"token"</span>: <span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-198" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-199" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-199" aria-labelledby="react-tabs-198"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;deleted token&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1admin~1accesstokens/get" data-section-id="tag/Integrations/paths/~1api~1admin~1accesstokens/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1admin~1accesstokens/get" aria-label="tag/Integrations/paths/~1api~1admin~1accesstokens/get"></a>Return all access tokens.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/admin/accesstokens</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/accesstokens</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Return all of the available acces
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Tokens are returned</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-200" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-201" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-201" aria-labelledby="react-tabs-200"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1admin~1config~1externalactions/post" data-section-id="tag/Integrations/paths/~1api~1admin~1config~1externalactions/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1admin~1config~1externalactions/post" aria-label="tag/Integrations/paths/~1api~1admin~1config~1externalactions/post"></a>Set external action URLs.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/admin/config/externalactions</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/admin/config/externalactions</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Set a collection of external action URLs that are displayed in the UI.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><div><div class="sc-bCwfaz jaCkRh"> Array </div><div class="sc-hmbstg gBTJlj"><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="url"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">url</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>URL of the external action content.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="title"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">title</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The title to put on the external action button.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="description"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">description</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Optional additional description to display in the UI.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="icon"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">icon</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The URL to an image to place on the external action button.</p>
</div></div></div></td></tr><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="color"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">color</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Optional color to use for drawing the action button.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="openExternally"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">openExternally</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>If set this action will open in a new browser tab instead of an internal modal.</p>
</div></div></div></td></tr></tbody></table></div><div class="sc-iwajpm kHKMOg"></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh jUGDyD" disabled=""><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Actions have been updated.</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-202" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-203" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-203" aria-labelledby="react-tabs-202"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"title"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"description"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"icon"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"color"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"openExternally"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Integrations/paths/~1api~1integrations~1clients/get" data-section-id="tag/Integrations/paths/~1api~1integrations~1clients/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Integrations/paths/~1api~1integrations~1clients/get" aria-label="tag/Integrations/paths/~1api~1integrations~1clients/get"></a>Return a list of currently connected clients<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/integrations/clients</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/integrations/clients</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Return a list of currently connected clients with optional geo details.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Successful response of an array of clients</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-204" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-205" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-205" aria-labelledby="react-tabs-204"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"connectedAt"</span>: <span class="token string">&quot;2020-10-06T23:20:44.588649-07:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"messageCount"</span>: <span class="token number">3</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"userAgent"</span>: <span class="token string">&quot;Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.89 Safari/537.36&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"ipAddress"</span>: <span class="token string">&quot;172.217.164.110&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"geo"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"countryCode"</span>: <span class="token string">&quot;US&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"regionName"</span>: <span class="token string">&quot;California&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timeZone"</span>: <span class="token string">&quot;America/Los_Angeles&quot;</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"user"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <spa
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-206" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-207" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-207" aria-labelledby="react-tabs-206"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"user"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"body"</span>: <span class="token string">&q
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AccessToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="visible"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">visible</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Are these messages visible.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="idArray"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">idArray</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa">Array of </span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">strings</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-208" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-209" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-209" aria-labelledby="react-tabs-208"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"visible"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"idArray"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-210" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-211" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-211" aria-labelledby="react-tabs-210"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Moderation" data-section-id="tag/Moderation" class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"
</div></div></div><div id="tag/Moderation/paths/~1api~1chat~1updatemessagevisibility/post" data-section-id="tag/Moderation/paths/~1api~1chat~1updatemessagevisibility/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Moderation/paths/~1api~1chat~1updatemessagevisibility/post" aria-label="tag/Moderation/paths/~1api~1chat~1updatemessagevisibility/post"></a>Update the visibility of chat messages.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/chat/updatemessagevisibility</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/chat/updatemessagevisibility</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Pass an array of IDs you want to change the chat visibility of.</p>
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>ModeratorUserToken</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="visible"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">visible</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>Are these messages visible.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="idArray"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">idArray</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa">Array of </span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">strings</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-212" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-213" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-213" aria-labelledby="react-tabs-212"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"visible"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"idArray"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-214" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-215" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-215" aria-labelledby="react-tabs-214"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Moderation/paths/~1api~1chat~1users~1setenabled/post" data-section-id="tag/Moderation/paths/~1api~1chat~1users~1setenabled/post"
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="enabled"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">enabled</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>State of this user. False to block/disable.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-216" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-217" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-217" aria-labelledby="react-tabs-216"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"userId"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"enabled"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-218" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-219" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-219" aria-labelledby="react-tabs-218"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Moderation/paths/~1api~1admin~1chat~1users~1setmoderator/post" data-section-id="tag/Moderation/paths/~1api~1admin~1chat~1users~1setmoderator/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Moderation/paths/~1api~1admin~1chat~1users~1setmoderator/post" aria-label="tag/Moderation/paths/~1api~1admin~1chat~1users~1setmoderator/post"
</div></div><div class="sc-fcmMJX cvfxAX"><div class="sc-jUfyBS bhDyou"><h5 class="sc-iqAclL sc-fuISkM eONCmm hZIgic">Authorizations:</h5><svg class="sc-dIsUp iPqByX" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></div><div class="sc-jQAxuV ccffaZ"><span class="sc-daBunf fcvuS"><span class="sc-dsXzNU dPrSxx"><i>AdminBasicAuth</i></span></span></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class=""><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="userId"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">userId</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">string</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>User ID of the chat user you want to change moderation status of.</p>
</div></div></div></td></tr><tr class="last "><td class="sc-hBMUJo sc-fFSPTT iwcKgn cAqMTE" kind="field" title="isModerator"><span class="sc-iemWCZ bcnRwz"></span><span class="property-name">isModerator</span></td><td class="sc-bkbkJK ctPuOP"><div><div><span class="sc-laZMeE sc-iNiQyp jWaWWE jrLlAa"></span><span class="sc-laZMeE sc-jffHpj jWaWWE cThoNa">boolean</span></div> <div><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"><p>The moderator status of this user.</p>
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Operation Success/Failure Response</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-220" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-221" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-221" aria-labelledby="react-tabs-220"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"userId"</span>: <span class="token string">&quot;xJ84_48Ghj&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"isModerator"</span>: <span class="token boolean">true</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-222" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-223" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-223" aria-labelledby="react-tabs-222"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Example</span><div class="sc-hiKfDv sc-khIgEk bycQNU hLNtis"><svg class="sc-jJMGnK gVpQmv" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg><select class="dropdown-select"><option selected="" value="Operation succeeded.">Operation succeeded.</option><option value="Operation failed.">Operation failed.</option></select><label>Operation succeeded.</label></div></div><div><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"success"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"message"</span>: <span class="token string">&quot;context specific success message&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Moderation/paths/~1api~1admin~1chat~1users~1moderators/get" data-section-id="tag/Moderation/paths/~1api~1admin~1chat~1users~1moderators/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Moderation/paths/~1api~1admin~1chat~1users~1moderators/get" aria-label="tag/Moderation/paths/~1api~1admin~1chat~1users~1moderators/get"></a
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-224" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-225" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-225" aria-labelledby="react-tabs-224"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"id"</span>: <span class="token string">&quot;yklw5Imng&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayName"</span>: <span class="token string">&quot;awesome-pizza&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"displayColor"</span>: <span class="token number">42</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"createdAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"previousNames"</span>: <span class="token string">&quot;awesome-pizza,user42&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"scopes"</span>: <button class="collapser" aria-label="expand"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;MODERATOR&quot;</span></div></li></ul><span class="token punctuation">]</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Server" data-section-id="tag/Server" class="sc-eCApnc jlMQbh"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h1 class="sc-fujyAs bpZWeL"><a class="sc-crzoAE iUxAWq" href="#tag/Server" aria-label="tag/Server"></a>Server</h1></div></div></div><div id="tag/Server/paths/~1api~1config/get" data-section-id="tag/Server/paths/~1api~1config/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Server/paths/~1api~1config/get" aria-label="tag/Server/paths/~1api~1config/get"></a>Information<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/config</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE s
</div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-226" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-227" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-227" aria-labelledby="react-tabs-226"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"summary"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"logo"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"tags"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"socialHandles"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><button class="collapser" aria-label="expand"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"platform"</span>: <span class="token string">&quot;github&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"url"</span>: <span class="token string">&quot;</span><a href="http://github.com/owncast/owncast">http://github.com/owncast/owncast</a><span class="token string">&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"extraPageContent"</span>: <span class="token string">&quot;&lt;p&gt;This page is &lt;strong&gt;super&lt;/strong&gt; cool!&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"version"</span>: <span class="token string">&quot;Owncast v0.0.3-macOS (ef3796a033b32a312ebf5b334851cbf9959e7ecb)&quot;</span></div></li></ul><span class="token punctuation">}</span></code></
</div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh jUGDyD" disabled=""><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Successful ping</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"></div></div></div><div id="tag/Server/paths/~1api~1status/get" data-section-id="tag/Server/paths/~1api~1status/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Server/paths/~1api~1status/get" aria-label="tag/Server/paths/~1api~1status/get"></a>Current Status<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/status</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/status</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>This endpoint is used to discover when a server is broadcasting, the number of active viewers as well as other useful information for updating the user interface.</p>
</div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-228" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-229" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-229" aria-labelledby="react-tabs-228"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"lastConnectTime"</span>: <span class="token string">&quot;2020-10-03T21:36:22-05:00&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"lastDisconnectTime"</span>: <span class="token keyword">null</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"online"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"overallMaxViewerCount"</span>: <span class="token number">420</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"sessionMaxViewerCount"</span>: <span class="token number">12</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"viewerCount"</span>: <span class="token number">7</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="tag/Server/paths/~1api~1yp/get" data-section-id="tag/Server/paths/~1api~1yp/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#tag/Server/paths/~1api~1yp/get" aria-label="tag/Server/paths/~1api~1yp/get"></a>Yellow Pages Information<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="get" class="sc-fmdNqN ihNycv http-verb get">get</span><span class="sc-jXcxbT fCEUju">/api/yp</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/yp</div></div></div></div></div><div class="sc-iGkqmO hCTIhr"><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"><p>Information to be used in the Yellow Pages service, a global directory of Owncast servers.</p>
</div></div><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"></span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-230" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-231" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-231" aria-labelledby="react-tabs-230"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"name"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"description"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"logo"</span>: <span class="token string">&quot;string&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"nsfw"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"tags"</span>: <button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable collapsed"><span class="token string">&quot;string&quot;</span></div></li></ul><span class="token punctuation">]</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"online"</span>: <span class="token boolean">true</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"viewerCount"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"overallMaxViewerCount"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"sessionMaxViewerCount"</span>: <span class="token number">0</span><span class="token punctuation">,</span></div></li><li><div class="hoverable "><span class="property token string">"lastConnectTime"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1api~1followers/get" data-section-id="/paths/~1api~1followers/get" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#/paths/~1api~1followers/get" aria-label="/paths/~1api~1followers/get"></a>Get the public followers of this instance<!-- --> </h2><div class="sc-EZqKI
2022-06-19 23:54:34 +03:00
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-232" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-233" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-233" aria-labelledby="react-tabs-232"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button><button> Expand all </button><button> Collapse all </button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">[</span><span class="ellipsis"></span><ul class="array collapsible"><li><div class="hoverable "><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable collapsed"><span class="property token string">"link"</span>: <span class="token string">&quot;</span><a href="https://mastodon.cloud/users/gabektest">https://mastodon.cloud/users/gabektest</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"name"</span>: <span class="token string">&quot;John Smith&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"image"</span>: <span class="token string">&quot;</span><a href="http://mastodon.cloud/users/gabektest/avatar.png">http://mastodon.cloud/users/gabektest/avatar.png</a><span class="token string">&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"timestamp"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span><span class="token punctuation">,</span></div></li><li><div class="hoverable collapsed"><span class="property token string">"disabledAt"</span>: <span class="token string">&quot;2019-08-24T14:15:22Z&quot;</span></div></li></ul><span class="token punctuation">}</span></div></li></ul><span class="token punctuation">]</span></code></div></div></div></div></div></div></div></div></div></div></div><div id="/paths/~1api~1remotefollow/post" data-section-id="/paths/~1api~1remotefollow/post" class="sc-eCApnc liLqNm"><div class="sc-iCoGMd gLxhOh"><div class="sc-hKFxyN juinod"><h2 class="sc-pNWdM eftmgB"><a class="sc-crzoAE iUxAWq" href="#/paths/~1api~1remotefollow/post" aria-label="/paths/~1api~1remotefollow/post"></a>Return the information needed to redirect a user to a fediverse server to perform a remote follow action.<!-- --> </h2><div class="sc-EZqKI fWsqvQ"><button class="sc-eEVmNe hyDbyC"><span type="post" class="sc-fmdNqN ldMUmp http-verb post">post</span><span class="sc-jXcxbT fCEUju">/api/remotefollow</span><svg class="sc-dIsUp izTTdU" style="margin-right:-25px" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg></button><div aria-hidden="true" class="sc-ljsmAU flIrdF"><div class="sc-jlZJtj fQkroN"><div class="sc-iJCRrE sc-ciSkZP jCdxGr lhENGb"></div><div tabindex="0" role="button"><div class="sc-dTSzeu dfUAUz"><span></span>/api/remotefollow</div></div></div></div></div><h5 class="sc-iqAclL eONCmm">Request Body schema: <span class="sc-cBoqAE eKyrDP">application/json</span></h5><div class="sc-iJCRrE sc-ciSkZP jCdxGr QGruV"></div><table class="sc-hHEiqL VCQHZ"><tbody><tr class="last "
2022-06-13 23:34:48 +03:00
</div></div></div></td></tr></tbody></table><div><h3 class="sc-fIxmyt DvFer">Responses</h3><div><button class="sc-htmcrh lbYftx"><svg class="sc-dIsUp dqYXmg" version="1.1" viewBox="0 0 24 24" x="0" xmlns="http://www.w3.org/2000/svg" y="0" aria-hidden="true"><polygon points="17.3 8.3 12 13.6 6.7 8.3 5.3 9.7 12 16.4 18.7 9.7 "></polygon></svg><strong class="sc-fWWYYk cMoEZ">200<!-- --> </strong><span class="sc-jcwpoC eDjFAZ"><p>Remote follow redirect details</p>
</span></button></div></div></div><div class="sc-jSFjdj sc-gKAaRy gBjRyf gcushC"><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Request samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="react-tabs__tab react-tabs__tab--selected" role="tab" id="react-tabs-234" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-235" tabindex="0" data-rttab="true">Payload</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-235" aria-labelledby="react-tabs-234"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"account"</span>: <span class="token string">&quot;johnsmith@fediverse.biz&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div><div><h3 class="sc-kEqXSa iXmHCl"> <!-- -->Response samples<!-- --> </h3><div class="sc-cxNHIi gxohHo" data-rttabs="true"><ul class="react-tabs__tab-list" role="tablist"><li class="tab-success react-tabs__tab--selected" role="tab" id="react-tabs-236" aria-selected="true" aria-disabled="false" aria-controls="react-tabs-237" tabindex="0" data-rttab="true">200</li></ul><div class="react-tabs__tab-panel react-tabs__tab-panel--selected" role="tabpanel" id="react-tabs-237" aria-labelledby="react-tabs-236"><div><div class="sc-Arkif jojbRz"><span class="sc-cOifOu hlhNtL">Content type</span><div class="sc-bBjRSN kQSIAz">application/json</div></div><div class="sc-jgPyTC dSaTNC"><div class="sc-jNnpgg esZIbL"><div class="sc-giAqHp hMPeqJ"><button><div class="sc-carFqZ UksDl">Copy</div></button></div><div class="sc-iJCRrE jCdxGr sc-dPaNzc gyljjx"><div class="redoc-json"><code><button class="collapser" aria-label="collapse"></button><span class="token punctuation">{</span><span class="ellipsis"></span><ul class="obj collapsible"><li><div class="hoverable "><span class="property token string">"redirectUrl"</span>: <span class="token string">&quot;</span><a href="https://fediverse.biz/authorize_interaction?uri=https://my.owncast.server/federation/user/streamer">https://fediverse.biz/authorize_interaction?uri=https://my.owncast.server/federation/user/streamer</a><span class="token string">&quot;</span></div></li></ul><span class="token punctuation">}</span></code></div></div></div></div></div></div></div></div></div></div></div></div><div class="sc-ellfGf bgakXB"></div></div></div>
2020-10-22 08:42:51 +03:00
<script>
2022-06-13 23:34:48 +03:00
const __redoc_state = {"menu":{"activeItemIdx":-1},"spec":{"data":{"openapi":"3.0.1","info":{"title":"Owncast","description":"Owncast is a self-hosted live video and web chat server for use with existing popular broadcasting software.","version":"0.0.12","contact":{"name":"Gabe Kangas","email":"gabek@real-ity.com","url":"http://owncast.online"},"x-logo":{"url":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAEvmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4KPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS41LjAiPgogPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iCiAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgZXhpZjpQaXhlbFhEaW1lbnNpb249IjEyOCIKICAgZXhpZjpQaXhlbFlEaW1lbnNpb249IjEyOCIKICAgZXhpZjpDb2xvclNwYWNlPSIxIgogICB0aWZmOkltYWdlV2lkdGg9IjEyOCIKICAgdGlmZjpJbWFnZUxlbmd0aD0iMTI4IgogICB0aWZmOlJlc29sdXRpb25Vbml0PSIyIgogICB0aWZmOlhSZXNvbHV0aW9uPSI5Ni4wIgogICB0aWZmOllSZXNvbHV0aW9uPSI5Ni4wIgogICBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIgogICBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiCiAgIHhtcDpNb2RpZnlEYXRlPSIyMDIwLTA2LTE4VDAwOjQ2OjEyLTA3OjAwIgogICB4bXA6TWV0YWRhdGFEYXRlPSIyMDIwLTA2LTE4VDAwOjQ2OjEyLTA3OjAwIj4KICAgPHhtcE1NOkhpc3Rvcnk+CiAgICA8cmRmOlNlcT4KICAgICA8cmRmOmxpCiAgICAgIHN0RXZ0OmFjdGlvbj0icHJvZHVjZWQiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFmZmluaXR5IERlc2lnbmVyIChNYXIgMzEgMjAyMCkiCiAgICAgIHN0RXZ0OndoZW49IjIwMjAtMDYtMThUMDA6NDY6MTItMDc6MDAiLz4KICAgIDwvcmRmOlNlcT4KICAgPC94bXBNTTpIaXN0b3J5PgogIDwvcmRmOkRlc2NyaXB0aW9uPgogPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KPD94cGFja2V0IGVuZD0iciI/Pn6jclUAAAGCaUNDUHNSR0IgSUVDNjE5NjYtMi4xAAAokXWRzytEURTHPzODESPCwsLipWE15EdNbJSZNNSkaYwy2Mw880PNj9d7I8lW2SpKbPxa8BewVdZKESlZWVgTG/ScZ6Zmkjm3c8/nfu89p3vPBXsko2aNmn7I5gp6OOBTZqNzivOZOlpx0oESUw1tLBQKUtU+7rBZ8abXqlX93L/WuJgwVLDVC4+qml4QnhAOrhQ0i7eF29V0bFH4VNijywWFby09XuQXi1NF/rJYj4T9YG8RVlIVHK9gNa1nheXluLOZZbV0H+slrkRuZlpil3gnBmEC+FCYZBw/XgYYkdlLL4P0yYoq+f2/+VPkJVeVWWMVnSVSpCngEXVZqickJkVPyMiwavX/b1+N5NBgsbrLB7VPpvnWDc4t+N40zc9D0/w+AscjXOTK+fkDGH4XfbOsufeheR3OLstafAfON6DjQYvpsV/JIW5PJuH1BJqi0HYNDfPFnpX2Ob6HyJp81RXs7kGPnG9e+AEyv2fOZnRq6wAAAAlwSFlzAAAOxAAADsQBlSsOGwAAHBpJREFUeJztfXl8VEW69vO852QhYYcAIRsGRETZ3BURRXGcn5/bOKPOOPPduRevv9EZh3tdRp1x+bjM6FXGXcdt3HGDO7ij1w0XRnHBBTAoypJASEjYlyzdp+r9/ugEmqQ7fbrTnaQDz+9XhD6n6q23u556q+qtDdiP/diPfRfsbAU6Gx/fpz36ZeJiUM8EMAzEAADZADIBGADbAdRCdbW1mFdXL88eMZ07O1PnZGKfJcA395sCOJgmgisB9vKbThXbVfF3Nfr4oZc4S1OpY0dgnyPAkpuV2sc7WRx5kURuO0RZazDLqN444VK3MWkKdjD2KQJ8ebe6jmsegMNfAshKgkhVq8uMxRmH/dYtT4K8Dsc+Q4DF93m9BXyIDs5PunBFuXp69oTL3K+SLjvF2CcI8Pm9XhbJJ0mcl8JsKuxOjD/iD86WFOaRdLidrUBHQIFZUJynmtJsitEDLwKYnNJckoxubwE+uSt4CYX3ApAOyM5aq78/ZnrGfR2QV1LQrQnw/h1eYabgGxK9OzDbOmtQeNx/umnRFHTbJuDD24MZQl1glb2RWtPfEjmATgPw1w7NNUF0hFnsFFiLi6xyuFWgwwN4w/uzgh1pdRJGt7QA784yBaC5z2qnNXG9VDgBwPudlL9vdEsCKM1lBmQHm/69dVA7FfsJ0PF4878bR1rldHZi4QOAgqcDuK5ztYiNbtcHUPLfVTXbqqKTw9hXbmzo2dm/Ryx0Kwsw50Z1rQYv7mw9miDM5kgAX3S2Im2hWxGgR3bwcgPt6GFfVKjaodhPgI6DVf1FZ+sQDlUO6GwdYqHbEGDOH+0gq8ExXaX2A4CiQz2QCaHbEAAZjXdZZRfr1GqXd7V3CwI886eGbHVxqulsRVpCaTtbhVjoFgQIKAZkqfbpSuYfAAit62wdYqFbEMDJ0EuMwulsPVpB0eVXD6c9Ae6+fHumAX6TqOfPGsAYQA1grUIt0HLhCAlQQkGEEAdwHPiYTNcNiWnVcUh7AuTkOMUWOqAt868aKmhrgWCjorEOCDQogoFQwScEAhlZQFY2kdkDyOxBiADihAgDANagKkHpHYa0J4ASw02kwlegfqdi145QQTcToBXaMW4wAaAhoMB2gNCQhXCAzCwgpxdMrpO1JnHpHYO0J4BRPaX5/8FGoKFO0VAfquGt1gCmelCmADwg4AE7d7Lsz89mBFKcY7uR9gQIGJwaaFDs2KoIdvT2jDYJZRd1lBrtQVoT4PLzt/WrWqdjdtd0n+ZcFQECj0J1IYB6BU6h8NcAeiRLN1V8lCxZqURaE0AcHGKgjMO0e7CYoca5f9ZzuZvCns+74hfbb3Cov4TwLwBy2qubiv2uvTI6AmlNABWMtv4Lvw5WfvPXp3s+Fenlbc/03gjgzssv3L5IHLyDdpBAQ/+sSjR9R6KL+c7jgzp6iKXCT/BUb/zr7MiFH47bn+69yBhztqWqX9kRw
2020-10-22 08:42:51 +03:00
var container = document.getElementById('redoc');
Redoc.hydrate(__redoc_state, container);
2020-10-22 08:42:51 +03:00
</script>
</body>
</html>